Most of this blog so far has been about writing, but the one thing I’m passionate about is writing for video games. I tried to study game design, but art and I don’t mix, but that doesn’t stop me from getting creative in other ways, does it? I’m a creative writer after all, emphasis on the “creative.”

__Tools of the Trade: What You’ll Need
__Tsukihime’s Level Up Events-The basis of this tutorial

Tsukihime’s Common Event Queue-Needed for multiple level up

Get these plug-ins at http://himeworks.com/mv-plugins/

__Step I: Setting Up Your Growth Rates
__1: Set up these variables. Ideally, you’d want one page of 20 variables to be for a single character:

~Tracker Variables~These track your current stats. Change their names to suit your needs.

-CurrentHp

-CurrentMp

-CurrentStrength

-CurrentDefense

-CurrentMagicAttack

-CurrentMagicDefense

-CurrentSpeed

-CurrentLuck

~Stat Gain Variables~These track your current stats. Keep in mind that I will be assuming low numbers (999 HP/MP, 99 all other stats)

-HPGain

-MPGain

-StrengthGain

-DefenseGain

-MagicAttackGain

-MagicDefenseGain

-SpeedGain

-LuckGain

~Growth Rate Variables~These determine the base growth rates per character. These are only mandatory if you’re able to customize a character’s growth rates (think FE:A Robin.)

-HpGrowth

-MpGrowth

-StrengthGrowth

-DefenseGrowth

-MagicAttackGrowth

-MagicDefenseGrowth

-SpeedGrowth

-LuckGrowth

~Other Important Variables~

-RandomNumberGeneratorVariable

-StatsGained (This is optional. It increases every time stats other than HP and MP increase.)

2: Set up the growth rates each character has within an event, most likely by the time they join.

3: Make sure that the class growths remain static- that is, set a curve between a level 1 stat and a level 99 stat.

__Step II: Creating the Event__

1: We’re at the meat of this tutorial! Go to common events and this is where you start.

——–

Comment: BGM Setup: If you want certain music to play during the display of stats, then do this OPTIONAL step.

Save BGM

Play BGM: InsertBGMHere (90, 100, 0)

Control Variables: StatsGained =0

Comment: Prior Stats: Shows stats before level up. Change the abbreviations to those that suit your game as well.

Text: InsertHeroName, Dim, Bottom

HP: \V[CurrentHp] MP:\V[CurrentMp]

STR: \V[CurrentStrength] DEF:\V[CurrentDefense]

MAT: \V[CurrentMagicAttack] MDF:\V[CurrentMagicDefense]

SPD: \V[CurrentSpeed] LUK: \V[CurrentLuck]

Comment: Reset RNG: Sets the RNG to 0 just in case…

Control Variables: RandomNumberGenerator = 0

Comment: Class Check: This checks for your character’s class for that classe’s bonus growths. In this case, they are added or subtracted to your character’s base growth rates.

If: Class of InsertHeroName is ClassA

Control Variables: StrengthGrowth +=10

Control Variables: DefenseGrowth +=5

Control Variables: MagicAttackGrowth -=10

Control Variables: MagicDefenseGrowth -=5

Control Variables: SpeedGrowth -=5

Control Variables: LuckGrowth +=5

Else

If: Class of InsertHeroName is ClassB

Control Variables: StrengthGrowth +=15

Control Variables: DefenseGrowth +=10

Control Variables: MagicAttackGrowth -=5

Control Variables: MagicDefenseGrowth -=10

Control Variables: SpeedGrowth -=20

Control Variables: LuckGrowth +=20

And so on for the next classes…

Comment: Equipment Check: This checks for your character’s equipment providing stat growth bonuses.

If: InsertHeroName has AptitudeRing equipped

Control Variables: StrengthGrowth +=10

Control Variables: DefenseGrowth +=5

Control Variables: MagicAttackGrowth -=10

Control Variables: MagicDefenseGrowth -=5

Control Variables: SpeedGrowth -=5

Control Variables: LuckGrowth +=5

Comment: Skill Check: This checks for your character’s skills providing stat growth bonuses.

If: InsertHeroName has learned Aptitude

