A systems-design devlog for BAKERRRR, a pygame-first systemic crime sandbox roguelike written in Python. The author reached the point where describing it as a list of planned systems feels less accurate than describing the simulated world that already exists — everything drawn procedurally in code, nothing from a conventional sprite sheet.

The core thesis is that crime should be epistemic — driven by what the world actually knows:

  • Witnesses can know a crime happened without knowing who committed it.
  • Descriptions degrade with distance and poor light.
  • Justice can arrest the wrong person if clothing, build, location, and timing match closely.
  • Disguises, framing somebody else, and plain bad luck matter — without the game inventing fictional crimes to justify an arrest.

The simulation runs deeper than NPC schedules. NPCs have names, relationships, memories, jobs, and their own ideas about what they should be doing — they work, commute, shop, spread rumors, investigate trouble, and sometimes interfere with one another in ways the author never explicitly scripted.

Two flagship systems stand out:

  • Drones are physical machines — chassis, power, weapons, sensors, cargo, paint, and programmable procedure modules — used by the player and by NPC factions.
  • The Wire is a local-network hacking space with ICE, trace, buffer pressure, and physical-world consequences; organizations have durable production cultures that reach into the paint, software, interface theme, and even dialect of what they produce.

The world persists between runs: flora and fauna carry installation-local genetics with inheritable and recessive traits, breeding is natural and assisted, and culling declarations can push a species through scarcity into extinction — rarity raises both value and legal consequences.

The author is honest that it is a playable prototype, not a polished release — some economies are exploitable, some interactions too obscure, no formal progression yet. The ask is pointed: they want players who poke systems sideways, to surface the false accusations, reputation-poisoned blocks, and clever-or-disastrous drone routines the simulation produces.

The transferable lesson: let consequences fall out of information flow instead of authored plot, then let playtesting teach you what the systems actually do. Systems whose first meaningful playtest teaches more than another month of staring at code are worth shipping.