Shared Game Configuration
Reference for platform-level configuration that applies to all game types (adventure, mecha, arena, connect6, and mahjong).
Game Settings
These settings define the game as it appears in the catalog and establish the basic rules for how turns are managed.
| Setting | Description |
|---|---|
| Name | Display name shown to players |
| Description | Appears on the join game turn sheet |
| Game type | The type of game — adventure, mecha, arena, connect6, or mahjong; cannot be changed after the game is created |
| Turn duration (hours) | Default length of each turn; can be overridden per run |
| Status | draft while the game is being designed; published once it is available to players — this transition is one-way |
Game Runs (Instances)
A run is a single playthrough of a published game. Each run can be configured independently.
Run Settings
| Setting | Description |
|---|---|
| Required player count | Minimum number of players before the run can start |
| Turn duration (hours) | Turn length for this specific run; overrides the game-level setting; 0 means no fixed schedule |
| Process when all submitted | Process the turn immediately once all players have submitted their orders, rather than waiting for the turn deadline |
| Email delivery | Deliver turn sheets to players by email |
| Physical post delivery | Deliver turn sheets by physical post |
| Local physical delivery | Deliver turn sheets by local physical collection |
| Closed testing | Restrict joining to players who have been given the closed-testing key |
| Closed-testing key | The key players must enter to join when closed testing is enabled |
| Closed-testing key expiry | When the closed-testing key expires |
| Allow computer opponents | Permit computer opponents to fill otherwise-empty player seats (mahjong, arena, and mecha only) |
Delivery: at least one delivery method must be enabled.
Computer opponents: when a run allows them, a joining player can choose on their join game turn sheet how many computer opponents should fill the remaining seats, so a run can start before every seat is taken by a human. The number a player asks for is capped at the seats still open. Only game types with a computer-opponent engine support this (mahjong, arena, mecha).
Inviting other players: the join game turn sheet also has an "invite additional players" panel. A joining player can enter a name, email, and an optional personal note for each person they want to invite. Each invitee is emailed a link that opens their own join game turn sheet for the same run, and the invitation is tracked until it is accepted or expires.
Closed testing: if closed testing is enabled, email delivery must also be enabled.
Turn duration: can only be changed while the run has not yet started.
Run Status
| Status | Meaning |
|---|---|
| Created | Run exists but has not started; players can join |
| Started | Game is actively running turns |
| Paused | Turn processing is temporarily suspended |
| Completed | Game has ended normally |
| Cancelled | Game was terminated early |
Game Parameters
Parameters let you tune the rules of a specific game type. Each parameter has a default value that applies unless overridden on a particular run.
Available Parameters
| Game Type | Parameter | Default | Description |
|---|---|---|---|
| Adventure | Character lives | 3 | Number of lives a character has before being permanently removed from the run |
| Mecha | Squad size | 4 | Number of mechs in a player's squad |
| Arena | Max turns | 10 | Maximum turns before the match ends on remaining-health percentage; 0 means no limit (see the Arena game reference for its full parameter set) |
Connect6 and Mahjong have no tunable parameters — their rules are fixed.
Turn Sheet Background Images
Each turn sheet can have a custom background image. Images are uploaded per sheet type and apply to all sheets of that type generated for the game.
Image Requirements
| Requirement | Value |
|---|---|
| Accepted formats | WebP, PNG, JPEG |
| Maximum file size | 1 MB |
| Minimum width | 400 px |
| Maximum width | 4,000 px |
| Minimum height | 200 px |
| Maximum height | 6,000 px |
| Recommended dimensions | 2,480 × 3,508 px (A4 at 300 DPI) |
Images that fall within the dimension limits but differ significantly from the A4 aspect ratio will generate a warning; the upload still succeeds.
Turn Sheet Types
Every game type has a join game sheet — sent to a player when they first join a run — which must have a background image uploaded before the game is published. Each game type also has its own set of play sheets that can each have a unique background.
For the full list of sheet types and background image identifiers for each game type, see:
- Adventure game — turn sheet background images
- Mecha game — turn sheet background images
- Arena game — turn sheet background images
Game Validation
Before creating a run, a game must pass a readiness check. The game designers shows any issues that need to be resolved.
Issues are categorised as errors (which block run creation) or warnings (which are advisory only).
Readiness Requirements
Adventure — errors (must be resolved):
- At least one location must exist
- At least one location must be marked as the starting location
Adventure — warnings (advisory):
- Location object state graph issues — unreachable states, dead-end states, or objects missing an initial state
Mecha — errors (must be resolved):
- At least one sector must exist
- At least one sector must be marked as the starting sector
- At least one chassis must exist
- A player starter squad must exist with at least one mech on it
Arena — errors (must be resolved):
- At least one class must exist
- At least three fighters must exist
- Exactly three phase configs must exist
- At least one opponent team must exist
Arena — warnings (advisory):
- Each fighter should have at least one action
- Each opponent team should have at least three slots
Connect6 and Mahjong: no readiness check — these are self-contained board games with no designer-authored content.
Objectives and Win Conditions
Objectives are designer-authored goals that the engine evaluates at the end of each turn. They support hidden-until-unlocked sequencing, multiple completion modes, rewards, and terminal flags that end the run.
How Objectives Work
Each objective has three condition phases (unlock, complete, fail). Every turn the engine checks active objectives:
- Hidden objectives whose unlock conditions are all met transition to active
- Active objectives whose complete conditions are all met transition to completed and fire completion rewards
- Any active objective whose fail conditions are all met transitions to failed and fires failure rewards
Fail conditions are checked every turn regardless of whether the complete phase has been checked.
Common Objective Fields
| Field | Description |
|---|---|
| Title | Display name shown to players (when visible) |
| Category | primary, secondary, or optional |
| Scope | game_instance (global), account_user (per player), or character / squad (per entity) |
| Visibility | visible — shown immediately; hidden_until_unlocked — hidden until unlocked by a reward |
| Is terminal success | Completing this objective ends the run as a success |
| Is terminal failure | Failing this objective ends the run as a failure |
| Completion mode | instance, per_player, or contributory |
| Is repeatable | Whether the objective resets after completion |
Shared Condition Types
| Type | Description |
|---|---|
turn_number_at_least | Current turn is at or above a value |
objective_status_is | A named objective has a given status |
game_instance_status_is | The run itself has a given status |
Shared Reward Types
| Type | Description |
|---|---|
append_turn_event | Broadcast a message to all players' turn event log |
unlock_objective | Transition a hidden objective to active |
complete_game_instance | End the run as a success |
fail_game_instance | End the run as a failure |
advance_clock | Advance a named clock by a given amount |
For game-type-specific condition and reward types, see:
Clocks
Clocks are designer-authored pressure timers. Each clock has a current value that advances automatically each turn and/or when objective rewards fire. When the value crosses a designer-set threshold, the threshold fires a message and one or more effects — including effects that can end the run.
Clock Fields
| Field | Description |
|---|---|
| Title | Display name |
| Max value | The ceiling the clock counts toward |
| Initial value | Starting value when a run begins |
| Advance per turn | Amount added automatically each turn; 0 means the clock only moves via advance_clock rewards |
| Visibility | visible, hidden_until_active, or always_hidden |
Shared Threshold Effect Types
| Effect | Description |
|---|---|
append_turn_event | Broadcast a message to all players |
advance_clock | Advance another clock by a given amount |
fail_objective | Force a named objective to the failed status |
complete_game_instance | End the run as a success |
fail_game_instance | End the run as a failure |
For game-type-specific threshold effect types, see:
Game Designers Navigation
The studio provides different sections depending on the game type.
All game types:
- Games list
- Turn sheet backgrounds
Adventure only: Locations → Location Links → Link Requirements → Items → Item Placements → Item Effects → Creatures → Creature Placements → Location Objects → Object Effects
Mecha only: Chassis → Weapons → Sectors → Sector Links → Squads
Arena only: Classes → Resources → Statuses → Actions → Tags → Chain Rules → Fighters → Opponent Teams → Phase Configs
Connect6 and Mahjong: No game designers section — these are self-contained board games with fixed rules.