Skip to content
DECAYLIGHT
Plate R

The roster

Four creatures, each built to make the crew question one thing. Everything below is the model the game loads, with the state machine it actually runs — heights, senses and state lists taken from the shipping code rather than from intent.

Reconciled against the project's creature roster document, which cites the source file for every claim

The one rule

No creature ever reads a player position.

They perceive through a single interface that answers with a claim about where something was, stamped with the time it was formed, and decaying from there. Every answer has to pass a physical test first — range, a view cone, a line-of-sight raycast, a light level, a noise score. Break one of those and the answer stops coming, and the creature keeps walking toward where you used to be.

This is a build step, not a discipline. SenseAudit scans every creature source for scene lookups and fails the build if it finds one. It currently passes over 20 files with 7 on a documented allow-list, all of them contact or damage paths rather than search. It caught a violation in our own code the first time it ran.

The crew

01Built
Rook OperatorIdle · production model
Loop · muted

Rook Operator

The employee KHEPRI sends down. Colourful, expressive, entirely disposable.

Rooks are 1987 desert recovery workers on a memory-extraction contract they have not read carefully. Layered expedition clothing, wrapped scarves, climbing harness, charm cords, analog instruments and a resin hand torch, because digital equipment fails near the site and only flame stays reliable.

Customisation is deliberately broad: four body frames, five outfits, ten cloth colours, eight skin tones, six headgear sets, five masks, eight face tattoos, six charms and four wear states. That breadth is not vanity. Your friends have to recognise you in near-total darkness at a glance.

What a Rook publishes about themselves is one number. Exposure folds crouching, darkness, movement and carried flame together, and that number is the only thing the tomb gets to read. Crouch in the dark with the torch out and you are close to unreadable.

Show me your charm. — What? — SHOW ME YOUR CHARM.

Crew procedure, developed by players, not by us

360° turnaround

Rook Operator000°
Loading 0%

Record

Height
1.80 m
Publishes
Exposure
Source
Senses/Perceivable.cs

PerceivesCarries a resin hand torch. Hunted by everything below.

The constructs

02Built
AnubisApproach · production model
Loop · muted

Anubis

The Black Receiver · The Jackal Judge

Makes players questionLight and fire

He is not a chase monster. He walks toward warmth, and he is entirely uninterested in getting there quickly.

Three and a half metres, verified at runtime against a 3.4–3.6 m spec band, carrying a was-sceptre attached to his right hand at 2.9 m. He hunts through a dedicated heat field that holds two different things: live sources, which can be tracked continuously, and residue, a fading memory of where heat used to be.

So a lit torch draws him. A snuffed torch leaves a cooling trail he follows into an empty room. A torch dropped on the floor is a thing he walks to and stands over while its owner leaves.

His signature is not damage. He grabs a Rook and carries them toward the next brightest fire, which in practice is wherever the rest of the crew is standing with their torches lit, and holds them up in front of them. The rescue window has three exits: hurt him and he drops them, put out the fire that started it and the judgement stops meaning anything, or do nothing and he ends it.

The most effective thing he does costs one line of code. At Recognition the Animator is stopped outright — a dead halt, mid-pose, for half a second, before he moves.

A full stop of half a second before anything else happens.

AnubisBrain.cs, on the moment players panic in

360° turnaround

Anubis000°
Loading 0%

Record

Height
3.50 m
Sense
HeatField
States
11
Brain
AnubisBrain.cs

PerceivesHeat — not sound, not sight

States · 11

Dormant · Aware · Investigate · Recognition · Judgement · Holding · Display · Execution · Release · Interrupted · Dead

03Built
Folded WitnessCrawl · production model
Loop · muted

Folded Witness

Makes players questionSound

Its sight is deliberately crippled to a few metres. For a whole encounter it is navigating to a place a sound came from, not to a person.

Throw a pot down the left corridor and it crosses the ceiling to the pot. Go silent after being heard and it arrives where you were and starts searching. Stay silent and it never finds you at all.

It spends most of its life folded into corners and hanging from ceilings at about a third of the volume it should occupy, so unfolding is a real silhouette change rather than an animation. Waking is four deliberate stages — freeze, angle toward the sound, unfold one limb, then move — which exist so an attentive player gets several seconds of warning and an inattentive one gets a creature dropping off the ceiling onto them.

Its locomotion is built from one idea: wrong sequencing. The hand moves first, the elbow rotates after it, the shoulder catches up, and the torso folds last, several tenths of a second behind. It is a delay line, so motion travels the wrong way up the limb. No single frame is anatomically impossible, which is why it reads as unsettling rather than broken.

It grabs and hauls victims up a wall. It also spits venom for a quarter of a player’s health, with a reload — the ranged option, so it cannot be solved by standing across the room.

Observed in the labGiven one clatter 13.9 m away it closed to 0.2 m of the clatter point, believing Sound the entire time. Never Sight.

360° turnaround

Folded Witness000°
Loading 0%

Record

Height
1.55 m crawling
Sense
NoiseField
States
13
Brain
FoldedWitnessBrain.cs

