Tutorial: Blue Mage Skill – Random Target (RM2K3)

This is an expansion of the Blue Mage Skill tutorial, but instead of targeting monsters in sequence (i.e. starting with the first monster then going onto the next after that monster is slain) we can create a routine where the target is randomly chosen.

This article needs an update because the information here is now out-of-date.

Knowledge Base

  • Switches
  • Forks
  • Skills
  • Events Commands

Setting Up

  • Create the Blue Mage Skill system as normal.
  • Create a suitable Battle Animation (optional).
  • Set up 2 variables: Mon1 HP and Mon2 HP.
  • Set up 2 switches: Mon1 and Mon2.

Random Target Setup

For this tutorial, there will need be two monsters in the Monster Party, preferably two different ones. We’ll be using one Slime and one Spider for the this tutorial. Create 3 pages in the Battle Events commands.

Page 1Page 2Page 3
Trigger: Switch Learning ON

<>Variable Ch:[V[0041]] Set, 1:Slime HP
<>Variable Ch:[V[0042]] Set, 2:Spider HP
<>Variable Ch:[0001:Randomizer] Set, Randm[1*2]<>FORK Optn:Varbl[0001:Randomizer]-1
<>Change Switch : [0041:Mon1]-ON Set
<>
: ELSE Case
<>Change Switch : [0042:Mon2]-ON Set
<>
:END Case
<>

This places the Slime’s HP into one variable and the Spider’s HP into another variable, and also sets up a random number between 1 and two. Then, if the random number is 1, set the switch for the first monster (the Slime) to ON, otherwise set the switch for the second monster (the Spider) to ON.

Trigger: Switch Mon1 ON, Learning ON


<>FORK Optn:Varbl[0041:Mon1 HP]-0
<>
Messg:Learning failed...
<>
: ELSE Case
<>FORK Optn:1:Slime-ActionPsb
<>Select Face Graphic: Eras
<>Show Battle Anim.:Scan, 1:Slime(W)
<>Messg:Slime has no learnable skills...
<>
:END Case
<>Change Switch:[0041:Mon1]-OFF Set
<>Change Switch:[0021:Learning]-OFF Set
<>Variable Ch:[0001:Randomizer] Set, 0
:END Case

The first FORK Option checks to see whether the monster is dead, i.e. that its HP (from the variable) is zero, and give a "failure" message. Otherwise, scan for any learnable skills, using the pre-determined battle animation targeted on the Slime. After the scan, the the switches and "randomizer" variable are reset.

Trigger: Switch Mon2 ON, Learning ON

<>FORK Optn:Varbl[0042:Mon2 HP]-0
<>
<>Messg:Learning failed...
: ELSE Case
<>FORK Optn:2:Spider-ActionPsb
<>Select Face Graphic: Eras
<>Show Battle Anim.:Scan, 2:Spider
<>Variable Ch:[xxxx:Randomizer] Set, Randm[1*3] <>FORK Optn:Switch[0023:BodyBlow] - ON
<>Messg:C[6]Body BlowC[0] already learned.
<>Change Skill: Hero-Body Blow-> Forget
:ELSE Case
<>FORK Optn:Varbl[xxxx:Randomizer]-2
<>Messg:New skill learned...
<>Change Skill: Hero-Body Blow-> Memory
<>Change Switch: [0023:BodyBlow]-ON Set
<>
:END Case
<>
:END Case
<>
:END Case
<>Change Switch:[0042:Mon2]-OFF Set
<>Change Switch:[0021:Learning]-OFF Set
<>Variable Ch:[0001:Randomizer] Set, 0

The same principle applies here as on Page 2. The only difference is that the Spider has a learnable skill, in this case "Body Blow".

Final Note

This can be very time-consuming, as each monster in the monster party requires a separate page. To add more monsters, set up additional variables and switches for the additional monsters, add another Fork Option (with an Else Case), and follow the same procedures above.

Leave a Reply