DEV Community

dev game
dev game

Posted on

Why Noita Bet on a Custom Falling Everything Engine: The Pixel-Simulation Tech Behind Roguelike Chaos

Noita works because Nolla Games refused to use Unity or Unreal. Three Helsinki developers built a custom C++ engine called Falling Everything where every pixel is a simulated material, then designed a roguelike around that simulation instead of bolting destruction onto a generic engine.

That bet explains both why Noita feels unlike any other roguelike and why it runs at all. A commercial engine in 2016-2019 could not update hundreds of thousands of interacting pixels at 60 fps without melting. A hand-rolled cellular-automata engine with a brutal optimization scheme could — but only if the whole game stayed low-resolution, 2D, and Windows-first.

The short answer: simulation is the game

Noita is a magical action roguelite set in a world where every pixel is physically simulated — burn, explode, melt, freeze and evaporate your way through a procedurally generated world using spells you craft yourself Steam.

The developer is Nolla Games, a company set up by three indie developers: Petri Purho — best known as creator of Crayon Physics Deluxe — Olli Harjola of The Swapper, and Arvi Teikari (Hempuli), creator of Baba Is You Steam Nolla Games. The studio is based in Helsinki and was formed in 2016 after the three had finished separate projects 80.lv.

Its engine is listed as Falling Everything Wikipedia. The official FAQ puts it bluntly:

Basically every pixel in Noita is made of some material. The different materials are simulated. E.g. Water will behave like a liquid, gasses will rise, sand will pile up, rigid bodies will rigid body.
We're using our own Falling Everything engine. Falling Everything Engine is an in-house labor of love. A true love child. Handcrafted in the finest C++ without exceptions, using only hand picked, organic, free license libraries. Noita FAQ

Noita was first available in early access on 24 September 2019, with full 1.0 on 15 October 2020 Noita Wiki. Critically it landed as Generally Favorable — Metascore 76 from 20 critics, User Score 8.1 Metacritic.

The niche-search signal is real: Google suggestions for this topic cluster around noita engine, noita engine language, noita game engine, noita physics engine and what engine is noita made in. Players are not searching for builds or endings here — they are asking what tech makes the trick possible.

What Falling Everything actually does

Forget polygons. Noita is complex cellular automata: every pixel follows rather simple rules, but combined they produce surprising results 80.lv RPS.

Purho's own summary is disarmingly simple:

  • Liquid pixels first check if they can go down. If not, check left and right.
  • To make liquids have different densities you just compare densities when figuring out if you can go down — then swap the pixels.
  • Fire looks in a random direction to see if it can ignite that pixel. Oil is flammable, water is not, so fire spreads in oil but stops at water. Trying to ignite water converts it to steam instead.
  • Gases are inverted water: check up first, then sideways RPS 80.lv.

On top of that run simplified simulations of chemical reactions, electricity, thermodynamics, plus Box2D physics built into the world that let you throw or kick objects for collision damage Wikipedia. Static stone does not simulate until it needs to: when an explosion hits, the engine looks at collided pixels and turns good candidates into collapsing sand materials, or carves rigid bodies out of them and lets them fall — each pixel in a rigid body knows which body it belongs to and its location inside it, recalculated if the shape is cut in two 80.lv.

That lineage is explicit. Noita is inspired by underground classics such as Liero, falling sand games, and modern roguelikes Noita Wiki, particularly The Powder Toy Wikipedia. Rock Paper Shotgun places Noita's complexity somewhere beneath Powder Toy and above Powder Game, and notes one early prototype was a Black & White-esque god game where you performed miracles via pixel-physics spectacles RPS. Falling-sand games as a genre are typically 2D particle or cellular-automaton engines simulating interacting materials in a sandbox Wikipedia — Noita is listed as the hybrid that blends that sandbox physics with roguelike RPG mechanics Wikipedia.

Why a custom engine was mandatory, not vanity

A Unity GameObject per pixel would have been suicide. The team kept performance in mind from day one with profiling, then solved the core multi-threading contradiction — falling-sand must update bottom-up, which is a terrible fit for threading — by dividing the world into 64×64 chunks with dirty rects.

Only chunks where something moves get updated. To thread that safely, the world updates in a checker pattern, four passes: each pass picks every other chunk and allows pixels to move within that chunk plus 32 pixels in each cardinal direction, forming isolated crosses so no two threads touch the same pixel. Four passes cover everything without atomics or locks 80.lv.

My read — and this is interpretation, not a dev quote: the Holy Mountain is a thread-safe zone in game-design form. In code, Nolla isolates simulation islands so threads do not collide. In design, they isolate wand-editing to Holy Mountains between biomes, where you can modify wands safely. Both are the same philosophy: let chaos run everywhere, but give the system a locked room where structure can be rebuilt. Commercial engines sell you safety everywhere; Noita buys speed everywhere and rents safety in small chapels.

Two other constraints prove the custom-engine logic:

  1. Low resolution is the moat. Pixel simulation only stays affordable because Noita stays deliberately coarse and 2D. An HD or 3D version of the same idea would explode the pixel budget. The retro look is not nostalgia — it is the performance budget made visible.

  2. No-exceptions C++ plus only free-license libraries is supply-chain control. For a three-person team planning years of early access, avoiding exception overhead and proprietary middleware means no black-box updates, no per-seat fees, no console-port middleware tangle. It also explains the Windows-first footprint: minimum Dual Core i5, 4 GB RAM, 512 MB VRAM with OpenGL 3.0 support, recommended more cores Steam. More cores directly buys more checker-pattern threads.

What it gained: chemistry replaces platforming

Rock Paper Shotgun's review nails the inversion: in Spelunky, gravity is the enemy and physics kills you; in Noita, gravity is your friend — you have a recharging jetpack, no fall damage, and gravity rushes you toward each exit. Instead, chemistry drives empowerment and death RPS Review.

Oil floats on water. Oil catches fire. Heat evaporates water into steam. Steam condenses on ceilings into rain that extinguishes fire. You can be coated in toxic gunge with no water in sight, then realize your only survival chance is to zap the flying enemy attacking you and bathe in its goo RPS Review.

My take, distinct from most reviews that call this emergent fun: Noita forces players to unlearn platformer literacy and learn chemist literacy. Platformers teach you to read shapes — gaps, spikes, patrols. Noita teaches you to read materials — what is flammable, what conducts, what swaps density with what. Deaths the community calls being Noita'd — sudden, unfair-feeling deaths even early, including from your own Giga Disc that boomerangs back and digs through terrain toward you Wikipedia — are usually legibility failures, not RNG cruelty. You misread a pixel the way a junior programmer misreads a type. Once you see it that way, the learning curve feels less like grinding and more like debugging.

The world structure reinforces this. The main path stacks eight biomes top to bottom — Mines, Coal Pits, Snowy Depths, Hiisi Base, Underground Jungle, The Vault, Temple of the Art, The Laboratory — separated by Holy Mountains for shopping and perks Wikipedia. But because every pixel can be destroyed, levels are not levels: you can tunnel between biomes, bypass Holy Mountains or entire levels, and head sideways into a wider open world with secrets and parallel paths RPS Review. Destruction is progression. No commercial tilemap system would let you break its own pacing that thoroughly without flagging it as a bug.

What it cost: fiddly UI, brutal onboarding, Windows-only

Custom tech means custom tools, and it shows.

Wands are containers, spells are contents. You find randomly generated wands around the world, then move spells between them in Holy Mountains (or anywhere with Tinker with Wands Everywhere). Stats — cast delay, recharge time, mana max, mana charge speed, capacity, spread, spells/cast, shuffle — determine how spells fire, with modifiers like Ping-pong path or Chainsaw (which removes cast delay) creating wild synergies Wikipedia Noita Wiki Wands. The system was inspired by deck-builders like Dominion: shooting draws cards from the wand 80.lv.

Reviewers consistently note the editor is powerful but unclear, numbers are granular to the point of intimidation, and starter wands feel weak — you chip at early enemies for two or three hits while trying to farm gold without dying RPS Review. Combine that with permadeath where a 30-minute run can end because you test-fired an unknown wand once, and you get the exact split in the scores: 95s praising endless depth alongside 45-60s calling it monotonous or RNG-dependent Metacritic.

Other costs are structural: Windows PC focus (plus Steam Deck via Proton), no native console simulation parity at launch, and a world-generation system that leans on hand-authored control — Herringbone Wang Tiles, pre-made bricks laid in a herringbone pattern to hide seams, with 50% randomization of enemies and items inside 80.lv — rather than pure noise. That control gives pacing but limits biome variety compared to a true infinite generator. The slow-life touches — grass growing on soil, moss on rocks, freezing water, melting snow, decomposing corpses — exist but are rarely noticed in play, so the team deprioritized them 80.lv.

What indie devs can steal (without cloning the engine)

  1. Make destruction the economy. Noita's gold, wands, and flasks all come from interacting with materials. If you build a sim, tie every currency to it. Do not build a sim as wallpaper over a conventional shooter.

  2. Budget pixels, not polygons. Pick a resolution your simulation can afford, then defend it as art direction. Noita's chunk-dirty-rect-checker method is the real lesson: profile early, update only what moved, and design safe-edit rooms (Holy Mountains, loadouts, deck screens) where players can think without the sim punishing them.

  3. Teach materials explicitly. The starter experience should be a chemistry tutorial, not a movement tutorial. Show oil vs. water, fire vs. steam, acid vs. rock in the first five minutes. Most Noita guides bury this; the game still does too.

  4. Let players break your pacing — then reward it. Tunneling past a level feels like cheating, which is why players love it. Design secrets for diggers, not just walkers.

  5. Keep your toolchain boring where it matters. No exceptions, free libraries only, Wang Tiles for generation, Dominion for wand logic — all proven ideas. Save novelty for the one thing players will remember: everything melts.

Train the same muscles in your browser

You cannot run Falling Everything in a browser tab, but you can practice the three skills Noita demands — dig and rebuild, manage open-system chaos, and think in mazes.

If you like the dig-and-rebuild loop, try Mine Clone, where every block can be broken, collected, and reused across procedurally generated caves and mountains. It is blocky where Noita is pixelly, but the instinct is identical: see terrain as inventory.

If you want open-system destruction without permadeath pressure, Sandbox City – Cars, Zombies, Ragdolls gives you a reactive city where cars, collisions, and ragdoll effects cascade unpredictably. Use it to practice the Noita habit of asking what happens if I drive through that instead of around it.

And if wand-building feels overwhelming, warm up with tighter maze logic in Bad Ice Cream, where you break and create ice walls to trap enemies and open shortcuts. Noita's Holy Mountain edits are the same puzzle under fire: reshape the maze, control the chase, leave yourself an exit.

For pure cause-and-effect catharsis between runs, Stickman Destruction 3 Heroes is a useful palette cleanser — launch, crash, and watch ragdoll physics chain-react, the low-stakes version of testing an unknown wand.

Bottom line

Noita bet that players would rather learn chemistry than memorize jump arcs, and that three developers with a custom C++ cellular engine could out-simulate entire middleware stacks by staying small, coarse, and exception-free. The cost is onboarding friction and platform narrowness. The payoff is a roguelike where the world itself is the final boss — and where every death teaches you to read pixels like code.

FAQ

What engine does Noita use?
Falling Everything, Nolla Games' in-house engine handcrafted in C++ without exceptions using free-license libraries Noita FAQ Wikipedia.

Who made Noita?
Petri Purho (Crayon Physics Deluxe), Olli Harjola (The Swapper), and Arvi Teikari (Baba Is You), plus collaborators including Antti Tiihonen and composers From Grotto and Niilo Takalainen Steam Nolla Games.

When did Noita release?
Early access 24 September 2019, 1.0 on 15 October 2020 Noita Wiki.

Why is Noita so hard?
Permadeath plus simulated friendly fire — your own spells, collapsing terrain, and alchemy can kill you as easily as enemies, which is why veterans advise testing new wands in safe space and always carrying a digging and water solution.

Top comments (0)