Updated to v0.26b.
Few things new there. I had so much trouble with one of them...
- You can now change the battle scene of battles,
- You can modify the preloading datas of fields and world maps : it allows to trigger any battle inside any field and jump from any field to another,
- Modified the "MP Multiplier" field for spells, it was flags in the end (thanks Baby5 again for that),
- You can now see and remove (not add nor edit yet) special text opcodes I called "Format Codes" : they are used to tell whether a dialog bubble must be up or down, or place the bubble on the screen (ZackNeji : if you delete the format codes of Alexandria hidden dialogs, they will display fine on this screen),
- Fixed 3 bugs with the game script : the harmless one plus two others... There might be some more though :/
About preloading datas, they are half-automatized : you don't have to care of making preloading datas match each other (if an enemy formation is preloaded, its battle scene must be also preloaded for example) but you need to manually add preloading datas (fields and enemy formations mainly) if you use one in the game's script.
itoikenza, I am aware of this problem everytime I open the program ^^"
But the recent insight I had with battle's mechanics make me think it will be really hard for me to understand it, and therefore manage those commands.
So, I said I would tell about how making an "hidden dialog" patch with the tool so here it is.
First, open the disc 1 and 2 and go to the fields panel.
1) For Steiner's Bitterness part :This one is quiet easy, you go in Ruined Prima Vista's storage room script (or whichever it is called in your langage), select the "Function Main_Loop" : the dialogs are mainly scripted in this single function in this field (in most fields, the dialogs are scripted in each character's own function instead). Check the different "WindowSync/Async" opcodes to guide yourself in the script.
You'll find these lines :
if ( VARL_GenBool_2439 == 1 ) {
WindowSyncEx( 13, 1, 128, 364 )
}
if ( VARL_GenBool_2438 == 1 ) {
WindowSyncEx( 13, 1, 128, 365 )
}
if ( VARL_GenBool_2437 == 1 ) {
WindowSyncEx( 13, 1, 128, 366 )
}
The variables VARL_GenBool_243x seems to not be used anywhere else. The easiest way to unlock a line of dialog is to delete the "if" statement around it (the line containing the "if" and the closing braces).
Don't forget to parse the function before hitting the button "Ok".
2) For Steiner and Morrid's conversation :Go in the Observatory Mountain's Shack script and search for the "Function GrandpaA_Loop", specifically these lines.
case 12:
WindowSync( 6, 128, 118 )
set VAR_GlobInt16_28 = 17
EnableHeadFocus( 2 )
set VAR_GlobUInt8_31 = 96
RunSharedScript( 7 )
break
This function and the "SteinerB_2" one are responding each other using the variable "VAR_GlobInt16_28" which tells the current state of the dialog. Here, the variable is said to jump from the value 12 to the value 17, skiping a part of the dialog. Just replace the 17 by 13 and it will be fine.
3) Cleyra Meeting :For this one, you have to enable an ATE in one (or several) of Cleyra's fields. I personally enabled it only in the Cathedral's hall field because it is simplier, but I don't know which conditions should have been met to enable it in developers' mind.
So, go in the Cathedral's hall field (in the US version, that's the 2nd field called "Cleyra/Cathedral" ; be sure to get to the sandstorm-still-active version of it, the first one).
The interesting part of the script is found in the "Function Main_Init" :
if ( VARL_GenUInt8_484 == 0 ) {
set VAR_GlobUInt16_30 |= 2
}
if ( VARL_GenUInt8_484 == 2 ) {
set VAR_GlobUInt16_30 |= 8
}
if ( VARL_GenUInt8_483 == 0 ) {
set VAR_GlobUInt16_30 |= 1
}
if ( VARL_GenUInt8_483 == 2 ) {
set VAR_GlobUInt16_30 |= 4
}
if ( VARL_GenBool_3857 == 0 ) {
set VAR_GlobUInt16_30 = 0
}
You need to add these lines in the list of "if" statement (before the last one, that's better) :
if ( VARL_GenBool_3856 == 0 ) {
set VAR_GlobUInt16_30 |= 16
}
The variable "VARL_GenBool_3856" is a flag that is set to 1 once the ATE has been seen, and 16 is a bit-flag corresponding to the 5th ATE, the hidden one.
You'll surely need to translate the lines of text for this dialog (in the Text panel of the program), as I think it's only present in the Japanese version of the game.
See
there for the original dialog and an english translation by luksy.
4) Reaching Cid :I assumed this part of the game was intended to be right after the ATE "Brahne's Fleet Arrives".
Search for the first "Brahne's Fleet/Event" field's script. It is quiet low placed in the field list. At the end of the "Function Linblum_Soldier_Loop", you'll find something like this :
PreloadField( 5, 1363 )
set VAR_GlobInt16_21 = 1363
if ( VAR_GlobUInt8_17 == 255 ) {
set Op66(( GetData_12 - 160 ), ( GetData_13 - 112 ))
}
0xA9( 250 )
FadeFilter( 6, 24, VAR_GlobUInt8_17, 255, 255, 255 )
Wait( 25 )
if ( VAR_GlobBool_167 == 1 ) {
RunSoundCode( 265, 65535 )
set VAR_GlobBool_167 = 0
}
if ( VAR_GlobBool_162 == 0 ) {
if ( VAR_GenUInt8_13 < 9 ) {
set VAR_GenUInt8_13 = 3
}
RunSoundCode1( 20864, 2297, 0 )
}
if ( VAR_GlobBool_163 == 0 ) {
}
set General_FieldEntrance = 2
Field( 1363 )
break
You must set the field to 1364 (Lindblum Airship Dock) instead of 1363 (Lindblum Hallway). Modify it in both the "PreloadField" and the "Field" opcodes. You also need to set the variable "General_FieldEntrance" to value 1, so Zidane appears at the right place of the Docks.
Once you have done that, you need one more thing for this one : you need to add the "Lindblum Airship Dock" field to the preloading datas of the Brahne's fleet field. Hit the button for editing preloading datas, go to the "Fields" section, search for the Dock's field in the list on the left and then add it. If you run out of space, delete the Hallway's field before since the two fields are not linked anymore.
Aaaaaaand you're done with that (and so am I ^^).