The Final Dungeon
It has been 12 chapters, and I hope you have enjoyed the journey up to now. While I will be covering a few more things before I conclude this book, this will be the last chapter that’s directly related to the game we’ve been developing together. The final dungeon is perhaps the most important part of a role-playing game (RPG). The player has gone through countless tribulations and obstacles, and he/she is finally at the doorstep of whoever, or whatever, is causing the game’s central conflict. In our game, Eric and Noah find themselves in front of an ancient castle that used to house the kings of the western lands. It has been corrupted by a malevolent being known by many names but who we’ll call the Dark Master. During the course of this chapter, we will be developing our game’s final dungeon.
The Beginning of the End—The First Floor
For our game’s final dungeon, I will be using the Devil’s Castle series of sample maps. They will all be used, although not all of them will be used as the developers of RPG Maker VX Ace (RMVXA) possibly intended. The first order of business is to add the first floor to our project. Once that has been done, you’ll want to connect it with the world map.
Note The DungeonLocation value of the final dungeon should be 5. Keep in mind that the castle we placed on the world map has a single tile that is considered passable (namely, the lower-middle tile).
Once we have our first floor added, we are going to create a little puzzle. It’s only logical that a final boss is going to do everything in his power to stop the player from reaching it. Similarly, a final dungeon isn’t much of one if the player can just walk up to the final boss as easy as saying it. What I’m going to add is a teleportation puzzle. To make this puzzle, we’ll need the following:
For the sake of convenience, I painted the destination of each teleport Region trap on the map, using the same Region number. For example, the line made up of Region 63 will teleport the player to the square marked as 63. Check Figure 13-1 for most of the area involved in the teleportation puzzle. (The destination for Region 61 will be covered in Figure 13-2).
Figure 13-1. A screenshot of the Regions that will be used to create our teleportation puzzle. The player wants to step on the area marked 61 to reach the crystal that will destroy the traps
Figure 13-2. A screenshot of the destination for Region 61 (represented by a grass tile). The nearby crystal event is what the player needs to interact with to disable the teleportation puzzle
Note Don’t forget to erase the Regions at your intended destination. The reason for this will become obvious when we work on the Parallel Process event.
As promised, the player’s two possible routes to leave the floor are blocked by teleportation Regions. Region 61 leads to another part of the map, as covered in Figure 13-2.
We have defined where each particular Region leads within the floor, so let’s work on the Parallel Process event now. The first part of our Parallel Process will check the player’s x and y coordinates and then use the Get Location Info event command to get the Region ID from his/her current location. Whenever the player steps into a Region, he/she is teleported to the appropriate destination. Once the player shatters the crystal powering the teleportation traps, he/she can advance.
@>Control Variables: [0002:X] = Player's Map X
@>Control Variables: [0003:Y] = Player's Map Y
@>Get Location Info: [0028], Region ID, Variable [0002][0003]
@>Conditional Branch: Switch [0036:TeleportTrapOFF] == ON
@>Jump to Label: Skip
@>
: Branch End
@>Conditional Branch: Variable [0028:teleportspot] == 63
@>Transfer Player:[024:Devil's CastleF1F] (040,042)
@>
: Branch End
@>Conditional Branch: Variable [0028:teleportspot] == 62
@>Transfer Player:[024:Devil's CastleF1F] (011,033)
@>
: Branch End
@>Conditional Branch: Variable [0028:teleportspot] == 61
@>Transfer Player:[024:Devil's CastleF1F] (031,017)
@>
: Branch End
@>Conditional Branch: Variable [0028:teleportspot] == 60
@>Transfer Player:[024:Devil's CastleF1F] (023,042)
@>
: Branch End
@>Conditional Branch: Variable [0028:teleportspot] == 59
@>Transfer Player:[024:Devil's CastleF1F] (006,042)
@>
: Branch End
@>Label: Skip
Here you can see why you need to erase the Region squares I used to mark each destination (save for Region 61). The event is set up so that the player will be moved if he/she steps upon a Region.
Caution If you didn’t heed my previous warning, you’ll trap the player in an infinite loop, once he/she is teleported, given that his/her destination also contains the same Region ID used to get there in the first place!
Creating the Crystal That Controls the Puzzle
The last thing left to do for this puzzle is to set up the crystal event, which will have two pages. Page 1 will contain the lion’s share of the total code, and page 2 will exist solely to inform the player that the crystal has been shattered. The graphic I’m using for page 1 of the crystal event is the very first one in the !Crystals graphic set. While the crystal appears cut off in the map editor, it will display correctly in-game.
@>Text: -, -, Normal, Bottom
: : A glowing crystal floats in place.
@>Text: 'Actor5', 6, Normal, Bottom
: : This crystal is probably what is stopping
: : us from getting anywhere. We should
: : shatter it.
@>Text: -, -, Normal, Bottom
: : Will you destroy it?
@>Show Choices: Yes, No
: When [Yes]
@>Fadeout Screen
@>Play SE: 'Crash', 80, 100
@>Text: -, -, Normal, Bottom
: : The crystal shatters!
@>Control Self Switch: A =ON
@>Fadein Screen
@>
: When [No]
@>
: Branch End
@>
When the player decides to shatter the crystal, we fade out the screen, play an appropriate sound effect, and display a message. We flip on a self-switch and then fade the screen back in, allowing the event to process page 2. Page 2 of the crystal event uses the Gravel (Crystal) tile as its graphic, requires self-switch A to be on, and displays a single message. The message is: “Where once the glowing crystal stood, only shards remain.”
Next, we must add a list of encounters for the player to potentially face in battle. You can see it in Figure 13-3.
Figure 13-3. The encounter list for the first floor of the Devil’s Castle
The first three enemy types are unchanged from their default forms. Dragons, on the other hand, are an entirely new monster type. I figured that, if we were going to have a Dragon superboss, it would only be proper to have lesser Dragons appear as an enemy type at some point before the end of the game. Ladies and gentlemen, I present to you the Dragon (Figure 13-4).
Figure 13-4. Screenshot of the Dragon enemy created for the final dungeon. The Dragon adds Burst to its repertoire when it is at 50% HP or less
The Dragon stands head and shoulders above every other normal (non-boss) enemy in our game. Nothing, save for the bosses in this dungeon (and the superboss, of course) is as strong as a Dragon. This enemy is a worthy addition to this game’s final dungeon. They are notable in that they have a 1 in 16 chance of dropping some of the best default armor in RMVXA. All three drops are for Eric, as Noah does not have the ability to use Light Armor (Dragon Cap), Heavy Armor (Dragon Plate), or Shields. Now you may be wondering, if the mines dropped Mithril-quality gear, and Dragons have a chance to drop their self-named level of gear, what type of gear will we find in chests within this final dungeon? That will be something to cover a little later. For now, let’s add two more levels to our project. We want Devil’s Castle F2F and FB1. Of the two, the more significant is definitely FB1.
We had the village elder of Rocksdale reference that an orb of great power was hidden beneath the castle. More important, the orb will be necessary to defeat the final boss. This makes the basement the most important floor for the player to visit during his/her time in the final dungeon. The layout of Devil’s Castle FB1 can be seen in Figure 13-5.
Figure 13-5. A screenshot of Devil Castle’s basement
So, you’re probably thinking that the chest contains the orb. You’d be wrong. The orb is in the hands of the skeleton in the second prison cell. The chest contains a piece of the armor that I created for this dungeon. Before I unveil it, let me show the code for the event related to the skeleton.
@>Text: -, -, Normal, Bottom
: : The skeleton lets off a faint glow. Will you touch
: : it?
@>Show Choices: Yes, No
: When [Yes]
@>Text: -, -, Normal, Bottom
: : Light envelops your body!
@>Change Items: [Orb of Light], + 1
@>Play ME: 'Fanfare1', 100, 100
@>Text: -, -, Normal, Bottom
: : You have found the C[2]Orb of LightC[0]!
@>Change Items: [Orb of Light], + 1
@>Text: 'Actor5', 6, Normal, Bottom
: : Such power! Keep it safe, Eric.
@>Control Self Switch: A =ON
@>
: When [No]
@>
: Branch End
@>
The skeleton event is blank, with a Same As Characters priority and an Action Button trigger. If the player touches the skeleton, he/she will receive the Orb of Light, the item needed to be able to have a fighting chance against the final boss.
Note Alternatively, you could remove the skeleton graphic from the map and add it to the event itself. The overall result is the same.
The Orb of Light is a Key Item in the same vein as the Old Key we created in Chapter 5. That is to say, it cannot be used from the inventory at any time. It will be automatically used by Eric when the party faces down the final boss. Now, let’s reveal the first piece of armor that I created for this dungeon. (See Figure 13-6.)
Figure 13-6. A screenshot of the Ebony Armour. Not pictured are the parameter changes for MDF and MMP, both of which are 0
This is one of four pieces of Ebony gear that I made. They all follow the same formula. Basically, I took the average of the top two items in a specific set of armor (Heavy Armour, in this case) and averaged out their parameters and price. I added 10% Dark resistance to this armor, much like Dragon Armour has 20% Fire resistance. This armor is between Mithril Armour and Dragon Armour, in terms of the protection that it gives Eric. Use transfer events to connect the stairs near the prison cells with the staircase at (34,10) on the first floor. In addition, couple the basement staircase at (3,21) with the first floor stairs at (9,26). Last, link the remaining basement stairs at (34,7) with the first floor staircase at (40,12). With that set up, take a look at Figure 13-7 containing the basement’s encounter list, before moving on to the next section.
Figure 13-7. The list of encounters for the Devil’s Castle’s basement
I altered the Vampire’s parameters to put it more in line with the other area encounters. You can see its altered stats later on in Figure 13-8.
Figure 13-8. A screenshot of the Vampire, weakened to fit my purposes of having it as a regular encounter
The Second Floor
We used the first floor for a teleportation puzzle, so let’s use the second floor for something a little more mundane. We have made three dungeons and filled up countless chests, but what happens when the chest contains an enemy? Then, the player has to defeat the enemy to get the treasure! I’m placing a total of five treasure chests on the second floor (Figure 13-9). The top two chests contain pieces of Ebony gear. Those will be guarded by Vampires.
Figure 13-9. Screenshot of the second floor of the Devil’s Castle. Note the five treasure chests present on the level
So, how do you make a chest that contains an enemy? It is incredibly simple. All you have to do is add the following two lines to a treasure chest event:
@>Text: -, -, Normal, Bottom
: : You are attacked by a monster in a box!
@>Battle Processing: Vampire
Note You can insert that code into any part of the default treasure chest event’s first page, and the end result will be the same. The game interrupts event processing to do battle processing, so that the event will functionally “freeze in place” until the player defeats the forced encounter.
As promised, Figure 13-8 is an image of what my Vampire entry looks like now. As I only tweaked this enemy’s parameters, that’s all that the picture contains. Everything else is at their default settings.
This stat-block makes the Vampire the second strongest regular encounter in our game.
For reference to our altered treasure chests, take a look at the following event code for the northwestern chest at (15,17):
@>Control Self Switch: A =ON
@>Play SE: 'Chest', 80, 100
@>Set Move Route: This event (Wait)
: : $>Direction Fix OFF
: : $>Turn Left
: : $>Wait: 3 frame(s)
: : $>Turn Right
: : $>Wait: 3 frame(s)
@>Text: -, -, Normal, Bottom
: : You are attacked by a monster in a box!
@>Battle Processing: Vampire
@>Change Armor: [Ebony Circlet] + 1
@>Text: -, -, Normal, Bottom
: : Ebony Circlet was found!
@>
The Ebony Circlet is halfway between the Mithril Circlet and the Magi’s Crown in terms of protection. The chest at (35,19) contains the Ebony Helm, which is between the Mithril Helm and the Dragon Helm in terms of protection (like the Ebony Armour, it grants 10% Dark resistance). The other chests contain lesser items, such as elixirs and gold. There’s not much else to say about the second floor. As there are a whopping eight staircases on the second floor, I decided to write up in the form of a table (Table 13-1) where each of them connects to.
Table 13-1. A List of Stairs on the Second Floor and Where They Connect to Within the Final Dungeon
Stairs on 2F |
Connecting Stairs |
---|---|
6,6 |
6,6(3F) |
23,20 |
23,20(1F) |
40,6 |
40,6(1F) |
40,46 |
40,46(3F) |
23,32 |
23,32(1F) |
6,46 |
6,46(3F) |
23,26 |
23,26(3F) |
37,26 |
37,26(1F) |
Caution As with the teleportation puzzle back on the first floor, be careful you don’t create a situation in which you trap your player in an infinite loop! The actual transfer events should land adjacent to the destination staircase, not on them.
The last thing to do for this floor is to reveal the encounter list (Figure 13-10).
Figure 13-10. A screenshot of the encounter list for the second floor of the Devil’s Castle
The general idea behind my encounter lists for this dungeon is that the player will have a greater chance of encountering harder enemies the farther away he/she gets from the entrance. This ramps up the tension in anticipation of the fated encounter with the final boss.
The Third Floor
While the first two floors of the Devil’s Castle are fairly plain (in terms of layout, at least), the third floor is rather interesting. There’s a dead-end area in the southwestern corner of the floor, as well as a large open space near the center that is most likely intended to be a treasure room. Given that I plan to have the final boss on the next floor, it is appropriate that we honor one of the most classic RPG conventions on this one. Let’s have a boss rush!
In some RPGs (and games of other genres, for that matter), the push toward the final boss is punctuated by having to re-fight all of the bosses that were previously battled. In our game, the player only has to fight two bosses (Gemini, at the Dark Cave, and the Demon, at the Dark Spire), so our boss rush will be two enemies long. You could loosely classify boss rushes into two broad categories.
We’ll be making a boss rush of the second type.
Locales of the Third Floor
Remember how I said at the beginning of the chapter that not all floors of the final dungeon would be used as intended? I’ll be connecting Devil’s Castle F5F to the entrance present within the third floor. Take a look at Figure 13-11 for reference.
Figure 13-11. A screenshot of the area containing the entrance (6,18) that will take the player to the Devil’s Castle F5F map
Devil’s Castle F5F will be the site of our boss rush. To make sure that the player has to defeat the bosses to progress, we can place a barrier much like the one that blocked the bridge on the world map before the player defeated the second boss. We’ll use the same eventing strategy that we did for the teleportation puzzle on the first floor. Figure 13-12 has a screenshot of the area that is unblocked when the player completes the boss rush.
Figure 13-12. A screenshot of the area to be blocked off by our event. I used one of the Rug tiles to mark the specific square that would be impassable
The square marked with a rug in Figure 13-12 is occupied by Region 63. Until the player completes the boss rush, he/she will be pushed back every time an attempt is made to try to pass that specific square. We’ll talk about that treasure room in a bit. Here’s the barrier event that requires the player to complete the boss rush:
@>Control Variables: [0002:X] = Player's Map X
@>Control Variables: [0003:Y] = Player's Map Y
@>Get Location Info: [0028], Region ID, Variable [0002][0003]
@>Conditional Branch: Switch [0035:CastleBarrierOFF] == ON
@>Jump to Label: Skip
@>
: Branch End
@>Conditional Branch: Variable [0028:teleportspot] == 63
@>Text: -, -, Normal, Bottom
: : A strange force blocks the way!
@>Set Move Route: Player (Wait)
: : $>1 Step Backward
@>Conditional Branch: Self Switch A == OFF
@>Text: 'Actor5', 6, Normal, Bottom
: : It appears we are blocked by another
: : sort of power, much like the one back
: : at the first floor. Let's try to find
: : the source.
@>Control Self Switch: A =ON
@>
: Branch End
@>
: Branch End
@>Label: Skip
As you can see, we can copy-paste the teleportation puzzle event to the point where we can even have the same variable to handle both. The first time that the player triggers this event, we have Noah reference that the situation is similar to what has happened once already and urge the player to find the source of the barrier. As you may have already inferred, the switch that will be flipped on when the player destroys the next crystal will be CastleBarrierOFF. So, the player cannot progress past that point and decides to walk through the entrance below the stairs, at a loss for where else to go. (The way the dungeon is laid out, there is no way to reach the final boss but through the blocked passage). Where does the player end up?
The Boss Rush
The player ends up at a long hallway that ends in a room with a single platform (Figure 13-13). That platform is where the player will find the crystal blocking the way. This room will have no random encounters.
Figure 13-13. A screenshot of Devil’s Castle F5F. The stairs leading to the previous level have been replaced with an open entrance, and the long series of steps have been shortened
I placed a Below Characters/Player Touch event at the doorway on top of the ornate staircase. When the player steps on the event, he/she has a rematch with a stronger version of Gemini, the first boss of the game.
@>Text: 'Actor5', 6, Normal, Bottom
: : Brother?
@>Text: -, -, Normal, Bottom
: : Yes, Noah. I have been resurrected by the will of
: : the Dark Master. He decrees that none shall reach
: : his inner sanctum! Fall before my power!
@>Change Battle BGM: 'Battle4', 100, 100
@>Battle Processing: Neo Gemini
@>Control Self Switch: A =ON
@>
We could leave Gemini and the Demon at their initial strength, and they would serve as a marker of just how far the player has progressed (seriously, the Demon has less HP than the Dragons the player can face here). Really, it’s up to you. However, I’m going to improve their stats. Look at Figure 13-14 to see Neo Gemini’s new and improved stats.
Figure 13-14. A screenshot of Neo Gemini’s stats and features. I changed his graphic color as well, because why not?
Neo Gemini’s action patterns are roughly identical to the first time Eric and Noah fought him. He replaces Poison Cloud with Burst and Life Drain with Nuclear. You can see the new pattern in Figure 13-15.
Figure 13-15. A screenshot of Neo Gemini’s action patterns
Once the player defeats Neo Gemini, he/she can advance to the crystal forming the barrier blocking the path deeper into the castle. The crystal event will have three pages, as we want to cover the following:
@>Text: -, -, Normal, Bottom
: : A dark crystal floats in place.
@>Text: 'Actor5', 6, Normal, Bottom
: : I feel a terrible power coming from this
: : crystal. We should destroy it.
@>Text: -, -, Normal, Bottom
: : Will you destroy it?
@>Show Choices: Yes, No
: When [Yes]
@>Text: -, -, Normal, Bottom
: : You will do no such thing!
@>Text: -, -, Normal, Bottom
: : The party is interrupted by an enemy!
@>Change Battle BGM: 'Battle4', 100, 100
@>Battle Processing: Demon Lord
@>Control Self Switch: A =ON
@>
: When [No]
@>
: Branch End
@>
Before I show the second page of the crystal event, take a look at Figure 13-16, to see a screenshot of the Demon Lord, a stronger version of the Demon the player had to face back at the Dark Spire.
Figure 13-16. A screenshot of the Demon Lord, a stronger version of the second boss of our game. It switches Blind for Paralyze Breath and Shade for Darkness
The Demon Lord doesn’t get as much of a power-up (relatively speaking) as Neo Gemini did, but that’s mainly because Eric and Noah encounter the Demon later on. Thus, the difference in the player’s overall power is lower in this case than it was for Gemini.
@>Text: -, -, Normal, Bottom
: : The shadow crystal floats in place.
: : Will you destroy it?
@>Show Choices: Yes, No
: When [Yes]
@>Fadeout Screen
@>Play SE: 'Crash', 80, 100
@>Wait: 60 frame(s)
@>Text: -, -, Normal, Bottom
: : The crystal has been destroyed!
@>Control Switches: [0035:CastleBarrierOFF] = ON
@>Control Self Switch: B =ON
@>Fadein Screen
@>
: When [No]
@>
: Branch End
@>
Once the player defeats the Demon Lord, he/she can interact with the crystal again and destroy it for real. That will flip on the CastleBarrierOFF switch, allowing the player to get past the barrier blocking his/her way to the Dark Master’s location.
Considerations Concerning the Boss Rush Room
Note that I glossed over changing the Battle BGM back to normal after the boss fights. The easiest way to do this is to have the transfer event leading back to the third floor have a Change Battle BGM command. Because this area will not have random encounters, the player will be none the wiser. However, if the player uses an Exit Scroll, you’ll have a problem. You have two choices in that case.
The first option is cleaner, in my opinion.
The next order of business is to populate the treasure room. (You can see a zoomed-in version of it in Figure 13-17.) Of course, a final boss does not merely leave its ill-gained loot out to be taken without a fight. In a similar vein as the previous floor, some of the chests will have encounters. The twist here is that the chests themselves will be the encounter!
Figure 13-17. A screenshot of Devil’s Castle’s treasure room. For the purposes of clarity, I used a different graphic to mark the chests that will be enemies
The first and third chests on the top row and the second and fourth chests on the bottom row will be Mimics.
When Chests Attack
What’s a Mimic, you might ask? Peeking at Figure 13-18 will give you an answer.
Figure 13-18. Screenshot of a Mimic, the 20th default monster available in RMVXA
I only placed a screenshot of the Mimic’s item drop list, as I left everything else about this enemy at its default settings. It’s only logical that a monster that acts like a chest should still have something to drop. The treasure chest event we use is nearly identical to the Vampire encounters I showed in Figure 13-14. Take a look.
@>Play SE: 'Chest', 80, 100
@>Set Move Route: This event (Wait)
: : $>Direction Fix OFF
: : $>Turn Left
: : $>Wait: 3 frame(s)
: : $>Turn Right
: : $>Wait: 3 frame(s)
@>Text: -, -, Normal, Bottom
: : The chest was actually a Mimic!
@>Battle Processing: Mimic
@>Control Self Switch: A =ON
As for the four chests that do contain treasure, I placed the last piece of Ebony gear (the Ebony Robe) in the fourth chest of the top row. It provides protection between the Hermit Robe and the Elemental Cloak (70% protection vs. the elements listed in the other two armors). But wait, you might say. Noah got a better robe not more than five minutes prior! Yes, that is true. You could shuffle some of the Ebony gear, such that Noah can use the weaker robe until he gets the better one. Alternatively, you could swap out the Ebony Robe altogether for an accessory of some sort. The third chest on the bottom row contains the Gigantes Axe, which is the strongest axe available by default in the RMVXA database and will serve as a final upgrade for Eric. The other two chests contain an elixir and gold, respectively.
With that done, the battle with the final boss is nigh! I have but three more things to cover in this section, and then we can move on to the floor containing the final boss. Thing #1: The secluded room (as displayed in the lower-left corner of Figure 13-19).
Figure 13-19. A screenshot of the lower half of the third floor of the Devil’s Castle
Here’s the rest (save for the reverse-L hallway connecting the two staircases) of the third floor, for context.
For the final dungeon’s dead end, I decided to add a statue in front of the window. On the lower half of the statue, I placed an event with Same As Characters priority and an Action Button trigger. This statue will heal Eric and Noah when they touch it.
@>Text: -, -, Normal, Bottom
: : A single statue stands defiant amidst the others.
: : Will you touch it?
@>Show Choices: Yes, No
: When [Yes]
@>Play SE: 'Heal1', 80, 100
@>Recover All: Entire Party
@>Text: -, -, Normal, Bottom
: : The party's HP and MP are restored!
@>
: When [No]
@>
: Branch End
@>
If you decide to make the final dungeon a point of no return (as in, the player cannot leave the dungeon once he/she enters), you’ll want the player to have some way of recovering his/her HP and MP. Otherwise, a prolonged stay will drain his/her recovery items to the point that he/she may not be able to finish the game. This also allows the player to gain levels safely, that is, defeating the enemies in the area by staying near the statue. The second thing to cover is this floor’s encounter list (Figure 13-20).
Figure 13-20. Screenshot of the encounter list for Devil’s Castle 3F
As the final dungeon level before the final boss, we have the two strongest enemy types of our game appear as the sole encounters in the area. Vampires have a 60% chance of appearing, while Dragons have a 40% appearance chance. The third and last thing is to point out that the staircase at (23,32) leads to the fourth floor, where the player will battle the final boss. Every other staircase has been accounted for already in previous sections. Are you excited? I am! It’s time for . . .
The player has fought tooth and nail through the entirety of the final dungeon to reach his/her foe. As is standard in RPGs, the final boss in our game is in the last possible place that Eric and Noah would think of looking. The route to the boss room takes the player up to the third floor, all the way down into the basement, and all the way up once again to the fourth floor. Once there, they are greeted by the sight of the Dark Master. Check Figure 13-21 to see the floor layout (of which I removed the rear staircase that would have led up to the fifth floor; the room that I repurposed for our boss rush in the previous section).
Figure 13-21. Screenshot of Devil’s Castle 4F. The staircase at the back of the room has been removed and the wall patched up
Creating the Pre-Battle Autorun Event
When the player arrives at the fourth floor, an Autorun event will take over, tinting the screen. The player will walk toward the final boss as the tint slowly fades. Once there, the final boss will exchange some banter with the player’s party before starting combat.
@>Tint Screen: (-68,-68,-68,0), @60, Wait
@>Text: -, -, Normal, Bottom
: : Oho! So, you two have finally made it. Pity that
: : this is where your quest ends.
@>Set Move Route: Player (Wait)
: : $>1 Step Forward
: : $>1 Step Forward
: : $>1 Step Forward
@>Tint Screen: (-51,-51,-51,0), @60
@>Text: -, -, Normal, Bottom
: : It's truly fascinating what humans will do for the
: : sake of such petty things like justice and hope.
@>Set Move Route: Player (Wait)
: : $>1 Step Forward
: : $>1 Step Forward
: : $>1 Step Forward
@>Tint Screen: (-34,-34,-34,0), @60
@>Text: -, -, Normal, Bottom
: : So, what would you like your gravestones to read?
@>Set Move Route: Player (Wait)
: : $>1 Step Forward
: : $>1 Step Forward
: : $>1 Step Forward
@>Tint Screen: (-17,-17,-17,0), @60
@>Set Move Route: Player (Wait)
: : $>1 Step Forward
: : $>1 Step Forward
@>Tint Screen: (0,0,0,0), @60
@>Text: 'Actor4', 0, Normal, Bottom
: : The only one who's going to need a
: : gravestone here is you!
Caution If you overestimate the number of movement commands needed, the lack of a Skip at the end of the movement sequence will cause the game to hang.
@>Text: 'Actor5', 6, Normal, Bottom
: : I concur. It is past time that you be
: : dethroned!
@>Text: -, -, Normal, Bottom
: : Ah, Gemini's brother. You already know the truth of
: : the world. Or, at the least, you suspect it. So
: : foolish are you that you would subject the people
: : of the west to the truth?
@>Text: 'Actor5', 6, Normal, Bottom
: : It serves no one to live in lies!
@>Text: 'Actor4', 0, Normal, Bottom
: : What are you talking about, Noah?
@>Text: -, -, Normal, Bottom
: : Ohoho! You haven't even told your traveling
: : companion. Riveting! That'll be something to talk
: : about. For sure. In the afterlife!
@>Change Battle BGM: 'Battle9', 100, 100
@>Control Self Switch: A =ON
@>Battle Processing: Dark Master
At the end of it all, the player realizes that Noah knows something he/she does not. However, there’s a boss to defeat!
The Dark Master and the Final Battle
We want to use a troop event that triggers as soon as the battle starts to check and see if the player has the Orb of Light in his/her inventory. If the player does, we apply a state to the Dark Master that lowers all of his stats except AGI, MHP, and MMP by 50%. If he/she doesn’t, the player has the unenviable task of somehow beating an enemy that has nearly twice the power as the game’s superboss. See Figure 13-22 for the Dark Master’s relevant information.
Figure 13-22. Screenshot of the Dark Master’s relevant information. Darkness, Double Attack, and Burst are used when he is below 50% HP. Nuclear and Triple Attack are added when he drops below 25% HP
You will notice that defeating the Dark Master awards no EXP, gold, or items. Given that the game will end after defeating the final boss, there isn’t much of a point in the player earning any of that. Action Times+ is a special feature that increases the number of actions that an enemy can take in a single turn. Each instance of Action Times+ allows an extra action at X%, where X is the percentage probability of using the extra action on any given turn. So, if an enemy has three Action Times+ entries, it can potentially act four times each turn.
Note This is not to be confused with Atk Times+, which influences how many extra times the enemy attacks when it uses the normal Attack skill.
Following, you will find the first page of the final boss’s troop event:
Condition: Turn No. 0
Span: Battle
@>Change Enemy State: [1. Dark Master], + [Immortal]
@>Conditional Branch: [Orb of Light] in Inventory
@>Text: -, -, Normal, Bottom
: : The Orb of Light shines bright!
@>Change Enemy State: Entire Troop, + [Orb Debuff]
@>Text: -, -, Normal, Top
: : Accursed light!
@>Text: -, -, Normal, Top
: : The Dark Master's power is weakened!
@>
: Else
@>Text: -, -, Normal, Top
: : You dared to face me without the aid of the Orb?
: : Hahaha!
@>
: Branch End
@>
We make the Dark Master immortal at the start of the fight, so that we can trigger a troop event when he drops to 0% HP or less. Orb Debuff is the name of the negative state applied to the Dark Master. When the player manages to defeat the Dark Master, the other troop event page is triggered.
@>Text: -, -, Normal, Top
: : Guh! Impressive...
@>Control Switches: [0037:FinalBossDefeated] = ON
@>Change Enemy State: [1. Dark Master], - [Immortal]
After the player defeats the final boss, we should have an Autorun event that leads into the credits. However, let’s entertain a “What if?” situation first. Mainly, what if the final boss had a second form?
A hallmark of many classic RPGs is a final boss with multiple forms. Let’s give our Dark Master a second form (you can see its information in Figure 13-23). We’ll use the EvilGod battle sprite. The final form of the final boss deserves a special attack. So, I took Darkness as the base and made a new spell called Black Hole. It costs 80 MP and has a damage formula of [250 + a.mat * 3 - b.mdf * 2] with 40 Variance. Much like Darkness, it is a Dark element spell. Now, how do we switch our final boss to his second form? We can use the Enemy Transform command on page 3 of the event command list. In this case, when the player drops the Dark Master to 0 HP, we want him to transform into his second form. You can also use Enemy Transform for several other neat enemy archetypes, such as an unhatched egg that could turn into a dragon if you don’t destroy it fast enough, or a jack-in-a-box-type monster that randomly morphs into one of several others when a certain condition is met.
Figure 13-23. A screenshot of the Dark Master’s second form. He uses skills from the last section of the first form’s action patterns and Nightmare and Black Hole every few turns
Note Transformed enemies count as a new foe. Make sure that the second form of the Dark Master makes the same check for the Orb of Light in its troop event as the first form! The previously listed stats are for a Dark Master who has not had its stats reduced.
After a journey spanning four dungeons, three area bosses, two towns, and one Dark Master, this RPG has been completed! Of course, that only refers to the scope of this book concerning the subject. There is no reason that you have to stop working on the game. After all, we left a lot of things in the air. For example:
There’s some food for thought for you. As for me, let me finish up the event involving the final boss. The FinalBossDefeated switch is flipped on when the Dark Master is finally defeated. (You could also flip it on at the start of the fight, as the player cannot escape the battle.) Page 3 of the event that started with an Autorun will end with an Autorun as well.
@>Fadeout BGM: 5 sec.
@>Text: 'Actor4', 0, Normal, Bottom
: : It is over!
@>Text: -, -, Normal, Bottom
: : Noah smiles wistfully at Eric.
@>Text: 'Actor5', 6, Normal, Bottom
: : No, my friend. It has only begun.
@>Text: 'Actor4', 0, Normal, Bottom
: : Huh? What are you talking about?
@>Text: 'Actor5', 6, Normal, Bottom
: : Well, it goes like this...
@>Fadeout Screen
@>Play BGM: 'Field4', 100, 100
@>Text(S): Speed 2
: : What Noah next tells Eric leaves the young hero in
: : disbelief. A world in ruins...controlled by two
: : other Dark Masters. Why had the west alone been
: : spared? To that question, all Noah did was smile
: : and point at Eric cryptically.
: :
: : So many questions unanswered. What path will our
: : heroes’ journey take next? What new companions will
: : they find? Does humanity yet live in the rest of the
: : world?
We fade out the background music in preparation for the ending. After a small chat between the two party members, the screen is faded out, we play some different background music, and some scrolling text is displayed. Unlike Show Text, Show Scrolling Text should only be used on a black screen (this event command displays only text, no text boxes).
@>Fadeout BGM: 2 sec.
@>Wait: 120 frame(s)
@>Play BGM: 'Theme1', 100, 100
@>Text(S): Speed 2
: : CREDITS:
: :
: : Me - For making this game.
: :
: : You - For playing it.
: :
: : Enterbrain - For making RPG Maker VX Ace.
: : Without it, this game would not exist.
: :
: : THANKS FOR PLAYING!!!
@>Return to Title Screen
Once we have displayed the epilogue text, we fade out the BGM once again and then start the music that’s played by default at the title screen. Some short credits later, we send the player back to the title screen.
More Tips and Tricks for Final Dungeons
While this chapter is as good as done, there are so many more things that you can do with a final dungeon. RPGs have had all types of final dungeons, ranging from the one-room final dungeon (justified by the difficulty of getting into that one room; the player usually needs a series of keys or artifacts to open the path) to a sprawling mega-fortress that dwarfs the Devil’s Castle many times over. Here’s a list of other things you can add to the final dungeons of your future games.
Summary
During the course of this chapter, we created our game’s final dungeon and populated it. We used a teleportation puzzle on the dungeon’s first floor that would stop the player from progressing until he/she had destroyed the crystal powering the traps. On the second floor, chests containing Ebony gear were guarded by Vampires. The third floor was blocked by an invisible barrier that required our player to defeat stronger versions of bosses already faced. The treasure room on the same floor revealed that some chests can actually be monsters. Finally, we created a final boss (with a second alternate form) that, when defeated, triggered the end credits. In the next chapter, we will tackle some basic scripting exercises in RMVXA.