Crime and Law¶
See Player/README.md for the verification-debt caveat.
1. The most important thing on this page¶
The warrant and arrest mechanisms are real, tested, and fully built. Nobody can currently
use them. There is no command to type — /warrant and /arrest don't exist yet, because
nothing in the game can resolve "the connected character named X" into an actual character
without an unwanted side effect (see
01_CHAT_AND_COMMANDS.md §3).
On top of that, no policy decides who's allowed to police whom — even once a command
exists, issuing a warrant or making an arrest currently always succeeds mechanically, because
no "is this person actually a cop" gate has been plugged in yet
(17_CRIME_FRAMEWORK.md §1).
This mirrors the original game's own architecture deliberately: remove the policy plugin, the
mechanism still exists, nobody's authorised to use it.
2. What arrest actually does, once it's reachable¶
An arrest sets a release time — a fixed point in time, not a countdown that resets if you reconnect, fixing a real bug from the original where reconnecting during a sentence restarted the whole thing. It consumes any active warrant on the target, and it permanently destroys any weapon in their inventory — the original never stored confiscated weapons for return, and this keeps that behavior rather than inventing a locker system that didn't exist (17_CRIME_FRAMEWORK.md §3).
Not built yet: any actual restraint — no slowdown, no ammo stripping, no jail teleport, no automatic release when your sentence ends. All of these need a working-directions/position system this codebase doesn't have. An "arrested" character today is a data flag, not something you'd feel in-game.
Also not built: knocking someone out, tying them up, bleeding, lockpicking, and contraband — each needs a system (physics, a Health service, a lockable door, a dedicated world entity) that doesn't exist yet (17_CRIME_FRAMEWORK.md §5).
3. The laws noticeboard¶
This one's simple, and deliberately so. There are ten law slots, free text, editable by
whoever holds the law.edit permission (originally the Mayor specifically; here it's
whichever permission an operator chooses to grant), with a 120-second cooldown between edits.
Read them with /laws; edit one with /setlaw <index> <text> — see
01_CHAT_AND_COMMANDS.md.
Nothing in the game reads the laws to enforce anything. This is intentional, not a gap:
"The laws are not enforced by code at all. Nothing reads them. They exist so that police can point at them and players can argue about them. This is the purest expression of the design philosophy in the codebase: the framework provides a noticeboard, and the players provide the legal system." — 18_LAW_FRAMEWORK.md §1
If you want a law to actually mean something mechanically, that has to be built as its own permission check or event handler elsewhere — the noticeboard itself will never gate anything.