Fall GameJam 2011

26 09 2011

My word do I have a lot to write about here… I’m thinking come Spring GameJam, time permitting, I’ll set up a section specifically for that, and do a bunch of micro-posts on our progress. That said, it’s a bit late for that now ūüėõ

The theme this year was “Overload” – our game concept was basically this: the major tech corporations are all working together to take over the world, you player a “hacker” and try to take down their servers by overloading them.¬† You do this by moving around inside the “server”, while a bunch of “minions” follow you around and do the heavy lifting (a lot like Overlord or Pikmin)¬† We called it DDoS (Distributed Denial of Service, a technique used to do pretty much just that).¬† Menu’s and such, while they turned out very nice, and were a lot of work, weren’t really impressive to any non-programmers, and their development sorta spanned the entire development period.¬† We used XNA with C#, so we could¬† develop more easily for the PC and XBOX, but we wrote our own engine from scratch – graphics management, input handling, collision handling, etc.¬† The engine is really, really solid – once we get a chance to clean it up a bit, maybe make some small changes, I’d really love to pull it out into it’s own project, so we can later use it as the base for other games.

The menu’s were primarily Brian’s work, and while they’re quite impressive, I don’t know enough about them to discuss them at length.¬† The immediate game-play, how rooms are handled, how connections between rooms are handled, etc. was primarily Josh’s work, so again, I don’t really know enough to discuss at length.¬† My work lies primarily with the gambit-based AI system.¬† It was based pretty strongly¬† on the Final Fantasy 12 Gambits, or the tactics system from Dragon Age.¬† Basically, all AI controlled units get a set of “Gambits”, each of which has a condition, and an action to be taken if that condition is fulfilled.¬† These could be things like “If an enemy is withing 200 pixels, shoot at them”.¬† The object has several of these, which are checked in order, with the higher¬† ones taking priority.¬† So if the previous example was in the second slot, and in the first slot was a Gambit that read: “If a nearby ally has less than 25% health, heal them”, then any time a badly hurt ally was nearby, the unit would concentrate on healing them, but if all the allies were¬† okay, then it would attack any enemies¬† that came within 200 pixels.¬† With a large enough set of gambits, this can become a very powerful and flexible system for AI.¬† Since I’ve set it up such that any condition can be paired with any action, we’ve got a fair-sized list even with the 2-3 actions we’ve currently got.¬† We had planned on letting the player customize the gambit list for his little AI controlled minions, but didn’t have time.

Development of our game actually went really, really smoothly through Friday and Saturday.¬† It wasn’t until the last freaking minute on Sunday that we found all these nasty bugs with the collision engine, and didn’t have time to fix them… competitive fail, but I think we learned a lot even from that.¬† I learned a lot about programming, but I also learned quite a bit about the team and project management.¬† First off, I think for future projects we’ll stick with Tortoise SVN, cause Anhk is really buggy xP¬† Second, come the Spring competition, we’re going to spend more time sleeping ūüėõ¬† I only slept for 2 hours, Sunday morning.¬† Thing¬† is, if you sleep for even 6 hours a night, you give up a quarter of your development time, which we really can’t afford to do.¬† That said, I think if we managed, say, four hours a night, or three 2-hour naps each day at different times (so we’ve always got at least one person working), that the lost time¬† would be made up for by the increase productivity from being better rested.

That’s all I can think of to say right now, once we get a more workable demo, maybe I’ll put a link to it here, if the guys don’t mind.




Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: