Thursday 22 April 2010

Not Worth A Screenshot

It's not, but yer getting one anyway.


What's the significance of the arrows (ignore the inter-penetrating fungi)? That - right there - is some honest to goodness game logic! Green arrows are successful move actions, red ones are forced movement after failing an opposed test.

After months of being nothing but a rendering sandbox, there's actually a tiny bit of game in my game. Whoa.

Things to report so far:
  • The Ent system is really good for quickly working on game logic, almost as good as a decent dynamically-typed language. Adding additional properties can happen anywhere, which makes for very quick iteration, and handling things as Options makes writing systems to use them robustly equally easy. Working on a plan to allow more rigid use as the systems evolve, to help keep them under control as they grow.
  • Actually resolving the world state to something reasonable is really quite hard. I was hoping to avoid the addition of a 'prone' state to allow entities to share a position, but that's not strictly possible in the general case (N+1 entities occupying N grid positions) and annoyingly opaque even when it is possible. Compromises ahoy!
  • Must create new content. My re-use of the stupid "cave anemone" thing is bordering on the ridiculous now (the blue one is the player, by the way). Started sketching some monsters, and discovered that designing them such that they have a recognisable silhouette from directly above is... tricky. Maybe an orthographic three-quarters view would be better? Argh.
  • Did I mention Scala's for construct is awesome? I think I did. It bears mentioning again.

No comments: