⚛️Atomic Game Design: An Overview

Joss Querné
7 min readFeb 18, 2024

--

As a Designer, I don’t believe we design mechanics, levels, or ingredients. We design parts of a whole system which we call a game. The difference is subtle, but the key to understanding what’s our job. But to design a system, we should understand how the parts create the whole. An effective methodology for this is Atomic Design.

❓What is the Atomic Design Method?

Atomic Design is a methodology for interface design systems invented by Brad Frost. It breaks down interfaces into reusable smaller parts. From Pages, the whole, to atoms (and also tokens), the smallest unit. Rather than being a linear process (going from bottom to top), It’s a mental model to deepen the understanding of a system.

🆙 Benefits of breaking down into atomic level

But why break down a system? There are multiple benefits:

  • Keep things consistent: By identifying small parts you will be able to reuse them in different contexts, reducing the cost and enhancing the system coherence.
  • System Analysis: Better understanding of the parts and how they influenced the whole
  • Same Terminologies and Taxonomy in a Team: Everyone has their way of naming and categorizing things, but sometimes not backed up with any clear definitions. We need a variety of minds, but we also need to understand each other.

This one is especially true in Game Design. We don’t all have formal training and it’s okay! We need different profiles! But I find the sentence “If you name almost everything a mechanic, then nothing is” very true.

  • Fast Iterations and at different levels: Be able to iterate from micro to macro level rapidly and easily. It’s easier to change a smaller part than the whole final design.
  • Facilitate content growth: The content of today will only represent a small part of tomorrow’s. Be able to target at which level to add, and where we need to make the system scalable and templatable.

🎮 Application to Game Design

By applying an atomic methodology to game design, we can achieve a scalable game system and a better understanding. Different parts can be identified, ranging from a macro point of view to a micro.

Game Metrics the smallest unit of the system, can be categorized into Atomic Parameters that will form different types of Challenges. Those Challenges can be templatized into different Gameplay Ingredients assembled to create LD Patterns. Finally, these Patterns are placed sequentially to form playable Levels.

For the sake of this article, I’ll be taking Mario as a simple example to take a closer look at these different parts:

🏢 Levels: The combination that creates the game’s overall structure, the macro flow.

Abstract view of a level (sequential)

— — — — — — —

🔣 LD Patterns: Re-Usable blocs, ready to be combined. They define the difficulty from a macro point of view.

Abstract view of individual Patterns (not sequential)

— — — — — — —

🧱 Gameplay Ingredients: Gameplay Elements, the main components of the game. They put Gameplay Mechanics into action.

Abstract view of individual ingredients

Now we dive into the atomic parts!

— — — — — — —

🛠️ Challenges: How the ingredient puts gameplay mechanics into action. What is the micro objective at this moment? What mechanic is being used? What skills is the player using?

Challenges for each ingredient

Each challenge can be further divided into smaller parts to better understand the whole.

Micro Objectives: State of the system that the player must attain.
Example: Crush goomba (Death State)

Mechanics: Direct interaction between the player and the game system
Example: Jump

Micro Challenges: Player action using the tool at their disposal.
Example: Press the A button at the right moment and for the right amount of time to jump.

Inputs: The required inputs
Example: The A Button

Skills: Player abilities, either Physical (Input Management), Mental or Social.
Example: Measurement (Physical) and Timing (Physical)

— — — — — — —

⚛️ Atomic Parameters & LD Characteristics: The different levers to adjust the difficulty of a specific player skill.

Parameter for jump on goomba timing challenge

Atomic parameters MUST be linked to specific player’s skills and challenges. For example, the anticipation time affects the timing skill for the challenge “Jump on Goomba”

— — — — — — —

🔢 Metrics: The golden values for these different parameters and characteristics. Their variations define the difficulty from a micro point of view.

These values define exactly how atomic parameters are influenced. You should be able at this point to identify the difficulty of a metric and define different variations (No Case, Easy, Medium, Hard, Impossible)

🔎Example — Portal 2 Custom Level

Now that we have seen a simple example of atomic game design used as a mental model. Let’s see how we can use it as a process when designing. (one of MANY ways)

I am going to use a previous school project as an example: Custom Portal 2 Levels. Let me give you a brief overview before diving.

With a team of 4 students, we had to design 4 cohesive levels using Portal 2 Level Editor. Levels had to vary in difficulty from Easy (Introduction) to Hard (Mastery). I was responsible for the first Level which was the introduction of the different ingredients and challenges from all the other levels.

The Project was in 3 phases:

  • Pattern Prototyping: We had to prototype different patterns with a few selected ingredients. The objective was to find a wide variety of ways to combine the ingredients to create different challenges.
  • Level Planning: Planned/Documented the targeted experience for each level, what’ll be the pacing? The macro flow? The difficulty?
  • Final Level Creation: Created and Iterated over the level until handoff.

Let’s see the atomic design process I used.

Step 1 — Ingredients Selection

The first step in our process was to select our targeted ingredients. Our team chooses:

  • Laser Emitters aka “Emit a laser in a direction”
  • Laser Catcher aka “Switch On/Off an element in laser collide”
  • Refraction Cubes aka “Redirect a laser like a mirror”
  • Faith Plates aka “Jump pads”

Step 2 — Challenge Variations

The second step was to identify the different challenges I could create with these ingredients. Here is a sample of the personal document I used to reference these different challenges.

Using this methodology, I was able to identify that I could challenge the player to pile up refraction cubes to redirect lasers at the right height and spot. And also to challenge the player to use a cube as a step while redirecting a laser. It opened my mind to different possibilities.

Step 3 — Prototype Patterns, Iterate, Adjust

The third step was to create the different patterns using the ingredients and challenges I identified. Then I rationalized the design to find the different parameters and metrics I could change. Here is an example of a pattern.

You may wonder “Isn’t this pattern too hard?”. Yes, you’re right. It was the main feedback I got from my teacher. Although justified, I do not agree with this feedback.

My methodology for pattern prototyping is like crash testing. I choose a combination of metrics and parameters that makes the pattern hard.

I believe that when you prototyped, you must target the worst-case scenario, to truly understand the challenges. If you prototype for an easy-case scenario, you’ll not leave your comfort zone and only scratch the surface.

It’s always a good practice to test the worst-case scenario

Step 4 — Implement Pattern in Final Level & Adjust

With a wide variety of patterns, and with identified metrics. I could choose the one I wanted to implement in my final level and adjust the difficulty! Because I prototyped for the worst-case scenario, I understood the limitations of the player and could target easier metrics to introduce the challenges.

For this level, I retook the pattern I just showed you and used easier metrics and parameters.

☑️ Conclusion

Of course, this doesn’t represent the whole process for creating this level, but it does represent the part related to atomic design. This is ONE of many possible approaches to an atomic design process. I hope it helped you understand how you could apply it. To finish, I would advise using atomic design as a mental model in daily work rather than just a process, It will make you a better designer!

That’s it for me. Have a great day! 😁

--

--