babylon.config.defines.endgame

Endgame detection thresholds and initial conditions.

Spec 058: extracted from the historical babylon.config.defines monolith. Re-exported via babylon.config.defines.__init__; composed into GameDefines in babylon.config.defines._assembler.

Classes

EndgameDefines(**data)

Configuration for endgame detection thresholds (Slice 1.6).

InitialDefines(**data)

Initial condition coefficients.

class babylon.config.defines.endgame.EndgameDefines(**data)[source]

Bases: BaseModel

Configuration for endgame detection thresholds (Slice 1.6).

The EndgameDetector monitors WorldState for three possible game endings:

  1. REVOLUTIONARY_VICTORY: percolation >= threshold AND consciousness > threshold The masses have achieved critical organization AND ideological clarity.

  2. ECOLOGICAL_COLLAPSE: overshoot_ratio > threshold for N consecutive ticks Sustained ecological overshoot leads to irreversible collapse.

  3. FASCIST_CONSOLIDATION: national_identity > class_consciousness for M+ nodes Fascist ideology has captured the majority of the population.

Parameters:
  • revolutionary_percolation_threshold (float)

  • revolutionary_consciousness_threshold (float)

  • ecological_overshoot_threshold (float)

  • ecological_sustained_ticks (int)

  • fascist_majority_threshold (int)

revolutionary_percolation_threshold

Minimum percolation ratio (0.7 = 70% of nodes in giant solidarity component) for revolutionary victory.

revolutionary_consciousness_threshold

Minimum average class consciousness (0.8 = 80% ideological clarity) for revolutionary victory.

ecological_overshoot_threshold

Consumption/biocapacity ratio above which ecological damage accumulates (2.0 = consuming 2x biocapacity).

ecological_sustained_ticks

Number of consecutive ticks overshoot must persist before triggering ECOLOGICAL_COLLAPSE (5 ticks).

fascist_majority_threshold

Minimum number of nodes where national_identity exceeds class_consciousness for FASCIST_CONSOLIDATION (3 nodes).

model_config: ClassVar[ConfigDict] = {'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

revolutionary_percolation_threshold: float
revolutionary_consciousness_threshold: float
ecological_overshoot_threshold: float
ecological_sustained_ticks: int
fascist_majority_threshold: int
class babylon.config.defines.endgame.InitialDefines(**data)[source]

Bases: BaseModel

Initial condition coefficients.

Parameters:
  • worker_wealth (float)

  • owner_wealth (float)

  • default_population (int)

model_config: ClassVar[ConfigDict] = {'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

worker_wealth: float
owner_wealth: float
default_population: int