Creator story structure and imports
Program form and authority
Choose the program profile before treating one authoring surface as universal. Fiction can be
linear, branching, or clue-driven; documentary and explainer projects use sealed sourced
sequences or sections and do not publish fiction branches; instructional projects use the
guided-learning curriculum, lessons, practice, assessments, evidence, and approved expert
contributions lane; a hybrid must disclose and preserve the boundary between its fictional and
factual authorities. Changing a label does not convert one
runtime shape into another. Validate and publish the exact form-native structure.
Story access is permission-based. The current controller manages collaborators and release access;
an active collaborator can use only the capabilities in that Story's grant, such as editing
content, managing assets, using AI, previewing, or managing release. Authored child records remain
in the original creator's storage scope and changes are attributed to the acting creator. If a
grant, permission set, or controller changes while an import, preview, AI request, or media job is
in flight, the stale operation is refused rather than committed under its earlier access.
A Documentary publication uses one producer-sealed script, not an editable mixture of old and
new sequence shapes. Every sequence carries the same approved canonical seal plus exact factual
narrative units and audiovisual cues; unit assertion/claim/source bindings and cue identities
must agree with the sealed evidence and disclosure content. A partial seal, changed digest,
retired fiction ending field, or cue/binding drift fails validation and must be corrected in the
Documentary workspace before publication.
Story setup
Story setup controls the draft's reader-facing identity: title, tagline, description, optional
excerpt override, language, content rating, tags, and card or slider artwork. Keep the title and
summary material accurate to the story rather than using setup fields to add new canon. An empty
excerpt override restores the automatic excerpt from story content. Reassess the content rating
when later writing changes the material, and use only owned, eligible image assets. Saving setup
changes the draft; it does not update a reader-visible published version until you publish again.
Duplicating an authorized Story creates a separate unpublished draft owned and controlled by the
creator who makes the copy. The copy does not inherit the source Story's collaborators, access
revision, or published versions; invite collaborators to the new Story explicitly if needed.
The independent Character implementation preserves the same owned library asset and frozen
owner persona when copying a Story or creating a translated edition. Story relationships,
goals, secrets and earned evolution conditions follow the new Story's identities; owner names,
traits, commitments and voice notes stay as authored. A borrowed character's licence belongs to
its receiving Story, so a copy cannot inherit rights accepted for the source Story. Missing
assets or unproved destination rights refuse before creating the copy.
Copy and local translated-edition writes also protect their receiving creator and the
actual owners of the referenced Characters while saving. Concurrent Character changes
can return a retryable conflict. A crashed writer requires explicit operator recovery;
the product does not guess that an old-looking operation is safe to take over. See
[interrupted Character mutation recovery](../BACKUP_SERVICE.md#interrupted-character-mutation-recovery).
Portable exports carry cast attachments and their frozen narrative context. They omit the
private Character library, original character image bytes, publication seals and licence
ledgers. Import requires the referenced live library asset and the exact receiving-Story
grant; exporting a Story does not transfer a character's ownership, private canon or payee.
Episode details and content
Episodes group story material within a season. Use episode details for its number, title, logline,
summary, theme, and cast and location membership; use episode content to review its events and
key story material. For a fiction or hybrid Story, the Direct entry state editor sets the
authored state for a reader who starts that episode directly. Validate its JSON and references
before saving. Other program forms show that the direct entry state is not applicable. The episode's order and links
must still resolve within the draft timeline. Renaming or moving an episode does not repair a
dangling event or branch automatically, so validate after structural changes.
Use Publish and the episode's Versions page to establish whether readers can access a
release. The editor's Draft and Generated status choices describe mutable authoring state;
neither creates a reader release.
Story timeline
A timeline is the ordered path of draft events. Order and linkage determine what becomes reachable;
moving one event does not authorize duplicate positions, impossible chronology, or broken branch
anchors. Reorder the complete intended draft set, then review branches whose anchor or destination
moved and run validation before publishing.
Story branches
Events can expose branches or reader decisions. A branch needs a valid anchor, a prompt, and at
least two labelled choices. Required decisions must stop for reader input. Destinations,
conditions, and state effects belong in authored structure so consequences survive retries and
later scenes. Validation treats missing prompts, choices, anchors, and destinations as errors and
also warns about overly long prompts, too many choices, or choices without meaningful effects.
Branch prompt
The prompt tells the reader what decision is being made. Keep it concise and neutral: present the
situation without deciding what the reader thinks, feels, or chooses. A framing hint and display
style can change presentation, but do not replace a clear prompt. Branch validation warns when the
prompt exceeds 200 characters and blocks a missing prompt.
Branch choices
Provide at least two clearly different, labelled choices and no more than the reader can compare
comfortably. A choice can lead to another owned draft event and can carry structured state effects.
Make consequences meaningfully different where the story promises a real decision; validation
warns when no choice defines a state change and blocks missing labels or invalid destinations.
Branch freeform mapping
Freeform input lets a reader phrase an answer instead of selecting the exact displayed label. Turn
it on only when the mapping instruction explains how valid replies correspond to the authored
choices. Use the confidence threshold and fallback behavior so uncertain input asks for
clarification or shows safe choices rather than inventing a new outcome. Test text in the preview
box is scratch input and is not part of the saved branch fields.
Branch gating
Required flags make a branch available only when the authored state contains those flags. Use
stable flag names that the story actually sets, and verify both the gated and ungated paths in
preview. Marking a branch required controls whether playback must stop for that decision; it does
not make an unreachable anchor or an unmet flag become reachable.
Branch outcome preview
Outcome preview is a draft check of where each choice leads and which effects it applies. Use the
static view to inspect authored destinations and the simulation view to exercise behavior, then run
branch and story validation. A successful preview does not publish the branch and does not prove
that every earlier path can reach it.
Story influence
The influence tier limits how much a reader turn may alter story state. Personal influence permits
bounded changes to the reader's own position, while narrative-only influence keeps the turn from
committing those personal state changes. Use per-turn caps only for known state keys and test the
chosen tier in preview. The setting cannot authorize a change that another canon, safety, or
validation rule forbids.
Mystery course
Mystery mode is off unless the creator enables the supported clue-hunt mode and names the canon
flags that count as discoveries. The mystery course orders authored legs and assigns unique clue
flags to their slots. One flag can fill only one slot, and each clue must point to a real leg and
slot. Resolve the findings shown beside the course before publishing so a reader cannot reach an
unfillable or contradictory investigation stage.
Consequence Story Package
The consequence editor stores a structured Story Package for authored outcomes, state effects,
limits, fixed truths, and reachable endings. Validate the JSON before saving, then simulate more
than one path. Validation checks shape and references; simulation helps expose path behavior. It
does not let the package override reader agency, revive terminal state, or replace the ordinary
story lint and publication checks.
Story encounter policy
A story encounter policy adds the story's own consent after the world's master switch. Enable the
story, choose whether it can host and/or visit as a guest, and select encounter intensity. A story
cannot opt in when its world is missing or disabled. Saving is concurrency-guarded, so reload and
review rather than overwriting if another Studio session changed the story.
Effective encounter configuration
The effective view resolves all encounter authorities instead of echoing one switch: world master
permission, story host/guest consent, story availability, and each current character's enabled
spoiler-safe public profile. Its reasons explain why hosting, guest participation, or the whole
story is blocked. Private biography, goals, secrets, relationships, and schedules are not copied
into encounter profiles; publish only the explicit safe fields shown in that editor.
World-time clock settings
World time must be enabled before schedules and gates affect the story. Choose the time scale,
starting date and time, display format, day/night behavior, and contiguous day-part windows that
cover the clock without unintended gaps or overlaps. Calendar and season labels are presentation
and scheduling inputs; changing them does not reorder authored events. Preview a snapshot at
boundary times, especially a window that wraps past midnight.
World-time NPC schedules
A schedule entry places one owned character at a location for a start/end window and can narrow it
by weekday, story phase, conditions, priority, mood, and interruptibility. Use the activity type to
describe the routine, not to create a new story event. Check overlapping entries and test the day
and phase filters that matter; the runtime resolves only entries whose qualifiers match the
current world-time snapshot.
World-time gates
A time gate controls access to a location, point of interest, event, or choice during an authored
time window. Hard, soft, and conditional gates communicate different strengths, while allowed
days and conditions narrow when the gate applies. Configure an intentional fallback—wait, skip, or
alternate—plus a useful message, and verify both open and closed states. A gate does not repair an
invalid target or make an unreachable branch reachable.
Story packages, templates, and rules
Templates accelerate draft creation but do not publish automatically. Story Package validation
checks referential integrity, state effects, limits, and fixed truths. A package or template still
belongs to one Story in its original creator's storage scope and must pass the ordinary review and
publication path; collaborator access does not create a second ownership lane.
Importing existing story material
Direct, catalogue, and season import workflows create or update draft material the acting creator
is permitted to edit and report job status. A Story-targeted import pins its original-creator
storage scope and current access revision before background work begins, then rechecks both before
commit. Import does not make source rights valid, publish the result, or guarantee structural
quality. Review the generated cast, locations, timeline, branches, safety fields, and findings
before publication.