Folio v1 — reference
The wiki is the spec.
Each Folio construct gets a page: parameters, canonical example, notes. The wiki is also the AI importer's reference at import time — its contents are extracted into the prompt, so what's written here is what the model sees.
38 pages so far. The sidebar groups them; placeholder rows are pages that exist as stubs while their subsystem is built.
Narrative core
Dialogue, choices, scene flow.
- say— Attribute a dialogue line to a named character.
- narrate— Narrator line — text without a speaking character.
- pause— Pacing beat — hide the textbox and wait for a click (or auto-advance after N seconds).
- choice— Player decision — present a list of options that branch the story.
- jump— Unconditional transfer of execution to another scene.
- if— Conditional routing — evaluate an expression, branch to one of two scenes.
- when— Conditionally run a body of inline steps in place — non-routing alternative to `if`.
- set— Assign a project variable from a bounded expression.
- call— Run another scene as a subroutine, return when it finishes.
- return— Pop the call stack and resume the calling scene.
- end— Terminate the playthrough.
Stage
Backgrounds, sprites, transitions.
Audio
Music, sound, voice, video.
- music— Control the music channel — play, queue, or stop a background track.
- sound— Control the SFX channel — play, queue, or stop a sound effect.
- voice(placeholder)— Attach a voice clip to the next `say` line (placeholder — not yet implemented).
- video— Play or stop a cutscene clip — one-shot or looping.
Reference
Variables, characters, scene flow at a glance.
Effects
Stage effects + text-tag grammar.
- @shake— Jitter the stage briefly to punctuate impact, surprise, or shock.
- @flash— Punctuate a moment with a full-stage color flash that fades back to the scene.
- @dissolve— Cross-fade from the prior stage state to the pending one.
- @fade— Fade the prior stage state to a color, hold briefly, then fade in the pending state.
- @hpunch— Snap the stage horizontally for a single beat of physical impact.
- text-tags— Inline formatting + animation grammar that lives inside `say` and `narrate` string content.
Theme
Theme tokens — every value the renderer reads.
Subsystems
Stats, Locations, Time. Filled in as Phase 6 builds each.
- stats— Typed numeric counters — affection, money, strength. First subsystem; the canonical `$ love += 1` idiom from Tier 2 corpus.
- set stat— Declare a Stats counter or overwrite its value.
- gain stat— Augment a Stats counter by a signed amount.
- locations— Navigable named places. Imported from Ren'Py screen blocks; author scripts navigate them with `goto` and pop with `return-to-map`.
- goto— Navigate the player to a named Location (pushes the location stack).
- return-to-map— Pop the location stack — return to the most recently-entered location.
- time— Discrete-period clock + day counter — the time-passes machinery for sandbox VNs. Ships paired with Locations.
- set time— Initialize or jump the Time clock to a specific period / day.
- advance-time— Move the Time clock forward by N periods (rolls the day on overflow).