Skip to content

Runtime Overview

The runtime is the playable system installed into your Roblox game. It is what players see when they start the visual novel, open the menu, save, load, change settings, and advance through the story.

The plugin is for authors. The runtime is for players.

Menu flow

Main menu, new game, continue, return-to-menu, settings, log, and chapter select.

Save flow

Save slots, load slots, autosave, continue, chapter unlocks, and player settings.

Story presentation

Dialog, choices, text input, sprites, backgrounds, overlays, audio, title cards, transitions, and player input.

Runtime rules

The installed runtime keeps story state, text filtering, saves, and world-facing actions consistent during play.

The runtime tracks the active story session, save data, text input filtering, and actions that affect the Roblox world.

Player actions are accepted only when the story is waiting for them. For example, Choose only matters while a Choice node is active.

Starting a new game creates a session from the story’s Story Starts At chapter and that chapter’s first scene. If chapter title cards are enabled and the entry scene starts a chapter, the runtime queues the title card before advancing into nodes.

Runtime actions are state-aware:

  • Advance works only when the session is waiting for advance input or a timer.
  • Choose works only when the session is waiting for a Choice node, and locked options stay locked during play.
  • Submit Text Input works only when the session is waiting for a Text Input node, and the target variable must be a string.
  • Resolve Choice Timeout works only for a timed Choice with a configured timeout target.
  • Activate Sprite works only for an interactable sprite that matches the waiting sprite or slot.
  • Resolve World Trigger works only while a World Wait node is active.

This is why runtime testing matters. Preview can show the authored path, but the installed runtime proves the real play rules.

The runtime keeps player-facing save actions responsive while preserving the current story checkpoint. Save and load entries display authored chapter and scene names when available, while stable IDs remain behind the scenes.

VNC saves runtime checkpoints. A checkpoint can include the current chapter, scene, node, variables, render state, effect sequence, wait flags, world trigger fields, timer duration, log entries, and end state. This is more precise than saving only a scene number.

The default player save document contains:

  • version = 1
  • settings: autoAdvanceEnabled = false, textSpeed = 1, bgmVolume = 1, sfxVolume = 1
  • no unlocked chapters beyond the entry chapter summary logic
  • no autosave
  • no manual saves

Settings are normalized before use. Text speed is clamped from 0.5 to 2; BGM and SFX volume are clamped from 0 to 1.

Manual saves cannot overwrite the autosave slot. Save summaries include the slot ID, save time, chapter, scene, node, display title, and current background when that data exists.

The runtime log records dialog and choice entries, including prompt text and whether a timed choice resolved through timeout. The log keeps up to 200 entries.

Continue restores the autosave checkpoint when one exists. Loading a manual slot restores that slot’s checkpoint with the current player settings.

  1. Preview inside the plugin while authoring a scene.
  2. Compile the project.
  3. Install or update the runtime.
  4. Start a Studio play session to test menu and story behavior.
  5. Use a published test place for save persistence checks because local Studio behavior is not always the same as a live game.

Use Testing Runtime for the beta checklist before shipping a route.