Recommended resources
The freely available resources this lesson will direct you to.
- RPG Maker MZ: Basics EP-7: How to make an Intro Cutscenewww.youtube.com
- RPG Maker MV Tutorial: Beginner's Guide! Step-by-Step Event Commands! (Part 1)www.youtube.com
- Tutorials | RPG Maker | Make A Game!www.rpgmakerweb.com
- Cutscene Basics | The Official RPG Maker Blogwww.rpgmakerweb.com
- Event Priorities and Triggers | The Official RPG Maker Blogwww.rpgmakerweb.com
Hello! Welcome back to the capstone module. In the previous lesson, you did the crucial work of a game designer, outlining a narrative arc and defining the "golden path" for your JRPG demo. This blueprint gives us a clear direction for development.
Now, we shift from designer to director. The goal of this lesson is to start bringing that story to life by learning how to script the opening cutscene and initial tutorial events using the event system you built. We'll take the first steps on the golden path you laid out, transforming your narrative ideas into tangible, on-screen events. We will draw on the event system architecture we developed in Module 3, applying battle-tested patterns from tools like RPG Maker to ensure our scenes are robust and well-structured.
1. The Architecture of a Cutscene: The Controller Event
A cutscene, especially an opening one, is a sequence of non-interactive events: characters move, dialogue is displayed, and the camera might pan across the scenery. To manage this complexity, it's best to use a single, dedicated event to orchestrate the entire scene. We'll call this the Controller Event.
This is analogous to having a central service or controller in a web application that manages a complex user workflow, ensuring that state changes and UI updates happen in a predictable and debuggable order. Spreading the logic across many independent events would be like having scattered fetch calls and state updates all over your application—a recipe for race conditions and chaos.
The key characteristics of a cutscene Controller Event are:
- Trigger: It uses an
Autoruntrigger. - Location: It's often an invisible event placed in a corner of the map.
- Function: It takes full control of the game, runs its sequence of commands, and then relinquishes control back to the player.
To understand why an Autorun trigger is the right choice, let's briefly review the different trigger types.
Event Priorities and Triggers | The Official RPG Maker Blog
The article 'Event Priorities and Triggers' provides a clear explanation of how different triggers work. We'll focus on the 'What does the Event Trigger do?' section to understand our options.
Please read the section starting with 'What does the Event Trigger do?'. Pay close attention to the descriptions of 'Autorun' and 'Parallel' triggers. Note the key difference: during an 'Autorun' event, the player cannot move, while during a 'Parallel' event, they can.
For a cinematic cutscene, we want to prevent the player from moving. An Autorun event achieves this perfectly by pausing player input and taking over the game loop until its command list is finished. A Parallel event, by contrast, would let the player walk away mid-scene, which is not what we want.

