• Home
  • Blog
  • Gallery
  • Pricing
  • Home
  • Blog
  • Gallery
  • Pricing
Start creating

Create.Play.

Creator blog

Home/Blog/Production practice

What State Does a Branching Video Start In and End In? Write Entrance and Exit Contracts for Each Shot

Branching video is hard not because of how good it looks, but because the pieces must connect. The fix is to write an entrance and exit contract for every shot: the entrance states where the character is, what they hold, and what they know at the start; the exit states how those three change by the end, plus the final action.

D
DramaFork Editorial TeamInteractive storytelling and AI production
2026.09.21Estimated reading time: 16 min
A visitor outside a threshold holds an unopened invitation while a warm interior table suggests a later state, in a continuity-focused doorway composition.
Article contents
Creator blog
  1. 01Introduction
  2. 02What Four Items Does the Entrance Contract Contain
  3. 03What Three Items Does the Exit Contract Contain
  4. 04Constructed Example: Handing Over an Invitation
  5. 05Three Typical Fixes for Contract Violations
  6. 06Completion Check
Back to article top

Introduction

The trouble with branching video is not looking good, but connecting. At the end of an upstream clip the character is standing at the door with the invitation still in hand, but the downstream clip opens with them sitting in the living room and an opened envelope on the table; the audience immediately feels the break. The solution is to write an entrance and exit contract for each shot: the entrance states clearly where the character is, what they are holding, and what they know when this segment begins; the exit states clearly what those three become when this segment ends, and what the final action is. The contract is written next to the storyboard or node, shared by the preceding and following clips, and not written into code.

What Four Items Does the Entrance Contract Contain

The entrance contract answers "when the audience clicks into this segment, what is the world already like." All four items are indispensable.

Position: The specific place and posture of the character's body. Write "inside the entryway, facing the front door, standing," not "at home."

Objects in hand: Things on the character's body or within reach that the plot will use, and their states. Write "right hand holds an unopened invitation, left hand empty," not "holding a letter."

Known information: Facts the character already knows before this segment begins. Write "knows the invitation is from an old friend, does not know what is written inside," not "understands the situation."

The last action of the previous segment: Used to align the point in time. Write "the previous segment ends with a knock at the door," so that this segment's first reaction has a basis.

The combined effect of these four items is to define the starting point. When writing a downstream segment, the creator does not need to re-explain why the character is here; they only need to follow the entrance.

What Three Items Does the Exit Contract Contain

The exit contract answers "after this segment ends, what state can the downstream take over from."

The resulting change in position and posture: Where the character moves to and what posture they hold. Write "retreats to in front of the living room sofa, sits down," not "moved."

The final state of objects in hand: Who holds the object, whether it has been opened, whether it has been put down. Write "the invitation has been opened, placed on the coffee table, the letter paper pulled out," not "dealt with the letter."

The final action and the textual consequence it causes: The last visible action, and the change this action brings in relationships or information. Write "after reading the letter, looks up toward the door; the character now knows the old friend will visit next week," not "emotionally complex."

The final action must match the first reaction of the downstream entrance. If the exit is "looks up toward the door," the downstream entrance should allow the character to see or hear something in the direction of the door; if the exit is "stuffs the letter into a pocket," the downstream entrance cannot have the letter appear on the table.

Constructed Example: Handing Over an Invitation

The following is a fictional teaching example, used to illustrate how to write a contract, not actual test data.

Setup: Character A is in the entryway, Character B visits, and A is to hand the invitation to B. The shared process is "B knocks, A opens the door, hands the letter to B, and explains that it was entrusted by an old friend of them both." After this there are two branches: B opens and reads the letter on the spot, or B accepts it but says they will read it after going back.

Shared entrance (the entrance of the upstream segment)

  • Position: A is inside the entryway, facing the front door, standing; B is outside the door.
  • Objects in hand: A's right hand holds an unopened invitation, the envelope is intact, the left hand is empty.
  • Known information: A knows the invitation is from an old friend, does not know the contents; B does not know A has a letter in hand.
  • Last action of the previous segment: none (this is the branch starting point), with a knock at the door as the opening.

Exit A: Opens it on the spot

  • Position: A takes half a step back, B steps over the threshold into the entryway, the two stand facing each other.
  • Objects in hand: The envelope is in B's hands, already opened, the letter paper has been pulled out.
  • Known information: Both A and B know the visit time in the letter.
  • Final action: B reads out the visit time in the letter, A nods after hearing it, the letter paper is still in B's hands.
  • Textual consequence: The two enter a "mutually informed" state; if the downstream writes that A hides the visit time, it conflicts with the exit.

