Saturday, October 9, 2010

Level Designing (Platformer)

Super Mario Bros. complete level design

I thought I share a couple of hints on how to design your own platformer levels. I'm a game programmer and I do level designs as well. So far I've designed four 2D platformer levels:

Average Juan (2009)

Totem Mania (2010)

Zombie Showdown (2010)

TVBoy! (In pre-production)

The first thing you should do before designing your own level is to list down all your features. In our previous games, we have different features for each game and the level design is built around them therefore each game is unique.

Level designing is tightly knotted with the testing phase. Here's the 3 golden rules that I've come up with:
  1. The difficulty
  2. The variety
  3. The length
Lets discuss these rules in detail, keep in mind that the examples that I'm using are from personal experience, therefore it's not perfect.

The Difficulty
This means that as the players progresses, the level gets harder. For instance:
  1. Platforms are further apart so players need to be more accurate in their jumps (Precision).
  2. Adding more stress to the player like moving platforms and multiple enemies (Reflexes).
  3. Harder puzzles if you have them (Intelligence Quotient).
If you can manage these difficulty elements well you should have no problem increasing or decreasing the difficulty throughout your levels.

The Variety
All features should not be immediately exposed to the player all at once, instead set up a learning curve for the players to progressively discover new features. Features here mean, mechanics, enemies, art assets, pick ups, etc. 

Variety is crucial because it is the key player motivation in most games. For platformers, the main player motivation is exploration. Players are curious about what lies ahead, therefore if you keep the players interested, they will continue to play your game.

There are a few ways to achieve variety in your levels. The most common way is separating your levels by theme. If you plan to have multiple levels and themes, separate your features as well so that the player will face new enemies, acquire new mechanics, or even visual rewards. However as you may know, gamers today are very demanding, if you do not reward them enough for their exploration or your level design is too linear, they'll probably just give up because its not fun enough.

The Length
One of the thing that I've seen most level designers, myself included struggled with is the length of the level. How does one decide how long should a checkpoint be in between of one another? Or how long should the level be from start to end? The only way to find out is by testing. You need to play your own levels a lot just to get the length right. Too short will result in disappointment and too long will result in mental (and in most cases physical) exhaustion.

Here's some useful tricks to help you get started with testing your levels efficiently.
  1. Use specific spawn points or cheats. The idea here is you don't want to start from the very beginning every time just to test a certain area, instead start nearby the area you want to test by setting the spawn points accordingly. This is the best way to save testing time. Which leads to the second key point:
  2. Design your areas in sections. Do not cramp out the player with too much platforms or enemies. Always have an area where the player can take a few seconds just to stand and possibly learn enemy patterns or even analyse jump height and distance. What I always do is to let the players run in a straight line for a few seconds before reaching a new section of challenges. This way players can easily recognize and memorize different sections of your levels, instead of random platforms and checkpoints throughout the level that confuses the player about his current location and progression.
  3. Check point is a must in long levels. Put checkpoints frequently throughout all your levels, but not too much or too few. Where should you put them? The common placement would be right after the player has gone through hard challenges for instance, a really long series of jumps or after dodging tons of enemy projectiles while jumping on moving platforms. The idea here is to reward the player with the mental comfort and security of not having to go through all that again. Trust me that is one of the best feeling in the world playing a good platformer game.
  4. Test often and test all. After you are comfortable designing and testing sections of your level, always take the effort to test from the beginning just to get the feeling right. And if you follow my advice on designing in sections, you can easily take out a section and put it somewhere else that fits better. And the only way to do that is to test from the beginning to the end of your level so you can adjust the difficulty of your game.
  5. Use other testers. You are in a way blind when it comes to finding bugs because you know how the game works and how to avoid them. Its the details that counts and usually developers take more time to polish than to create them. Also ask a non-gamer to test your game, for example your mom or dad. Is the controls too hard for them,? Is there enough tutorials to teach new players on how to play the game? Is the 1st level too hard? Those are examples of detail that you need to take note.
That was the basic on how to design your own levels. There is also advance elements like re-playability, multi-player or co-op mode and mixing genres like shooting or RPG that could greatly improves (arguable) the exploration and gameplay experience of a platformer game.

Tuesday, October 5, 2010

Minecraft

I was first exposed to world Minecraft a couple of weeks back in September 2010 by I-van. He was telling me how fun it was digging everything you can find in a 3D grid based procedural yet randomly generated world and crafting them into useful objects. Wait a minute, did I say everything? Yes everything!


The Gameplay
Let me explain how the game works. You start off with nothing, and the only thing you can do is dig with your bare hands by pressing and holding the right mouse click. You can dig just about everything from dirts, trees, sands, rocks, etc. Press "I" to open up your inventory and you can do basic crafting such as using woods to create sticks that can be further crafted into stairs, ladders, doors, axe, shovel, torch, sword, etc, with the right combinations. At night zombies and monsters spawn where there is no light, so remember to build your own little base or hideout and fill them with torches as soon as possible to survive the night. One of the things that I think everyone would enjoy doing is to build your own little castle or structure, like my very own flying fortress of doom in the screen shot. Minecraft doesn't have any real objective yet besides exploration, experimentation and architecture because it's in Alpha development stage at the moment.

Minecraft is created by Markus "Notch" Persson (Minecraft's official website). Here's a recent Gamasutra post about the sales of the game at Alpha stage (Minecraft on Gamasutra). And lastly the all you need to know about Minecraft (Minepedia).


Highly recommended, if you are bored, love digging up stuff or build your own building without following the rules or principles of physics. 

TVBoy!

Coming soon!


PSP Collection

I used to pirate games on the PlayStation Portable, until I got fed up with the quality, especially the cut scenes. It completely ruined my gameplay experience especially when CG scene lags or was missing. I decided to buy only original games from then onwards and stopped downloading pirated games for good ever since.












The List
  1. Shin Megami Tensei: Persona
  2. Disgaea: Hour of Darkness
  3. Final Fantasy Tactics
  4. Tekken 6
  5. Warriors Orochi 2
  6. Dynasty Warriors Strikeforce
  7. Disgaea Infinite
  8. Final Fantasy Dissidia
  9. Castlevania: Dracula X Chronicles
  10. Final Fantasy Crisis Core

It's certainly not the greatest collection of original games, but I'm proud of it! It's little things like this that defines me and every other gamers out there.

Totem Mania

Back in July 2009, the summer break in between semester 4 and 5, I was called up by my mentor and sifu in games programming, Buzz, to participate in a 30 hour games development competition called Code-A-Thon held in Singapore. We were forming the most optimized team consisting of our batch's best programmers, artists and designers.  
























































The Team
Bryan
  • Team lead
  • Designer
  • Sound programmer
Joseph (Joe)
  • Lead programmer
Adrian
  • Lead artist
Umar
  • Artist
 Plentiful
  • Programmer
  • Level designer

The Story
Two totems travel around the world to find their missing totem friends after being abducted by aliens.

We did won the Best of Show award and also 5 Acer netbooks for ourselves. This event marks the first time I worked with Joseph, the awesome programmer, who turned out to be one of my best friends now. The game consist of only 1 level initially, but later on expanded into 3 levels with more feature with a little help from more friends.

Nicholas
  • Artist
Akila
  • Artist
Muz
  • Programmer

Here's the official Facebook page (Totem Mania on Facebook) and download link (Download Zip).