21 November 2008

Blue Mage Skill -- Method I

The most common tutorial I'm asked for is for a "Blue Mage" skill. For those that don't know, it's a job class from the Final Fantasy series, where characters can learn enemy skills. Blue Mages were introduced in Final Fantasy V, which I absolutely love as much as I love the Blue Mage skill itself. I saw Momonja's tutorial from RPG2K Net (under redevelopment at the time of writing) on Blue Magic and decided to "tweak" it slightly and improve upon it.

So how do you emulate this job class?

Well, there are actually several methods. This is one of the methods on how to create a Blue Skill in RM2K/3.

Knowledge Base

  • Switches
  • Forks
  • Skills

Setting Up

Make a variable named "Randomize" (or something similar), which I'll refer to as 0001:Randomize.

Next, create a skill called "Blue Tech" (or something similar) in the Skills section of the Database. This will be referred to as 0001:Blue Tech (as a Switch). Also, create another skill/spell (for the monster) called, say, "Ooze" (referred to as 0002:Ooze).

In the Monsters tab, add the skill to the monster’s repertoire so that it will use it in battle.

Learning the Skills/Spells

In the "Monsters Party" tab, create a monster party with a single enemy, say a Slime.

Page 1
Change the "Blue Tech" Switch to ON, leaving the trigger alone.

<>Change Switch:[0001:Blue Tech]-ON Set

Page 2
  • Set the trigger as Blue Tech ON.

    <>Trigger:Switch[0001:Blue Tech]-ON

  • Create a FORK Option and set the Monsters to the Slime.

    <>FORK:Optn:1:Slime-ActionPsb

  • Inside this fork, erase the current face set.

    <>Select Face Graphic: Eras

  • Change the Randomize variable to a number between 1 and 2.

    <>Variable Ch:[0001:Randomizer] Set,Randm[1*2]

    This variable sets the difficulty of obtaining the skill. You can set its value to a higher or lower value, depending on the difficulty. Don't set the variable too high, unless you want to, otherwise it may take a while to acquire the skill/spell, which might kill the Blue Mage.

  • Add a message to indicate that the learning process is in progress. As an example:

    <>Messg:Learning\|...\|...\|...|\^

    The \| before the period is one of the "in-built" text command to delay for 1 second before viewing the next group of periods. The \^ is so that you don't have to press ENTER after the message is done.

  • Make another FORK, this time pointing to the spell/skill that can be learned from the monster and the switch to on. Check the ELSE box here too.

    <>FORK Optn:Switch[0002:Ooze]-ON

  • Under this FORK create a message saying that the spell/skill has already been learned.

    <>Mssg:Skill already learned!

  • Under the ELSE Case, create another FORK Option, using the "Randomize" variable and set it to 2.

    <>FORK Optn:Varbl[0001:Randomizer]-2

  • Under this FORK Option, create a message announcing that a new spell/skill has been learned.

    <>Mssg:Ooze skill has been learned.

  • Enable the Blue Mage to "Memorize" the spell by adding the new Tech Skill to the name of the monster's skill, i.e. "Ooze".

    <>Change Skill:*Hero*:Ooze->Memory

    *Hero* is the name of the character to give the spell/skill to.

  • Change the skill switch (Ooze) to on.

    <>Change Switch:[0001:Ooze]-ON Set

  • In the next ELSE Case, create a message stating that the attempt at learning the spell/skill has failed, and make the hero "forget" it.

    <>Mssg:Failed to learn the skill.
    <>Change Skill:*Hero*-Ooze->Forget


    Again, *Hero* is the name of the character who is the Blue Mage.

  • Under the second to last END Case, change the "Blue Tech" switch to off.

    <>Change Switch:[0001:Blue Tech]-OFF Set

  • Create similar, additional pages for each monster in the monster party if you add more monsters. Also, repeat the process for other monsters that you would like to have learnable skills/spells.

Finally, change the Hero skill in the Database to "Blue Tech" and set the Level at 1. This should be the only skill the hero possesses. All the "learned" spells/skills will now appear as they are learned.

Final Product

Below is the complete code:

Page 1
<>Change Switch:[0021:Blue Tech]-ON Set

Page 2

Trigger:Switch[0021:Blue Tech]-ON

<>FORK Optn:1:Slime-ActionPsb
<>Select Face Graphic: Eras
<>Variable:Ch:[0003:Randomizer] Set, Randm[1*2]
<>Messg:Learning\|.\|.\|.
<>FORK Optn:Switch[0041:Ooze]-ON
<>Messg:Blue Tech already learned!
<>
:ELSE Case
<>FORK Optn:Varbl[0003:Randomizer]-2
<>Messg:New skill learned!
<>Change Skill: Ooze->Memory
<>Change Switch:[0041:Ooze]-ON Set
<>
:ELSE Case
<>Messg:Learning failed...
<>Change Skill:Fenix-Ooze->Forget
<>
:END Case
<>
:END Case
<>Change Switch:[0021:Blue Tech]-OFF Set
<>
:END Case
<>

Modifications

As mentioned earlier, you can also increase the range of the "Randomize" variable to reflect the difficulty of obtaining the spell/skill. In the FORK Option, set the number to the highest number of the range and it will take the Hero several attempts before learning the spell/skill. As a general rule, the minimum value for the Randomize value should be 2 and the maximum should be 5. This way it doesn't appear as too difficult to acquire the skill/spell, otherwise it may become frustrating trying (and failing) to learn the skill for ages, and in the meantime the monster is whittling away the Hero's HP. The more powerful the skill/spell, the higher this number should be.

Another method is where certain monsters have multiple learnable spells/skills. To do this, add another FORK Option with a different number, spell/skill and switch, placing the spells/skills more difficult to learn with the higher numbers.

Another modification is randomly choosing a target for learning a skill or spell. By default, using this Blue Skill method will "scan" for learnable skills in sequence, starting with the first monster in the party. The way to do this is detailed in the Blue Magic Random Target.

Final Note

This might be very time-consuming, as it requires a lot of copy and pasting (one page per monster in the monster party), but it's fairly simple and it works! It could be considered more as an introduction and might easily be modified to a more effective method. You might consider using variables instead of switches, but that might be a little confusing and would need a lot of them.

One of the drawbacks with this method is that the monsters cannot attack the party while the Hero is learning the spell. In reality, the monsters are not going to wait until their spells/skills have been "stolen" from them.

Credits

Momonja - For his original Blue Magic tutorial, on which this entire tutorial is loosely based, and also for inspiring me to write my own. I can't actually take full credit for this guide, except for some of the "tweaks" I did do.
Related Posts with Thumbnails
Template Design "Perfect World" by SkinCorner