A few weeks ago I wrote about a specific stall I hit while running a 24XX campaign. The players were doing exactly what the fiction called for, careful, low-profile infiltration, and the system had nothing to say about it. No risk meant no roll. No roll meant no mechanical output. The situation moved only as far as I pushed it, and I found myself increasingly uncomfortable with that authority.
My diagnosis then was that 24XX is built around a single design decision: roll only to avoid risk. That decision is clean and correct in the contexts it was designed for. The problem is structural. The system resolves pressure. It does not produce it.
I left that article with a practical resolution, switch systems for this campaign, but the design question stayed open. What would it look like to patch 24XX itself, without replacing it with something else?
Resolution and generation
The Fiction Engine Framework gave me the vocabulary to frame the gap precisely.
A fiction engine commits to one test: every rule must serve the fiction, either producing a fictional state or maintaining the conditions under which fictional states can occur. Administrative overhead that does neither is a candidate for removal. 24XX passes this test cleanly. Its resolution procedure is thin, diegetic, and direct. Roll, read the highest die, the fiction changes.
The gap is not in the resolution layer. It is in what the framework calls generation: the production of independent fictional facts that neither player intent nor referee judgment directly authored. In a standard play session with active risks, the dice fill that role, a disaster produces a consequence nobody chose; a setback creates a complication that has to be addressed. The dice act as a second voice in the conversation.
When risks disappear, in careful play, in quiet scenes, in the spaces between confrontations, the dice go silent. The second voice disappears. Generation collapses entirely into the referee, who must decide moment to moment what the world does next, unassisted. This is what I described in the stall article as carrying the entire structure alone. In the framework’s terms, the feedback loop closes over a single agent instead of two. Emergence of the relevant kind is not possible.
The seed
The fix was already in the SRD.
24XX includes one rule that does not fit the resolution pattern: the Luck roll. The GM can roll a die at any time to test luck, checking for (1–2) trouble or (3–4) signs of it. That is, in embryo, a generative oracle. It produces a fact, trouble or the shadow of it, that nobody authored. The problem is that it is underdeveloped. It is GM-discretionary, GM-triggered, and GM-interpreted, which means in practice it tends to function as the referee rolling for permission to do what they were already planning. It is not a second agent. It is a coin flip with a low threshold for ignoring.
The design task was to promote Luck from an occasional procedural flourish into a genuine generative organ, one that fires structurally, not by fiat, and produces outputs the referee is bound to honor.
The World Roll
The result is what the patch calls the Situation die, though for clarity I will continue calling it the World Roll here.
The trigger is the key design decision. The World Roll fires precisely when no skill roll applies, when an action carries no risk and would simply succeed. This makes it mutually exclusive with the resolution engine. When there is risk, the skill roll already produces fictional change; the World Roll would be redundant. When there is no risk, the skill roll is silent; the World Roll fills the gap. The two engines never run simultaneously, and the fundamental rule of 24XX, roll only to avoid risk, is untouched. The new roll answers a different question about a different subject.
The die is read from the fiction rather than tracked on a sheet. You pick from a scale, d4 for a chaotic situation, d12 for a stable one, based on how settled things are right now. This prevents the patch from turning into a pressure engine. A pressure engine works by making a resource visible and managed: the player attends to the economy, not just the fiction. Here the resource is the fictional situation itself. There is nothing to track between rolls. Each read is fresh, taken from the current state of things. As the situation heats up, you reach for a smaller die without being told to, the escalation is diegetic because the meter is the fiction.
Results follow the same pattern as the existing resolution ladder: 1–2 is trouble (an adverse fact surfaces), 3–4 is signs (trouble approaches without landing, and the situation is now less stable, the next die will likely be smaller), 5+ is calm (nothing new, the action lands). One roll, one fictional state, no chained resolution steps.
The binding rule is what makes this a second agent rather than managed fiat. The surfaced fact must be proportionate to what is established, leave something to act on, and follow from prior events. These three criteria, adapted from a heuristic Chris McDowall introduced in the context of open strategy games, are the discipline that separates a generative oracle from a referee rolling for mood. In the final rules text, McDowall’s acronym (RAT: Reasonable, Actionable, Traceable) does not appear. The criteria are stated as plain requirements in the fiction engine’s own vocabulary, and no attribution is needed because the name is gone. But the logic behind them remains the load-bearing rule of the whole patch.
Combat as a specialization
The same gap that appears in quiet infiltration appears in combat, but it takes a different form. In a fight the problem is not that nothing happens, plenty happens, but that the opposition’s actions have no mechanical source. Enemies have no skill dice in 24XX. The GM describes what they do, and that description is entirely authored. If the player group acts without triggering a skill roll, repositioning behind cover, reloading, calling out a warning, the world is silent. What the enemy does in that moment, and whether the fight escalates or begins to break, depends entirely on the referee’s judgment.
The combat module is the World Roll applied to a tactical situation. The die is read the same way, this time from how much the characters control the fight. Ambushed or scattered is d4. Evenly matched is d6. Holding an advantage is d8. Dominating is d10. The opposition broken is d12. The results are renamed to fit the context: Press (a new risk or obstacle appears, the fight grows harder), Shift (the opposition adapts, repositions, changes tactic), Opening (an obstacle clears, a gap appears, or the opposition is ready to break). But the structure is identical to the Situation die. It is the same engine, applied to a specific register.
The Opponents section, Behavior, Risks, Obstacles, provides the diegetic substrate the combat roll needs. Obstacles are the fiction engine’s stand-in for hit points. Each one is a visible fictional condition, armor, numbers, cover, a locked door, that must be addressed with a stated fictional reason before the fight can end. The total number of obstacles determines how long the combat lasts without tracking a number between rounds. Press results can surface new obstacles. Opening results clear them. The World Roll manages fight length by managing the fiction, not a counter.
Break-off follows from the same logic. When the opposition is cornered, the die would read high, and the roll comes up Opening, the fight has reached its natural conclusion. The enemy breaks according to their Behavior: they flee, yield, or bargain. That conclusion was already implied by how 24XX describes opponents. The combat World Roll makes it mechanically available rather than dependent on the referee’s moment-to-moment judgment about when the enemy has had enough.
The pressure engine temptation
The most important decision in designing this patch was what not to do.
The obvious fix for the generation gap is a resource economy: a heat track, a suspicion counter, a momentum pool. These work. Breathless, which is structurally adjacent to 24XX, solves its pacing problem this way. The die degradation and reset economy create a chain reaction where the resource state keeps pushing toward tension. It rarely stalls.
But Breathless is not a fiction engine. The Fiction Engine Framework classifies it as a pressure engine, a design where a managed resource economy sits above the transparency threshold by design, because the strategic visibility of that economy is the experience the game produces. Adding a heat pool to 24XX would not patch the gap. It would change the design family.
The World Roll stays below the transparency threshold because there is nothing to manage. You read the die from the situation, roll, and the result is a fictional state. The resource is the fiction. No additional layer is introduced between the player and the world.
Style and completeness
The final design question was not mechanical but formal: what register should the patch be written in?
24XX’s SRD is compressed. Each section is a handful of sentences. The prose is imperative and load-bearing; there is no explanatory meta-text. The goal was to write the three new sections, Situation, Opponents, Conflict, in that voice, so they read as native additions rather than commentary.
The first attempt was too compressed. It gave the die endpoints (d4 chaotic, d12 stable) but dropped the three middle rungs. It stated that Signs makes the situation “less stable” without explaining what that means mechanically. A first-time reader would understand the shape of the rule without being able to apply it: they would know that stability determines the die, but not how to read a precarious situation versus a manageable one. They would know that Signs has an escalation effect, but not that the effect is a smaller die on the next roll.
The final version restores all five rungs, named inline with commas, in the SRD’s style, and adds “the next die will likely be smaller” to the Signs result. Those two changes are the difference between a rule that reads clearly and a rule that only reads clearly to someone who already understands it. The rest of the SRD’s compression is earned because the SRD’s core concepts are widely familiar. New concepts have to carry their own explanation, even at the same density.
What the patch is
Three sections. About two hundred words. They sit in the existing SRD without displacing anything.
Situation installs the generative organ, the World Roll, as a structural procedure rather than a GM discretionary tool. Opponents provides the diegetic model that makes Conflict self-contained. Conflict applies the same die and the same result structure to a fight, giving the opposition an independent mechanical voice and giving the fight a natural arc and a natural conclusion.
The patch does not add hit points, initiative order, resource economies, or stress tracks. It does not modify the resolution procedure. It does not contradict the rule that you roll only to avoid risk. What it adds is the other roll: the one that fires when there is no risk, and that lets the world speak without the referee deciding what it says.




Really elegant. Great work!
Is the **word** format intended in the Opponents section instead of bold?
I noticed a typo in the footer, “releasedi under a Creative Commons…”
Are the solo parts also your own invention? I don’t see them in the SRD.