|
|
To do:
|
From the development team behind Final Fantasy Tactics comes Vagrant Story, a dungeon crawler where intrepid agent Ashley Riot investigates a conspiracy involving a kidnapping, supernatural forces and fire-breathing dragons. Also, things aren't what they seem. You know how that goes.
"Good luck, and Godspeed."
Debug Room#
The game has a Debug Room, intended for easing game development and testing. Unfortunately, because the Japanese language font was removed from the international versions, it can be pretty tricky to actually use. The phrase "あけましておめでとうございまーす。" is written on the floor, which translates to "Happy New Year".
You can use these codes to access it:
Japan
800F3030 0002
800F3098 00FA
USA (Press L1, R1, L2, and R2 simultaneously to enter)
D005E1C0 000F
800F1A48 0002
D005E1C0 000F
800F1AB0 00FA
From the Japanese release, the debug room has several NPCs that are meant to teleport the player to different places throughout the campaign.
This is the top level options of each NPC, roughly translated.
Goblin NPC
皆川さん坦当ボスイベント その1
Minagawa-san Tanto Boss Event Part 1
皆川さん坦当ボスイベント その2
Minagawa-san Tanto Boss Event Part 2
追加ボスイベント
Additional Boss Event
見るのをやめる
Stop Watching ( Leave Menu )
Male Zombie Bottom Left
MAP001~004
MAP001~004
MAP005~006 Confrontation! Criminal Sydney
MAP005~006 対決!重氾罪者シドニー
MAP007~008
→見るのをやめる
→Stop Watching ( Leave Menu )
Male Zombie Center Top
の記憶など
(???) Memories, etc.
エピローグ1
Epilogue 1
エピローグ2 など
Epilogue 2, etc.
チャプター3 + 4 + 5
Chapter 3 + 4 + 5
現在制作中です
Currently In Production (quits menu)
現在制作中です
Currently In Production (quits menu)
現在制作中です
Currently In Production (quits menu)
→見るのをやめる
→Stop Watching ( Leave Menu )
Female Zombie Center Bottom
ファーストダンジョンイベント
First Dungeon Event
セカンドダンジョンイベント + 聖印騎士昊形化
Second Dungeon Event + Holy Knight Knight (?)
オ一トデモ + 地恚 + アシュレイの夢
Auto Demo + Earth(?) + Ashley's Dream
→見るのをやめる
→Stop Watching ( Leave Menu )
Female Zombie Top Right
たんば担当シナリオイベント その1
Tanba Scenario Event 1
たんば担当シナリオイベント その2
Tanba Scenario Event 2
現在制作中です
Current In Production - leads to the same text, selecting any causes the zombie to say it as well.
→見るのをやめる
→Stop Watching ( Leave Menu )
Female Zombie Bottom Right
3th廃坑イベント
3th Abandoned Mine Event
4th防風森 + グァルハラ1 + 2イベント
4th Windbreak Forest + Guaruhara 1 + 2 event
5th廃坑2 + ウンディ一ネ
5th Abandoned Mine 2 + Undine
レアモンデ地下街イベント.
Leá Monde Underground Shopping Center(?) Event
6th (???)イベント + 地下段ボスイベント
6th (???) event + Underground Boss Event
8th大聖堂イベント
8th Cathedral Event
予備
Reserved ( This option does nothing )
→見るのをやめる
→Stop Watching ( Leave Menu )
|
|
To do: |
Unused Items#
There are several dummied items in the game. Their hex digits relative to obtainable items can provide clues as to what their purposes were supposed to be. For example, in the range from 0166 to 0181 lie several "Bad Elixirs", which have the opposite effect of the Elixirs.
All item names, unless indicated in the comments, are called "untitled", hence it will not be included as a column in the table.
Hex digit |
Effect |
Description |
Comments |
|---|---|---|---|
005B |
Blade/Grip |
Uses the same description as Short Hilt if being used as a Blade, and the same as Windlass if used as a Grip. |
Can function as either a Blade or a Grip. As this item was never included in any chests, it means no stats were assigned to it. All that exists is the name/description combination. |
005C |
Blade/Grip |
Uses the same description as Swept Hilt if being used as a Blade, and the same as Cranequin if used as a Grip. |
Can function as either a Blade or a Grip. As this item was never included in any chests, it means no stats were assigned to it. All that exists is the name/description combination. |
005D |
Blade/Grip |
Uses the same description as Cross Guard if being used as a Blade, and the same as Lug Crossbow if used as a Grip. |
Can function as either a Blade or a Grip. As this item was never included in any chests, it means no stats were assigned to it. All that exists is the name/description combination. |
005E |
Blade/Grip |
Uses the same description as Knuckle Guard if being used as a Blade, and the same as Siege Bow if used as a Grip. |
Can function as either a Blade or a Grip. As this item was never included in any chests, it means no stats were assigned to it. All that exists is the name/description combination. |
005F |
Blade/Grip |
Uses the same description as Counter Guard if being used as a Blade, and the same as Arbalest if used as a Grip. |
Can function as either a Blade or a Grip. As this item was never included in any chests, it means no stats were assigned to it. All that exists is the name/description combination. |
00CF-00DE |
Armor |
"Armor" |
Literally just says "Armor" when the name/description combination is used. 00CF is just after where the Gloves are, and this range of items ends at 00DE, which is just just before the accessories. This would imply that there was another type of armor in plan at one point in development. As this item was never included in any chests, it means no stats were assigned to it. All that exists is the name/description combination. |
00FE |
Unknown, possibly a Gem or an Item. |
Uses the same description as Spiral Pole. |
Goes by the name "Wood". Unlike the other unused items, the items from 00FE to 0104 have names which refer to the equipment material types. These items are in between the Accessories and Gems in the index list. Although this could hint that these can be used as Accessories, a cheat device for Armour will treat 01 to 04 as Daggers regardless of whether a 0 or 1 precedes them. If this is treated as an Item, it will try and fail to target an enemy even enemies are in the area. If it is treated as a Gem, as it was never included in any chests, it means no stats were assigned to it. All that exists is the name/description combination. |
00FF |
Unknown, possibly a Gem or an Item. |
Uses the same description as Simple Bolt. |
Goes by the name "Leather". If this is treated as an Item, it will try and fail to target an enemy even enemies are in the area. If it is treated as a Gem, as it was never included in any chests, it means no stats were assigned to it. All that exists is the name/description combination. |
0100 |
Unknown, possibly a Gem or an Item. |
Uses the same description as Steel Bolt. |
Goes by the name "Bronze". If this is treated as an Item, it will try and fail to target an enemy even enemies are in the area. If it is treated as a Gem, as it was never included in any chests, it means no stats were assigned to it. All that exists is the name/description combination. |
0101 |
Unknown, possibly a Gem or an Item. |
Uses the same description as Javelin Bolt. |
Goes by the name "Iron". If this is treated as an Item, it will try and fail to target an enemy even enemies are in the area. If it is treated as a Gem, as it was never included in any chests, it means no stats were assigned to it. All that exists is the name/description combination. |
0102 |
Unknown, possibly a Gem or an Item. |
Uses the same description as Falarica Bolt. |
Goes by the name "Hagane". If this is treated as an Item, it will try and fail to target an enemy even enemies are in the area. If it is treated as a Gem, as it was never included in any chests, it means no stats were assigned to it. All that exists is the name/description combination. |
0103 |
Unknown, possibly a Gem or an Item. |
Uses the same description as Stone Bullet. |
Goes by the name "Silver". If this is treated as an Item, it will try and fail to target an enemy even enemies are in the area. If it is treated as a Gem, as it was never included in any chests, it means no stats were assigned to it. All that exists is the name/description combination. |
0104 |
Unknown, possibly a Gem or an Item. |
Uses the same description as Sonic Bullet. |
Goes by the name "Damascus". If this is treated as an Item, it will try and fail to target an enemy even enemies are in the area. If it is treated as a Gem, as it was never included in any chests, it means no stats were assigned to it. All that exists is the name/description combination. |
012F |
Gem |
No description |
As this item was never included in any chests, it means no stats were assigned to it. All that exists is the name/description combination. Although this Gem precedes Silent Queen, which would suggest that there plans for Gems which protect against status. |
0134-0142 |
Gem |
No description |
As this item was never included in any chests, it means no stats were assigned to it. All that exists is the name/description combination. Although these Gems succeed White Queen, which would suggest that there plans for Gems which protect against status. |
0165 |
Tries and fails to target an enemy even when one is around. |
No description |
Just before the "Bad Elixirs" in the index list, and just after Eye of Argon. This suggests that this once had an effect which got scrapped entirely if a dummy effect is being used here. |
0166 |
Lowers INT |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". These were likely either meant to be obtainable joke items, or merely used to test particular status effects. |
0167 |
Lowers STR |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". |
0168 |
Increases HP |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". This one is actually beneficial though. It just uses the "Bad Elixir" description. |
0169 |
Risk -50 |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". This one is actually beneficial though. It just uses the "Bad Elixir" description. |
016A |
Lowers INT |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". |
016B |
Increases HP |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". This one is actually beneficial though. It just uses the "Bad Elixir" description. |
016C |
Resets Risk to 0 |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". This one is actually beneficial though. It just uses the "Bad Elixir" description. |
016D-016E |
Risk -25 |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". This one is actually beneficial though. It just uses the "Bad Elixir" description. |
016F |
Increases MP |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". This one is actually beneficial though. It just uses the "Bad Elixir" description. |
0170 |
Lowers STR |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". |
0171 |
Lowers AGL |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". |
0172 |
Increases HP |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". This one is actually beneficial though. It just uses the "Bad Elixir" description. |
0173 |
Risk -75 |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". This one is actually beneficial though. It just uses the "Bad Elixir" description. |
0174 |
Lowers INT |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". |
0175 |
Lowers STR |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". |
0176 |
Lowers AGL |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". |
0177-0178 |
Lowers STR |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". |
0179 |
Lowers AGL |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". |
017A |
Lowers STR |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". |
017B-017C |
Lowers INT |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". |
017D |
Lowers AGL |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". |
017E |
Lowers INT |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". |
017F |
Increases MP |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". This one is actually beneficial though. It just uses the "Bad Elixir" description. |
0180 |
Lowers AGL |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". |
0181 |
Lowers INT |
"You don't want to read the description for this item--believe me." |
One of the "Bad Elixirs". |
018C-018E |
Tries and fails to target an enemy even when one is around. |
No description |
These items are in between Grimoire Demolir and Grimoire Foudre. This, along with the effect of these items, which would suggest that they were once Grimoires for the different levels of Explosion. |
0190-0192 |
Tries and fails to target an enemy even when one is around. |
No description |
These items are in between Grimoire Foudre and Grimoire Flamme. This, along with the effect of these items, which would suggest that they were once Grimoires for the different levels of Thunderburst. |
0194-0196 |
Tries and fails to target an enemy even when one is around. |
No description |
These items are in between Grimoire Flamme and Grimoire Gaea. This, along with the effect of these items, which would suggest that they were once Grimoires for the different levels of Flamme. |
0198-019A |
Tries and fails to target an enemy even when one is around. |
No description |
These items are in between Grimoire Gaea and Grimoire Avalanche. This, along with the effect of these items, which would suggest that they were once Grimoires for the different levels of Gaea Strike. |
019C-019E |
Tries and fails to target an enemy even when one is around. |
No description |
These items are in between Grimoire Avalanche and Grimoire Radius. This, along with the effect of these items, which would suggest that they were once Grimoires for the different levels of Avalanche. |
01A0-01A2 |
Tries and fails to target an enemy even when one is around. |
No description |
These items are in between Grimoire Radius and Grimoire Meteore. This, along with the effect of these items, which would suggest that they were once Grimoires for the different levels of Radial Surge. |
01A4-01A6 |
Tries and fails to target an enemy even when one is around. |
No description |
These items are in between Grimoire Meteore and Grimoire Egout. This, along with the effect of these items, which would suggest that they were once Grimoires for the different levels of Meteor. |
01C9 |
Tries and fails to target an enemy even when one is around. |
No description |
This item is in between Grimoire Barrier and Bronze Key, so it is more difficult to assume what the result of this item was meant to be. As Dark Chant, the spell after Aqua Guard in the skill index list, is already learnable, it means that such patterns cannot be used here to form a conclusion. Although Physical being the element after Water in the stat index list may suggest that this was for a Physical-based Guard ability. |
01EA-01FF |
Unusable |
No description |
Literally nothing can be done with items within this range. Likely filler. |
Unused Maps#
Various maps, which served as templates, exist within the game's data.
Zone/Map file name (.ZND/.MPD) |
Location |
Comments |
Screenshot |
|---|---|---|---|
ZONE000.ZND |
No location |
Seemingly empty. Any attempt to load anything from it will produce a black screen. There is also no visual data included. |
Not applicable |
MAP035.MPD |
Catacombs |
Empty room with a single block. Possibly a test room. Trying to view the room on the map will display the same "Paling" room which the final boss does. |
![]() |
MAP056.MPD |
Sanctum |
Empty room with a single block. |
![]() |
MAP064.MPD MAP065.MPD MAP066.MPD MAP068.MPD |
Great Cathedral |
Empty room with a single block. |
![]() |
MAP073.MPD |
Great Cathedral |
Empty room with a single block, but uses a different colour palette from the rooms in the row above. |
![]() |
MAP125.MPD |
The Keep |
Empty room with a single block. |
![]() |
MAP161.MPD MAP167.MPD MAP168.MPD MAP169.MPD MAP170.MPD |
Town Center |
Empty room with a single block, though the colour palette of the block appears to be lighter than the one in The Keep. |
![]() |
MAP341.MPD |
Limestone Quarry |
Unlike the others which are empty rooms with one block, this one is fully realised. There are platforms to jump on, as well as exits. The room uses the Dark Abhors Light name on the map screen, and similarly uses two exits. However, these exits do not have warp data and hence will not work. Although the Dark Abhors Light name is used, it is unlikely that this was the original version of the area. The actual Dark Abhors Light is MAP311, with the room below, Dream of the Holy Land, being MAP312. Being MAP341 would rather put it in between Hall of the Wage-Paying and Tunnel of the Heartless, which are back-to-back at the end of the area and lead into The Dark Coast in the Temple of Kiltia. This would suggest that MAP341 would appear towards the end of the area. |
![]() |
Unused Music#
Vagrant Story has several unused tracks that still exist on the disc. Many of these are still present in the OST. All tracks here will be identified by their file name in the game, but those in the OST will have their given name listed as well.
- MUSIC000
An unknown track that seems to work in a motif found in "Within the City Walls" towards the end of the loop. The instrumentation feels as though it was meant to be a test. Several components of "The Graylands Incident" succeed the track in the music index list, which would suggest that it may have been considered for the Graylands incident scenes at one point.
- MUSIC002 ("Leá Monde")
This track is an oddity. The first part of it can be heard at the start of the Graylands incident, the section at 0:52 is heard just before Ashley enters Great Cathedral, and the remainder goes unused in the game. The name of the track and its placement in the OST (between "Wyvern" and "The Shepherd and the Lamb", lining up with their respective sections of the story) suggests that it was meant to play at the Town Center section.
- MUSIC003
An unknown soft-sounding track that reaches a somewhat triumphant swell towards the end. The track does not loop, and it does not appear as a part of any other track in the OST. Being the fourth track in the index list would suggest it was used for the Graylands incident at one point in development.
- MUSIC004 ("The Graylands Incident (Part 1)")
The first part of "The Graylands Incident" in the OST. Interestingly, the final game uses a version that has the opening of "Leá Monde", then incorporates this track without the first 35 seconds.
- MUSIC006 ("Leá Monde (alt)")
A version of "Leá Monde" that excludes the first 50 seconds.
- MUSIC008
Another unknown track that does not loop. As with index 0 and 3, it is likely that this track was probably meant to be used during the Graylands incident. The second half of the track is similar to the later parts of "Awakening", which would suggest the former was reworked into the later in a similar way to how MUSIC000 may have been reworked into "Within the City Walls".
- MUSIC009 ("Within the City Walls")
Based on the name and placement in the OST when compared with the context of the story, it is highly likely that this track was considered for the City Walls areas.
- MUSIC011
A version of the section of "The Graylands Incident" that plays when Sydney summons the dragon to fight Ashley. This version lacks the chanting motif often associated with Sydney, nor does it build up to the battle theme.
- MUSIC014
An alternate version of the ending parts of "The Graylands Incident". Interestingly, track 3 in the index list is incorporated into this one. This was likely an alternate version of how "The Graylands Incident" would end given that the track used instead in the final game is 21 in the index.
- MUSIC037 ("Lizardman")
The name suggests that it was meant to play against the Lizardmen fight in the Catacombs, although the placement in the OST lines up more with the Snowfly Forest events in the story.
- MUSIC042
An unknown track that loops. It is lumped with area themes such as "The Great Cathedral" and "Abandoned Mines B1" in the index list, which could suggest it was meant to play in a dungeon.
- MUSIC114
An unknown track that does not loop. It is placed between the first and second sections of "The Gates of Leá Monde", which would suggest an extended scene when Ashley and Merlose arrive at Leá Monde.
- MUSIC117
An unknown track which repeats the ending part on a loop like "The Graylands Incident" components do. As with "MUSIC114", being close to "The Gates of Leá Monde" suggests that it was meant for an extended scene between Ashley and Merlose.
- MUSIC127
An unknown looped track. It is lumped with "Limestone Quarry" and "Abandoned Mines B2" in the index list, which would suggest it was meant for a dungeon. It is possible that the track was meant to play further into Iron Maiden given that the melody is similar to that used in "The Sanctum", the track for that area. Based on comments by people who have previously ripped this track, it is possible that incorrect instruments are used as this does not sound like any other track in the game.
It should be noted that while "Joshua 2" and the second half of "Escape from Leá Monde" are featured in the OST, they are not in the game's files.
Anti-Piracy#
The European version of the game is LibCrypt protected. If the protection is tripped, the game will hang on the loading screen after selecting the "New Game" option, preventing any further progression. However, this measure does not occur on the European version if played on a PlayStation 3 as the software emulation config stores an entry for the game, being one of the few games to do so.
Difficulty Options#
When a VRAM viewer is used on the game's title screen, text for the various options available to the player can be seen. Amongst this text are unavailable "Easy" and "Normal" options. Based on how On/Off and Stereo/Mono are attached to Vibration and Sound respectively, Easy/Normal would likely have been options given to the player once New Game is selected. This option went unused and there is no remaining data for it present in the map and zone files.
A further remnant of the difficulty option exists as data in the screen displaying the score after a boss fight which is initialized in func_80107120 but never called:
void func_80107120(int arg0) {
char* sp18[] __attribute__((unused)) = {"EASY", "NORMAL"};
int sp20[] __attribute__((unused)) = { 0x808000, 0x8080 };
It is speculated that the contents in the array sp20 are meant to be font colors for the score which correspond to a selected option. If this is the case, "EASY" would likely be teal, while "NORMAL" would correspond to olive. While the final game's score color is teal on the screen after defeating a boss, it is more likely that normal mode is being used. This is because static void _initEnvironment(void), which initializes various options such as puzzle mode and vibration, has vs_main_stateFlags.difficulty set to 1. This would imply that 0 is easy mode.
static void _initEnvironment(void)
{
int monoSound;
int vibrationOn;
vibrationOn = vs_main_settings.vibrationOn;
monoSound = vs_main_settings.monoSound;
memset(&vs_main_settings, 0, sizeof(vs_main_settings));
vs_main_settings.menuFlags = 0x2D8;
vs_main_settings.information = 1;
vs_main_settings.simpleMap = 3;
vs_main_settings.unk0_4 = 1;
vs_main_settings.abilityTimingDisplay = 1;
vs_main_settings.cursorMemory = 1;
if (vs_main_titleScreenCount == 0) {
_displayPublisherAndDeveloper();
vibrationOn = 1;
monoSound = 0;
}
vs_main_settings.monoSound = monoSound != 0;
vs_main_settings.vibrationOn = vibrationOn != 0;
vs_main_setMonoSound(vs_main_settings.monoSound);
vs_sound_setCdVol(0x7F);
memset(&vs_main_inventoryIndices, 0, sizeof(vs_main_inventoryIndices));
vs_main_stateFlags.difficulty = 1;
vs_main_stateFlags.puzzleMode = 1;
}
Based on structures inside func_8006B57C_t.h, difficulty flags were also seemingly meant to determine item loot. For every typedef struct representing an item, like blades, grips, or gems, char difficultyFlags is included inside.
Offset 0x80061599 has a flag which controls the reaction time windows for chain and defense abilities. It will always be set to 0x01 during regular play, but hacking the game to set it to 0x00 will cause the game to use different chain and defense ability reaction times. When the offset is at 0x01, the default reaction time window values will be 8, but will be 10 if 0x80061599 is set to 0x00. Due to how the game ticks, this only amounts to a single frame between the two modes.
(Source: Rood Reverse)
(Source: Rood Reverse)
(Source: Rood Reverse)






