An episode is one recorded attempt. Ballot writes it inside your simulation, step by step, while it runs. Episodes come from the real simulation, not from a video of it, so they hold everything needed to replay the attempt and much of what you need to learn from it.

What an episode contains

Some things aren’t recorded by default:
  • Practice. Only started attempts are recorded.
  • Raw head and hand tracking. Episodes keep the targets the pilot sent, not their tracked body movement.
  • Every hidden internal value. Controller memory and per-substep contact forces aren’t guaranteed; the episode keeps what replay and the declared data need.

Episode status

A saved episode can have any outcome. An attempt that ended without success is still a complete, useful recording.

Find episodes

You can filter by release, task, outcome, how the attempt ended and time. Listing episodes never loads their contents, so it stays fast.

Replay in the browser

Replay rebuilds the attempt from the saved episode, so it works long after the session’s machine has shut down. Your code never runs again for a replay. You can scrub through the timeline and see the task’s events as they happened.

Team episodes

A run of a co-op scenario saves as one team episode. Everything in it shares one timeline and one starting state, and each seat keeps its own tracks: the pilot’s commands, the actions its controller applied and its robot’s state. Steps record which seats completed them and when, including handoffs. You can filter team episodes by seat, robot type or step, and download one seat’s tracks or the whole run. Each seat is credited to the pilot who played it.

Download

The download is the full native episode: provenance, starting state, actions, states, events and the model files needed to read it.

Decide now or later

Because episodes keep the full simulation state, many choices can wait until after collection. Some can’t: they shape what the pilot did. If you need a different robot, controller or view, that’s a new collection. If you need a new camera angle on the same attempts, it can come from the episodes you already have.

Coming later

  • Rendered camera views. Choose a camera and an interval, and Ballot renders images from the saved states, without replaying the pilot’s actions. The first version renders one declared camera at a modest resolution.
  • Dataset exports. Starting with LeRobot-compatible datasets.
Exports aren’t part of the first release. Until then, the native download has everything needed to build your own dataset.

Your data

Episodes belong to your project. Pilots get a confirmation that their attempt saved, but they can’t open episodes unless you give them access. Deleting or unpublishing stops future access. It can’t recall files someone has already downloaded.