Expand description
Replay analysis: detect gameplay mechanics, accumulate stats, and export them.
This module ties together four layers:
analysis_graph— theAnalysisNodedependency DAG that drives everything. Start here for the runtime model.- Calculators — the detection logic wrapped by analysis nodes. Each
detects one mechanic or maintains one piece of derived state and emits
typed events implementing
StatsEvent. They are re-exported at this module’s root (the*Calculator/*Eventtypes in the item list below). accumulators— plain structs that fold a calculator’s events into running per-player / per-team / per-match totals over the replay.- [
export] — the report-facing stat-field model: each accumulator implements [StatFieldProvider] to publish its values as labeled, unit-tagged [ExportedStat]s. timeline— assembles per-frame stat timelines for playback UIs.
§The calculators
Calculators group by what they produce (browse them via the StatsEvent
Implementors list, or the *Calculator entries in the item list):
- Mechanics —
FlickCalculator,HalfFlipCalculator,SpeedFlipCalculator,WavedashCalculator,PowerslideCalculator,FlipImpulseCalculator,DodgeResetCalculator,WallAerialCalculator,WallAerialShotCalculator,CeilingShotCalculator,DoubleTapCalculator,HalfVolleyCalculator,OneTimerCalculator,BallCarryCalculator,AirDribbleCalculator. - Play & contests —
TouchCalculator,PassCalculator,CenterCalculator,KickoffCalculator,BumpCalculator,DemoCalculator,RushCalculator,ControlledPlayCalculator,TerritorialPressureCalculator,WhiffCalculator,FiftyFiftyCalculator,BackboardCalculator. - Derived state —
PossessionCalculator,PlayerPossessionCalculator,PositioningCalculator,RotationCalculator,MovementCalculator,BoostCalculator,PlayerVerticalStateCalculator,LivePlayTracker. - Match-level —
MatchStatsCalculatorand the goal-tag calculators (the*GoalCalculatortypes).
See the stats-runtime guide and the confidence guide.
Re-exports§
pub use crate::boost_pad_locations::standard_soccar_boost_pad_layout;pub use accumulators::*;pub use labels::*;pub use timeline::*;
Modules§
- accumulators
- Accumulators: plain structs that fold a calculator’s per-frame events into running totals over a replay.
- analysis_
graph - The analysis-graph runtime: a dependency DAG of
AnalysisNodes that turn raw replay frames into derived state, gameplay events, and stats. - backboard_
bounce - fifty_
fifty_ state - flip_
impulse - goal_
tags - kickoff_
types - labels
- loose_
possession - player_
possession - player_
state_ span - player_
vertical_ state - possession_
state - settings
- timeline
- touch_
intention - touch_
state
Structs§
- Active
Fifty Fifty - An in-progress 50/50 contest being tracked.
- Aerial
Goal Calculator - Tags goals scored from an aerial.
- Aerial
Goal Calculator Config - Configuration thresholds for the aerial goal-tag calculator.
- AirDribble
Calculator - Detects air dribbles from continuous same-player touches.
- AirDribble
Goal Calculator - Tags goals scored from an air dribble.
- AirDribble
Goal Calculator Config - Configuration thresholds for the air-dribble goal-tag calculator.
- Backboard
Bounce Calculator - Detects backboard bounces and attributes them to the player who sent the ball.
- Backboard
Bounce Event - A ball rebound off the opponent backboard attributed to the player who sent it there.
- Backboard
Bounce State - Per-frame tracking state for backboard bounces.
- Backboard
Calculator - Derives backboard-play stats from detected backboard bounces.
- Ball
Carry Calculator - Detects ground ball carries from continuous ball-control sequences.
- Ball
Carry Event - A completed ball carry or air dribble with path, duration, and touch metrics.
- Ball
Half Calculator - Tracks which half of the field the ball is in over time.
- Ball
Half Calculator Config - Configuration thresholds for ball-half classification.
- Ball
Half Event - A change in which half of the field the ball occupies.
- Ball
Proximity State - Ball-distance designations the player currently holds. These are not mutually exclusive (the absolute closest player is usually also their team’s closest), so they ride one event as flags rather than separate per-designation streams.
- Ball
Sample - A sampled ball state at a frame.
- Ball
Third Calculator - Ball
Third Calculator Config - Ball
Third Event - Boost
Calculator - Tracks boost-pad pickups and boost respawns per player.
- Boost
Calculator Config - Configuration thresholds for boost pickup/respawn detection.
- Boost
Pickup Event - A single boost pickup. Replaces the former pickup-comparison + ledger Collected/Stolen/ Overfill events: pad classification, theft, and amounts are all facets of one pickup.
- Bump
Calculator - Detects player-on-player bumps from player frame state and events.
- Bump
Event - A player-on-player bump with attacker/victim and impact context.
- Bump
Goal Calculator - Tags goals involving a bump.
- Bump
Goal Calculator Config - Configuration thresholds for the bump goal-tag calculator.
- Ceiling
Shot Calculator - Detects ceiling shots from ball/player positions and touches.
- Ceiling
Shot Event - A shot taken shortly after a player contacts the ceiling and drops back to the ball.
- Ceiling
Shot Goal Calculator - Tags goals scored from a ceiling shot.
- Ceiling
Shot Goal Calculator Config - Configuration thresholds for the ceiling-shot goal-tag calculator.
- Center
Calculator - Detects centering passes during live play.
- Center
Event - A touch moving the ball from a wide position toward the central attacking area.
- Completed
Ball Control Sequence - A finished continuous ball-control sequence with its samples and touches.
- Continuous
Ball Control Candidate - A candidate ball-control sequence being evaluated.
- Continuous
Ball Control Player Status - Per-player status within continuous ball-control tracking.
- Continuous
Ball Control Sample - A single sampled frame of a continuous ball-control sequence.
- Continuous
Ball Control State - Per-frame state of an active continuous ball-control sequence.
- Continuous
Ball Control Touch - A touch recorded during a continuous ball-control sequence.
- Continuous
Ball Control Tracker - Generic tracker that groups per-frame samples into continuous ball-control sequences.
- Control
Follow Tracker - Watches the window after a touch to decide, by outcome, whether the touch was a control touch: did the toucher stay with the ball (close and speed-matched) or earn the follow-up touch? Resolutions are applied retroactively to the already-emitted touch event, mirroring how ball-movement credit is finalized.
- Controlled
Play Calculator - Detects stretches of controlled play from ball/player positions and touches.
- Controlled
Play Event - A span of sustained controlled play with ball-progress metrics.
- Core
Player Goal Context Event - Per-player context attached to a goal.
- Core
Player Scoreboard Event - A change to a player’s core scoreboard stats.
- Counter
Attack Goal Calculator - Tags goals scored on a counter-attack.
- Demo
Calculator - Detects demolitions from player frame state and frame events.
- Demo
Event Sample - A sampled demolition event.
- Demo
Goal Calculator - Tags goals involving a demolition.
- Demo
Goal Calculator Config - Configuration thresholds for the demo goal-tag calculator.
- Demolition
Event - A single demolition, linking the demoer (
attacker) to the demoee (victim). Each demolition emits exactly one of these events; the attacker side contributes a demo inflicted and the victim side a demo taken. - Detection
Confidence - Multi-dimensional confidence metadata for an event detector.
- Dodge
Event - A dodge-start event, optionally carrying an estimated dodge impulse and the orientation trajectory of the dodge.
- Dodge
Impulse - An estimated dodge impulse derived from a measurable velocity change.
- Dodge
Refreshed Event - A frame where a player’s dodge/flip availability is refreshed.
- Dodge
Reset Calculator - Detects flip/dodge resets and resolves their outcomes.
- Dodge
Reset Event - A frame-level dodge refresh marked as occurring on the ball (a flip reset).
- Dodge
Rotation - Orientation-trajectory features of a dodge, measured from the car’s rotation over a window after onset — independent of the (noisy) velocity impulse.
- Double
TapCalculator - Detects double taps from a backboard-bounce sequence.
- Double
TapEvent - A follow-up touch after an attributed backboard bounce forming a shot-like trajectory.
- Double
TapGoal Calculator - Tags goals scored from a double tap.
- Double
TapGoal Calculator Config - Configuration thresholds for the double-tap goal-tag calculator.
- Emitted
Event - Link between an event definition and the graph node that emits it.
- Empty
NetGoal Calculator - Tags goals scored into an empty net.
- Empty
NetGoal Calculator Config - Configuration thresholds for the empty-net goal-tag calculator.
- Event
Definition - Static, English-language metadata for a stat event type.
- Event
Definition Catalog Entry - One entry in the TypeScript event catalog: the slim, viewer-relevant view of
an
EventDefinition(id/label/category/hidden + expansion variants). The browser viewer derives its event list from a generated array of these so it can never drift from the Rust registry. Confidence/approach metadata is intentionally omitted — it is host/docs-only. - Event
Stream - Append-only buffer of emitted events exposing all events and newly added ones.
- Event
Variant - A concrete event-type key produced by expanding a parent
EventDefinition(for example a boost-ledger transaction or a rotation role/depth state). - Event
Variant Ts - A variant entry in the TypeScript event catalog (owned, ts-rs-exportable).
- Fifty
Fifty Calculator - Detects 50/50 contests and their outcomes.
- Fifty
Fifty Event - A contested ball interaction with touches/pressure from both teams in a short window.
- Fifty
Fifty State - Shared state of in-progress and resolved 50/50 contests.
- Fifty
Fifty State Calculator - Maintains shared 50/50 contest state for downstream consumers.
- First
ManChange Event - The debounced first man for a team changed from one player to another.
- Flick
Calculator - Detects flicks from ball/player state and touches.
- Flick
Event - A dodge-powered touch following a short controlled carry setup.
- Flick
Goal Calculator - Tags goals scored from a flick.
- Flick
Goal Calculator Config - Configuration thresholds for the flick goal-tag calculator.
- Flip
Impulse Calculator - Detects dodge starts / flip impulses from player frame state.
- Flip
Into Ball Goal Calculator - Tags goals scored by flipping into the ball.
- Flip
Into Ball Goal Calculator Config - Configuration thresholds for the flip-into-ball goal-tag calculator.
- Flip
Reset Candidate Event - A heuristic underside-touch candidate used to connect old flip-reset follow-up logic.
- Flip
Reset Event - A flip reset confirmed once later converted by a dodge-powered touch before landing.
- Flip
Reset Followup Dodge Event - A dodge that follows and converts a flip reset.
- Flip
Reset Goal Calculator - Tags goals scored after a flip reset.
- Flip
Reset Goal Calculator Config - Configuration thresholds for the flip-reset goal-tag calculator.
- Flip
Reset Outcome Event - Resolution of a flip reset (an on-ball dodge reset), emitted once per reset at the moment its outcome becomes known: either it was used by a dodge-powered touch (with the reset-to-use latency) or it went unused.
- Flip
Reset Tracker - Tracks flip resets and their follow-up dodges.
- Frame
Events State - Per-frame discrete game events extracted from the replay.
- Frame
Info - Per-frame timing and index metadata.
- Frame
Input - The bundled per-frame input consumed by analysis-graph source nodes.
- Gameplay
State - Per-frame gameplay state such as game phase and ball-hit flags.
- Goal
Context Event - Aggregated context for a single goal.
- Goal
Context Position - A position recorded in a goal’s context.
- Goal
Player Context - Per-player context surrounding a goal.
- Goal
TagAssignment - A goal tag assigned to a specific goal.
- Goal
TagDefinition - Definition of a goal tag and how it is matched against a goal.
- Goal
TagDetail - A small categorical descriptor copied from the mechanic event that
produced a goal tag (e.g. a flick goal’s flick
kind), so consumers can surface mechanic flavor without dereferencingrelated_events. - Goal
TagEvent Ref - Reference to the event backing a goal tag.
- Goal
TagEvidence - Evidence linking an event to a tagged goal.
- Goal
TagMetadata - Metadata describing a goal-tag definition.
- Goal
Touch Context - Touch context leading into a goal.
- Half
Flip Calculator - Detects half-flips from player frame state.
- Half
Flip Event - A dodge sequence that cancels a flip into an opposite facing direction.
- Half
Volley Calculator - Detects half-volleys from ball/player state and touches.
- Half
Volley Calculator Config - Configuration thresholds for half-volley detection.
- Half
Volley Event - A fast touch shortly after the ball bounces off the floor, paired with a recent dodge.
- Half
Volley Goal Calculator - Tags goals scored from a half-volley.
- Half
Volley Goal Calculator Config - Configuration thresholds for the half-volley goal-tag calculator.
- High
Aerial Goal Calculator - Tags goals scored from a high aerial.
- High
Aerial Goal Calculator Config - Configuration thresholds for the high-aerial goal-tag calculator.
- InFlight
Ledger - Holds an unordered set of in-flight items, drives their lifecycle uniformly, and records recognitions so finalized and in-flight events alike can be queried latently.
- Keyed
InFlight Ledger - Holds at most one in-flight item per key, drives their lifecycle uniformly,
and records recognitions for latent queries. The keyed analogue of
InFlightLedger, for calculators that track a candidate per subject (e.g. per player). - Kickoff
Calculator - Detects and classifies kickoffs and their outcomes.
- Kickoff
Event - A kickoff with its type, outcome, and participant context.
- Kickoff
Goal Calculator - Tags goals scored directly off a kickoff.
- Kickoff
Support Event - Kickoff event for a supporting player.
- Kickoff
Taker Event - Kickoff event for the player who challenged the ball.
- Known
Issue Ref - Lightweight reference to a known detector issue.
- Live
Play State - Shared state describing whether the current frame is live play.
- Live
Play Tracker - Determines whether each frame is live play and its gameplay phase.
- Long
Distance Goal Calculator - Tags goals scored from long distance.
- Long
Distance Goal Calculator Config - Configuration thresholds for the long-distance goal-tag calculator.
- Loose
Possession Calculator - Builds the loose team-possession event stream. Self-contained: it derives the
per-frame touch input from
TouchStateand drives its own [LoosePossessionResolver], so it does not perturb the strict possession path. Finalized segments are emitted as soon as the resolver decides them; non-live stretches are coalesced into inactive markers so the stream stays contiguous. - Loose
Possession Event - A team-possession span under the loose definition: the team that last touched the ball owns it until the opponent demonstrably takes it away.
- Match
Stats Calculator - Accumulates match-level scoreboard stats and per-goal context.
- Movement
Calculator - Tracks per-player movement classification and stats.
- Movement
Event - A change in a player’s movement classification.
- OneTimer
Calculator - Detects one-timers from ball state and upstream pass detection.
- OneTimer
Event - A first-touch shot taken off an incoming pass without trapping the ball.
- OneTimer
Goal Calculator - Tags goals scored from a one-timer.
- OneTimer
Goal Calculator Config - Configuration thresholds for the one-timer goal-tag calculator.
- OwnHalf
Goal Calculator - Tags goals scored from the shooter’s own half.
- OwnHalf
Goal Calculator Config - Configuration thresholds for the own-half goal-tag calculator.
- Pass
Calculator - Detects passes between teammates.
- Pass
Event - A same-team touch sequence where one player sends the ball to a different teammate.
- Passing
Goal Calculator - Tags goals scored off a pass.
- Passing
Goal Calculator Config - Configuration thresholds for the passing goal-tag calculator.
- Player
Frame State - Per-frame per-player state (position, velocity, boost, inputs).
- Player
Possession Calculator - Builds per-player possession spans from the shared possession tracker state.
- Player
Possession Event - A contiguous single-player possession span, merged across field-third changes and brief contested interruptions, enriched with the touch, ball movement, and sustained-control activity that happened while the player owned the ball.
- Player
Sample - A sampled player state at a frame.
- Player
Settings - Captured per-player camera/control settings.
- Player
Span Tracker - Builds coalesced
PlayerStateSpanstreams for one facet: consecutive same-state contributions per player extend the open span, a state change closes it, and an explicitclose(the facet stopped applying to the player) ends the span so a later resumption starts fresh. - Player
State Span - A span of game time during which a single player held one categorical state of one positioning facet (field third, ball-relative depth, rotation role, …).
- Player
Vertical Sample - A sampled per-player vertical-state measurement.
- Player
Vertical State - Per-player airborne/vertical state.
- Player
Vertical State Calculator - Tracks per-player airborne/vertical state.
- Positioning
Calculator - Tracks per-player field positioning over time.
- Positioning
Calculator Config - Configuration thresholds for positioning classification.
- Positioning
Signal Snapshot - Cumulative per-player continuous totals.
- Possession
Calculator - Builds the team-possession event stream from the backdating resolver’s finalized segments.
- Possession
Event - A team-possession span.
- Possession
Resolution - Outcome of a closed control-follow window.
touch_indexaddresses the touch event whosepossessiontag should be set;possessionis the tag to apply, orNonewhen the window resolved without confirming possession. - Possession
State - Shared current ball-possession state.
- Possession
State Calculator - Maintains shared ball-possession state from touches and live play.
- Post
Wall Dodge Event - A dodge shortly after leaving a wall.
- Powerslide
Calculator - Detects powerslide usage from player frame state.
- Powerslide
Event - A state-change event for effective grounded powerslide use.
- Producer
Definition - Static metadata for the analysis node and calculator that produce an event.
- Recognition
- A cheap, early record that an event has been recognized.
- Replay
Frame Input Builder - Builds the per-frame input fed into the analysis graph from replay state.
- Respawn
Event - A player respawn (kickoff or post-demo). This is a general lifecycle event, not boost-specific; the boost grant is just one of its effects.
- Rotation
Calculator - Tracks rotational roles over time.
- Rotation
Calculator Config - Configuration thresholds for rotation classification.
- Rush
Calculator - Detects rushes/over-commits during live play.
- Rush
Calculator Config - Configuration thresholds for rush detection.
- Rush
Event - A quick possession transition where the attacking team has numbers moving out of its defensive half.
- Settings
Calculator - Captures replay/match settings from metadata.
- Shot
Projection Resolution - Outcome of a closed shot-projection window.
touch_indexaddresses the touch event to upgrade to a shot whenis_shotis true. - Shot
Projection Tracker - Watches the ball’s free flight after a touch and decides, from the settled
trajectory before the next touch, whether the touch sent the ball goalward —
recovering shots whose touch-frame velocity had not yet finished updating.
Resolutions are applied retroactively to the already-emitted touch event,
mirroring
ControlFollowTracker. - Speed
Flip Calculator - Detects speed flips from gameplay/ball/player state.
- Speed
Flip Event - A ground-started diagonal dodge/cancel acceleration pattern, primarily for kickoff speed flips.
- Sustained
Pressure Goal Calculator - Tags goals scored after sustained offensive pressure.
- Territorial
Pressure Calculator - Tracks territorial-pressure sessions during live play.
- Territorial
Pressure Calculator Config - Configuration thresholds for territorial-pressure detection.
- Territorial
Pressure Event - A session of sustained territorial pressure by one team.
- Timeline
Event - A high-level match timeline event (goal, demo, etc.).
- Touch
Action Resolution - The resolved touch intention with supporting context.
- Touch
Ball Movement - Ball movement produced by a touch.
- Touch
Calculator - Classifies ball touches into typed touch events.
- Touch
Classification Event - A classified ball touch, carrying its classification as a set of
TouchTags (strength kind, surface/height context, action, possession outcome, and a contested flag) rather than fixed fields. - Touch
Intention Classifier - Stateful helper that classifies the intention of each touch.
- Touch
Intention Frame Context - Per-frame context a touch intention classification draws on.
- Touch
State - Shared per-frame raw-touch state.
- Touch
State Calculator - Detects raw ball touches per frame from ball/player state and frame events.
- Touch
Tag - One classification tag on a touch: a
(group, value)pair, mirroring theStatLabel(key, value)model the accumulators already count by. A touch carries a set of these instead of a fixed list of bespoke fields, so independent classifications coexist (aboomaction and anadvancepossession outcome are separate tags, not rivals for one slot). Within a single-valued group (e.g.kind,surface,possession) at most one tag is present; flag groups (contested) are present or absent. - Wall
Aerial Calculator - Detects wall aerials during live play.
- Wall
Aerial Event - An aerial launched off a side or back wall: the player rides the wall, leaves it while airborne, and hits the ball in the air. Carrying the ball up the wall is not required.
- Wall
Aerial Shot Calculator - Detects wall-aerial shots during live play.
- Wall
Aerial Shot Event - A shot credited to a player shortly after taking off from a wall.
- Wavedash
Calculator - Detects wavedashes from player frame state.
- Wavedash
Event - A low airborne dodge that lands quickly and converts the dodge into ground speed.
- Whiff
Calculator - Detects whiffs and beaten-to-ball attempts.
- Whiff
Event - A committed attempt near the ball that does not result in that player touching it.
Enums§
- Activity
State - Whether the player is participating in the frame: on the field being tracked, or waiting out a demolition.
- AirDribble
Origin - Where an air dribble originated (ground vs wall).
- Approach
Confidence Level - How plausible and stable the current detector approach is by design.
- Ball
Carry Kind - Whether a ball-control sequence was a ground carry or an air dribble.
- Ball
Depth State - The player’s depth relative to the ball along the attacking axis.
- Ball
Frame State - Per-frame ball state (present with position/velocity, or absent).
- Boost
Pickup Activity - Player activity context at the time of a boost pickup.
- Boost
Pickup Detection - How a boost pickup was detected (pad pickup vs inferred).
- Boost
Pickup Field Half - Field half where a boost pickup occurred.
- Boost
Pickup PadType - Whether a boost pad is a small or big (full) pad.
- Boost
Pickup PadZone - Field-zone classification for a boost pickup location.
- Boundary
- A coarse game-flow boundary at which pending analysis work must resolve.
- Depth
Role State - The player’s depth-ordered role within their team (most back / most forward / mid by normalized field depth).
- Detection
Issue Evidence Level - Whether the detector is known to produce incorrect detections or misses.
- Disposition
- What should happen to an in-flight item, as decided either by a per-frame
step or by a
Boundary. - Event
Category - Coarse product/domain grouping for an event definition.
- Field
Half State - Which half of the field (relative to the player’s own goal) the player occupies.
- Field
Third State - Which third of the field (relative to the player’s own goal) the player occupies.
- Finalize
Reason - Why an in-flight item was finalized into an event.
- Flick
Direction - The handedness of a flick, from the dodge’s own sideways component
(
dodge_side). - Flick
Kind - The kind of flick detected, from the dodge direction (see
[
REVERSE_FLICK_MIN_BACKWARD]). - Flip
Reset Outcome - How a flip reset (an on-ball dodge reset) was ultimately resolved.
- Gameplay
Phase - The current phase of gameplay (kickoff, active, replay, etc.).
- Goal
Buildup Kind - Classification of how a goal’s buildup developed.
- GoalTag
- An assignable tag describing how a goal was scored.
- Goal
TagEvent Stream - Which event stream a goal tag’s evidence is drawn from.
- Goal
TagEvidence Kind - The kind of evidence supporting a goal tag.
- Goal
TagKind - Identifier for a kind of goal tag.
- Goal
TagModifier - An optional modifier qualifying a goal tag.
- Goal
TagPerformer - Who performed the tagged action relative to the goal.
- Kickoff
Advantage - Who the kickoff was ultimately good for once play settled, independent of
who won the immediate touch battle. A team gains the advantage by the
first of: stringing uncontested touches together long enough to count as
real possession (even deep in its own half — losing the opening touch but
collecting the ball cleanly is the collector’s advantage), pinning the
ball in the opponent’s half with touch engagement and no clean opposing
possession, or a qualifying kickoff goal. A kickoff where neither team
achieves any of those within the window stays
NoAdvantage. - Kickoff
Approach - How a player approached the kickoff.
- Kickoff
Ball Direction - Direction the ball traveled off the kickoff.
- Kickoff
Direction - Direction a player approached the kickoff from.
- Kickoff
Flip Direction - Local left/right direction of the dodge used during a kickoff approach.
- Kickoff
Outcome - Overall outcome of a kickoff.
- Kickoff
Possession Outcome - Possession outcome following a kickoff.
- Kickoff
Spawn Position - Spawn position a player took for a kickoff.
- Kickoff
Support Behavior - Behavior of a supporting (non-taking) player on a kickoff.
- Kickoff
Taker Outcome - Outcome for the player who took the kickoff.
- Kickoff
Type - The kickoff formation/type.
- Kickoff
WinStrength Band - Banded strength of a kickoff win.
- Pass
Kind - The kind of pass.
- Play
Depth State - Depth relative to the play, used to tag touches with the toucher’s rotation
context. This is no longer emitted as its own event stream — the unified
ball_depthpositioning facet covers depth spans on the timeline — but the rotation calculator still computes it per frame for touch classification. - Player
Vertical Band - Vertical band a player occupies (ground, low air, high air).
- Positioning
Possession State - Possession context used in positioning classification.
- Possession
- What happened to possession after a touch, assigned retroactively by
ControlFollowTrackeronce the outcome is known. Orthogonal toTouchAction: it answers “did the toucher keep the ball?”, independent of what the touch was trying to do. - Respawn
Kind - The kind of boost respawn.
- Role
State - A player’s rotational role (first/second/third man).
- Shadow
Defense State - Whether a defender is shadowing an opponent-controlled attack toward their own net: retreating goal-side of the threat while staying close enough to challenge or save.
- Territorial
Pressure EndReason - Why a territorial-pressure session ended.
- Testing
Thoroughness Level - Rough level of testing behind the detector definition.
- Timeline
Event Kind - Kind of high-level match timeline event.
- Touch
Action - What a touch was trying to do with the ball, read at contact time.
- True
Positive Evidence Level - Whether the detector is known to produce correct detections.
- Wall
Aerial Wall - Which wall a player took off from, relative to their attack direction.
- Wall
Surface - Coarse wall surface used internally to keep setup/continuity tracking stable
while the player slides along a wall. The attack-relative
WallAerialWallis computed separately at the moment of the recorded takeoff. - Whiff
Event Kind - Whether a whiff was a true whiff or a beaten-to-ball attempt.
Constants§
- AIR_
DRIBBLE_ EVENT_ DEFINITION - ALL_
GOAL_ TAG_ DEFINITIONS - ALL_
PLAYER_ VERTICAL_ BANDS - ALL_
PLAY_ DEPTH_ STATES - ALL_
ROLE_ STATES - ASSIST_
EVENT_ DEFINITION - BACKBOARD_
BOUNCE_ EVENT_ DEFINITION - BALL_
CARRY_ EVENT_ DEFINITION - BALL_
DEPTH_ EVENT_ DEFINITION - BALL_
PROXIMITY_ EVENT_ DEFINITION - BALL_
THIRD_ EVENT_ DEFINITION - BOOST_
PICKUP_ EVENT_ DEFINITION - BOOST_
RESPAWN_ EVENT_ DEFINITION - BUMP_
EVENT_ DEFINITION - CEILING_
SHOT_ EVENT_ DEFINITION - CENTER_
EVENT_ DEFINITION - CONTROLLED_
PLAY_ EVENT_ DEFINITION - CORE_
PLAYER_ SCOREBOARD_ EVENT_ DEFINITION - DEFAULT_
HISTORY_ WINDOW_ SECONDS - Default span, in seconds, over which finalized recognitions are retained for latent queries. Generous enough for “did X happen recently” questions while keeping the history bounded.
- DEMOLITION_
EVENT_ DEFINITION - DEPTH_
ROLE_ EVENT_ DEFINITION - DODGE_
EVENT_ DEFINITION - DODGE_
RESET_ EVENT_ DEFINITION - DOUBLE_
TAP_ EVENT_ DEFINITION - FIELD_
HALF_ EVENT_ DEFINITION - FIELD_
THIRD_ EVENT_ DEFINITION - FIFTY_
FIFTY_ EVENT_ DEFINITION - FIRST_
MAN_ CHANGE_ EVENT_ DEFINITION - FLICK_
EVENT_ DEFINITION - FLIP_
RESET_ EVENT_ DEFINITION - GOAL_
CONTEXT_ EVENT_ DEFINITION - GOAL_
EVENT_ DEFINITION - HALF_
FLIP_ EVENT_ DEFINITION - HALF_
VOLLEY_ EVENT_ DEFINITION - KICKOFF_
EVENT_ DEFINITION - LOOSE_
POSSESSION_ EVENT_ DEFINITION - MOVEMENT_
EVENT_ DEFINITION - ONE_
TIMER_ EVENT_ DEFINITION - PASS_
EVENT_ DEFINITION - PLAYER_
ACTIVITY_ EVENT_ DEFINITION - PLAYER_
GROUND_ Z_ THRESHOLD - PLAYER_
HIGH_ AIR_ Z_ THRESHOLD - PLAYER_
POSSESSION_ EVENT_ DEFINITION - POSSESSION_
EVENT_ DEFINITION - POWERSLIDE_
EVENT_ DEFINITION - PRESSURE_
EVENT_ DEFINITION - ROTATION_
ROLE_ EVENT_ DEFINITION - RUSH_
EVENT_ DEFINITION - SAVE_
EVENT_ DEFINITION - SHOT_
EVENT_ DEFINITION - SPEED_
FLIP_ EVENT_ DEFINITION - TERRITORIAL_
PRESSURE_ EVENT_ DEFINITION - TIMELINE_
ENVELOPE_ EVENT_ DEFINITION - TIMELINE_
EVENT_ DEFINITION - TOUCH_
CLASSIFICATION_ EVENT_ DEFINITION - UNKNOWN_
DETECTION_ CONFIDENCE - WALL_
AERIAL_ EVENT_ DEFINITION - WALL_
AERIAL_ SHOT_ EVENT_ DEFINITION - WAVEDASH_
EVENT_ DEFINITION - WHIFF_
EVENT_ DEFINITION
Statics§
- EVENT_
DEFINITIONS - Distributed catalog of every
EventDefinition.
Traits§
- InFlight
Item - An item that can be held in flight by a ledger.
- Stats
Event - Trait implemented by typed stat event payloads.
Functions§
- all_
event_ definitions - All registered event definitions, sorted by
idand de-duplicated. - combined_
goal_ tag_ assignments - event_
definition - event_
definition_ catalog - Build the TypeScript-facing catalog from the registry. Sorted/de-duplicated by
id (inherited from
all_event_definitions) so codegen output is stable. - goal_
context_ events_ with_ tags - goal_
tag_ definition - pending_
event_ definition - produced_
event - produced_
event_ for - wall_
aerial_ surface_ contact - Whether the car is riding a wall this frame: close to the actual wall
surface (within [
WALL_SURFACE_CONTACT_MAX_DISTANCE], excluding the goal mouths) with its roof leaning into the field along the inward wall normal. Position alone is not enough — a car aerialing near the wall must not count as being on it. - wall_
outward_ normal_ and_ distance - Horizontal outward wall normal and distance from
positionto the nearest wall surface (the flat side/end walls plus the corner arcs joining them). The distance is negative past the wall plane (e.g. inside a goal).
Type Aliases§
- Ball
Depth Event - Ball
Proximity Event - Depth
Role Event - Field
Half Event - Field
Third Event - Player
Activity Event - Rotation
Role Event - A span of game time during which a player held one rotation role. Spans are
only emitted while rotation tracking is active (live play, full 2v2/3v3
rosters), so they never carry
RoleState::Unknown. - Shadow
Defense Event