1. Game Development
  2. Level Design

How to Design Levels With the "Super Mario World Method"

This post is part of a series called The "Super Mario World Method" for Level Design.
The Super Mario World Method: Using Evolutions and Expansions

A couple of years ago, I wrote a book analyzing every level in Super Mario World (1990), where I identified the systematic way in which most of the game’s levels were created. Super Mario World is a classic and worth studying in its own right, but the lessons it teaches are broadly applicable to video game design. The "Super Mario World method", or "Nintendo method" of level design actually appears in all manner of games—even games that were not made by Nintendo.

In this tutorial, we'll look at a natural form of organization that evolved in level designs from the 1990s and beyond. As video game designers (especially Nintendo designers) got more and more practiced at their craft, they began to organize their content intuitively. Here, I'll explain how you can use all of these intuitive tricks deliberately in your own games.

My Example

I've created (and annotated) a Super Mario Maker level using this method; you can see it here:

Level ID: 0740-0000-00CD-4D5B

Challenge, Cadence, Skill-Theme

The actual name for the framework we’re looking at is “challenge, cadence, skill-theme” or CCST for short. I’m going to use examples from Super Mario Maker to explain the fundamental parts of the CCST structure because it’s a very convenient example. However, I have seen use of the CCST structure in Mega Man, Metroid, Portal, Half-Life, Super Meat Boy, and many other games. With practice, you will be able to identify these things in some of your favorite games, so that you can bring a greater level of organization and depth to your game’s content.


The first step lies in understanding and identifying challenges. A challenge is a short task, surrounded by periods of relative safety, which the player must complete all at once. Take a look at the example below, where Mario must jump on and off a moving platform above a bottomless pit.

A challenge where Mario must jump on and off a moving platform above a bottomless pit

On either side of the moving platform, the player can basically wait around without being in any danger. Once on the platform, however, the player has to be careful not to fall into the bottomless pit and lose a life. Thus, the challenge begins and ends on the safe, stationary ground to the left and right of the moving platform.

Let’s take a look at something more complex. In this next challenge I have added a second moving platform of a different type. For this challenge, the boundaries are still the solid ground on either side, but now the player has to jump across two kinds of platforms in order to make it safely through.

Mario level challenge with two moving platforms

Even though this challenge is larger, it’s still one challenge, because the player has to get through the two moving platforms in one action, before arriving at the safe challenge boundary on the right. 

Challenges can be quite large, but you must always remember that they are bounded by periods of safety where the player can (in a sense) “rest” for a moment before beginning the next challenge. Challenges and their boundaries are different in different kinds of games. For example, some challenges in a Sonic the Hedgehog game are much wider than those in a Mario game, because Sonic is usually moving much faster and the player needs the extra space to slow down, stop, or change direction. The principle is still the same, however.

Filling a Level With Challenges

It’s not enough to know what challenges are; a good designer also has to know how to fill a level with them. The level has to get more difficult, or else it will be boring. But at the same time, the designer can’t simply throw random challenges into the level; the level needs to feel coherent from challenge to challenge. This is where we get into the different types of challenges, and their relation to one another. 


Let’s take a look at how the two challenges I have shown you are related to one another:

Two Mario level challenges

What is different between the first challenge and the second challenge? They’re both based on moving platforms, but the second challenge has added something new: there are two different kinds of platform moving in different shapes at different intervals. All of the complexity comes from changes in type or kind. 

When the difference between two challenges is the addition of a qualitative element like this, the later challenge is called an evolution of the first challenge. Challenge two is a qualitatively more complex iteration of challenge one. 

Here’s another evolution to help clarify what I mean:

An expansion of the previous Mario level challenge

You can see here that all I’ve done is add an enemy that moves up and down in between the platforms. This is another qualitative increase in complexity, making it more difficult for the player to find the correct window of time in which to jump. 

It’s not too big a leap in complexity, though; Nintendo games tend to get more difficult one small step at a time. By the end of a difficult level, the gradual pile-up of evolutions creates the most difficult challenges, but the process is always accomplished one evolution at a time.


There is another way of increasing the difficulty of challenges while still staying true to the level’s original design idea. In the challenge pictured below, I have reiterated the first challenge but with one critical difference.

An expansion challenge in a Mario level

I have increased the distance between the stationary platform and the moving platform; because Mario has to jump a greater distance, the jump is slightly more difficult. This is what I call an expansion challenge. 

An expansion is an increase in some quantitatively measurable aspect of a previous challenge. In this case, the space between platforms has tripled. Let’s take a look at another expansion:

Two enemies two platforms in a Mario level

This challenge is just like the second evolution from earlier, except that I’ve doubled the number of enemies in between the two platforms. The jump is harder because the window for optimal jumping is shorter, but all of this owes to a simple quantitative change, from one Grinder to two. 

Expansion challenges are very easy to implement, because all that the designer has to do is add more of something that’s already there. For this reason, it’s easy for fledgling designers to overdo expansion challenges (although this is something we’ll go over in another tutorial).

Evolving, Expanding, and Resetting

Before you get started trying evolutions and expansions in your own levels, there are a few more guidelines to take note of. 

First, Mario levels (and their successors) don’t keep evolving in a linear fashion. Instead, levels often “reset” back to the beginning and then evolve in a different direction. 

Here’s an example of this in my level:

A moving platform with two enemies in a Mario level

Instead of sticking with the looping platforms and getting more complex forever, my level takes a different route. Here, the basic looping platform evolves into a linear moving platform. In place of jumping to get to a new platform, Mario has to jump to avoid enemies. 

The skill is the same—it’s all about jumping at the right time—but there is a new qualitative direction for the level. For the next couple of challenges, we’re going to use this new direction as the basis for our challenges. 

The next challenge carries on with the linear motion idea:

A Mario level with a moving platform spikes and multiple enemies

You don’t have to look too closely to see that this challenge adds both qualitative and quantitative changes to the previous challenge. The dip in the track path is a qualitative change, while the addition of extra enemies in the jump-over section is a quantitative change. This is both an evolution and an expansion. 

In Super Mario World, challenges that both evolve and expand their ancestor are about as common as challenges that do just one of those things. 

Finally, my level ends with this challenge, which brings back the earlier looping platforms:

A Mario level with two moving platforms and a Grinder

This is a somewhat common strategy, in which the two evolutionary branches of a level are brought together at the end. Here we have the looping and linear tracked platforms together for a final, climactic challenge.


At this point, I want to come back to the definition of a cadence. A cadence is the way that all of the challenges in a level relate to one another. 

To illustrate this, I have created a map graphic that explains how my example level works:

A map graphic illustrating the challenges in a Mario level

As you can see, this level breaks down into two evolving branches, or what I call the “fork” cadence, with a rejoining motion at the end. 

Even within Nintendo games, and within Super Mario World itself, there are a variety of cadences:

Various cadences in Super Mario World levels

There are more cadence styles than what you see here in other games from other developers. This means that the cadence structure doesn’t restrict your creativity as a level designer—it actually enhances it. 

The CCST framework is merely a tool for helping designers to keep their creative work organized and coherent. Evolutions and expansions can be applied to virtually any game or game mechanic. Cadences are a way of understanding naturally occurring patterns in the design of levels. 


Although I named the above  concepts as part of my research, everything that I discuss in this article (and its follow-ups!) is something that I observed occurring naturally in the design of classic video games. Theory is not more important than practice, and there is no perfect recipe for level design. That said, the CCST structure can and will help you to improve and organize your best work.

Next: Learn how to use evolutions and expansions in your level design.

Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.