Vacuous (quickly derived placeholder title) delivers balls-to-the-wall hard, twitchy action game play based around guiding a space-bomb-ship through obstacle courses.

Report RSS Vacuous Dev-Log #11

What is the purpose of making video games in the first place? How do you design a game to follow the principles derived from thinking through that problem? Also, matrices!

Posted by on

Both world 2 and world 3 (normal and alternate) are asset and code complete (barring bugs which are sure to show up in later iterations of testing). As I wait to evaluate whether or not I should look into using a different process for creating art (right now it is basically pencil sketch > scanner > ink and paint in GIMP with Bamboo tablet > done, but I'm thinking of using a tablet computer screen for a better feel), I am doing some level design for world 2.

Recently I have had to code additional gameplay elements into Vacuous to properly pace out the introduction of new ideas. Core to my design philosophy is the pursuit of being highly economical and responsible with how I treat the player's time; never do I want to waste it with hours of traversing an empty game world or mindlessly proceeding through a checklist of items to collect. Every single level has a new idea and experience. For practicality reasons, this doesn't mean that each stage has a unique programmed game play element, but each level does tout a fundamentally unique arrangement of elements exclusive to it alone (World 1 has 32 levels, and I'm estimating the total game will be anywhere from 250 to 400 levels in size when finished). The player consistently encounters unfamiliar challenges, each with the purpose of growing their skill and pushing them forward (ever so slightly) as a person.

When adding many systems and objects into a game, the programmer must think through all the possible interactions that those elements can have with each other. If this is done, these elements can then be combined in the level design confidently to create a slew of interesting scenarios, some of which might be discovered through emergent behavior. To keep track of all of these interactions I set up a symmetric matrix within a spreadsheet like below:

As I need to return here and there to code new game objects for a world, having this documentation is very useful for being reminded of how everything responds to each other, and then having a list of which other objects the newly programmed one must be taught to handle. Oh, and here's a look at world 3:

Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: