Skip to content
SpecEvo
← Blog

Your creatures evolve against their neighbours

June 13, 2026 · 5 min read

Evolution stopped happening in a vacuum

Until now, every lineage in a SpecEvo world evolved in isolation. When you applied a pressure, the engine looked at the creature, the challenge, and the world's conditions, and nothing else. The other species living in the same world might as well have been on different planets. That has changed. A creature now evolves against the real neighbours it shares its world with: the predators that could eat it, the prey it could eat, and the rivals competing for the same food.

What that looks like

Take Verglas, a frozen ocean moon. In its dark open water swim the Glint-Darter, a small plankton-grazing fish, and the Inkmantle, a larger hunting cephalopod. Apply a new-predator pressure to the Glint-Darter and you do not get a generic 'a predator arrived' story. You get a descendant that names the actual threat: it evolves darker, less conspicuous flanks to evade detection by the Inkmantle. The engine knew the Inkmantle was there, that it was large enough to hunt the Glint-Darter, and that they share the same water, so the adaptation is a response to a real animal, not an abstract one.

How the engine decides who your neighbours are

Two things were added to every species. A diet type, which is how it makes a living (producer, herbivore, carnivore, decomposer, or generalist), and a zone, which is where it lives (open water, the seabed floor, the surface, underground, and so on). When you evolve a creature, the engine gathers every other species alive in the same zone and works out the real relationships:

  • Threats: a carnivore or generalist large enough to eat your creature.
  • Food: prey or producers your creature is able to eat.
  • Competitors: other species with the same diet type in the same zone, fighting over the same resources.

Only species you genuinely overlap with make the list. A creature on the seabed floor is never told to worry about something living under the ice ceiling, because they never meet. That short, real slice of neighbours is handed to the engine, and if the adaptation is driven by one of them, it is named. The engine is not allowed to invent a neighbour that does not exist. For the roles and zones themselves, see the shape of a food web.

What it is, and what it is not

This is adaptation to the residents that exist at the moment you evolve, not a ticking population simulation. There are no birth and death rates running in the background. You can add a new species to a world at any time, and the next evolution will see it and respond. Add a predator and the grazers you evolve afterwards start growing defences against it. Diverge one lineage into a hunter and its cousins may begin arming themselves. The web builds itself from the choices you make.

Because diet type and zone can both shift as a lineage evolves, a creature that moves into a new zone inherits a whole new set of neighbours. A lineage that leaves the vents for the open water trades its old rivals for new ones, and starts adapting to them instead.

Why this matters

An ecosystem is more than a list of species. It is the relationships between them, and those relationships are where the most interesting evolution happens: arms races, niche partitioning, the pressure to specialise or diversify. SpecEvo now models that first crucial layer honestly. It sits alongside the rules that already keep evolution grounded, the trade-offs every adaptation must pay and the dead ends that drive lineages extinct.

Pick a world, add a predator or a grazer, and watch the next thing you evolve respond to it by name.

Build a living world