Exit B: Accepts it but says they will read it after going back

  • Position: A is still inside the entryway, B retreats to the steps outside the door, the two face each other across the threshold.
  • Objects in hand: The envelope is in B's hands, unopened, placed into the inner pocket of the coat.
  • Known information: A knows the letter has been handed over; B only knows the envelope is from an old friend, does not know the contents.
  • Final action: B turns and walks down the steps, A closes the door.
  • Textual consequence: The two are in a "letter transferred but information not shared" state; if the downstream has A directly discuss the contents of the letter, it conflicts with the exit.

The core difference between the two exits is "whether the letter is opened" and "whether the two are mutually informed"; position and final action are also recorded separately. A knows the identity of the sender, and cannot therefore be written as already knowing the visit time; B opening the envelope does not mean A automatically read the contents.

Three Typical Fixes for Contract Violations

Position conflict. The exit writes "B is outside the door," while the downstream entrance writes "B sits in the living room." Fix: either change the downstream entrance to "B stands outside the door, hand just touching the doorknob," or go back to the exit and change the position to "B has already entered the room." Only one of the two can be changed, not both.

Object state conflict. The exit writes "the envelope is unopened," while the downstream entrance writes "B holds the letter paper in hand." Fix: have the downstream first inherit the unopened state, then add opening and reading; or move these two actions upstream and rewrite the exit. Opening the envelope only changes the object; reading is what changes the reader's knowledge. If the action stays downstream, do not retroactively change the upstream exit to known contents; instead update the state after the downstream action occurs.

Final action conflict. The exit writes "A closes the door," while the downstream entrance writes "A is just taking the letter from B's hand." Fix: change the first action of the downstream entrance to "A opens the door again," or change the final action of the exit to "A reaches out to take the letter." Note the time order: taking the letter after the door is closed requires opening the door first, otherwise the actions cannot connect.

Completion Check

After writing a set of branches, check item by item:

  1. Can each of the four entrance items of every downstream segment find a corresponding item in the upstream exit?
  2. Do the exit's "final action" and the downstream entrance's "first reaction" hold at the same position and under the same object state?
  3. Is the exit's "known information" respected by the downstream text? If the downstream contains information the character should not know, add a process of learning such as reading or retelling, or delete the prematurely leaked line.
  4. Between the two exits, are any objects or information incorrectly shared? For example, Exit B has not opened the letter while Exit A has opened it; the two downstreams cannot share the line "discuss the contents of the letter."
  5. Is the contract written in a visible place next to the storyboard or node, rather than only kept in the author's head?

Only when all five items pass can the segments be considered connected. If any item does not match, prioritize changing the contract rather than changing the lines, because the contract is the interface shared by the preceding and following parts. After changing the contract, manually check whether the affected old materials still hold; if the upstream exit has changed, downstream completed videos and previews may need to be redone, and old data should be kept but not directly reused.

Explore product capabilities Play interactive stories

Continue reading

Browse more articles
A finished work package placed beside creator tools, version labels, and a feedback collection box.
Production practice2026.10.04 · 17 min

How to Write the Credits and Version Notes at the End of an Interactive Story So Feedback Reaches the Right Person

Writing the ending information in three layers is enough: the deliverable name and version number, the division of creative contributions and tool usage, and the three pieces of information to include when giving feedback. Readers who spot a problem can locate the specific file, and when you receive feedback you can tell which layer to change, without going back and forth in emails asking "which version are you talking about?"

The same character appears on three independent stages, each keeping different progress and objects.
Production practice2026.10.04 · 15 min

Same IP Character Chat and Text Adventure: How to Explain the Relationship Without Making Players Think Progress Is Shared?

Describe the relationship between the two entry points as "same world, same character identity, each progresses independently," and use a state comparison table on the entry page to clarify what carries over and what does not. The approach has four steps: first define a character profile for the IP as the shared identity foundation for both entry points; then write a separate "state boundary" statement for each entry point; next prepare a can-say/cannot-say table to constrain marketing copy; finally use a fictional dialogue to test whether players form incorrect expectations after reading.

A warm entrance and a severe iron gate create a genre-promise gap, and the creator recalibrates.
Production practice2026.10.04 · 13 min

Cover Looks Horror but the Content Is Cozy Slice-of-Life? How to Check Whether a Work's Genre Promise Is Consistent

Start with the conclusion: write one sentence each for the synopsis, opening, first core task, and ending describing "what intensity the player expects to bear right now," then read the four sentences side by side.

Let agents handle production complexity while you keep creative control.

Start with one story idea, then shape scripts, characters, shots, and branches into a playable first version.

Product

  • Pricing
  • Capabilities
  • Workflow
  • Examples
  • FAQ

Explore

  • Playable gallery
  • Creator blog
  • Creator partnership

Legal

  • Privacy
  • Terms
© 2026 DramaFork/AI interactive story studio
Press Enter to send, or drag away and release.