Lifecycle: HISTORICAL (published KEEP). For the promoted reader route, see Evolution C# parity repair.

Evolution C# parity repair (2026-02-16)

Scope

Aligned games/evolution with original C# defaults and control semantics to remove immediate collapse behavior and improve editor baseline reliability.

Root causes

  1. Preset divergence: TS used custom walker/spider topology instead of C# defaults (FROGGER, SPIDER).
  2. Early-generation output bias: bootstrap gait assistance altered raw NN outputs.
  3. Physics mismatch: mass/constraint tuning and legacy bone semantics differed from C# behavior.
  4. Empty preset state reset was incomplete when switching presets.

Fix summary

  • Ported canonical C# preset graphs for Frogger/Spider with deterministic C#->TS coordinate mapping:
    • file: games/evolution/src/engine/creature-design.ts
    • added createFroggerPreset, C# source structs, CSHARP_COORDINATE_SCALE, preset importer.
  • Added legacy bone metadata and mass parity handling:
    • BoneData.legacy?: boolean
    • legacy mass rule in physics: (2 * weight - 1) + 1 equivalent.
  • Re-tuned Matter config for articulated stability:
    • higher solver iterations; tighter hinge; bounded muscle spring/force.
  • Disabled bootstrap gait assistance for strict C# parity baseline:
    • file: games/evolution/src/engine/simulation.ts
  • Editor preset and reset updates:
    • default preset switched to Frogger.
    • preset menu now Frogger/Spider/Empty.
    • Empty resets id counter and camera offset.

Deterministic validation harness

  • Added script: games/evolution/scripts/validate-deterministic.mjs
  • Added npm script: validate:deterministic

Validation output (pass):

  • Frogger neutral spawn integrity
  • Frogger oscillating articulation persistence
  • Spider neutral spawn integrity
  • Spider oscillating articulation persistence
  • Empty preset first-click placement + overlap guard

Commands executed

cd /home/usr/funday/games/evolution
npm run validate:deterministic
npm run build

Evidence artifacts (Playwright)

URL tested: https://funday.gg/games/assets/evolution?embed=1

  • evolution-empty-first-click-20260216T1509Z.png
  • evolution-frogger-preset-20260216T1510Z.png
  • evolution-frogger-running-20260216T1510Z.png
  • evolution-spider-preset-20260216T1511Z.png

Ask Docs

AI assistant to help answer questions about the documentation. Answers are read-only and cite docs/source.

Hi! How can I help you with the documentation today? Answers are read-only and cite docs/source.

Ctrl+Enter to send