Skip to content

PCAM-24: Phase-Centric Action Model (v2.0)

Deterministic Timing for Synchronous Simulation

1. The Core Thesis

Interactive simulations—specifically competitive games—traditionally rely on timing inference. Engines attempt to infer the "stage" of an action (Startup, Active, Recovery) from continuous wall-clock time (float dt) or variable frame counts.

This inference is the primary cause of: - Desynchronization: Subsystems (Animation, AI, VFX) drift apart. - Nondeterminism: Floating-point timing varies across CPUs. - Ambiguity: Latency makes "Who won?" a guess rather than a calculation.

PCAM-24 replaces timing inference with Phase Authority.


2. The Phase Coordinate

The fundamental coordinate of PCAM-24 is the Phase. - Discrete: Phase is an integer \(\in \{0, 1, \dots, 23\}\). - Cyclic: Phase wraps modulo 24 (\(23 \to 0\)). - Authoritative: Phase is the only source of truth for action state.

Instead of asking "When did the hit happen?", PCAM-24 asks "What Phase was the attacker in?".


3. Phase Windows & Properties

An action's lifecycle is defined by its Phase Windows. A window is a range of phases that carries a specific semantic property.

3.1 Standard Stages

By convention, most actions follow a tripartite structure: 1. ANTICIPATION (0-N): The wind-up. Vulnerable, usually cancelable. 2. ACTIVE (N-M): The impact. Capable of dealing damage. 3. RECOVERY (M-23): The cooldown. Vulnerable, committed.

3.2 Property Tiers (v2.0 Upgrade)

In complex combat, windows may overlap (e.g., an "Armored Hit" where the character is both ACTIVE and MITIGATING). PCAM-24 v2.0 resolves these overlaps using a Precedence Matrix:

Tier Property Result
1 VOID Invulnerability. Wins against everything.
2 COUNTER Parry/Deflect. Negates and punishes Impact.
3 MITIGATE Block/Armor. Reduces or absorbs Impact.
4 IMPACT Damage. The active hitbox.

4. Phase Elasticity (v2.0 Upgrade)

While Phase is authoritative, it is not always linear. v2.0 introduces Deterministic Elasticity:

4.1 Stalls (Hit-stop)

A Stall locks the current phase for a fixed number of simulation ticks. Example: On impact, an action "stalls" at Phase 12 for 4 ticks to provide visual weight. Because the stall count is an integer, every client remains in sync.

4.2 Skips (Cancels)

A Skip advances the phase counter to a specific target (usually Phase 0 of a new action or Phase 14 of the current one) to handle cancel-flows without timing "gaps."


5. Axioms of Authority

  1. Phase is Truth: If the phase is 12, the action is in Phase 12, regardless of where the animation is.
  2. Subsystem Subscription: Animations and VFX observe Phase and sample their state accordingly. They never drive the simulation.
  3. Discrete Resolution: All interaction logic is reduced to window membership tests. No floats. No timers.
  4. Deterministic Wrap: Every action must define its behavior at Phase 23 (Terminate, Loop, or Nest).

6. Implementation Notes

PCAM-24 is engine-agnostic. It is designed to be implemented as a Semantic Logic Layer that sits between the Input and the Visuals.

  • Networking: Replicate ActionID + Phase.
  • Debugging: Inspect the "Phase Wheel" to see exact interaction snapshots.
  • Design: Paint windows on a 24-step grid to balance combat feel.

Autonomy, Engineered.
Greyforge Labs