Level design

What is a level?

In video games, a level is typically defined spatially. A level, and the design of that level, includes all of the space that player can navigate at the current stage of the game.

In some games, the entire space is visible to the player at the beginning of the level. In many games, the player must navigate through the space to reveal the bounds of the level.

Pac-Man
Image source: https://en.wikipedia.org/wiki/Pac-Man

Most games consist of a sequence of levels.

Levels can represent a section of a larger space or world.

A player typically has to solve puzzles or defeat challenges to finish one level and advance to the next.

Levels tend to increase in difficulty.

From a technical perspective, levels are collections of data that collect a series of references to the components that make up a game.

This data provides a sort of recipe for the game engine to recreate the designers level in the build of a game.

The level files contains references to all of the media (images and audio files), scripts, fonts, scenes and other resources that make up the level.

godot file

This image is the text of the MainScene.tscn file from a Godot Engine lab.

godot file

In theory, a designer could create an entire level for Godot with nothing other than a text editor and knowledge of the location of various assets.

But for the sake of practicality, there are many tools that allow designers to create levels visually.

TIDE level editor
Image source: https://en.wikipedia.org/wiki/Level_(video_games)#Level_editor

In early video game development, interval editing tools were used for designers to create and add levels to be read by the game engine.

The level of sophistication of these tools has increased with the overall level of sophistication in games, allowing for the separation of roles among a design team. Level designers no longer need to be programmers to use the tools.

zzt level designer
Image source: https://museumofzzt.com/article/175/closer-look-640x350x16-a-history-of-zzts-graphics

Some games, like ZZT, began to share their level editing tools with players, leading to communities around user generated levels.

Popular games like Doom and Half-Life also shared tools leading to libraries of user created levels and full game mods.

stanley parable
Image source: https://en.wikipedia.org/wiki/The_Stanley_Parable

Mods like The Stanley Parable have been authorized by the makers of the platforms they were built on and gone on to become commercially sold and historically important games.

binding of isaac sprites
Image source: https://www.boristhebrave.com/2020/09/12/dungeon-generation-in-binding-of-isaac/

Another style of level design, procedural generation, uses code to generate new levels based on a series of choices.

Games made in this style are often called Roguelikes after the procedurally generated dungeon crawler Rogue, which used the process in part to make the game file smaller to make it more easily distributed on early internet networks in the 1980s.