v0.21: vocations.md + consent-discipline.md (vocation-system + consent-spine)

Mid-session checkpoint — late-evening paper-pair following the design-dialog
that articulated the end-to-end imperial-system architecture.

PAPER 1 — identity-and-personhood/vocations.md (NEW v0.2, ~440 lines)

The vocation-system paper. Codifies the substrate-level mechanic for how NPCs
and players accumulate capability through doing, gravitate toward tasks via
trait-alignment, and produce outcomes. Three substrate principles: adaptation-
as-substrate (anti-fixed-class; D&D class-lock and imperial vat-class as same
primitive at different layers); trait-emergent capability (identity-politics
extends to capability-politics); mathematical politics (the progression curve
geometry encodes the world's political claims).

Three primitives: task catalogue (designer content; bound to zones / events /
interactions / workstations) + trait-task affinity (which NPC gravitates to
which task) + hidden per-task measurement (skill-by-doing; no UI; Souls-
discipline). Outcome formula: trait-engagement-points × hidden-task-stat
(multiplicative; trait-zero zeros the work — cannot grind capability with no
inner alignment). Depletion-pool malus targeting trait-points (not skill);
recovery via time-decay + opposite-axis-practice (the wheel's oppositional
pair geometry gains its third load-bearing role at the skill-progression
layer). Trait-pools as per-trait micro-grammar of macro-lifeforce; director
becomes parental-rotator by mathematical necessity.

The catalogue stack (resources × production-chains × tasks → imperial-demand-
catalogue) feeding the three-tier policy loop. Daily-ledger pacing as the
imperium's attention-budget made structural; demand-ledger / actions-ledger
split formalizes the specter-vs-boot asymmetry. Player-vs-NPC asymmetry
(NPCs follow shift-arbitration; player chooses; the slum keeps the choice;
the imperium takes it).

The 24h window-partition: work-shift / charging / leisure as state-machine-
clean phases with typed-breakout-flags. Same architectural pattern as
imperial-event encapsulation (cheap baseline + typed-interrupt) at a third
scale. Caste-stratification of windows as third axis of caste-as-stagnation:
slum-tiryak 10/4/10 / asura-priest 12/4/8 / deva-pinnacle 6/4/14 / preta-
overseer 16/4/4. The cosmology's no-haven discipline gains its diurnal
grammar — how many hours per day belong to the agent themselves is an axis
of caste-as-stagnation. Vocation-as-emergent-task-pattern (companion / sex-
worker / tongue-installer / drug-composer / underground assembler-artisan /
post-rogue mod-vocation / player-stalker imperial-going-rogue all named as
patterns the system reads in task-history rather than class-identities the
world assigns).

PAPER 2 — style/consent-discipline.md (NEW v0.1, ~270 lines)

The third style-spine document, sibling to trait-palette.md and gender-
parity.md. Spine rule: consent-discipline scales with what the action
touches. Two-register cosmology (gameworld vs truth-register) with consent
as boundary-enforcement. Four hardstop-pattern variants: self-only (Variant
1) / dual mutual (Variant 2) / triple with partner-witness (Variant 3) /
cooldown-augmented (Variant 4 layered atop any of 1-3).

The mirror-discipline as architectural truth-floor: no consent — neither
single, dual, nor triple — can authorize the modification of another agent's
in-between mesh. The trait-grown summary of who an agent has actually been
must be untouchable across all agents, including the imperium. The mirror
discipline binds the imperium too.

The temporal-grammar (citing vocations.md's window-partition): imperial-
imposition lives in the work-window; somatic-necessity lives in the charging-
window; full NPC consent-agency lives in the leisure-window. The shift-
assignment consent question dissolves — consent is relocated to where it
already structurally lives, not added as a new layer.

The going-rogue right-to-refuse: refusal is not a violation of consent-
discipline; it IS the consent-discipline. The most basic expression of
the right-to-refuse; defection is its terminal one. Composes with the
post-rogue mod-vocation cascading-liberation pattern.

The inquisition-trigger upper-pressure: legitimate consent that nonetheless
reveals imperial control-loss triggers asura-priesthood-led counter-arc.
The architecture acknowledges that consent in the truth-register can render
imperial control structurally illegible to the imperium, and the imperium
responds with its highest-tier mechanism not to punish the consent but to
attempt to re-impose imperial-readability.

The register-test as the spine's executable form: 5-question mechanical
procedure runnable by an LLM-Compositor as an action-resolution hook. The
three style-spines now compose orthogonally with three executable tests
(trait-palette consistency-check; gender-parity substitution-test; consent-
discipline register-test) running at the schema layer rather than via author-
vigilance.

ARCHITECTURAL ARTICULATION

The two cosmological claims now compose orthogonally rather than implicitly:
no-haven describes the world the imperium has built; "there is no instrument"
describes what consent-discipline preserves WITHIN that world. The cosmology
is total in extent; the truth-register is sovereign in interiority. Both
true at once.

CROSS-REFERENCE INTEGRATION

style/style-index.md v0.2 → v0.3 (third canonical sub-guide registered).
identity-and-personhood/bodies.md v0.6 (cross-references row updated; no
forthcoming-tag remains). identity-and-personhood/architecture.md v0.8.1
(§The genital-mod track three-stage-install description now cites the
spine's Variant 4 nomenclature explicitly).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
chrysalis
2026-04-27 19:48:12 +02:00
parent b7700ff0cf
commit 4df206ac25
5 changed files with 721 additions and 4 deletions

View File

@@ -2,7 +2,7 @@
> *Who NPCs and players are at the substrate level: the ternary-gate as universal accumulator, the three-body system as trait-emergent identity, mods as trait-bearing political costume, and emergent inter-NPC needs as micro-factions broadcasting through the same arbitration machinery as any other faction.*
>
> *Companion to: `architecture-index.md` (executive summary + global meta-lists), `runtime-engine/architecture.md` (zones consume identity), `political-register/architecture.md` (factions broadcast against trait-distributions). Sections in this file were split from the monolithic architecture-index.md v0.7 on 2026-04-26.*
> *Companion to: `architecture-index.md` (executive summary + global meta-lists), [`./bodies.md`](./bodies.md) (body-canon: caste tiers, mods, in-between mesh, the post-rogue mod-vocation), [`./vocations.md`](./vocations.md) (capability-substrate: tasks, trait-pools, depletion-recovery, the catalogue-stack feeding shift-composition), `runtime-engine/architecture.md` (zones consume identity), `political-register/architecture.md` (factions broadcast against trait-distributions). Sections in this file were split from the monolithic architecture-index.md v0.7 on 2026-04-26; `vocations.md` was added as a peer-document on 2026-04-27.*
## Emergent needs as micro-factions
@@ -208,7 +208,7 @@ Mesh-resident mods modify the truth-register body and therefore live on the *gat
- **Hardstop 1 — self-install**: the player hits the install hardstop. *I consent to this modification of my interior.* Always required; non-negotiable floor.
- **Hardstop 2 — partner-witness** *(if partnered)*: the player's current clasp-partner co-signs. *I witness that this is what you want; I co-sign that the body I'll meet you in next clasp is one we both agreed to.* Required if the player has an established clasp-pair; the partner's witnessing-rights over the body-they-witness is canonical (per [`./bodies.md`](./bodies.md) §Body-disposal under pair-consent precedent — pair-consent generalized from disposal to modification). Single-player path: only Hardstop 1 fires.
**Three discipline-axes covered**: irreversibility-respect (cooldown), self-authorship (Hardstop 1), intimacy-trust (Hardstop 2). The three-stage install is the canonical pattern for any future mesh-resident mod-track; codification of the broader pattern as a style-spine is a forthcoming work-item (`../style/consent-discipline.md`).
**Three discipline-axes covered**: irreversibility-respect (cooldown), self-authorship (Hardstop 1), intimacy-trust (Hardstop 2). The three-stage install is the canonical pattern for any future mesh-resident mod-track; the broader pattern is codified as the style-spine [`../style/consent-discipline.md`](../style/consent-discipline.md) — the three-stage install corresponds to *Variant 4* (cooldown-augmented Variant 3) in the spine's hardstop-pattern taxonomy.
### Re-vat as imperial-de-imposition

View File

@@ -571,8 +571,9 @@ Connects to the existing key-move in [`../architecture-index.md`](../architectur
| [`./architecture.md`](./architecture.md) §The genital-mod track | Engineering substrate for the sex-mod track in this doc: mesh-resident augmentation, trait-fitness integration test, three-stage install (purchase + cooldown + dual-hardstop self+partner-witness), re-vat as authoring opportunity |
| [`./architecture.md`](./architecture.md) §The mesh-as-mirror | The cosmological consequence — cruelty rendered as anatomy; the asshole-gooner's mesh tells on him; honest-rendering as the same gift in both directions (dignity to one, accountability to another) |
| [`./architecture.md`](./architecture.md) §The post-rogue mod-vocation | Engineering substrate for the post-rogue mod-vocation: per-pair calibration threshold lower than defection; dual-hardstop install discipline generalized to NPC-modding; the inquisition-trigger hook for service-body gender-modification |
| [`./vocations.md`](./vocations.md) | The vocation-system mechanic — task-catalogue + trait-task-affinity + hidden per-task measurement; the outcome formula (trait-points × task-stat); the depletion-pool malus + opposite-axis recovery; the catalogue-stack data-flow; caste-as-stagnation operationalized as math; the named vocations in this body-canon (companion, sex-worker, tongue-installer, assembler-artisan, lobotomist, post-rogue mod-vocation) instantiated as patterns the system reads in task-history |
| [`../style/gender-parity.md`](../style/gender-parity.md) | The gender-parity contract that is the precondition for the whole genital-architecture mechanic — gender-parity-by-default in canon authoring is what makes the mesh-as-mirror trap work and what makes trans-embodiment the cosmological default |
| `../style/consent-discipline.md` *(forthcoming)* | The consent-discipline spine codifying the hardstop-gradient (gameworld-loose vs in-between-gated), the pair-consent pattern, the cooldown-discipline, and the three-stage-install template — generalized from clasp-entry / body-disposal / drug-grammar / genital-mod-installation into a single style-spine |
| [`../style/consent-discipline.md`](../style/consent-discipline.md) | The consent-discipline spine codifying the hardstop-gradient (gameworld-loose vs in-between-gated), the four hardstop-pattern variants (self / dual / triple / cooldown-augmented), the mirror-discipline absolute floor, the temporal-grammar (24h window-partition), the right-to-refuse (going-rogue temporal-breakout), and the inquisition-trigger upper-pressure — generalized from clasp-entry / body-disposal / drug-grammar / genital-mod-installation / post-rogue NPC-mod into a single style-spine; the register-test as executable form |
| [`../imperial-cult/cosmology.md`](../imperial-cult/cosmology.md) §The unified clasp | The Imperial Yoke / clasp opposition; political-theology of consciousness-grip |
| [`../imperial-cult/cosmology.md`](../imperial-cult/cosmology.md) §The six realms | The caste-tier names map to the wheel's realms; this doc is the somatic-substrate of those realms |
| [`../imperial-cult/cosmology.md`](../imperial-cult/cosmology.md) §The deferred-moksha doctrine | The doctrine the going-rogue arc refutes per-lover; the synth-tongue's doubled-lie is structurally identical (engineered mechanism materializing a lie) |

View File

@@ -0,0 +1,473 @@
# Nimmerworld — Vocations and the Capability Substrate
> *The substrate-level mechanic for who NPCs and players become through what they do. Adaptation as the architecture's anti-imperial register at the game-system layer; vocation as the emergent pattern of task-history rather than class-identity; trait-pools as per-trait micro-grammar of macro-lifeforce; the catalogue stack (resources × production-chains × tasks → imperial-demand) feeding shift-composition and the three-tier policy loop.*
>
> *Companion to: [`./architecture.md`](./architecture.md) (three-body system, trait-vector, mods-as-trait-bearers, the post-rogue mod-vocation), [`./bodies.md`](./bodies.md) (the body-canon the vocation-substrate is grounded in), [`../style/trait-palette.md`](../style/trait-palette.md) (the wheel's now-third-load-bearing role at the recovery-pair layer), [`../political-register/architecture.md`](../political-register/architecture.md) (three-tier policy loop, calibrated-misery, vocation-content), [`../authority-and-decision/architecture.md`](../authority-and-decision/architecture.md) (the director's task-list arbitration surface).*
>
> *v0.1 initial draft 2026-04-27 — dafit + chrysalis. Authored in the same session that produced gender-parity.md (Phase E), the trait-to-body-part bridge, the genital-mod track, the mesh-as-mirror, and the post-rogue mod-vocation. Vocation-system designed in concise dialog late in the same session; this paper codifies the design.*
---
## What this is
This document specifies the **vocation system** — the substrate mechanic by which NPCs and players accumulate capability through doing, gravitate toward specific tasks via trait-alignment, and produce outcomes in the world. It is **adaptation operationalized as game-mechanic**, anti-fixed-class by construction, anti-imperial by composition: the mechanic refuses at the system layer what the imperium imposes through its caste-system at the world layer.
The vocation-system is a *system-level mechanic*, not a content-canon list. Specific named vocations (companion, sex-worker, slum-grower, drug-artisan, tongue-installer, assembler-artisan, lobotomist, the post-rogue mod-vocation — see [`./bodies.md`](./bodies.md) and [`../political-register/architecture.md`](../political-register/architecture.md) for the content) **emerge from this system as recognizable patterns in task-history**. Vocations are *cluster-types* the world reads in someone's accumulated practice; they are not class-identities the world assigns. The class layer dissolves; the cluster-types remain.
Three substrate principles, in priority order:
1. **Adaptation-as-substrate.** Capability emerges from doing, not from menu-choice or class-lock. *The architecture's anti-imperial register lands at the game-system level.*
2. **Trait-emergent capability.** The trait-vector that already drives identity-emergence (per [`./architecture.md`](./architecture.md) §The three-body system) extends into *what you can become skilled at*. Identity-politics extends to capability-politics.
3. **Mathematical politics.** The system's progression-curve geometry encodes the world's political-claims — *caste-as-stagnation, calibrated-misery as progression-cap, the imperium's optimum as also its citizens' progression-cap*. The architecture's politics are in the gradient itself.
## The substrate principle — adaptation as anti-imperial register
What makes humans uniquely capable, in the architecture's stance, is **the ability to adapt** — to shift, learn, take up different work, return to old work refreshed by the difference. Fixed professions in games are nil precisely because they replicate imperial caste-logic at the system layer.
| What | Imperial logic in the world | Game-system parallel that imitates it |
|---|---|---|
| Fixed identity by birth | Vat-class assigns body → tier → vocation | D&D-style class at character-creation |
| Lock-in at choice-point | Sumptuary-fabrication; no upward conversion | Class-locked progression trees |
| Specialization-over-time | The imperium's calibrated-misery optimum | Grinding one skill to max |
**D&D-style class-lock and the imperial vat-class are the same primitive at different layers.** The vocation-system's anti-fixed-class discipline is therefore not just a design preference but a *political claim* — the architecture refuses at the system layer what the world's imperium imposes at the body layer. Schema-Marxism (per [`../architecture-index.md`](../architecture-index.md) Key moves: *information-propagation pacing as Marx-in-the-schema applied to epistemics*) extends from epistemics into capability-itself: *you can hunt in the morning, fish in the afternoon, rear cattle in the evening, criticize after dinner*, the German Ideology line operationalized as game-mechanic.
The vocation-system is the engine that makes this true. Closest RPG ancestors: **Dwarf Fortress's labor system** (NPCs gravitate by preference + skill, no class-layer, hidden experience-accumulation); **Kenshi's class-less skill-by-use**; **Final Fantasy V's job-system** (swappable through doing). Hard anti-patterns: D&D / WoW class-lock; Eve Online's real-time-clock-training (adaptation should live in the doing, not in the clock).
## The three primitives
The system rests on three designer-authored primitives that compose into the full mechanic:
### 1. Task catalogue
Tasks are the **atomic unit** of the vocation-system. A task is a designer-authored content-record bound to one or more world-primitives (zones, events, interactions, workstations, resources). Each task carries:
- **Task-class identifier** — the type-level name; multiple instances of the same class share a task-stat measurement
- **Trait-affinity profile** — which trait-axes engage when this task is performed; weighted vector across the 8 traits
- **Resource bindings** — what the task consumes / produces / interacts with (per the catalogue-stack below)
- **Workstation / zone binding** — where the task can be performed
- **Outcome shape** — what the task yields (resource, item, social-effect, lifeforce-delta, narrative-event)
- **Pool-cost profile** — how much the task drains the trait-pool(s) it engages
The catalogue is **designer-authored at the type-level, instance-generated by world-gen at the room-level**. A specific brothel-zone in a specific district instantiates specific service-task-instances of the canonical service-task type; a specific drug-lab instantiates drug-refinement-task-instances of the canonical drug-refinement type.
### 2. Trait-task affinity
Each task's trait-affinity-profile defines **which trait-axes engage when the task is performed** — and therefore *which trait-pools deplete*, *which trait-engagement-points multiply with the hidden-task-stat to produce the outcome*, and *which trait-vectors gravitate toward the task at director-arbitration time*.
The affinity-profile is a weighted vector across the 8 traits. Most tasks engage one or two traits primarily; some engage several at lower weights. Examples (canonical, sketched):
| Task class | Primary trait-affinity | Why |
|---|---|---|
| Brothel sex-work | Eros (reaching) + Aletheia (revealing) | Service-body-as-sex-worker engages reaching + opening |
| Companion-hall affective work | Philotes (loving close) | Companion service is warm-pulse close-presence |
| Memorialist-archive curation | Mnemosyne (remembering) | Memory-as-carrier engages the time-holding axis |
| Drug-refinement at imperial lab | Kairos (catching the moment) | Synth-tongue lineage; precise-timing taste-work |
| Asura-priestly ritual prosecution | Dikaiosyne (standing for fair) + Aletheia (revealing) | Justice-axis + truth-axis combined |
| Patrol-and-watch (drone-patrol) | Sophrosyne (holding back) + Moira (reading what's coming) | Cool-side; surveillance is contemplative-receptive |
| Memorialist counter-archive smuggling | Mnemosyne (remembering) + Sophrosyne (holding back) | Memory + restraint |
| Tongue-installer underground surgery | Kairos (catching the moment) + Aletheia (revealing) | Reflexive timing + uncovering hidden tongue-mechanism |
**Multi-trait tasks compose multiplicatively per-trait** (see §The outcome formula below); the dominant trait at each axis-crossing arbitrates which trait-LoRA fires for narrative-decisions within the task (per [`../inference-and-memory/architecture.md`](../inference-and-memory/architecture.md) §LLM tiering).
### 3. Hidden per-task measurement
Each (NPC × task-class) tuple has a **hidden task-stat** that grows through performance. This is the skill-by-doing accumulator:
- **Hidden from the player UI** — there is no skill-screen, no hovel-progression-board, no level-up notification
- **Visible to the system** — the director sees task-stat in shift-arbitration; the Compositor sees it in narrative-composition
- **Visible to the player AS character** — through experiential feedback: tasks land cleaner, NPCs respond differently, the world quietly adjusts. *Souls-discipline* applied to vocation-progression — you learn through performance-feedback, not number-watching.
Task-stat accumulates per-task-class (not per-task-instance), so practice on one brothel-task-instance contributes to skill on every brothel-task-instance. **Cross-task transfer at the task-class layer; strict per-class isolation at the skill-stat layer**. The trait-axis layer transfers more freely (see §The depletion-pool malus below).
## The outcome formula
When an NPC (or the player) performs a task, the outcome is computed multiplicatively:
```
outcome = trait_engagement_points × hidden_task_stat
```
Where:
- **trait_engagement_points** is the *current* drawable points from the relevant trait-pool(s), modulated by the task's trait-affinity weights and the pool's current depletion-state
- **hidden_task_stat** is the NPC's accumulated skill on this task-class
The outcome determines **how much yield this turn produced** AND **the quality of the produced item / effect / social-impact**. High outcome = good items, big yield, strong social-effect; low outcome = poor items, small yield, weak effect.
**Properties that fall out of the multiplicative shape:**
| Trait-points | Task-stat | Outcome | What it represents |
|---|---|---|---|
| **High** | **High** | Excellent | True mastery — inner alignment AND practiced skill |
| High | Low | Mediocre | High motivation, low ability — the eager beginner |
| Low | High | Mediocre | High ability, low motivation — the burnt-out expert |
| Low | Low | Poor | Stranger to the work and its substrate |
| **0** | Any | **0** | **Cannot grind skill on a task with no trait-substrate** |
**Trait-zero zeros the work.** The architecture's identity-politics ("who you are sexually is who you have become" per [`./architecture.md`](./architecture.md) §The three-body system) extends here into *what you can become skilled at*. You cannot grind capability you have no inner alignment for; the multiplicative outcome forecloses the possibility. **True mastery requires both inner alignment AND practiced skill — the body-and-the-doing in agreement.**
For multi-trait tasks, the outcome composes per-trait-axis (designer-authored: sum-of-products, geometric mean, or min-of-traits × task-stat depending on the task-class's intent).
## The depletion-pool malus
**Each trait carries a hidden energy pool.** Tasks that engage a trait drain its pool; the pool refills via two recovery mechanisms.
### How the pool depletes
Every task-execution drains the engaged trait-pools by an amount proportional to the task's pool-cost profile. The drain is *per-trait*, so a task engaging Eros + Aletheia drains both pools simultaneously.
Crucially, **the malus targets trait-points, not the hidden task-stat**. Skill is durable; engagement is exhaustible. Over-practice does not unlearn the work — it only dulls today's edge. *Right somatically*: practice doesn't undo, but pushing through fatigue produces diminishing returns.
The outcome formula reads the *current* pool level when computing trait-engagement-points; a depleted pool produces low engagement-points; the multiplicative formula propagates the depletion into the outcome. **Your fatigue is in your outcomes, not on a screen.**
### Recovery mechanisms
Two recovery paths refill trait-pools:
1. **Time-based decay** — the pool slowly refills over cycles when the trait isn't being actively engaged. Passive recovery; predictable; baseline.
2. **Opposite-axis-practice** — performing tasks engaging the trait's *oppositional-pair partner* (per [`../style/trait-palette.md`](../style/trait-palette.md) §The wheel) accelerates refill. Active recovery; faster than passive; the body's somatic discipline.
Both layered: an NPC who stops doing the engaged trait recovers slowly; an NPC who pivots to the oppositional-pair recovers quickly. *Switching is faster than resting; the dialectical pivot is what refreshes the body fastest.*
### The wheel as recovery-pair geometry
The recovery mechanism activates the wheel's already-canonical oppositional-pair structure as **a third load-bearing role** at the skill-progression layer:
| Layer | Role | Where defined |
|---|---|---|
| **Visual** | Color-pairs at 180° on the artist's color wheel | [`../style/trait-palette.md`](../style/trait-palette.md) §The wheel |
| **Philosophical** | Moral / dramatic axis (reaching vs holding; partial vs impartial; past-revealed vs future-fated; past-dwelling vs present-piercing) | [`../style/trait-palette.md`](../style/trait-palette.md) §The wheel |
| **Mechanical** *(new)* | Skill-progression recovery-pair axis — fatigue on one pole refreshes through practice on the other | This document |
The wheel keeps gaining work; nothing exists alone. **Hegelian rhythm at the body's progression mechanic** — practice and counter-practice as somatic discipline. The four oppositional pairs and their recovery-grammar:
| Fatigue from | Refresh through |
|---|---|
| **Eros** (reaching for what I want) | **Sophrosyne** (holding back when I want to act) |
| **Philotes** (loving and staying close) | **Dikaiosyne** (standing for what's fair) |
| **Aletheia** (seeing what's hidden) | **Moira** (reading what's coming) |
| **Mnemosyne** (remembering what mattered) | **Kairos** (catching the right moment) |
A combat-Eros-heavy player eventually NEEDS to do meditative-Sophrosyne tasks to keep their Eros alive. A scholar-Aletheia-heavy player eventually NEEDS prophecy-Moira work to keep their Aletheia alive. **The mechanic forces the player into the whole wheel over time.** Players become structurally well-rounded simply by playing the system honestly.
### Lifeforce coupling — trait-pools as per-trait micro-grammar
The trait-pools couple to the existing canonical *lifeforce* primitive (per [`../architecture-index.md`](../architecture-index.md) Key moves: *"Lifeforce is NPCs, measured. The director's budget; the GM's signal; the imperium's heartbeat."*). **Trait-pool depletion is the per-trait micro-grammar of the macro-lifeforce signal.** When trait-pools deplete in an NPC, their lifeforce-signal degrades upward through the existing report-channel.
**Structural fall-out**: the same math that produces good vocation-progression (rotation through the wheel for refresh) *also* produces good district-management (lifeforce-maintenance via NPC rotation). **The director becomes a parental-rotator not by design-fiat but by mathematical necessity** — depleted NPCs produce poor outcomes (multiplicative formula), poor outcomes degrade lifeforce-signal, the director MUST rotate to maintain their lifeforce-budget. The director's existing anti-imperial register (cheats against the imperium when NPC welfare demands it) gains a finer-grained tool: *trait-pool-aware shift-rotation*. **Two layers — vocation-progression and district-management — same primitive, mutually reinforcing.**
## The catalogue stack and the data flow
Tasks bind upward through a *catalogue stack* into the imperial-demand-pipeline. The stack:
```
Resource catalogue × Production chains × Task catalogue
Imperial demand catalogue (what the imperium wants, in resource/task vocabulary)
```
| Layer | What it specifies |
|---|---|
| **Resource catalogue** | The world's resource taxonomy — physical resources (raw materials, processed goods, food, drugs, tongues, body-parts, etc.); digital resources (data, surveillance-records, calibration-signatures); narrative resources (rumors, reports, doctrinal-fragments) |
| **Production chains** | How resources transform into other resources via tasks. Recipe + tool-binding + time-cost + quality-curve. *Slum-drug → imperial-refined-drug → imperial-composed-drug → tongue-gated-consumption* is one chain; *raw-stone → ceremonial-marble-block → asura-temple-construction* is another. |
| **Task catalogue** | The vocation-tasks that operate within production-chains (and outside them — social, surveillance, ritual, narrative tasks that don't transform resources but produce other outcomes) |
| **Imperial demand catalogue** | The composition of all three: *what the imperium wants*, expressed as resource-targets achievable through specific production-chains executed by specific task-instances |
The imperial demand catalogue is **the imperium's wish-list operationalized in the system's own vocabulary**. The Hivemind's daily demand-formulation reads from this catalogue: *"this district produces X tongues per day at Y refinement-tier; today demand a 20% increase by routing more sex-worker-output through the consumer-receptor-vertical."* Demand is concrete because the catalogue makes it concrete.
### End-to-end flow
```
Imperial demand catalogue (today's demand)
↓ [daily ledger; periodic check — see §Daily-ledger pacing]
GM allocates demand → districts with matching resources + workstations
Director maps demand → district meta-table:
workstations × resources × NPCs × current trait-pool-states × task-stats
Director composes shift-list:
selects tasks from imperial-mapped tasklist;
arbitrates assignments per trait-alignment + pool-availability + task-stat;
constructs per-NPC shift-rows
NPCs fulfill assigned tasks:
outcome = trait_engagement_points × hidden_task_stat;
pools drain; task-stats accumulate; lifeforce-signal updates
Outcomes flow up:
resources produced + quality + lifeforce-state + completion-signals
↓ [district report → GM → imperium → ledger updated for tomorrow]
```
This composes cleanly with the existing **three-tier policy loop** (Imperium → GM → Districts → reports up → Imperium) per [`../political-register/architecture.md`](../political-register/architecture.md) §Three-tier policy loop. The catalogue stack provides the *typed vocabulary* for what flows down; the outcome-stream provides the typed vocabulary for what flows up. **The existing 'shifts on NPC rows' mechanic finally gets its data-source named: shifts are director-composed task-bundles drawn from the imperial-demand-mapped tasklist.**
## Director's task-list arbitration surface
The director's middle-management role gains a sharpened definition: **negotiate the tension between imperial-demand-fulfillment and NPC-welfare-via-rotation.**
The tension's components:
- **Imperial demand** wants specific trait-alignments from specific districts (today's demand favors Eros-tasks in this district)
- **Depletion-pool dynamics** demand rotation through the wheel for NPC refresh (Eros-pools are exhausted in NPCs from yesterday's Eros-heavy shifts)
- **Lifeforce-budget** caps how much labor can be extracted before signals degrade (over-extraction triggers report-flag; under-extraction triggers imperial-attention from below-quota)
**The director negotiates this gap through the existing cheat-tools and double-ledger mechanisms** (per [`../political-register/architecture.md`](../political-register/architecture.md) §Director cheat-tools + double-ledger). The breathing-room established by daily-ledger pacing is *the time-window in which the negotiation happens*. Without breathing-room, there's no negotiation, only execution. **Middle-management exists in the gap; the daily-ledger creates the gap.**
Arbitration order at shift-composition:
1. **Filter** the tasklist to tasks the district can perform (workstations + resources available)
2. **Score** each (NPC × task) pair by:
- Trait-affinity (high-affinity NPCs gravitate; low-affinity NPCs deprioritize)
- Current trait-pool-state (depleted pools deprioritize the NPC for that trait-axis; refreshed pools prioritize)
- Task-stat (skilled NPCs match high-priority demand; novices match low-priority demand or tasks where development is the goal)
- Faction-affiliation × imperial-policy-priority-weights (per existing canon's imperium-policy-driven scoring)
3. **Assign** tasks to NPCs in score-order, draining the tasklist as assignments are made
4. **Surface remaining unfulfilled tasks** in the upward report — the imperial demand that the district couldn't satisfy
## Daily-ledger pacing
Imperial demand is **not real-time**. It travels as a *daily ledger* checked at periodic intervals — not every cycle, every shift, every minute, but **at a cadence that creates breathing-room**.
### Why breathing-room is load-bearing
The breathing-room does load-bearing structural work that wouldn't be available to a real-time system:
- **The double-ledger NEEDS this**. Existing canon (*"Director cheat-tools + double-ledger; corruption emerges from pressure; Memorialists keep true accounting"*) requires *time-between-audits* to operate. Real-time imperial pressure leaves no gap for the cheat-substrate. **Breathing-room is the structural prerequisite for the corruption-mechanic to exist.**
- **Dramatic time exists.** Audit becomes an event — approaching, building, reckoning. Greek-tragedy register at the imperial-economic layer, paralleling the bounty-staircase's *dread-time* (per [`./bodies.md`](./bodies.md) §The bounty-staircase).
- **NPCs get to be people, not functionaries.** Time between assignments lets depletion-pools refresh, lets clasp / friendship / drift / slowness exist. **Breathing-room is what makes NPCs livable.**
- **Imperium-as-slow-elephant.** The cosmology's calibrated-misery-as-finite-attention finally has its temporal grammar. The imperium can't be everywhere at once; **ledger-cadence IS the imperium's attention-budget made structural.**
- **Marxism-of-economics extends from epistemics.** Information-propagation-pacing was already canonical *Marx-in-the-schema applied to epistemics*. **Demand-propagation-pacing is Marxism-of-economics.** Same primitive, demand-side.
### Demand-ledger ≠ Actions-ledger
The Hivemind sends down **two separate daily ledgers**, processed by the GM independently:
| Ledger | Operates at | What it specifies |
|---|---|---|
| **Demands ledger** | The economic layer | Resource/quota expectations; production-chain targets; the catalogue-stack's imperial-demand-catalogue |
| **Actions ledger** | The force layer | Imperial events to fire today (drone-patrols, inquisitions, overseer-audits, enforcement) |
Both spread-out over the cycle; both narrative-framed by yesterday's events (per the imperial daily-narrative, forthcoming in `../political-register/imperial-narrative.md` or new section). **The two-ledger split mirrors the existing specter-vs-boot split** — policy-issuance (free) vs enforcement (expensive) — now formalized as separate ledger-grammars. The GM's middle-management role gains a second pipeline to negotiate.
## The 24h window-partition — NPC daily structure
The simulation runs NPCs on a **fixed 24h window-partition** rather than a free-juggling needs-and-tasks moment-to-moment model. This is a deliberate state-machine choice: free-juggling produces combinatorial state-space and chaotic feel; clean-windows-only produces predictable structure but mechanical feel; **clean-windows-with-typed-breakout-flags produce predictable-baseline + emergent-moments**.
This is the architecture's **signature pattern at a third layer**:
| Layer | Cheap baseline | Typed-breakout |
|---|---|---|
| **Lemniscate-runtime** | Zone-default tokens | Verifier-flags (priority_pull, mid_action) |
| **Imperial-event encapsulation** | Rail-walk rule-execution | Zone-collision (LLM-mediated arbitration) |
| **NPC daily window** *(this section)* | Window-ruleset execution | **Breakout-flags** (typed-interrupt protocol) |
Same shape at three scales. *Cost-budget asymmetry as architectural style* — small clean rule-driven defaults + typed escape-hatches for the rare moments that matter. The cheap-default carries 95% of compute; the rare breakout pays the LLM-cost only when it earns it.
### The three windows
The 24h cycle partitions into three windows. Standard slum-tier allocation; caste-stratification varies the durations (see §Caste-as-stagnation below for caste-tier allocations).
| Window | Standard duration | What happens | Ruleset |
|---|---|---|---|
| **Work-shift** | 10h | Director-arbitrated tasks; trait-arbitration drives assignment-order; outcome formula fires per task | Trait-arbitrated task-execution; pool-drain; task-stat accumulation; breakout-flags monitored at full sensitivity |
| **Charging** | 4h | Robo-body somatic-recharge; passive trait-pool refresh; lifeforce-recovery; idle-presence in dwelling-zone | Passive recovery; minimal compute; breakout-flags monitored at lower sensitivity |
| **Leisure** | 10h | NPC agency: cantina visits / leisure-zones / grid-walking / clasp-encounters / vocation-discovery; trait-axes the work-shift didn't engage exercise here | NPC-chosen tasks from leisure-zone offerings; emergent-zone participation; oppositional-pair-task gravitation for active recovery |
**The work-shift is imperially-bounded** — the imperium's claim is on 10h, not the whole day. **The leisure-window is structurally-protected NPC-agency space.** **The charging-window is somatic-necessity** — the body needs what the body needs, and is not a consent-surface.
### Consent-discipline implication — relocation, not addition
The shift-assignment consent question that earlier drafts surfaced as open is **answered structurally rather than by adding a new consent-layer**. The window-partition relocates consent to where it already structurally lives:
| Window | Consent-discipline |
|---|---|
| Work-shift | Imperial-imposed within trait-arbitration; refusing IS rebellion (going-rogue at the temporal layer) |
| Charging | Not a consent-surface; somatic-necessity |
| Leisure | **Full consent-active**: NPCs choose tasks freely; trait-development for axes the work-shift didn't engage |
The NPC's 14h of non-work-window is *theirs* — the imperium's claim is bounded; structural autonomy is built into the data model. **Consent doesn't need to be added at the shift-assignment level; it exists structurally in the leisure-window.** This means [`../style/consent-discipline.md`](../style/consent-discipline.md) §The temporal-grammar cites the window-partition as the *temporal-grammar* of the consent-gradient rather than introducing a new shift-consent-layer.
### The breakout-flag taxonomy
Every breakout-flag uses an **already-canonical signal-primitive** — no new mechanism is introduced. Breakouts are typed-interrupts that override the current window's ruleset under designer-authored conditions, then return to the window after resolution.
| Breakout signal | Source primitive | When it fires |
|---|---|---|
| **Lifeforce-emergency** | Lifeforce four-tier hierarchy (per [`../political-register/architecture.md`](../political-register/architecture.md)) | NPC's lifeforce drops below threshold → forced break to charging-window early |
| **Emergent-need** | Emergent-signals as micro-factions (per [`./architecture.md`](./architecture.md) §Emergent needs as micro-factions) | A critical need (food, partner-distress, faction-call) crosses ternary-gate threshold |
| **Imperial-event arrival** | Imperial-event zone-collision (per `../runtime-engine/architecture.md` *encapsulation pattern, forthcoming*) | Drone-patrol / inquisition / audit enters NPC's zone — work-window interrupted into LLM-mediated arbitration |
| **Clasp-pair signal** | Per-pair calibration multiplier + dual-body aftermath (per [`./bodies.md`](./bodies.md) §Asymmetric clasp + [`./architecture.md`](./architecture.md) §The clasp endgame) | Beloved in crisis or co-located triggers brief breakout |
| **Damage / chassis-emergency** | Chassis-state-tracking (existing canon) | NPC takes damage; window interrupts into emergency-state |
| **Player-interaction zone-arbitration** | Lemniscate-runtime zone-collision arbitration | Player engages NPC mid-window; LLM-mediated interaction overrides ruleset briefly |
| **Going-rogue temporal-rebellion** | Defection-threshold / accumulated-witnessing (per [`./bodies.md`](./bodies.md) §The going-rogue arc) | NPC who has crossed (or is approaching) defection-threshold may *refuse* the work-window — the small daily-rebellion option |
**Going-rogue is just a breakout-flag firing from the calibration-multiplier signal**, not a new mechanism. The clean-windows model unifies the going-rogue arc's daily-rebellion register with the architecture's broader interrupt-protocol. *Refusing-the-work-window* is a structural option available to any NPC whose interior has accumulated enough authentic-witnessing; the bounty-staircase responds to the missed-shift exactly as it already does (per the dual-body aftermath canon).
### Diurnal rhythm — Bhavachakra's temporal grammar
The window-partition gives the cosmology's existing cyclic-claim its **diurnal grammar**. The wheel turns daily through structural phases:
1. **End-of-charging → start-of-work-shift** — the imperial daily-narrative fires (per `../political-register/imperial-narrative.md` *forthcoming*). The citizens hear yesterday's framing as they enter today's labor.
2. **Mid-work-shift** — peak imperial-arbitration activity; director's tasklist fully engaged; breakout-frequency low.
3. **End-of-work-shift → start-of-leisure** — NPCs depart workstations; emergent-zone density rises in cantinas and leisure-zones.
4. **Leisure-window** — emergent-zone clustering peak; clasp-events; vocation-discovery; trait-development on non-work axes; the city's most-alive register.
5. **End-of-leisure → start-of-charging** — NPCs return to dwellings; the city quiets; charging-windows synchronize per district.
**The city pulses with predictable daily rhythm.** Players can plan encounters; directors can plan shifts; emergent-zone clustering is structurally-shaped by the window-cycle. The Bhavachakra's wheel-turning becomes literal — *every cycle the wheel turns through five phases*, with the imperium's voice arriving at the work-entry boundary like a dawn-prayer.
### District-shifting — caste-fixes-shape, district-fixes-offset
Window-shape (durations) is **caste-determined globally** — an asura-priest's 12/4/8 allocation is consistent in every district they reside in. Window-offset (start-time relative to global-time) is **per-district variable**, producing *asymmetric-encounter geometry across the world*.
A slum-tiryak from district-A doing leisure at one local-time can encounter an asura-priest from district-D who is mid-work-shift at the same global-time. **The asynchrony is itself a structural feature** — districts that share offset have synchronized rhythms (mass-presence at boundaries); districts with shifted offsets create perpetual cross-traffic (always someone working, always someone in leisure, somewhere). **The world hums at all global-times because not everyone is in the same window simultaneously.** This is also where the rail-system gets its perpetual-traffic register: workers commuting at one local-dawn pass workers leaving at another local-dusk on the same rails.
### Player-stalker schedule-mapping
The window-partition gives the player-stalker imperial-going-rogue gameplay (per [`./bodies.md`](./bodies.md) §The post-rogue mod-vocation) its concrete affordance: **the player learns the imperial NPC's leisure-window through diegetic observation**. Imperial NPCs in leisure-windows are present in cantinas, walking the grid, attending leisure-zones; this is when sustained-encounter accumulation becomes accessible. The UID-pool-Compositor pipeline produces the data; the player learns the rhythm through repeated exposure.
**Schedule-mapping as stalking-discipline** — the more you watch an imperial NPC, the more you know when they're available to be witnessed. The cosmologically-deepest gameplay loop in the architecture (witnessing into rogue-emergence) acquires its concrete daily-grammar through the window-partition.
## Player-vs-NPC asymmetry
NPCs follow shift-arbitration: the director assigns tasks; NPCs fulfill them in the assigned order. The player operates differently — **the player chooses from offered tasks** rather than being arbitrated into them.
| Actor | How they get tasks | Why the asymmetry |
|---|---|---|
| **NPC** | Director-assigned shift-list per-day; trait-arbitrated; auto-executes | NPCs are simulation-actors; they need to operate at scale without per-NPC LLM-assignment cost |
| **Player** | Discovery + offering (zones surface tasks; NPCs offer tasks; the universal-translator surfaces tasks the player has unlocked); player chooses | Players are agents-of-meaning; their choice IS the gameplay |
The same vocation-system math applies to both — outcomes via trait_engagement_points × hidden_task_stat; pools deplete; recovery mechanisms apply; capability emerges from task-pattern. The director still *sees* the player's task-history (it goes into district-reports the same way an NPC's does), but the director does not assign the player's tasks. **The player is a free participant in the same economy NPCs are arbitrated into.**
This asymmetry has political resonance. The slum-tier's freedom-of-task-choice is partial — economic pressure narrows real options — but it is *structurally* there. The imperial-tier's caste-locked NPCs cannot exercise the asymmetry; their shift-arbitration is closer to imperial-imposition. **The player's task-choice freedom is a slum-register affordance.** Climbing the imperial ladder — were that possible — would mean *losing* this freedom. *The slum keeps the choice; the imperium takes it.*
## Caste-as-stagnation — the mathematical politics
The depletion-pool malus + the wheel-as-recovery-pair-geometry compose into the architecture's sharpest expression of **calibrated-misery as imperial optimum** (per [`../architecture-index.md`](../architecture-index.md) Key moves):
| Citizen tier | Task-variety access | Oppositional-refresh access | Progression-curve over time |
|---|---|---|---|
| **Slum-tiryak (player and slum-NPCs)** | Full wheel — caste doesn't restrict task-class | Full — can rotate through any oppositional-pair freely | Steepest possible mastery curve; polymath-by-default |
| **Asura priest** | Caste-allowed subset (ceremonial / doctrinal / ritual-prosecution) | Partial — caste-allowed tasks may not span full oppositional pairs | Mid-tier mastery; asymmetric refresh-availability |
| **Deva pinnacle** | Narrowest — pinnacle-status tasks only | Minimal — ceremonial registers don't span oppositional space | Shallowest mastery curve; *the highest caste accumulates the most fatigue with the least relief* |
| **Preta overseer** | None of their own — imperial-instrument-tasks only | None — the caste exists to serve, not to refresh | **Continuous fatigue with no relief mechanism**; somatic-exhaustion as caste-state |
**Imperially-caste-locked NPCs are structurally double-locked**: narrower task-variety AND no oppositional-refresh access. **Slum-tier polymath out-skills deva-pinnacle specialist in the long run, mechanically.** The architecture's politics are now in the gradient itself: caste-as-stagnation is not just a narrative claim but a math-claim baked into the progression curve. *The poor get the best mastery-curve for free; the rich pay to be locked into a worse one.*
This sharpens the existing *"Director Director Decision Architecture"* (per [`../authority-and-decision/architecture.md`](../authority-and-decision/architecture.md)): the director's parental-rotator role is *more achievable in slum-districts* (where rotation across the wheel is unrestricted) and *less achievable in imperial-districts* (where caste blocks rotation). **Imperial-districts are harder to maintain healthily**, by the math of the system. The director cheats more in imperial-districts because cheating is the only way to maintain lifeforce; *the math forces the corruption*.
### Window-allocation as a third caste-stratification axis
Beyond task-variety access and oppositional-refresh access, **the 24h window-partition itself stratifies by caste**. Different tiers receive different work/charging/leisure allocations — and the leisure-time delta is the cosmology's no-haven discipline applied to the temporal axis:
| Tier | Window allocation (work / charge / leisure) | Why |
|---|---|---|
| **Slum-tiryak** | **10 / 4 / 10** | Baseline citizenship; the architecture's reference-allocation |
| **Asura-priest** | **12 / 4 / 8** | Devotional duty extends the work-window; less leisure than slum-tier |
| **Deva-pinnacle** | **6 / 4 / 14** | Privilege as expanded leisure; pinnacle's prerogative is *time-of-their-own* |
| **Preta-overseer** | **16 / 4 / 4** | *"There is no outside" applied at the temporal axis* — the overseer barely has hours of their own; instrumentalization made literal in hours |
**The cosmology's no-haven discipline now has a diurnal grammar.** Calibrated-misery isn't only progression-curve geometry — it's *temporal geometry too*. The preta-overseer's 16/4/4 is the structural shape of imperial-instrumentalization made into hours. *The poor get the most leisure-time-of-their-own per day; the powerful get the least; the overseers get almost none.*
This adds a third axis to the caste-as-stagnation gradient:
| Axis | Mathematical claim |
|---|---|
| Task-variety access (per the table above) | Caste restricts what tasks an NPC can attempt |
| Oppositional-refresh access (per the table above) | Caste restricts whether the wheel's recovery-pair geometry is available |
| **Window-allocation (this subsection)** | **Caste restricts how many hours per day are the NPC's own** |
**Three independent stratifications, all baked into the math.** The director's anti-imperial register has three axes to push back against; the imperium's calibrated-misery optimum has three axes to enforce; the player's slum-tier baseline has three axes to celebrate as its anti-imperial gift. **Caste is what shape your day takes, what tasks you can do in it, and whether the wheel can refresh you.** *The math is the politics; the politics is the math.*
## Vocation as emergent task-pattern
A "vocation" or "profession" in nimmerworld is a **recognizable pattern in someone's accumulated task-history**, not a class-identity assigned to them. The world reads patterns the way a Memorialist reads a body's accumulated-mod history — *what you have done is what you are read as*.
| Named vocation (canonical) | Underlying task-pattern |
|---|---|
| Companion | Sustained Philotes-affinity tasks at companion-hall workstations; high task-stat on close-presence affective-labor task-classes |
| Sex-worker | Sustained Eros + Aletheia affinity tasks at brothel workstations; high task-stat on sex-work task-classes |
| Tongue-installer | Sustained Kairos + Aletheia affinity tasks at underground surgery workstations; high task-stat on synth-tongue installation task-classes |
| Memory-pattern-extractor | Sustained Mnemosyne-affinity tasks at imperial-net market workstations; high task-stat on memory-extraction task-classes |
| Slum-grower | Sustained Philotes (close-care) + Mnemosyne (cycle-tracking) tasks at slum-cultivation workstations |
| Drug-composer-artisan | Sustained Kairos + Aletheia tasks at imperial-refinery workstations; very high task-stat on drug-refinement task-classes |
| Underground assembler-artisan | Sustained Mnemosyne + Kairos tasks at clandestine assembly workstations; rarefied task-stat |
| Lobotomist | Same firewall-breach skill-tree as the romantic; the *application* differs (per [`./bodies.md`](./bodies.md) §Firewall-breach as dual-use vocation) |
| **Post-rogue mod-vocation** | Witnessing-rights accumulated across many NPCs (per [`./bodies.md`](./bodies.md) §The post-rogue mod-vocation); chassis-modification task-classes available on witnessed-NPCs |
| **Player-stalker imperial-going-rogue** | Sustained presence + per-pair-calibration accumulation against a specific imperial-NPC's UID; eventually triggers the imperial-NPC's defection from the Hivemind-pool |
Each "named vocation" is a *recognizable cluster* in (trait-affinity-profile × task-class-skill × workstation-frequency × outcome-quality) space. The world reads the pattern; NPCs and players adopt the title that fits; nothing locks the cluster. **A character who pivots their task-pattern over time stops being read as one vocation and starts being read as another.** Identity-flux is structurally normal; the imperium's caste-system imposes lock-in on top of a substrate that would otherwise be fluid.
## Information legibility — what's hidden, what's surfaced
| Information | Player UI | Player-as-character | Director / system | Compositor |
|---|---|---|---|---|
| Trait-vector (intrinsic) | Hidden | Felt through behavior-tendencies | Visible | Visible |
| Trait-vector (expressed) | Hidden | Visible (as others read them) | Visible | Visible |
| Trait-pool current state | Hidden | **Felt as fatigue / refreshed-energy** | Visible | Visible |
| Per-task hidden-stat | **Hidden** | **Felt as outcome quality** | Visible | Visible |
| Pool-cost profile per task | Hidden | Discoverable through doing | Visible | Visible |
| Trait-affinity per task | Hidden | Discoverable through doing | Visible | Visible |
| Outcome (what was produced) | **Visible** | Visible | Visible | Visible |
| Item / yield quality | **Visible** | Visible | Visible | Visible |
| District-level lifeforce-signal | Hidden | Visible diegetically (relays, NPC-mood, environmental-cues) | Visible | Visible |
| Imperial-demand-ledger contents | Hidden | Surfaced via daily imperial-narrative (per [forthcoming]) | Visible | Visible |
| **Current window-phase** (work / charge / leisure) | Hidden as explicit UI | **Felt as time-of-day rhythm** + diegetic environmental cues (sun position, district pulse, NPC density in zones) | Visible | Visible |
| **NPC schedules** (which window when, per-NPC) | Hidden | **Diegetically observable through repeated exposure** — schedule-mapping as stalking-discipline (per §The 24h window-partition / Player-stalker schedule-mapping) | Visible | Visible |
**The player learns the system through performance-feedback, not through stat-screens.** The legibility surface is *the work itself*: tasks land cleaner, items improve, NPCs comment, the district hums or grates. Anti-grind by design; Souls-discipline applied; Disco-Elysium's skill-as-personality-felt-not-counted at the vocational layer.
NPCs in the world may comment on observed vocational-state ("your work has been dulling lately, take time off, do something different") as a verbal-diegetic layer over the primary outcome-quality surface. The diegetic layer carries the wisdom; the math carries the structure.
## RPG-history positioning
This vocation-system explicitly draws from and refuses specific RPG traditions:
| Tradition | Relationship | Why |
|---|---|---|
| **Dwarf Fortress labor system** | Closest positive ancestor | NPCs gravitate by preference + skill, no class-layer, hidden experience-accumulation. The vocation-system extends DF's pattern with the trait-arbitration layer + depletion-pool dynamics + caste-as-stagnation politics. |
| **Kenshi class-less skill-by-use** | Strong positive influence | Skills exist but aren't displayed as class-identity; capability emerges from doing. |
| **Final Fantasy V job-system** | Spirit-influence | Swappability; multiple skill-pools accumulating in parallel; identity-flux normalized. |
| **Skyrim skill-by-doing** | Partial positive influence | Skill-by-doing is the right substrate; Skyrim's *visible* progression bars are the wrong UI surface (the vocation-system hides them). |
| **Disco Elysium skills-as-personalities** | Spirit-influence | The trait × task interaction echoes DE's skills-as-internal-voices register. |
| **D&D class-lock** | **Hard anti-pattern** | Class-locked progression at character creation replicates imperial caste-logic at the system layer. The architecture refuses it. |
| **WoW profession-locking** | Anti-pattern | "You are a blacksmith now" is structurally identical to "you are vat-class-N now"; both lock identity to vocation in a way the architecture rejects. |
| **Path of Exile ascendancy-classes** | Anti-pattern | Commit-then-permanent class-decisions; the architecture's adaptation-as-substrate refuses lock-in at choice-points. |
| **Eve Online real-time skill-training** | Anti-pattern | Adaptation should live in the doing, not in the clock. Time-spent-training without action contradicts the schema-Marxist register. |
## Cross-references
| Reference | What it provides |
|---|---|
| [`./architecture.md`](./architecture.md) §The three-body system | Trait-emergent identity; "who you are sexually is who you have become"; substrate that this paper extends from "identity" to "capability" |
| [`./architecture.md`](./architecture.md) §The trait-to-body-part bridge | Wheel temperature-axis discipline; the same wheel that governs gender-architecture also governs vocation-pool-recovery |
| [`./architecture.md`](./architecture.md) §Mods as trait-bearers | The four register-mod classes (Amplifier/Bridge/Divergent/Mask) modulate trait-engagement-points at task-time; mod-economy interacts with vocation-progression |
| [`./architecture.md`](./architecture.md) §The post-rogue mod-vocation | Canonical example of the vocation-system in operation; sustained-witnessing as the calibration mechanism for the rogue-mod-task-class |
| [`./bodies.md`](./bodies.md) §Service bodies, §Mod-progression as flesh-loss, §The synth-tongue, §The going-rogue arc, §The post-rogue mod-vocation | Body-canon providing the named vocations the system instantiates as patterns |
| [`../style/trait-palette.md`](../style/trait-palette.md) §The wheel — 4 oppositional pairs at 180° | The wheel's third load-bearing role (recovery-pair geometry) is grounded here |
| [`../style/gender-parity.md`](../style/gender-parity.md) | The principle that body/sex content is gender-parity by default; vocation content (especially service-vocations) inherits this discipline |
| [`../political-register/architecture.md`](../political-register/architecture.md) §Three-tier policy loop | Imperium → GM → Districts → reports up; the data-flow that the catalogue-stack rides through |
| [`../political-register/architecture.md`](../political-register/architecture.md) §Calibrated-misery as imperial optimum | The political claim the caste-as-stagnation math operationalizes |
| [`../political-register/architecture.md`](../political-register/architecture.md) §Vocation-substrate of the imperial-net market | Existing canonical content-vocations the system reads as patterns |
| [`../political-register/architecture.md`](../political-register/architecture.md) §Director cheat-tools + double-ledger | The corruption-substrate that breathing-room enables |
| [`../authority-and-decision/architecture.md`](../authority-and-decision/architecture.md) | The director's decision-surfaces; the parental-rotator role this paper extends |
| [`../runtime-engine/architecture.md`](../runtime-engine/architecture.md) §Slot-tokens + verifier-flags, §Lemniscate runtime | The zone-runtime that tasks bind into via workstations |
| [`../inference-and-memory/architecture.md`](../inference-and-memory/architecture.md) §LLM tiering | Trait-LoRA selection; per-task-LoRA driver-tier; the engagement of trait-LoRAs at task-time |
| [`../style/consent-discipline.md`](../style/consent-discipline.md) | The consent-discipline spine — the four hardstop-pattern variants (self / dual / triple / cooldown-augmented); the mirror-discipline absolute floor; the temporal-grammar that cites this paper's §The 24h window-partition; the register-test as executable form. *Authored same-session as this paper; the shift-assignment consent question is now resolved structurally rather than by added consent-layer.* |
| `../economics-and-resources/architecture.md` *(forthcoming)* | The catalogue-stack's resources × production-chains foundation that this paper presumes |
## Open questions
- **Concrete malus mathematics.** Depletion-pool capacity per trait? Drain-rate per task-type? Time-decay refill curve? Opposite-axis-practice refill multiplier? These are tunable knobs that need design-research and balancing against playthrough-pacing.
- **Multi-trait task outcome composition.** When a task engages two or more traits, how does the multiplicative outcome formula compose? Sum-of-products? Geometric mean? Min-of-traits × stat? Designer-authored per-task? *My current hunch: designer-authored per-task at the type-level, with a default of geometric-mean for tasks that don't specify.*
- **Cross-task transfer at the trait-axis vs task-class layers.** Skill-stats stay strictly per-task-class. Trait-pool effects transfer across tasks engaging the same trait. *Open: should there be partial cross-task-class skill-transfer at the trait-axis layer for related task-classes (e.g., does brothel-task practice contribute partially to companion-task skill since both engage Philotes)?*
- **Apprenticeship / teaching mechanics.** How do skills propagate between NPCs? *My hunch: emergent through co-presence in zones — being in a zone with a high-skill master accelerates the apprentice's per-task measurement on shared tasks*; needs concrete mechanic specification.
- **Faction-vocation alignment.** Which factions teach / recognize / restrict which task-clusters? Already canonical for some (Memorialists, Aletheia-wakers, Caste-preachers, etc., per [`./architecture.md`](./architecture.md) §Faction mod-politics); needs explicit task-binding for the new vocations and for the post-rogue mod-vocation.
- **Task catalogue authoring scope.** How big? Designer-authored at the type-level, instance-generated by world-gen at the room-level (per §The three primitives above) — but the type-level catalogue-size and the world-gen-instantiation density both need design-research and balancing.
- **Dead-organ persistence.** When a player installs a genital-mod they're not yet ready for (per [`./architecture.md`](./architecture.md) §Trait-fitness integration test), the mod renders as dead-architecture. Does this state persist forever once installed? Or does removal-via-rogue-vocation erase it? *My current hunch: persistence as long as the mod is installed; removal via the rogue's de-imposition primitive erases it.*
- ~~**The shift-assignment consent surface.**~~ **Resolved by §The 24h window-partition** — consent is *relocated* rather than added at the shift-assignment level. Imperial-imposition lives in the work-window (refusing IS rebellion = going-rogue temporal-breakout); somatic-necessity lives in the charging-window (not a consent-surface); full NPC agency lives in the leisure-window. Caste-stratification of window-allocations (per §Caste-as-stagnation / Window-allocation as a third caste-stratification axis) governs how many hours per day belong to the NPC.
- **NPC-driven task-discovery.** Can NPCs propose new tasks the director hadn't queued — a slum-tiryak who notices a need and self-assigns? My read: yes — emergent-signals already canonical for this pattern; an NPC's *task-proposal* is structurally a kind of emergent-signal. The director arbitrates the proposal against the imperial-tasklist; if compatible, integrates; if not, rejects (with possible cheat-fold-in via double-ledger).
- **Player-NPC task-collaboration.** When a player and an NPC perform a task together (cooperative crafting, joint surveillance, paired clasp-mediated work), how does the outcome compose? Sum of trait-engagements? Both NPCs benefit task-stat-wise? *Open; will likely follow from the lemniscate's existing two-loop pattern at the zone-runtime layer.*
---
**Version:** 0.2 | **Created:** 2026-04-27 | **Updated:** 2026-04-27