Monday, May 15, 2006

A game is a series of interesting choices

So Sid Meier tell's us, and he should know! He's developed some excellent games. Of course I don't think he intended to include all games in this definition, rather just the one's he likes. (Remember that sports game on the ... nes? You had to keep pounding and mashing the controller buttons to make your guy run fast or throw the hammer far or whatever - strangely fun, perhaps only to nine years but still no choices there.)

I thought, "Well, interesting choices?" how about we take that to it's logical, if rather extreme conclusion. You're given a description and then three choices to choose from.

1. Interesting Choice 1
2. Interesting Choice 2
3. Interesting Choice 3

Even more limited than a text game! It's a belief of mine that constraints actually encourage creativity. In fact let me show you that this game can infact be more powerful than a text game. Please withhold your gasps of utter astonishment.

You're in your room, your bed to more precise.
The covers are warm, and covered in vomit.
The vomit is cold.
Your head is throbbing in an almost pleasant way.

1. Open the nightstand and grab the asprin.
2. Grab the phone you can see on the floor and call Angela.
3. Stand up fast, hold hands to face and realize what happened last night.

Who's Angela? We don't know! Ooh! But we can still pick it, I guess that makes it an interesting choice. Getting the asprin isn't really an interesting choice - maybe rewrite that one. Still the extra information we get in the choices is something we could never know in the supposed freedom of a text game.

I'd be suprised if such games don't exist already. (Just in case they don't I hereby name then "Dan's Wonderful Gaming Insight Games" or the simpler if somewhat hard to pronounce DWGIG :D )

So I started coding up a simple console based version, that will function as both an editor and player. Once I finish it - finally a project that's on a scale simple enough that I can finish - I'll upload it with some example games.


Here's a simple editor and a single interesting choice that isn't resolved - sorry :D I'll probably play with this at school and then upload what I come up with.

I forgot to mention but I finished my path finding library and it works rather well. I may upload it here at some point - probably in the distant future when I move to a different type of blog.


Jani said...

It would be cool to see your pathfinding code. I've been working on implementing A*-pathfinding into my tile based game... I have it working, but I'm not sure if my implementation of it is any good, as it was HORRIBLY slow earlier with a long path, although I got it fixed.

I'm working on converting it into something which can also be used for calculating those "move area highlights" too, as I noticed there's a bug in the one I made based on your article on gpwiki... now I don't know if there's a fault in your article or my code...

I would guess it's my code. :P

balaam said...

I was going to say I'll post it soon with documentation, but knowing myself to some extent - "soon" could stretch into months.

I'll send you the source code if you give me your email. And answer any questions. I wrote it as a library rather than a particular implementation ... I've only tested it on 10x10 maps :D There's one small piece of code missing, that means now and again suboptimal paths might be produced.

Jani said...

Alright, <zomgtwice>

By the way, you should test the pathfinding on larger maps than 10x10... I found VERY strange behaviour on larger, complex maps at first in my pathfinding :D