five-on-it / packages/missions/src/play
packages/missions/src/play
How a mission is played, with its defaults filled in (GAME_DESIGN §13, TECHNICAL_SPECS §9.5): a mission's play block (Play) says only what differs from them. A mission without one is solo: one player, played in the open city (a room's hub) as every mission always was, or alone in a run of its own when picked from a game's page. A co-op mission is played by one team of 2 to 4 (crew) in a run: a room of its own for the players its run gathered, never in the hub; a death sends a player back to the last checkpoint, and a failed attempt goes back there twice. A versus mission is played by two teams or more of 2 to 8 players in all, or by every player on their own (teams: "each": a free-for-all, whose teams are made one a seat, p1, p2…); a death sends a player back to their team's spawn, and it never fails (a team wins, or it is a draw: no retries). The rest (lives unlimited, no friendly fire, a quarter of the city's ambient life) is the same for every mode. attemptSeconds says how long one attempt may take at most, as far as the document bounds it (what the platform gives a run before it counts it lost).
Joining a run under way (joinInProgress): never (the default) takes nobody once the run is live; untilCheckpoint fills the seats the run lost (gone past their minute to come back, or never come) until its first checkpoint is saved; always fills them all the run long, and the room below the mission's most players besides. openSeats counts the seats a live run may fill, team by team: what its room advertises to the platform.