Menu

#135 US-YW9: Handle Action vs Reaction Scenes

v1.0.0-beta
closed
nobody
2026-01-20
2026-01-19
Anonymous
No

Originally created by: smith-and-web

User Story

As a yWriter user following scene-sequel structure,
I want to have my scene type (Action/Reaction) preserved,
So that I understand the scene's role in story structure.

Parent Epic: [#123]

Background: Scene-Sequel Theory

Dwight Swain's scene-sequel theory divides scenes into two types:

Action Scenes (Scenes)

  • Goal: What the POV character wants
  • Conflict: What opposes them
  • Outcome: How it resolves (usually with disaster)

Reaction Scenes (Sequels)

  • Reaction: Emotional response to the disaster
  • Dilemma: The difficult choice created
  • Decision: What they decide to do next

yWriter XML Structure

<SCENE>
  <ID>1</ID>
  <Title>The Confrontation</Title>
  <ReactionScene>-1</ReactionScene>  <!-- -1=Action, 1=Reaction -->
  <Goal>Sarah wants to get the truth from John</Goal>
  <Conflict>John refuses to admit he took the letter</Conflict>
  <Outcome>John escapes before Sarah can stop him</Outcome>
</SCENE>

<SCENE>
  <ID>2</ID>
  <Title>Aftermath</Title>
  <ReactionScene>1</ReactionScene>   <!-- This is a Reaction scene -->
  <Goal>Sarah processes John's betrayal</Goal>      <!-- Actually "Reaction" -->
  <Conflict>She must decide: pursue John or investigate the letter</Conflict>  <!-- Actually "Dilemma" -->
  <Outcome>She decides to find Mrs. Liu first</Outcome>  <!-- Actually "Decision" -->
</SCENE>

Beat Label Options

Option A: Preserve Original Labels

Always use "Goal/Conflict/Outcome" regardless of scene type:

Beat 1: "Goal: Sarah processes John's betrayal"
Beat 2: "Conflict: She must decide..."
Beat 3: "Outcome: She decides to find Mrs. Liu"

Option B: Scene-Type Aware Labels

Change labels based on Action vs Reaction:

Action Scene:

Beat 1: "Goal: ..."
Beat 2: "Conflict: ..."
Beat 3: "Outcome: ..."

Reaction Scene:

Beat 1: "Reaction: ..."
Beat 2: "Dilemma: ..."
Beat 3: "Decision: ..."

Acceptance Criteria

  • [ ] <ReactionScene> value imported (-1=Action, 1=Reaction)
  • [ ] Scene displays Action/Reaction indicator in UI
  • [ ] Action/Reaction type stored as scene metadata
  • [ ] Option to change beat labels based on scene type (if Option B chosen)
  • [ ] Default behavior works correctly if ReactionScene not set

Configuration Option

Scene-Sequel Structure
──────────────────────
 Import Action/Reaction scene type
 Use scene-type aware beat labels
  Action scenes: Goal / Conflict / Outcome
  Reaction scenes: Reaction / Dilemma / Decision

Edge Cases

  • ReactionScene not set: Default to Action (-1)
  • Value other than -1 or 1: Treat as Action
  • Reaction scene without GCO: Same handling as Action scene

Related

Tickets: #123

Discussion

  • Anonymous

    Anonymous - 2026-01-20

    Originally posted by: smith-and-web

    Implemented in PR [#140]. Reaction scenes (ReactionScene=1) use Response/Dilemma/Decision beat labels instead of Goal/Conflict/Outcome.

     

    Related

    Tickets: #140

  • Anonymous

    Anonymous - 2026-01-20

    Ticket changed by: smith-and-web

    • status: open --> closed
     

Log in to post a comment.

MongoDB Logo MongoDB