How to make a Custom Battle Scene with Forced Inputs


Jun 23, 2012
Reaction score
First Language
Primarily Uses
This will ONLY work with the DEFAULT battle system.

In this Tutorial I will show you how I made a "Tutorial" battle where the player could only use the commands he was told to use. This is a a general guild and you may have to change it to fit your own needs however all the information oh how to get one going is here.

Copy the Scene_Battle script and paste it in section for Script inserts

Copy Scene_Battle.png

Rename it to Scene_Tutorial

Create Tutorial Battle Troop in the FIRST SLOT

Create Tutorial Battle Troop.png

Next Create your Instructions for the player for each turn.

Instruct 1.pngInstruct 2.pngInstruct 3.pngInstruct 4.pngInstruct 5.png

Next add in event command to change a variable for each prompt given, using the FIRST VARIABLE

Variable 1.pngVariable 2.pngVariable 3.pngVariable 4.png

Lastly before we Edit the Scripts Create an Event to Launch the tutorial battle


Now we are ready to start Editing the Scripts!

in the Script Game_Interpreter use Ctrl+F to find "Battle Processing" (line 1095 in stock scripts)

change the line

if troop_id == 1 in your Scene_Tutorial

Find "def post_start"

Below "super" add

BattleManager.save_bgm_and_bgsBattleManager.play_battle_bgmFind "def pre_terminate"

Bellow "super" add

BattleManager.replay_bgm_and_bgsNow that all that's left is to Block out all actions except the one we want

**Form this point on the tutorial is based on the Images included. This is subject for you to change for your own personal needs

Find "def command_attack" and replace the whole block with

def command_attack if $game_variables[1] == 1 select_enemy_selection else start_actor_command_selection endendFind "def command_skill" and replace the whole block with

def command_skill if $game_variables[1] == 3 && @actor_command_window.current_ext == 3 = @skill_window.stype_id = @actor_command_window.current_ext @skill_window.refresh else start_actor_command_selection end end** "@actor_command_window.current_ext == 3" can change if you are using multiple skill types and want one specific type used

Find "def command_guard" and replace the block with

def command_guard if $game_variables[1] == 4 next_command else start_actor_command_selection endendFind "def command_item" and replace the block with

def command_item if $game_variables[1] == 2 @item_window.refresh else start_actor_command_selection endendCongrats on your new Forced Inputs Tutorial Battle Scene!

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Profile Posts

tomorrow I'ma go on a cruise for the first time ever... lets hope I'll survive the experience!
Omg! 8 years in this forum :o
Streaming the last of the RMN Valentiny event games so feel free to drop on by and watch me cry (whether that's from laughter, rage or sheer pain, who knows?)
Today I went to sleep without setting an alarm, so I could sleep more than 2 hours. I woke up after 2 hours.
Sigh :( ... displaying numbers representing the stats of the PCs for a custom menu in rm2k3 is haaaaaaaarrrd!!! DX

Forum statistics

Latest member