Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/jkh2/Primordial-Sim/llms.txt

Use this file to discover all available pages before exploring further.

The Evolve tab determines whether offspring can differ from their parents, how frequently mutations occur, and which of the four genetic traits are eligible to change across generations.

Mutation controls

SettingTypeRangeDefaultDescription
Enable MutationCheckboxOnMaster toggle. When off, offspring are genetic clones of their parent regardless of individual gene toggles.
Mutation RateSlider0 – 0.5 (step 0.01)0.15Probability (per enabled gene, per reproduction event) that a gene value mutates. 0.15 means each enabled gene has a 15% chance of changing.
Mutation StrengthSlider0.01 – 0.5 (step 0.01)0.20Range of a single mutation. The actual change is (random() - 0.5) × mutationStrength, so 0.20 means a shift between −0.10 and +0.10 per event.
Mutation Strength above 0.4 causes rapid random drift. Gene values can swing far from their initial range within a few generations, potentially destabilizing all species simultaneously rather than producing directed selection pressure.

Per-gene toggles

Each gene can be individually frozen. A frozen gene is still inherited by offspring — it just never receives a mutation delta.
GeneDefault ToggleWhat freezing it does
Speed GeneOnLocks movement speed at its initialized value. All speed variation across organisms reflects Starting Size and Organism Speed slider values only.
Aggression GeneOnLocks hunt/flee bias at its initialized value. Predation behavior is fixed; ecological balance comes entirely from food supply and size dynamics.
Efficiency Gene (metabolism)OnLocks metabolic rate at its initialized value. Energy consumption per unit time cannot evolve; organisms neither become more nor less efficient feeders.
Perception Gene (sight range)OnLocks perception radius at its initialized value. Organisms cannot evolve better or worse awareness of nearby food, prey, or predators.
Freeze the Speed Gene and Aggression Gene together to isolate Efficiency and Perception evolution. This lets you study how metabolic optimization and sensory range co-evolve without the confounding effect of arms races in raw speed or aggression.

Reproduction mutation logic

When an organism reproduces:
  1. Each offspring inherits the parent’s exact gene values as a baseline.
  2. If Enable Mutation is on, each enabled gene is evaluated independently:
    • A random number in [0, 1) is drawn.
    • If it is less than mutationRate, the gene mutates by ±(random() × mutationStrength).
  3. Disabled genes skip step 2 entirely — they pass through unchanged.
For each enabled gene:
  if random() < mutRate:
    gene += (random() - 0.5) * mutStr
Because each gene is evaluated independently, it is possible (and common) for some genes to mutate while others do not in the same reproduction event.

Build docs developers (and LLMs) love