RPG OS v0.9.4 — universal encounter generation
An encounter generator built around named human moods and venue-specific activities cannot serve an unfamiliar creature, machine or setting. v0.9.4 provides an optional reusable procedure: establish the entity's actual capacities and circumstances, obtain direction and intensity for eligible gaps, then have the GM assign concrete current states before dependent behavior.
What changes
The five-field temporary basis remains Condition and mode; Priorities and constraints; Perception and appraisal; Attraction; Engagement stance. The optional helper uses two independent d6 per eligible unfixed condition, initial interpersonal appraisal or overall attraction:
| 2d6 total | Direction and intensity |
|---|---|
| 2–3 | Strongly negative |
| 4–5 | Negative |
| 6–8 | Neutral or mixed |
| 9–10 | Positive |
| 11–12 | Strongly positive |
At most three determinations use six independent faces. The GM fixes the eligible facet before input and fills a concrete compatible value after its result, before the entity acts. There is no six-mood catalogue, custom outcome list for each entity, or additional intensity/subtype roll. The middle band must establish a concrete state, not an empty neutral placeholder; strong values remain within supported capacities and create no compulsory response.
Priorities and constraints come from the entity's own actual aims, processes and circumstances. Perception stays factual. Nonsocial entities use their sourced sensing, control and response mechanisms. Engagement follows from the complete basis, without another willingness roll. Attraction remains distinct from trust, availability and participation.
ENGINE/_shared/ENCOUNTER_GENERATION.md owns the reusable method. MODULE binds real world and entity sources; INSTANCE retains current facts. Generic activation, retention and setup guidance uses actual participation rather than a particular venue. Prescribed first-focus portrayal retrieval, group scale, active-state reuse, genuine deactivation and consequential memory remain in place.
Adoption and compatibility
Freeform is the only bundled selectable engine. It can explicitly select this helper through the accepted agreement; ordinary Freeform judgment remains the default. The helper is not another engine or an automatic dice policy. It changes no other engine's success checks, existing active baseline, resolved outcome, save schema, PC decision or autosave permission.
Existing campaigns retain their accepted methods. Use the upgrade procedure for a program update and recalibration for an accepted prospective method change. Supported v0.9.3 and earlier compatible records retain their identities and formats. Private modules, people, campaign bindings, source assets and audit transcripts are excluded from the public kit.
Verification
New checks cover the optional helper, five bands across all 36 independent dice pairs, input limits, source ownership and preservation of the existing lifecycle. Both GitHub workflows run the encounter suite and verify the committed unbound package. See observed verification for actual results and limitations.
Five small prompted synthetic rehearsals exercised an adult, sourced predator, controlled gates, bacterium and missing-source entity; the rolled cases were repeated under the final 2d6 scheme. These are bounded observations, not proof of natural-play or long-context reliability. Published v0.9.3 tags and assets remain unchanged.