PerceivesThe noise field, and essentially nothing else

States · 13

Folded · Listening · Turning · Unfolding · Traverse · Search · Spit · Descend · Lunge · Grab · Drag · Recover · Dead

04Built
RatApproach · production model
Loop · muted

Rat

Makes players questionTrust — and each other

It is not a small enemy. For most of a run it is an asset, and it keeps a per-player ledger of how you have treated it.

It fetches dropped objects, brings them back and drops them a metre short before backing away, follows the group at a distance, and stares at doorways nobody has opened yet.

Underneath it keeps a per-player trust ledger, and the ledger is the mechanic. Trust is earned slowly by being near it calmly and leaving things lying around; it is lost by charging at it. Hit it once and it does not turn hostile — it screams, runs, and remembers who. Ten minutes later it comes back and helps everybody except you. The crew works out that the rat hates one of them before they work out why, and that conversation is the entire point of the creature.

Each rat is rolled at spawn into one of five temperaments, never shown to the player: Loyal, Nervous, Opportunistic, Corrupted, and the worst one, Pretender, which behaves exactly like Loyal until the moment it does not. Betrayal is a probability weighted by temperament, grudges held, how far the tomb has been pushed, and whether there is anything nearby worth taking. A run where the rat stays loyal has to remain possible, or the whole thing collapses into a known trick.

Its ears track the last thing heard, not players. They twitch toward a voice across the room and are still pointing the wrong way when somebody quiet walks up behind it. Anything else would let players read the rat’s ears to find their teammates.

It comes back and helps everybody except you.

RatBrain.cs, on grudges

360° turnaround

Rat000°
Loading 0%

Record

Height
0.82 m to the ear tips
Sense
NoiseField
States
17
Brain
RatBrain.cs

PerceivesThe last thing it heard

States · 17

Hidden · Watch · Frozen · Approach · Sit · Follow · Fetch · Carry · Deliver · Warn · Retreat · Flee · Steal · Stalk · Pounce · Disengage · Dead

05Built
Pack CrawlerHaul · production model
Loop · muted

Pack Crawler

Makes players questionGreed

A scavenger, not a killer. Every number is set to keep it that way. What it does instead is take your things.

It hits for very little, it strikes only to make room, and the moment it is frightened it runs. It prefers unattended objects, it prefers valuable ones, and it carries them to a nest somewhere dark.

The nest is the good part. It is not a spawn point; it is a place the creature chose, and it accumulates. A crew that chases a thief and loses it can open a door half an hour later onto everything it took from them, plus whatever it took from the expedition before theirs. Nothing generates that. It is simply where a scavenger has been putting things.

Whether an object is unattended is judged against the crawler’s own belief, not against where anybody actually is. A crawler that has heard nothing recently will walk straight up to your feet and take the relic while you watch it.

Cornered, it sheds loot rather than fight, which is the crew’s win condition against it and is reachable without killing the thing. Its silhouette has one job: to be mistaken for cargo. Frozen, with the covered head hanging and the pack shifted over, it should read at distance as a pile of crates. The moment it lifts that head is the moment a player realises what they have been looking at, so the lift is slow, single, and never repeated while they watch.

Observed in the labLeft alone in a room with five relics it stole all of them and built a nest worth 120 credits.

360° turnaround

Pack Crawler000°
Loading 0%

Record

Height
1.2 m crawling · ~2 m reared
Sense
MonsterSenses
States
13
Brain
PackCrawlerBrain.cs

PerceivesUnattended objects, judged against its own belief

States · 13

Scavenge · Inspect · Collect · Load · Haul · Stash · Freeze · Assess · Withdraw · Threaten · Flee · Shed · Dead


Plate C

Four creatures, four different arguments

The roster is built so that each one produces a different sentence at the table. That is the test a creature has to pass before it earns a slot.

Each creature, the thing it makes players question, and what they end up saying
CreatureQuestionsWhat players say
AnubisLight and firePut the torch out.
Folded WitnessSoundShut up. Don’t move.
RatTrust — and each otherIs that thing helping us?
Pack CrawlerGreedIt stole the relic — get it!

Plate D

Designed, not built

These are in the canon document and have no behaviour in the build. They are listed here rather than dressed up, because a roster page that cannot tell you which creatures exist is not worth reading.

  • The Mouth Colony

    Ammit

    A colony of mouths that share hunger, forming where a room has been too quiet. Modelled; no brain.

  • The Red Lioness

    Sekhmet

    A learnable patrol route whose predictability breaks the moment somebody bleeds. Modelled; no brain.

  • The Door Scribe

    Ibis Construct

    Redraws door symbols and room connections while unobserved. It cannot alter architecture while it is being watched.

  • The Coil Below

    Apep

    Occupies the cracks between rooms and learns repetition. Use the same safe route often enough and it starts appearing on it.

  • The Stillwater Mouth

    Sobek Receiver

    Reads water displacement rather than voice or light. Flooded sections only.

  • The Unnamed

    Wears a clone of a real player’s appearance profile and corrupts exactly one property. Needs networked customisation and voice mimicry first.