Systems
Behavioral states feed the combat engine. The engine produces outcomes. This is how they connect.
Four values. Not status effects. Weights in a decision function. The complexity is how they interact across a full roster across a twelve-step Fracture.
How far a Stray has diverged from their assigned baseline. At high drift the decision tree restructures: role assignments deprioritize, target scoring shifts toward instinctive patterns.
Psychological state. Below 30, heuristic risk tolerance collapses: retreat thresholds rise, aggressive actions deprioritize. Above 80, a minor performance multiplier applies.
Accumulates each Fracture run. Does not fully clear without adequate Bastion rest. High fatigue degrades reaction scoring: the heuristic determining action speed and opportunity response.
Builds when a Stray repeats the same Fracture type. A complacent Stray applies cached evaluations rather than re-running threat assessment. Against novel compositions, they fail systematically.
Turn-based state machine. Evaluate, apply behavioral weights, resolve actions, update state, check termination. No randomness.
Scored heuristic. Inputs: threat output, vulnerability, role assignment, proximity. Drift modifies weighting — high-drift Strays score instinctive targets over tactically correct ones.
Each Stray has an assigned role. Adherence probability checked each action. Drift is the primary modifier. A disruptor at 0.8 drift selects frontline actions inefficiently.
Per-turn weighted priority list. Morale shifts weights. Fatigue narrows the space by deprioritizing time-sensitive responses.
Evaluated each step. HP thresholds, ally count, objective status. Morale below 30 raises the trigger — a Stray pulls back when a healthy one would not.
Pairs with complementary specializations receive a shared heuristic multiplier. Composition planning is measurable.
{
step: number,
unit_id: string,
behavioral_state: {
drift: float,
morale: int,
fatigue: int,
complacency: float
},
action_selected: string,
target_id: string | null,
damage_applied: int,
state_delta: {
morale_change: int,
fatigue_increment: int,
drift_increment: float
}
}| Axis | Trigger | Effect |
|---|---|---|
| Combat XP | Eliminations, objectives | Stat increases, specialization unlocks |
| Bond XP | Surviving alongside same allies | Synergy bonuses, shared morale buffer |
| Fracture Mastery | Repeated success, specific types | Better scouting, lower entry uncertainty |
| Bastion Rank | Facility investment over time | Higher recovery, more Stray capacity |
| Arbiter Authority | Mission milestones | Expanded Calling pool, higher-tier access |