LIST OF IDENTIFIED IN-GAME VARS
4000 Temporary/disposable variable.
Written to by special E7.
4001 Temporary/disposable variable.
4003 Temporary/disposable variable? Used in TRAINER TOWER.
4006 Temporary/disposable variable? Used in TANOBY KEY.
4008 Temporary/disposable variable? Used in TANOBY KEY.
400E Temporary/disposable variable? Used in TRAINER TOWER.
400F Temporary/disposable variable? Used in TRAINER TOWER.
4010 Temporary/disposable variable.
Written to by (incomplete?) special 142.
4020 Pedometer. It counts down, and upon reaching 0x0000, REPEL expires.
4021 Pedometer. Max value 0x007F; it loops back to 0x0000 after.
4022 Pedometer. Max value 0x0004; it loops back to 0x0000 after.
4023 Pedometer. Max value 0x05DC; it just stays at that value after?
4025 Pedometer? Used for DAISY's script? Haven't seen it in action myself yet.
Set to 0x01F4 (500) by GAME START SCRIPT.
4031 The starter that the player chose (0, 1, 2).
Accessed directly by special 129.
4036 Multi-use, for SELPHY's Pokemon-fetching-and-showing game.
Apparently set to 0x0000 when it's time for a new "round" to start.
Apparently set to 0xFFFF if you're out of time.
4037 Box that a newly-received (givepokemon) Pokemon was sent to. Is directly manipulated by the game engine
itself.
Read by special 165.
4038 Unknown.
Read by specials A6 and A9.
Written to by special A8.
Used by special AA.
4039 Unknown.
Written to by specials A6, A7, and A9.
403A Used in elevator scripts (current floor?). Written to by special 0xD8.
403C 0xXXYY -- the current bank and map, respectively.
403E Unknown.
Accessed directly by special 1AC.
4042 Unknown.
Read by special 167.
4043 Unknown.
Written to by special 167.
4049 Unknown. Something to do with the sticker kid on FOUR ISLAND.
404A Unknown. Something to do with the sticker kid on FOUR ISLAND.
404B Unknown. Something to do with the sticker kid on FOUR ISLAND.
404E Unknown.
Written to by special 197.
4050 Unknown or multi-use.
Set to 0x1 after the "Don't go out yet!" OAK Script event.
Set to 0x2 during the Hall of Fame room level script, if the National Dex is NOT already unlocked.
Set to 0x3 after OAK's chat with the player in PALLET TOWN after beating the E4.
4051 Set to 0x2 to disable the "Old Man Needs Coffee" Script event in VIRIDIAN CITY.
4052 Set to 0x1 to disable Script events for Gary in CERULEAN CITY.
4053 Unknown. Set to 0x0 after the player watches the S.S. ANNE depart.
4054 Unknown or multi-use.
Set to 0x2 to disable Script events for a Rival encounter on ROUTE 22.
Set to 0x3 after VIRIDIAN CITY Gym Leader GIOVANNI is defeated. Enables next Rival.
Set to 0x4 to disable Script events for a second Rival encounter on ROUTE 22.
4055 Unknown.
Is set to 0x0 when the player hasn't encounted PROF. OAK yet.
Is set to 0x1 when OAK is escorting the player to his lab.
Is set to 0x2 when the player needs to choose a starter.
Is set to 0x3 when the player and their Rival have both chosen starters.
Is set to 0x4 after the player's first battle with their Rival.
Is set to 0x5 when the player needs to deliver OAK's PARCEL.
Is set to 0x9 when the player enters PROF. OAK while it is set to 0x8.
If >= 0x1 and no other events pending, then DAISY comments on a recent Rival battle.
Set to 0x7 after OAK's chat with the player in PALLET TOWN after beating the E4.
4056 Unknown. If equal to 0x0, "sethealingplace" runs whenever the player enters their bedroom in
PALLET TOWN. Another level script then sets the variable to 0x1.
4057 Multi-use.
Set to 0x1 to disable the OAK's PARCEL level script in VIRIDIAN CITY's PokeMart.
Set to some other value to enable VIRIDIAN CITY's normal PokeMart script.
4058 Unknown. Checked by DAISY's script in PALLET TOWN. Apparently part of the sequence of events
that makes her give away the TOWN MAP.
Set to 0x2 when DAISY gives away the TOWN MAP.
4059 If != 0x0, then the player beat the Ghost MAROWAK at POKeMON TOWER.
405A Set to some value to disable the Old Man that blocks the VIRIDIAN CITY Gym.
405B Multi-use.
Set to 0x1 to disable Script events for a Rival encounter on the S.S. ANNE.
Is set to 0x1 when entering LAVENDER TOWN.
405C If != 0x0, then the player beat Gary at SILPH CO.
405D If != 0x0, then the player beat Gary at POKeMON TOWER.
405E Set to 0x0 to disable Script events on the tiles bordering the exits to the CYCLING ROAD
gatehouse. Set to 0x1 to disable Script events on the tiles bordering the entrances.
405F Controls various badge-checking Script events on Route 23.
4060 If >= 0x1, then TEAM ROCKET has left SILPH CO.
4061 Set to 0x1 to disable the Pay-To-Enter Script events in PEWTER CITY's Museum.
4062 Set to 0x1 to disable the thirsty-guard roadblock Script events in the SAFFRON gatehouses.
4064 Unknown or multi-use.
Reset to 0x0000 when entering Route 23.
Used as part of the Boulder puzzle scripts in VICTORY ROAD.
4065 Unknown or multi-use.
Reset to 0x0000 when entering Route 23.
Used as part of the Boulder puzzle scripts in VICTORY ROAD.
4066 Unknown or multi-use.
Reset to 0x0000 when entering Route 23.
Used as part of the Boulder puzzle scripts in VICTORY ROAD.
4067 Unknown. Reset to 0x0000 when entering Route 23.
4068 Set to 0x2 after an Elite Four chamber level script forces the player to walk up. Rechecked
later after the E4 battle in that chamber has ended. Reset to 0x0000 in the Hall of Fame room.
4069 Set to 0x1, 0x2, or 0x3 depending on which fossil is being revived at the CINNABAR ISLAND
lab.
406A Fossil revival process. 0x1 means that a revival is in progress. 0x2 means that it is
complete.
406B Set to 0x1 to disable Script events for the Nugget Bridge challenge.
406C Unknown or multi-use.
Set to 0x1 to disable the man that traps you in PEWTER until you beat Brock.
Set to 0x2 to disable Script events for the man that gives Running Shoes at PEWTER.
406E Safari Zone status.
Set to 0x0 when not in the SAFARI ZONE.
Set to 0x1 ...?
Set to 0x2 after paying to enter the SAFARI ZONE.
406F I haven't the faintest idea. Used in Pokemon Center 2F level scripts.
4070 Set to 0x1 when talking to some chick in PALLET TOWN that mimics a sign or whatever.
4071 See 408A.
4073 Affects dialogue in the SAFFRON CITY TRAINER FAN CLUB building.
Is set to 0x1 when the occupants -- your new fans -- swarm you.
4074 Unknown. Checked if != 0x0 in a level script for the woman-who-likes-battles's house (map
31.0).
4075 Used in a ONE ISLAND level script. If it equals 0x2, BILL will welcome you to ONE ISLAND,
bring you into the PokeCenter to see CELIO, and then the variable will be set to 0x3.
4076 Multi-use, for the RUBY/SAPPHIRE subplot.
Set to 0x4 if hasn't beaten the ROCKET GRUNTs they eavesdrop on at MT. EMBER?
Set to 0x5 when the RUBY has been delivered to CELIO on ONE ISLAND.
Set to 0x6 when the subplot is complete.
If >= 0x5, VERMILION dockworker acknowledges your RAINBOW PASS. (Travel to SEVII)
If >= 0x1, VERMILION dockworker acknowledges your TRI-PASS. (Travel to SEVII 1-3)
4078 Affects the commentary and items offered by the shopkeeper on One Island. The variable's
value is managed by a TWO ISLAND level script that checks various flags.
0x4078 == 0x2 means that Lostelle has been rescued.
0x4078 == 0x3 means that you've beaten all Gyms, but not the Elite Four. (?)
0x4078 == 0x4 means that the shopkeeper offers items "from distant lands". (Beat E4)
4079 Multi-use, for the LOSTELLE event.
Set to 0x1 after dealing with a Biker at the TWO ISLAND GAME CORNER.
Set to 0x2 after rescuing LOSTELLE in BERRY FOREST, before warping to her home.
Is set to 0x3 when LOSTELLE is reunited with her father.
Is set to 0x4 when the subplot is complete.
407B Unknown or multi-use.
Set to 0x2 to enable the first Script events for the Bikers in THREE ISLAND?
Set to 0x3 to disable the first Script events for the Bikers in THREE ISLAND.
Set to 0x4 to disable the second Script events for the Bikers. (They leave.)
407C Unknown or multi-use.
Set to 0x1 to ...?
Set to 0x2 to disable the Pokemon Center 2F level script (TEALA's tutorial).
407D Set to 0x1 to disable the ROCKET GRUNT Script events behind the broken home in CERULEAN.
407E Unknown or multi-use.
Is set to 0x1 after the player helps the S.S. ANNE's captain.
Is set to 0x2 when the player is stepping out of a boat and into VERMILION CITY or the S.S. ANNE harbor.
Is set to 0x3 when the S.S. ANNE has departed VERMILION CITY.
407F Set to 0x2 after a Script event on MT. EMBER, in which the player hears ROCKET GRUNTs talk.
4080 Set to 0x1 after a Script event in ICEFALL CAVE, in which the player assists LORELEI.
4081 Set to 0x1 to disable a Script event blocking access to the Pokemon in the FIGHTING DOJO.
4082 Multi-use.
Set to 0x0 to enable a Script event at the TRAINER TOWER counter. (A level script
on the tower's exterior (Map 3.62) does this.)
Set to 0x1 to disable a Script event at the TRAINER TOWER counter.
4083 Set to 0x1 upon entering the LOST CAVE room with the lost woman.
4084 Multi-use, for the SELPHY event.
Set to 0x1 upon rescuing SELPHY from LOST CAVE, before warping to RESORT GORGEOUS.
Set to 0x2 upon being promptly dismissed from her front door (level script).
4085 Unknown. Used in two level scripts for INDIGO PLATEAU (3.9). Does something if it equals 1.
4086 Set to 0x1 to disable a FOUR ISLAND level script (Gary encounter without battle).
4088 Set to 0x1 to disable Script events in ROCKET WAREHOUSE.
4089 Set to 0x1 to disable a SIX ISLAND (37.0) level script (Gary encounter without battle).
408A Multi-use, for an event where you meet BILL at CINNABAR ISLAND's PokeCenter, and he leaves on
a boat.
Set to 0x1 upon meeting BILL in the PokeCenter. The same script makes you both leave.
Is set to 0x1 when used in level scripts that show BILL's departure from the island.
408B Set to 0x1 to disable the Script events for the fossil guy in MT. MOON.
...
5EF4 - 7FFF CONFIRMED UNSAFE! In PC box space!