FF8/Variables
From Final Fantasy Inside
< FF8
Revision as of 17:19, 28 June 2014 by my_wiki>Shard
By Shard.
Game variables can be accessed using the PSHM family of script functions, and can be written to by using the POPM family of functions. Which one you use depends on the size of the variable.
The variables are all stored in save files, with the save block starting at address 0xD10 on uncompressed PC saves. The parameter to access a variable in the game scripts is basically the offset from this point in the variable block. For example, getting main story progress (word 256, which is word 0x100 in hex) just gets the two bytes starting at address 0xD10 + 0x100 = 0xE10. The varmap is continuous in memory while the game is running as well. 0x1cfe9b8
Var type | Var Number | Description |
---|---|---|
Long | 80 | Seems to do nothing. Fields only set it to 0, and only check whether it's below arbitrary positive numbers. |
Word | 84 | Last area visited. This is related to SETPLACE somehow.4 |
Word | 256 | Main Story quest progress. |
Byte | 266 | World map version? (3=Esthar locations unlocked) |
Byte | 300 | Card Queen re-cards. |
Byte | 301-303 | unused in fields |
Byte | 304-305 | Timber Maniacs issues found. |
Byte | 306-319 | unused in fields |
Byte | 320-332 | Ultimecia Gallery related (pictures viewed?) |
Byte | 333 | Ultimecia Armory chest flags |
Byte | 334 | Ultimecia Castle seals. See SEALEDOFF for details. |
Byte | 335 | Card related |
Byte | 336 | Deling City bus related |
Byte | 338-340 | Deling Sewer gates opened |
Byte | 341 | Does lots of things.5 |
Byte | 342 | Deling City bus system |
Byte | 343 | G-Garden door/event flags. |
Byte | 344 | B-Garden / G-Garden event flags (during GvG) |
Byte | 345 | G-Garden door/event flags. |
Byte | 346-349 | FH Instrument (346 Zell, 347 Irvine, 348 Selphie, 349 Quistis) |
Word | 350-356 | Health Bars (Garden mech fight) |
Byte | 358 | Space station talk flags, Centra ruins related (beat odin?). |
Byte | 359 | Centra ruins related (beat odin?). |
Long | 360 | Choice of FH music. |
Byte | 364-368 | Randomly generated code for Centra Ruins. |
Byte | 369-370 | Ultimecia Castle flags |
Byte | 371 | unused in fields |
Byte | 372-376 | Ultimecia boss/timer/item flags |
Byte | 377 | Ultimecia organ note controller |
Byte | 378 | Centra Ruins timer (controls blackout messages from Odin) |
Byte | 379 | unused in fields |
Word | 380 | Squall health during mech fight. |
Byte | 382-383 | unused in fields |
Byte | 384 | Something about Laguna's time periods and GFs. |
Byte | 385 | Laguna dialogue in pub. Only the +2 bit is ever set. Don't change the +1 bit. |
Byte | 440 | Event flags. (+1 Quad ambush, +2 quad item giver, +4/+8 Infirmary helped, +16 Nida, +64 Kadowaki Elixir, +128 Training center) |
Byte | 488 | Alternate Party Flags. Irvine +1/+16, Quistis +2/+32, Rinoa +4/+64, Zell +8/+128.1 |
Byte | 625 | Balamb visited flags (+8 Zell's room) |
Byte | 720 | Squall's costume (0=normal, 1=student, 2=SeeD, 3=Bandage on forehead) |
Byte | 721 | Zell's Costume (0=normal, 1=student, 2=SeeD) |
Byte | 722 | Selphie's costume (0=normal, 1=student, 2=SeeD) |
Byte | 728 | Does lots of things.3 |
Byte | 730 | Flags (+1 Joined Garden Festival Committee, +4 Gave Selphie tour of BG, +16 Kadowaki asks for Cid, +32 and +64 Tomb of Unknown Kind hints?, +128 Beat all card people?) |
Byte | 734 | Split Party Flags (+1 Zell, +2 Irvine, +4 Rinoa, +8 Quistis, +16 Selphie).2 |
Notes
- 1. When the party splits in disc 2, each party member in the inactive party except Selphie has one of the eight bits changed for this variable. One member has a flag in the 4 most significant bits, and the other has a flag in the 4 least significant bits. It's done this way so that when the characters appear, they animate towards different locations in the field, rather than stacking on top of each other.
- 2. This byte contains flags for which characters are in Squall's party when the party splits in disc 2.
- 3. List of everything that 728 holds throughout the game:
- SeeD field exam "Conduct" score (lose points when you do something wrong at Dollet).
- Train job attempts (Timber)
- Tomb of the Unknown King student ID.
- Who you took to space in disc 3.
- 4. The field controlling restriction unlocking in Ultimecia's Castle uses this to figure out where to jump the party after they've broken a seal. It's unknown how SETPLACE actually sets this, it's not always related to the field ID or the SETPLACE parameter. This variable is also set at Balamb Garden's front gate manually.
- 5. List of everything that 341 holds throughout the game:
- First flashback team
- Selphie's current action when escaping from Deling's mansion (changes the dialogue)
- FH Concert Crappiness
- Something in B-Garden classroom during the paratrooper attack.