2. The Cutscene Lifecycle: Setup, Execution, Cleanup
A well-structured cutscene follows a clear lifecycle. The resource "Cutscene Basics" provides an excellent, time-tested pattern for this. Even though it's from the RPG Maker blog, the principles apply directly to the engine we're building.
The lifecycle consists of three phases:
- Setup Phase: Prepare the scene behind the curtain.
- Execution Phase: Run the main action of the cutscene.
- Cleanup Phase: Restore the game state and return control to the player.
Cutscene Basics | The Official RPG Maker Blog
The article 'Cutscene Basics' is our primary guide for this lesson. It details the entire process of creating a robust cutscene from start to finish.
Please read through the entire article. As you read, focus on identifying the commands and techniques used for each of the three phases: Setup, Execution, and Cleanup. We'll break these down next.
Let's map the concepts from that article to our own event system.
Phase 1: Setup
This is where you prepare everything before the player sees it. A typical setup sequence in our Controller Event would look like this:
Fade Out Screen: Hides the setup process from the player.Set Player Control {Disabled}orSet Move Route (Player) {Transparent ON}: Prevents the player from interfering.Set Switch {Cutscene_Active, ON}: Sets a global flag. This is useful for preventing random encounters or other systems from running during the cutscene. It also helps manage "cutscene actors"—NPCs that should only be visible during this scene.Set Event Location: Instantly move all necessary actors (NPCs, etc.) to their starting positions.Fade In Screen: The stage is set. Reveal the scene to the player.
Phase 2: Execution
This is the main body of your cutscene. Here, you'll use a sequence of commands to create the action. The most important concept here is synchronization.
Move Character: You'll use this command repeatedly to script character movements.Show Text: To display dialogue.Wait: To add pauses for dramatic effect.Play Sound Effect / Play BGM: To add audio cues.
The "Wait for Completion" option mentioned in the article is critical. In our system, this is equivalent to how our event interpreter processes commands. If we want two characters to move simultaneously, we could design a Move Character command that doesn't wait. If we want one character to finish moving before another one starts, each Move Character command must be synchronous—the interpreter must await its completion before proceeding. This is a powerful tool for timing.
Phase 3: Cleanup
Once the action is over, you must cleanly hand control back to the player.
Fade Out Screen(Optional, but good for transitioning).Set Event Location (Player): If a cutscene actor was playing the "hero," you might need to move the actual player object to that actor's final position.Set Player Control {Enabled}orSet Move Route (Player) {Transparent OFF}: Give control back to the player.Set Switch {Cutscene_Active, OFF}: Turn off the cutscene flag.Set Self-Switch {A, ON}: This is crucial! YourAutorunevent needs a second, empty page that is conditioned on "Self-Switch A" being ON. This prevents the cutscene from looping forever.Fade In Screen.
This Setup-Execution-Cleanup pattern provides a robust and reusable architecture for any cutscene in your game.
3. Scripting a Tutorial Event
Not all scripted events are purely cinematic. Many are designed to teach the player how to play the game. These are often triggered by player action rather than automatically.
Let's imagine the first step of your golden path involves the player receiving their first quest from a village elder. This is a perfect opportunity for a tutorial.
Event: Village Elder NPC
- Trigger:
Action Button - Priority:
Same as characters(so the player can't walk through him)
Event Commands (Page 1):
Show Text: "Welcome, young hero. The world can be a dangerous place. Before you go, I have a small gift for you."Show Text: "See that chest over there? Go ahead and open it. You can interact with objects like that by facing them and pressing the action button."Set Switch {Elder_Quest_Given, ON}: A game flag to track that this conversation has happened.
Now, when the player interacts with the chest, it will check for this switch, give a reward, and use its own self-switch to change to an "opened" state, just as we designed in Module 3. This simple interaction seamlessly blends storytelling with teaching a core game mechanic.
Test your understanding!
Let's put this all together. Based on the narrative premise and golden path you designed in the last lesson, write out the event script for your game's opening.
- Describe the Controller Event for your opening cutscene. Specify its trigger and the sequence of commands, grouped by Setup, Execution, and Cleanup.
- Describe the first tutorial event that follows the cutscene. Specify the event's trigger and its command sequence.
Show sample answer
Here is an answer based on the "Missing Alchemist" premise from the previous lesson's sample answer.
Golden Path Step 1 & 2: Opening Cutscene in the Workshop
1. Controller Event:
- Map: Alchemist's Workshop
- Trigger:
Autorun - Commands:
- -- SETUP --
Set Player Control {Disabled}Set Switch {Opening_Cutscene, ON}Play BGM {Mysterious Theme}- -- EXECUTION --
Wait {60 frames}Show Text: "(The workshop is a mess... books and papers are scattered everywhere.)"Set Move Route (Player): Turn Left, Pause, Turn Right, Pause, Move Forward 2 steps. (Simulates the player character looking around.)Show Text: "Master Elara... where could she be?"Show Text: "(You spot a note on the main workbench.)"Set Move Route (Player): Walk to workbench coordinates.- -- CLEANUP --
Set Player Control {Enabled}Set Switch {Opening_Cutscene, OFF}Set Self-Switch {A, ON}
2. Tutorial Event (The Note):
- Event: Note on Workbench
- Trigger:
Action Button - Commands:
Show Text: "(You pick up the note.)"Show Text: "'Your master's meddling has gone on long enough. If you wish to see her again, come to my tower across the swamp. -Malfas'"`Show Text: "Malfas! I knew he was behind this. I have to save her!"Add Quest {Find Master Elara}Set Switch {Note_Read, ON}Erase Event(The note disappears after being read)
This sequence creates a cinematic opening and immediately flows into a player-driven action that kicks off the main quest.
Conclusion
In this lesson, you've bridged the gap between high-level story planning and low-level event scripting. You now have a powerful and structured approach for building the cinematic and tutorial sequences that will form the backbone of your JRPG demo.
Key Takeaways:
- Controller Events: Use a single,
Autorunevent to manage the logic for a complex cutscene. This centralizes control and makes debugging easier. - Cutscene Lifecycle: Structure your cutscenes with a clear Setup, Execution, and Cleanup phase to manage state cleanly.
- Synchronization is Key: Use
Waitcommands and synchronous command execution to precisely time character movements and actions. - Triggers for a Purpose: Use
Autorunfor automatic, cinematic scenes andAction Buttonfor player-initiated tutorials and interactions.
Preview of the next lesson:
You've scripted an opening and taught the player how to interact with the world. The next logical step in a JRPG is often the first taste of combat. In our next lesson, you will learn how to create a scripted combat encounter to introduce battle mechanics, moving from world exploration to your first fight.