Docs/Studio

STUDIO / GUIDE 04

Mission nodes

All fourteen node types and their behavior.

A mission is a directed graph. Each node has an author label, type-specific settings, and a position on the canvas. Ports determine which path can continue. Use the node preview to check what a player may see.

Story and exploration

Start

The entry point of a mission. A default mission begins with one Start node. Connect it to the first playable node.

Configuration: none.

Narrative

Shows authored story content. It can include formatted text, references to reusable content, and an image from private campaign media.

Configuration: content and the player-facing acknowledgeLabel.

Hint

Provides optional guidance. Set its order and, if useful, the node after which it disappears. Hints are available through the player experience rather than wired as a required completion step.

Configuration: content, nonnegative order, and optional dismissAfterNodeId.

Archive entry

Reveals optional background content without blocking progress. It can reference reusable content and images. The editor can convert an archive entry to a hint.

Configuration: content and the player-facing openLabel.

Location

References a reusable location. Location records can carry player-facing names, galaxy and planet information, portal glyphs, travel text, and an image.

Configuration: locationId, player objective, and acknowledgeLabel.

Checkpoint

Marks an authored progression point, such as arrival or confirmation, before later interactions become available.

Configuration: player objective and confirmationLabel.

Player interactions

Text response

Checks a typed answer, including exact codes and phrases. Keep the expected answer in the hidden answer fields. Author-facing labels and player-facing prompts serve different purposes.

Configuration: prompt, comparison mode (exact or trim_case_insensitive), retry feedback, optional success feedback, and hidden serverOnly.expectedAnswer.

Multiple choice

Offers authored answer options. Mark the correct option in the node settings and write feedback for another attempt. The player projection omits the hidden correct-answer data.

Configuration: prompt, at least two options, retry feedback, optional success feedback, and hidden serverOnly.correctOptionId.

Photo upload

Collects one or more screenshots or photos into private storage. A node may inherit the platform policy or set its own image count, MIME types, and maximum size. Successful upload is evidence submission, not image recognition.

Configuration: prompt and optional overrides for requiredCount (1–6), acceptedMimeTypes (JPEG, PNG, WebP), and maxBytes (up to 50 MiB).

Reward

Describes a reward that must be handled by a trusted author or operator. It is a passive leaf and cannot unlock mission completion by itself. A player's claim and manual delivery are separate states.

Configuration: stable rewardId, description, claim instructions, and hidden delivery notes.

Flow control

Choice

Presents an irreversible authored decision. Every option creates a named output port and may include consequence copy. Connect each option's port to its intended next step.

Configuration: prompt and at least two options, each with an ID, label, and optional confirmation content.

All join

Waits for every required incoming branch before continuing. Use it to bring parallel objectives together.

Configuration: none; its incoming edges define the condition.

Any join

Continues when one qualifying incoming branch is complete. Use it for alternative routes.

Configuration: none; its incoming edges define the alternatives.

Mission exit

Marks a named way out of the mission. On the campaign route, connect that exit to another mission or an ending.

Configuration: stable exitKey and player-facing completion content.

Connection rules

The editor rejects invalid targets, duplicate connections, incompatible port types, and cycles. Validation also checks reachability and whether every required path has a valid outcome. See Studio tour for canvas controls and Validation and playtests for findings.