Game integration
From recognition events to accepted Runner commands and observed action starts.
Actual command mapping
RunnerGameInputBridge connects to the game’s IRunnerGameActions boundary. The recognizer does not own the game controller’s internal behavior.
| Intent | Runner method | Handling |
|---|---|---|
MoveLeft | MoveLeft() | Attempt a left move |
MoveRight | MoveRight() | Attempt a right move |
Jump | Jump() | Attempt a jump |
Crouch | Slide() | Attempt a slide |
PunchLeft, PunchRight, Block | No mapping | Not current Runner actions |
Admission conditions
The bridge checks calibration, tracking validity and gameplay context. It suppresses duplicate source sequences and clears pending commands in invalid contexts. Recognition, bridge receipt, command attempt, command acceptance and observed action start remain separate facts.
Bounded queue
The current bridge maximum TTL is MaximumBufferTtlSeconds = 0.25d, with queue capacity two. The TTL boundary is inclusive; FIFO order and duplicate suppression are preserved. Expired commands are not dispatched later as if an old gesture were a new input.
public const double MaximumBufferTtlSeconds = 0.25d;
This is a maximum buffer lifetime, not an end-to-end latency measurement or an execution-time promise. The bridge does not retry unlimited game commands on every update.
Current experimental profile
The Runner currently enables Demo Assist by default. The session evaluates V3 first and reads the clock again immediately before Demo evaluation. Original receipt time is retained separately from the decision deadline.
Integration evidence
Bridge tests and session source were inspected. The original sample’s licensed assets, complete external Unity project and signing environment were not copied into this website repository. This audit does not establish a running game or current device state.