The lifecycle
Preview privately
A preview is a real session on a real cloud machine, running the version you just prepared. Nobody else can join it. The command gives you a link for your own headset: press Join, practise, record a test attempt and finish.
Preview runs through exactly the same path as a published release, so if it works in preview, it works for pilots. Use it to check that:
- the scene looks right on the headset, with nothing important missing
- the controls feel right for your robot
- the task’s time limit leaves people enough time
- the episode saves and replays
Publish a release
A release is a fixed version of your simulation. It never changes. When you publish again, you create a new release, and your project’s default link points new joins at it.
Publishing doesn’t start a machine. A machine starts only when someone presses Join.
unlisted means the release isn’t listed anywhere. Knowing its address isn’t enough: joining always needs an invite link. Public listings arrive with the marketplace .
Invite pilots
The command returns a private link. Share it through your own channels, such as email or chat. Anyone holding the link can use it, so treat it like a password.
By default a link works for one browser and one session. If a second browser tries to use a link someone already claimed, it’s refused.
Show or revoke a link:
Revoking a link stops new joins at once, and ends any session it’s paying for.
We only show a link once, when you create it. If you lose it before anyone uses it, rotate the link to get a new one. The old one stops working.
Invite a team
For a scenario with several seats, create one link for the whole team, or one link per seat when you want to choose who plays what.
A team link claims one seat per browser, up to the number of seats. Everyone lands in the same lobby on the same session, and the team’s session limits cover all its pilots.
What a pilot can and can’t access
A pilot who joins can see and control the world they joined, and they get a confirmation when each attempt saves. They can’t:
- download your code or project files
- see other episodes, including their own, unless you give them read access
- start extra sessions beyond the link’s limits
Their headset does receive the meshes and textures it draws. Don’t publish geometry you need to keep secret.
During a session
A session moves through queued, starting, ready, then draining and stopped at the end. A team session is one session on one machine, with a pilot connected for each filled seat. Stopping takes control away from the pilot and shuts the machine down. Everything already recorded is kept.
These early-access defaults keep sessions and costs bounded:
Reconnecting
If a pilot’s connection drops, the world pauses and waits. The pilot can reconnect from the same browser within the reconnect window without using another session. Control starts fresh from the robot’s current position.
If the machine itself is lost, the attempt ends as interrupted, and everything uploaded before the failure is kept. Starting again means a new session.
Handing over to another pilot
To pass a running world to someone else, create a link for that session:
The current attempt must finish first. The new pilot then practises and starts a fresh attempt. It’s the same machine and the same session limits, so no second machine starts.
Update and roll back
To change your simulation, edit your files and run the loop again:
- People already in a session stay on the release they joined.
- Episodes always record the exact release that produced them.
- New joins get the newest release.
To undo a release, point new joins back at an earlier one:
Rolling back changes only where new joins go. It doesn’t touch running sessions or saved episodes.
Paying pilots
In the first release you invite pilots yourself. Funding a request so that eligible pilots are paid for each accepted episode is planned. See Requests and bounties.