subtr-actor
subtr-actor turns Rocket League replay files into data that is easier to work with than the raw actor graph exposed by boxcars.
It supports two main workflows:
- structured replay data for inspection, export, and analysis
- dense numeric arrays for ML and other downstream pipelines
The core crate is written in Rust, with bindings for Python and JavaScript.
Packages
- Rust:
subtr-actor - Python:
subtr-actor-py - JavaScript / WASM:
rl-replay-subtr-actor
What It Gives You
- A higher-level replay model built from
boxcars - Frame-by-frame structured game state via
ReplayDataCollector - Configurable numeric feature extraction via
NDArrayCollector - Frame-rate resampling with
FrameRateDecorator - The same replay-processing model across Rust, Python, and JS
Installation
Rust
[]
= "0.1.15"
Python
JavaScript
Quick Start
Rust: get structured replay data
use ParserBuilder;
use ReplayDataCollector;
Rust: build an ndarray for ML
use *;
Python
, =
JavaScript
import init from 'rl-replay-subtr-actor';
await ;
const replayData = ;
const result = ;
console.log;
console.log;
Core Concepts
ReplayDataCollector
Use this when you want a serializable, frame-by-frame representation of the replay without dealing directly with the low-level actor graph.
NDArrayCollector
Use this when you want numeric features in a 2D matrix. You choose which global and player features to include, either by constructing feature adders directly in Rust or by referring to them by string names in bindings.
FrameRateDecorator
Use this to resample replay processing to a fixed FPS before collecting data.
Common Feature Names
These are useful when working through the Python or JavaScript bindings:
- Global:
BallRigidBody,CurrentTime,SecondsRemaining - Player:
PlayerRigidBody,PlayerBoost,PlayerAnyJump,PlayerDoubleJump
PlayerBoost is exposed in raw replay units (0-255), not percentage.
Documentation
- Rust API docs: https://docs.rs/subtr-actor
- Python package README: python/README.md
- JavaScript package README: js/README.md
- Release notes and process: RELEASING.md
Development
Bindings:
License
MIT