Control Variables: StrengthGrowth +=10

Control Variables: DefenseGrowth +=5

Control Variables: MagicAttackGrowth -=10

Control Variables: MagicDefenseGrowth -=5

Control Variables: SpeedGrowth -=5

Control Variables: LuckGrowth +=5

Comment: HP Growth: This relies on RNG more and use this method as you see if you want bigger numbers. This randomizes a range of numbers that determine your HP’s growth. The conditional branches going by class are completely optional as well in case you don’t have those.

If: Class of InsertHeroName is ClassA

Control Variables: RandomNumberGenerator+=Random1..10

Control Variables HPGain+=RandomNumberGenerator

Else

If: Class of InsertHeroName is ClassB

Control Variables: RandomNumberGenerator+=Random2..4

Control Variables HPGain+=RandomNumberGenerator

Change Parameter: InsertHeroName, Max HP + HPGain

And so on for the next classes…

Comment: MP Growth: You are repeating the same process for HP’s Growth, just replace the variables for HP with those for MP.

If: Class of InsertHeroName is ClassA

Control Variables: RandomNumberGenerator+=Random1..10

Control Variables MPGain+=RandomNumberGenerator

Else

If: Class of InsertHeroName is ClassB

Control Variables: RandomNumberGenerator+=Random2..4

Control Variables MPGain+=RandomNumberGenerator

Change Parameter: InsertHeroName, Max MP + MPGain

And so on for the next classes…

Comment: Strength Growth: I will be using my formula for the smaller numbers as you’d see in Fire Emblem.

Control Variables: RandomNumberGenerator = Random 1..50 (You can do it out of 100 if you’ve picked a Random Number God and prayed)

If RandomNumberGenerator <= StrengthGrowth

Control Variables: StrengthGained =1

Control Variables: StatsGained +=1

Change Parameter: InsertHeroName, Attack + 1

Else

Control Variables: StrengthGained = 0

Comment: Defense Growth: Do the same for strength growth, just please remember to set the strength variables to the defense variables.

Control Variables: RandomNumberGenerator = Random 1..50

If RandomNumberGenerator <= DefenseGrowth

Control Variables: DefenseGained =1

Control Variables: StatsGained +=1

Change Parameter: InsertHeroName, Defense + 1

Else

Control Variables: DefenseGained = 0

Comment: Magic Attack Growth, Magic Defense Growth, Speed Growth, Luck Growth:

Repeat the above two formulae while setting the variables to the ones meant for the appropriate stat. Keep doing this for every stat while remembering to set the correct variable.

Comment: View Stat Gains: This displays a message box that states the additions (or 0) for each stat

Play SE: InsertSoundHere (90, 100, 0)

Text: InsertHeroName, Dim, Bottom

HP: \V[HpGained] MP:\V[MPGained]

STR: \V[StrengthGained] DEF: \V[DefenseGained]

MAT: \V[MagicAttackGained] MDF: \V[MagicDefenseGained]

SPD: \V[SpeedGained] LUK: \V[LuckGained]

Control Variables: CurrentHP = Max HP of InsertHeroName

Control Variables: CurrentMP = Max MP of InsertHeroName

Control Variables: CurrentStrength = Max Strength of InsertHeroName

Control Variables: CurrentDefense = Max Defense of InsertHeroName

Control Variables: CurrentMagicAttack= Max Magic Attack of InsertHeroName

Control Variables: CurrentMagicDefense = Max MagicDefense of InsertHeroName

Control Variables: CurrentSpeed = Max Speed of InsertHeroName

Control Variables: CurrentLuck = Max Luck of InsertHeroName

Comment: New Stats: This displays the new stats you’ve earned on leveling up.

Play SE: InsertSoundHere (90, 100, 0)

Text: InsertHeroName, Dim, Bottom

HP: \V[CurrentHP] MP:\V[CurrentMP]

STR: \V[CurrentStrength] DEF: \V[CurrentDefense]

MAT: \V[CurrentMagicAttack] MDF: \V[CurrentMagicDefense]

SPD: \V[CurrentSpeed] LUK: \V[CurrentLuck]

Comment: Stat Protector: This will keep your stats for when you level up twice. Without this, your stats before the level up will all display 0.

Control Variables: HPGained = Max HP of InsertHeroName

Control Variables: MPGained = Max MP of InsertHeroName

Control Variables: StrengthGained = Max Strength of InsertHeroName

Control Variables: DefenseGained = Max Defense of InsertHeroName

Control Variables: MagicAttackGained= Max Magic Attack of InsertHeroName

Control Variables: MagicDefenseGained = Max MagicDefense of InsertHeroName

Control Variables: SpeedGained = Max Speed of InsertHeroName

Control Variables: LuckGained = Max Luck of InsertHeroName

Comment: Level Up Quotes: Fire Emblem Awakening units all have something to say when they gain stats, commenting on however many stats they’ve earned.

If: StatsGained <=1

Text: InsertHeroName, Window, Bottom

“RNG hates me.”

Else

If: StatsGained =2

Text: InsertHeroName, Window, Bottom

“I’m no Jeigan.”

Else

If: StatsGained =3

Text: InsertHeroName, Window, Bottom

“I leveled up!”

Else

If: StatsGained =4

Text: InsertHeroName, Window, Bottom

“That was a great level up!”

Else

If: StatsGained =5

Text: InsertHeroName, Window, Bottom

“Beat that, Est.”

Else

If: StatsGained =6

Text: InsertHeroName, Window, Bottom

“Praise be to Anna, Anna, Anna, Anna, and Anna.”

Comment: Reset Class Growth- Resets classes’ growth bonuses. Just reverse the add/subtract from when you set the classes’ bonuses earlier.

If: Class of InsertHeroName is ClassA

Control Variables: StrengthGrowth -=10

Control Variables: DefenseGrowth -=5

Control Variables: MagicAttackGrowth +=10

Control Variables: MagicDefenseGrowth +=5

Control Variables: SpeedGrowth +=5

Control Variables: LuckGrowth -=5

Else

If: Class of InsertHeroName is ClassB

Control Variables: StrengthGrowth -=15

Control Variables: DefenseGrowth -=10

Control Variables: MagicAttackGrowth +=5

Control Variables: MagicDefenseGrowth +=10

Control Variables: SpeedGrowth +=20

Control Variables: LuckGrowth -=20

And so on for the next classes…

Comment: Equipment Bonus Reset: This resets the bonuses set by equipment. Do this so that the bonuses don’t multiply.

If: InsertHeroName has AptitudeRing equipped

Control Variables: StrengthGrowth -=10

Control Variables: DefenseGrowth -=5

Control Variables: MagicAttackGrowth +=10

Control Variables: MagicDefenseGrowth +=5

Control Variables: SpeedGrowth +=5

Control Variables: LuckGrowth -=5

Comment: Skill Bonus Rest: This resets the bonuses set by skills. Do this so that the bonuses don’t multiply.

If: InsertHeroName has learned Aptitude

Control Variables: StrengthGrowth -=10

Control Variables: DefenseGrowth -=5

Control Variables: MagicAttackGrowth +=10

Control Variables: MagicDefenseGrowth +=5

Control Variables: SpeedGrowth +=5

Control Variables: LuckGrowth -=5

Comment: Reset HP and MP: Sets the bonuses for these two stats (more if you did the same formula for the other stats to get higher numbers) back to 0.

If: InsertHeroName has learned Aptitude

Control Variables: HPGrowth =0

Control Variables: MPGrowth =0

Comment: End Event: Restores the BGM to the regular and ends the event. We don’t want it repeating now, do we?

Replay BGM

Exit Event Processing

Comment: The End: Or is it? We’re not done folks.

——–

3: Now go to your character in the Actor’s database and insert in the note tag:

<level up event: IdOfCommonEventWithLevelUpForCharacter>

4: Repeat the process for your other characters. It’s a matter of copy, paste, and editing the events to match the character’s growth rates.

5: Test that the event works with the most fragile Metal Slime that doesn’t run away and enjoy!

6: Don’t blame me if the RNG hates you.

Your suggestions are welcome, including cleaning this one up. I’m a newbie at RPG Maker just so you know. Just a very ambitious newbie.