Project Settings
Project Settings holds the handful of choices that apply to your whole project: its display name, the defaults every scene and node inherit from, the entry points the runtime starts at, and the locales you are translating into. Open it from Project → Project Settings.
The sections below mirror the dialog’s two tabs. Some fields you set once, near the start of a project (Entry scene, Source locale), and others you come back to and tune as the project grows (Default Timeout, Exclusive Selection). Several Defaults fields sit at the head of an inheritance chain that scenes and nodes fall back to; see Scenes and visit state for how that chain resolves.
Anatomy of the dialog
Project Settings has two tabs: General and Localization. General groups its fields into four sections: Identity, World, Defaults, and Skill check dice. Defaults sit at the tail of a fallback chain: a node or scene’s own setting wins, and anything left on inherit falls back to the project-wide value here.
- Name field, in the Identity section.
- World section: where the run begins. Entry scene picks the scene a full-project run opens in; Starting location picks the location the player starts at. Which one your game reaches for (or both) depends on whether it opens on a scene or on a location.
- Defaults section: the project-wide tail of every inherit chain.
Identity fields
Name
Localizable string. The project’s display name. Surfaces in the About panel, the window title, the exported runtime JSON, and anywhere the host renders the project’s title. Carries a Translator note and a Max length hint like every localizable field. Renaming this doesn’t change any file paths: the project folder on disk is unaffected.
Defaults fields
Every field in this section is a project-wide default. Scenes and nodes with an Inherit setting for the same field fall back here; an explicit value on a scene, node, or event overrides it.
Exclusive Selection
Boolean. When on, selecting a choice inside a scene closes that scene’s remaining choices, Telltale style. When off, the other choices stay visible after selection. Nodes and scenes can override with their own Exclusive selection setting, a three-state flag: true, false, or inherit (the default); each unpicked node resolves its own setting first, then its scene’s, then this one.
Default Timeout
Number of seconds, or blank for none. Sets the default choice-timer budget every scene and node inherits. A scene or node’s own Timeout field overrides it. Leave this blank for projects with no time pressure.
Close on transition
Boolean. When on, transitioning into a sibling or parent scene runs the source scene’s outro and closes it. When off, the source scene stays open in the background, which is useful for hub scenes you drop back into later. This resolves in order: the source scene’s own Close on transition setting, then the project. It is not settable on a Start Scene event.
Default modal
Boolean. When on, scenes open as modal by default: the player can’t back out of one until it completes. Turn this off for projects with a persistent world UI, and opt individual set-piece scenes into modal one at a time.
Default hide when resolved
Boolean. When on, encounters whose scene has been marked resolved (via the scene’s Resolved when expression) drop out of the encounter list surfaced at locations. Scenes can override with their own Hide when resolved flag.
World fields
Entry scene
Picker (any scene). The scene the runtime starts in when the host’s boot call doesn’t name a starting scene. Set this if your host relies on that no-argument boot; hosts that always pass an explicit starting scene can leave it blank. Renaming a scene doesn’t break the picker: it tracks the scene by its internal id, not by name.
Starting location
Picker (any location, or none). The location the player begins the run in. Seeds the current-location value at boot. Leave this as None for projects that set the location through events after the intro.
Skill check dice fields
The project-wide roll configuration every skill check inherits. A per-check override lives on the skill-check event itself; any field the event leaves blank falls back here.
Dice
Dice notation, for example 2d6. Defines the roll every check makes:
the number of dice and their sides. The read-only line below the fields
shows the resulting roll range.
Critical fail threshold (sum)
One or more roll totals, comma-separated, that count as a critical fail
regardless of the DC math. With 2d6 dice the default is 2 (snake
eyes).
Critical success threshold (sum)
The mirror of the above: roll totals that count as a critical success.
With 2d6 dice the default is 12 (boxcars). The validator warns when
a threshold falls outside the range the dice can roll; see
Error messages § 6.3.
Localization
The Localization tab lists every locale the project is translated into.
The source locale is your writing language: the one every field is
authored in. Every other row is a target locale you are translating
into. Writers add and remove target locales here; the actual translations
live in per-locale overlay files under locales/, edited through the
Localization data view or exported for translator handoff via
File → Export Localization.
- SOURCE badge: marks the source locale row.
- Target row: one supported locale (
es-419here). - Toolbar: the Add locale, Remove locale, and Edit locale buttons.
Source locale
The row with the SOURCE badge. Editable like any other row via ✎, but not removable: it’s the project’s language of record. Renaming its Code updates the source pointer for you.
Supported locales (target rows)
Every row below the source. + opens a dialog where you type a locale
code (like fr or es-419), a display name, and pick a flag emoji.
✎ edits any field on the selected row. Renaming the Name or swapping
the Flag is cosmetic; changing the Code is heavier: the Code is the
identifier your translations are keyed by, so the editor moves this
locale’s translations into a folder matching the new code on the next
save. − prompts for confirmation, and on the next save every
translation for that locale is deleted from disk.
For the CSV translator handoff workflow (Export Localization and Import Localization) and per-field translator notes, see Localization.
When to reach for Project Settings
Most of these fields get set once, near the start of a project: Name, Entry scene, Starting location, and Source locale. You come back to the rest as the project’s rhythm needs tuning: Default Timeout when the pacing feels off, Exclusive Selection when deciding whether the game should read as Telltale-style or persistent-hub, and Default modal on that same axis.
Add a target locale here once translation work begins. The day-to-day translation work itself happens in the Localization data view, not in this dialog.
See also
- Scenes and visit state: the inheritance chain for Default modal, Close on transition, and Exclusive Selection.
- Scene: the scene fields that override these defaults.
- Location: Starting location picks from the location list.
- Menu and shortcuts: Export Localization and Import Localization live under File.
- Error messages: Time-of-day feature is disabled: panel message when events reference time-of-day but the clock is off. The time-of-day toggle is not in this dialog; it lives in the Data View’s Time tab (Project → Time).