I am developing a 3D platform game like Metroid Fusion with XNA. I have many classes for different elements as models, game screens, post-processing and so on. Now I want to start designing the scenarios but I think that the scenarios needed in a platform game are not as conventional.

I am very lost and do not know where to start and how to structure it.

  • \$\begingroup\$ What do you mean when you talk about "scenarios"? Are you talking about the story-line and different encounters? Your image gives the impression you're talking about the level- or environment-design. Also what do you mean when you say "how to structure it"? \$\endgroup\$
    – bummzack
    Commented Jul 27, 2012 at 18:12
  • \$\begingroup\$ In what phase is your game? \$\endgroup\$
    – DogDog
    Commented Jul 27, 2012 at 18:32
  • \$\begingroup\$ Sorry, bummzack you are right, I refer to the levels. Apoc, I only have the menu (and not yet complete). \$\endgroup\$
    – ReyLitch
    Commented Jul 27, 2012 at 18:52
  • \$\begingroup\$ Nobody knows it? \$\endgroup\$
    – ReyLitch
    Commented Jul 28, 2012 at 18:03

1 Answer 1


Most levels in 3D platformer games are built on a 3D grid. The old Tomb Raider games are very obvious about this. (Press forward and the character moves one square every time, you know you can jump 3 squares if you are running but only 2 if you are standing, etc.)

Even more recent examples, such as Darksiders 2 follow the same idea. The character has a defined set of abilities with regards to how far they can jump and run. The environment is built out of pieces that are relative to those measurements. Fluid animations will hide them.

Another thing to consider is that for the most part, you can simplify the movement paths in your game down to 2D when you are designing it. Consider the ball sections of Metroid Prime, or how most of the time you are moving along a corridor or climbing the side of a wall. You rarely need to turn 90 degrees in the jumping sections of those games. Usually that is reserved for the arena fights.

To make it easier to restrict the player from going off the expected path, newer games often severely restrict movement-enhancing items and abilities. Today, a grappling hook is only useful on specific points deliberately placed in the world. Contrast that to the hookshot in Zelda 64, which can be used on any wooden surface in the game. Other examples include only being able to wall-run or place portals on specific wall textures.

Some tips for designing a platformer/adventure game that can be applied to 2D or 3D:

  • Make a list of all the item and movement abiltiy combinations in the game. For each item on the list, brainstorm interesting combinations. Examples: Double-jump + Hookshot, can be used to grapple something extra far away. Hookshot + Glide, grapple up high and glide in any direction.
  • When you go to design a room, list all of the items a player is expected to have. Choose a subset of these. You don't want to use everything the player has in every room. Refer to your item combinations list for a set of interesting interactions to use in the room.
  • Sketch out how the player is expected to move through the environment in 2D on graph paper. You can add some twists and turns when you build it in 3D later if you need to. For example, if you are climbing around on the walls of a room the 3D version could turn at a corner and keep going.
  • Creating a 'theme' for each room can keep things interesting for the player. One room could use a certain item in every possible way. Another could demand a certain item to be used the same way in rapid succession.
  • Translate the sketch to your level editor and build the room.
  • Play test it. Hand someone else the controls and fraps their play session. Leave the room and then watch the video. It is important to see what they try without you there to provide hints.

Building modular rooms will make it easier for you to replace/cut/rearrange things based on play testing.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .