Bloomforge

Worlds that keep
running when you
look away.

Bloomforge is an independent games studio in Doncaster, South Yorkshire, building simulation games you can pull apart and put back together.

Background: six affinities contesting one field · deterministic · seed 1337

01 The library

Small catalogue. Deep games.

One studio, one thing at a time, finished properly. Everything we ship is a simulation first — a set of rules that produce outcomes nobody scripted, including us.

Loading the library…

02 In development

Godloam

A top-down living-dungeon god game. You never place a monster. You dig, you flood, you warm a chamber, you let something in — and then you find out what the cave does with it.

Underneath is a full ecology: flora that needs the right moisture and temperature before it will grow, colonies that forage and starve and relocate, predators that hunt other predators, and six elemental affinities that change the ground itself rather than just the damage numbers.

Fire Water Earth Life Death Arcane

Read the full overview

Create conditions, not outcomes

You cannot spawn a creature. You can make a chamber warm, wet and dark, and see what finds it. Every population on the map got there by living there.

The world runs whether you watch or not

Colonies forage, breed, exhaust their patch and move on while you are three floors away doing something else. Nothing waits for the camera.

Consequences are ecological

Burn out a predator and its prey explodes and strips the moss and starves. There is no undo, only the next thing that grows in the gap.

Every rule is a file you can open

Species, flora, terrain, hazards, events — all of it is plain data the game loads at startup. The tools we build the game with are the tools you get.

03 How it's built

A simulation core, and a thin window onto it.

The game is two programs joined at a seam we police carefully. Everything that decides what is true lives in a C++ core that has never heard of a game engine. Everything that draws lives in Godot and is not allowed to decide anything.

Presentation
Godot 4 · GDScript
Cameras, interface, input, animation. Reads simulation state, writes nothing but commands.
Boundary
GDExtension bridge
A narrow, explicit surface. Every method, property and signal crossing it is declared by hand, and every value is validated on the way through.
Simulation
HeartCore · C++20, integer only
Ecology, mana, colonies, terrain, events. No floating point, no engine types, no dependency on anything that draws.
Content
Plain JSON packs
Species, flora, terrain, crises, factions and narration are data, not code. Loaded at startup, replaceable by anyone.
41,476
lines of simulation core
33,772
lines of tests behind it
741
automated test cases
178
content definitions, all data

Determinism is enforced, not hoped for

There is no floating-point arithmetic anywhere in the simulation layer. A check runs before anything compiles and fails the build on a single one. The consequence is that a seed and a list of commands fully describe a world: the same inputs produce the same cave, tick for tick, on any machine.

The core cannot see the engine

A second check fails the build if an engine header ever appears in the core. It keeps the simulation testable on its own, portable off Godot if it ever needs to be, and honest about where each responsibility lives.

Nothing changes the world by accident

World state is mutable only inside explicit commands. A third check enforces it. Every change to the map is therefore a thing with a name that can be logged, replayed and reasoned about.

Level of detail all the way down

Individuals where you are looking; cohorts and coarse patches where you are not; render-only stand-ins that never touch world state at all. A cave keeps simulating at full fidelity while you are nowhere near it, because most of it is being simulated cheaply.

A fixed hundred-millisecond tick

Ten ticks a second, 7,200 to the in-game year. Frame rate and simulation rate are entirely separate, so speed controls change how fast time passes without changing what happens.

Eighteen gates before anything is called finished

Determinism and boundary checks, two build configurations, the full test suite in both, replay and world-generation anchors compared against recorded baselines, a content report, a performance budget, and headless engine scenes that run the real build. A stage that can be skipped quietly is not a gate, so none of them can be.

04 Build log

Progress, including the parts that went badly.

Development notes as the game is made. Screenshots are captured as each pass lands, so the log doubles as a record of how it looked at the time.

05 The studio

One developer, one very complicated anthill.

Bloomforge is the studio name of Lattice of Dreams Ltd, an independent games company registered in England and Wales and working out of Doncaster, South Yorkshire.

The work is deliberately narrow: simulation games with a real model underneath, built slowly and tested hard, aimed at players who want to understand a system rather than be shown one. Everything is made in-house — design, engine work, tools and content.

A second project is written and paused. Godloam has the studio's full attention until it ships.

Studio
Bloomforge
Registered company
Lattice of Dreams Ltd
Company number
16780440
Registered in
England & Wales
Based
Doncaster, South Yorkshire
Founded
2025
Team
One

06 Get in touch

Press, publishers, funding, or a good question.

Happy to hear from press and content creators, publishers and funding bodies, and anyone who wants to argue about carrying capacity.

Contact

The fastest way to reach the studio is email. A full press kit, including the factsheet and downloadable assets, is on the press page.

hello@bloomforge.io

Press kit