December 28, 2009

DEBT (the game)

Filed under: Uncategorized — wickedworx dev clone 1 @ 11:08 pm

my tigsource assemblee entry! things are going well. i’ve got the ‘core’ game mechanic running, online high-score tables working. out of town from tomorrow until the 2nd, but i think i’m in a pretty good place now to get it done in time!

what’s left is:
a) completed levels, more enemies, more treasures
b) connecting it all together
c) probably lots more stuff i forgot

jan 10th is looking more and more likely (although i’m aiming for jan 8th, because of a party out of town on jan 9th…)


December 14, 2009

8 days

Filed under: Uncategorized — wickedworx dev clone 1 @ 11:40 pm

I’ve got 8 days away from the computer…

On my netbook at the moment, and can’t really do any dev on it.

Started on an entry for assemblee (pt2), on the tigsource forums – but obviously the deadline in early January will be a challenge, as i can’t really do any work until after xmas.

This time without a dev PC has meant I’ve been able to update my todo/plans/etc.. It’s also meant I’ve been able to think about ways of improving my shared codebase, and read up on a few things which I plan to implement.

In EGV, I use a very game-specific high level scripting system. Its formatted as XML, and is a “list” of instructions (with parameters) which are built in to objects to be iterated through in-game. Scripts can run in parallel with each other and with the game, so I an use them for cutscenes, player decisions, or even continuous effects or behaviours. Its a very simple system, but so far I have found it to be very effective.

December 3, 2009

excruciating guitar voyage : behind the screens 1

Filed under: Uncategorized — wickedworx dev clone 1 @ 12:21 am

Excruciating Guitar Voyage is only just entering development – however, I thought it might be nice to share a screenshot and explain some of the concepts used.

I’ve recently switched over from FMOD to OpenAL on all my projects… switching over didn’t require that much work, as I’d already got my own layer between the game and the sound library (wickedworx sound system), so it was just a case of filling in the blanks there. The only reason I switched was because I’d rather use a free library than one I’d have to pay a license for. If you’ve never used OpenAL, I’d recommend you take a look – the terminology may be a bit different, and the processor usage may be a bit higher (or at least, it was for me… using ‘generic software’..) but it’s not that big a leap.

While ‘project two’ (screenshots/full explanation coming *very soon*) benefits most immediately from this (with little alteration), EGV needs more work, as I will have to write a ‘virtual voices’/priority system for ambient looped sounds. There are likely to be many of these in different areas, due to the nature of the game.

OK – so here’s a screenshot of the WIP.

So, here’s a summary of some of the cool stuff you can see/not see in the shot:

  • Most obvious – the lightmaps. These are generated offline using a simple ray-trace system which takes the level geometry and creates a large lightmap texture for the level. Lights have position, colour, distance-of-influence, and brightness values set. Skies are not affected by lightmaps.
  • 2D bodypart animation. All the characters use a 2D bodypart/vector animation system.. kinda like a puppet – all of the sub-sprites of the character move and interpolate smoothly between frames. For example, this player character is split in to 8 parts – 2 for each leg, 1 for each hand, 1 body, and 1 head. Yes, that is my face.
  • Physics is supplied by Chipmunk Physics. I’ve added some functionality to allow things like platforms you can jump through from below, and sensors (I see this has now been added in a more recent version of Chipmunk anyway!). I found Chipmunk lightweight and easy to get along with.
  • Scripting is provided using my own “XML to Object” based scripting language. It’s very ‘game level’, providing things such as dialogue choices, inventory functions, character animation
  • I use a pathfinding based music loop system, to allow smooth transitions between two unrelated music loops, through defined intermediary loops. This needs an overhaul as, while it is working, it isn’t as flexible as I want (with layers, ability to jump out halway through a loop etc..)

Anyway, this is going to be taking a bit of a back seat while I finish off the other project – but I figured this is something I can share on here now, so I may as well!

Blog at WordPress.com.