The Great Constant Compression of June 2023

This is a large-scale compression of KEP's current hide/show constants. RBY's works extremely oddly and is limited to 256 entries.

The problem with how RBY's hide/show stuff works, is that even though there are tons of unused constants, you...can't actually remove them. The constant list is tied to the hide/show data entries, so if you replace it with something else, well, now you just have two objects tied to the same constant. If you made the Route 2 item a boss, and someone picked up the item on Route 2, the boss would also disappear, and vice versa. So, we have to get creative.

I have reduced what we have to 248, but I think I miscounted when doing the funny list somewhere in the actual list when making sure the hex stuff is ok. Either that, or there's an error somewhere that Martha will, by some obscene miracle of humanity, discover. Anyway, this was achieved by turning multiple current overworld items into hidden ones, keeping them in the game whilst keeping to that all-important limit.

I also removed the items in Pokemon Tower 4F for this, just needed a little boost. Well, as you can see by the number, I technically didn't, I just miscounted like 20 times. Look, it's 10:11 PM, my stomach is in pain from an insane injection, and I don't even know if that map will come back, cut me some slack. Or add it back. You definitely can.
This commit is contained in:
Llinos Evans 2023-06-27 22:17:07 +01:00
parent 262c862a76
commit 83483f035b
13 changed files with 212 additions and 240 deletions

View file

@ -7,6 +7,8 @@ DEF SHOW EQU $15
; because those sprites are not (de)activated in a map's script
; (they are either items or sprites that deactivate after battle
; and are detected in wMissableObjectList)
; However, these constants are still required to synchronise properly
; with the hide/show list, so you can't just remove them.
const_def
const HS_PALLET_TOWN_OAK ; 00
@ -49,8 +51,8 @@ DEF SHOW EQU $15
const HS_NUGGET_BRIDGE_GUY ; 25
const HS_ROUTE_24_ITEM ; 26 X
const HS_ROUTE_25_ITEM ; 27 X
const HS_CACTUS ; 28 X
const HS_BRUNSWICK_ZAPDOS_G_1 ; 29 X
const HS_CACTUS ; 28
const HS_BRUNSWICK_ZAPDOS_G_1 ; 29
const HS_DAISY_SITTING ; 2A
const HS_DAISY_WALKING ; 2B
const HS_TOWN_MAP ; 2C
@ -70,133 +72,129 @@ DEF SHOW EQU $15
const HS_CERULEAN_CAVE_1F_ITEM_3 ; 3A X
const HS_MOLTRES_G ; 3D X
const HS_POKEMON_TOWER_2F_RIVAL ; 3E
const HS_BRUNSWICK_ZAPDOS_G_2 ;was const HS_POKEMON_TOWER_3F_ITEM ; 3F X
const HS_POKEMON_TOWER_4F_ITEM_1 ; 40 X
const HS_POKEMON_TOWER_4F_ITEM_2 ; 41 X
const HS_POKEMON_TOWER_4F_ITEM_3 ; 42 X
const HS_POKEMON_TOWER_5F_ITEM ; 43 X
const HS_POKEMON_TOWER_6F_ITEM_1 ; 44 X
const HS_POKEMON_TOWER_6F_ITEM_2 ; 45 X
const HS_POKEMON_TOWER_7F_JESSIE ; 46 X
const HS_POKEMON_TOWER_7F_JAMES ; 47 X
const HS_POKEMON_TOWER_7F_MR_FUJI ; 48
const HS_MR_FUJIS_HOUSE_MR_FUJI ; 49
const HS_CELADON_MANSION_EEVEE_GIFT ; 4A
const HS_GAME_CORNER_ROCKET ; 4B
const HS_WARDENS_HOUSE_ITEM ; 4C X
const HS_POKEMON_MANSION_1F_ITEM_1 ; 4D X
const HS_POKEMON_MANSION_1F_ITEM_2 ; 4E X
const HS_FIGHTING_DOJO_GIFT_1 ; 4F
const HS_FIGHTING_DOJO_GIFT_2 ; 50
const HS_FIGHTING_DOJO_GIFT_3
const HS_SILPH_CO_1F_RECEPTIONIST ; 51
const HS_VOLTORB_1 ; 52 X
const HS_VOLTORB_2 ; 53 X
const HS_VOLTORB_3 ; 54 X
const HS_ELECTRODE_1 ; 55 X
const HS_VOLTORB_4 ; 56 X
const HS_VOLTORB_5 ; 57 X
const HS_ELECTRODE_2 ; 58 X
const HS_VOLTORB_6 ; 59 X
const HS_ZAPDOS ; 5A X
const HS_POWER_PLANT_ITEM_1 ; 5B X
const HS_POWER_PLANT_ITEM_2 ; 5C X
const HS_POWER_PLANT_ITEM_3 ; 5D X
const HS_POWER_PLANT_ITEM_4 ; 5E X
const HS_POWER_PLANT_ITEM_5 ; 5F X
const HS_GYAOON ; 60 X
const HS_VICTORY_ROAD_2F_ITEM_1 ; 61 X
const HS_VICTORY_ROAD_2F_ITEM_2 ; 62 X
const HS_VICTORY_ROAD_2F_ITEM_3 ; 63 X
const HS_VICTORY_ROAD_2F_ITEM_4 ; 64 X
const HS_VICTORY_ROAD_2F_BOULDER ; 65
const HS_BILL_POKEMON ; 66
const HS_BILL_1 ; 67
const HS_BILL_2 ; 68
const HS_BILLS_NIDORINO ; 69
const HS_VIRIDIAN_FOREST_ITEM_1 ; 6A X
const HS_VIRIDIAN_FOREST_ITEM_2 ; 6B X
const HS_VIRIDIAN_FOREST_ITEM_3 ; 6C X
const HS_MT_MOON_1F_ITEM_1 ; 6D X
const HS_MT_MOON_1F_ITEM_2 ; 6E X
const HS_MT_MOON_1F_ITEM_3 ; 6F X
const HS_MT_MOON_1F_ITEM_4 ; 70 X
const HS_MT_MOON_1F_ITEM_5 ; 71 X
const HS_MT_MOON_1F_ITEM_6 ; 72 X
const HS_MT_MOON_B2F_JESSIE ; 73
const HS_MT_MOON_B2F_JAMES ; 74
const HS_MT_MOON_B2F_FOSSIL_1 ; 75
const HS_MT_MOON_B2F_FOSSIL_2 ; 76
const HS_MT_MOON_B2F_ITEM_1 ; 77 X
const HS_MT_MOON_B2F_ITEM_2 ; 78 X
const HS_SS_ANNE_2F_RIVAL ; 7A
const HS_SS_ANNE_1F_ROOMS_ITEM ; 7B X
const HS_SS_ANNE_2F_ROOMS_ITEM_1 ; 7C X
const HS_SS_ANNE_2F_ROOMS_ITEM_2 ; 7D X
const HS_SS_ANNE_B1F_ROOMS_ITEM_1 ; 7E X
const HS_SS_ANNE_B1F_ROOMS_ITEM_2 ; 7F X
const HS_SS_ANNE_B1F_ROOMS_ITEM_3 ; 80 X
const HS_WUGTRIO ; 81 X
const HS_VICTORY_ROAD_3F_ITEM_1 ; 82 X
const HS_VICTORY_ROAD_3F_ITEM_2 ; 83 X
const HS_VICTORY_ROAD_3F_BOULDER ; 84
const HS_ROCKET_HIDEOUT_B1F_ITEM_1 ; 85 X
const HS_ROCKET_HIDEOUT_B1F_ITEM_2 ; 86 X
const HS_ROCKET_HIDEOUT_B2F_ITEM_1 ; 87 X
const HS_ROCKET_HIDEOUT_B2F_ITEM_2 ; 88 X
const HS_ROCKET_HIDEOUT_B2F_ITEM_3 ; 89 X
const HS_ROCKET_HIDEOUT_B2F_ITEM_4 ; 8A X
const HS_ROCKET_HIDEOUT_B3F_ITEM_1 ; 8B X
const HS_ROCKET_HIDEOUT_B3F_ITEM_2 ; 8C X
const HS_ROCKET_HIDEOUT_B4F_GIOVANNI ; 8D
const HS_ROCKET_HIDEOUT_B4F_JAMES ; 8E
const HS_ROCKET_HIDEOUT_B4F_JESSIE ; 8F
const HS_ROCKET_HIDEOUT_B4F_ITEM_1 ; 90 X
const HS_ROCKET_HIDEOUT_B4F_ITEM_2 ; 91 X
const HS_ROCKET_HIDEOUT_B4F_ITEM_3 ; 92 X
const HS_ROCKET_HIDEOUT_B4F_ITEM_4 ; 93
const HS_ROCKET_HIDEOUT_B4F_ITEM_5 ; 94
const HS_GARNET_ARTICUNO_G ; 95
const HS_GARNET_ITEM_1
const HS_GARNET_ITEM_2
const HS_ARTICUNO_G_COPY_1
const HS_ARTICUNO_G_COPY_2
const HS_SILPH_CO_3F_1 ; 96
const HS_SILPH_CO_3F_2 ; 97
const HS_SILPH_CO_3F_ITEM ; 98 X
const HS_SILPH_CO_4F_1 ; 99
const HS_SILPH_CO_4F_2 ; 9A
const HS_SILPH_CO_4F_3 ; 9B
const HS_SILPH_CO_4F_ITEM_1 ; 9C X
const HS_SILPH_CO_4F_ITEM_2 ; 9D X
const HS_SILPH_CO_4F_ITEM_3 ; 9E X
const HS_SILPH_CO_5F_1 ; 9F
const HS_SILPH_CO_5F_2 ; A0
const HS_SILPH_CO_5F_3 ; A1
const HS_SILPH_CO_5F_4 ; A2
const HS_SILPH_CO_5F_ITEM_1 ; A3 X
const HS_SILPH_CO_5F_ITEM_2 ; A4 X
const HS_SILPH_CO_5F_ITEM_3 ; A5 X
const HS_SILPH_CO_6F_1 ; A6
const HS_SILPH_CO_6F_2 ; A7
const HS_SILPH_CO_6F_3 ; A8
const HS_SILPH_CO_6F_ITEM_1 ; A9 X
const HS_SILPH_CO_6F_ITEM_2 ; AA X
const HS_SILPH_CO_7F_1 ; AB
const HS_SILPH_CO_7F_2 ; AC
const HS_SILPH_CO_7F_3 ; AD
const HS_SILPH_CO_7F_4 ; AE
const HS_SILPH_CO_7F_RIVAL ; AF
const HS_SILPH_CO_7F_ITEM_1 ; B0 X
const HS_SILPH_CO_7F_ITEM_2 ; B1 X
const HS_SILPH_CO_8F_1 ; B3
const HS_SILPH_CO_8F_2 ; B4
const HS_SILPH_CO_8F_3 ; B5
const HS_SILPH_CO_10F_1 ; B6
const HS_SILPH_CO_10F_2 ; B7
const HS_SILPH_CO_10F_3 ; B8 XXX never (de)activated?
const HS_BRUNSWICK_ZAPDOS_G_2 ; 3F, was const HS_POKEMON_TOWER_3F_ITEM
const HS_POKEMON_TOWER_5F_ITEM ; 40 X
const HS_POKEMON_TOWER_6F_ITEM_1 ; 41 X
const HS_POKEMON_TOWER_6F_ITEM_2 ; 42 X
const HS_POKEMON_TOWER_7F_JESSIE ; 43
const HS_POKEMON_TOWER_7F_JAMES ; 44
const HS_POKEMON_TOWER_7F_MR_FUJI ; 45
const HS_MR_FUJIS_HOUSE_MR_FUJI ; 46
const HS_CELADON_MANSION_EEVEE_GIFT ; 47
const HS_GAME_CORNER_ROCKET ; 48
const HS_WARDENS_HOUSE_ITEM ; 49 X
const HS_POKEMON_MANSION_1F_ITEM_1 ; 4A X
const HS_POKEMON_MANSION_1F_ITEM_2 ; 4B X
const HS_FIGHTING_DOJO_GIFT_1 ; 4C
const HS_FIGHTING_DOJO_GIFT_2 ; 4D
const HS_FIGHTING_DOJO_GIFT_3 ; 4E
const HS_SILPH_CO_1F_RECEPTIONIST ; 4F
const HS_VOLTORB_1 ; 50 X
const HS_VOLTORB_2 ; 51 X
const HS_VOLTORB_3 ; 52 X
const HS_ELECTRODE_1 ; 53 X
const HS_VOLTORB_4 ; 54 X
const HS_VOLTORB_5 ; 55 X
const HS_ELECTRODE_2 ; 56 X
const HS_VOLTORB_6 ; 57 X
const HS_ZAPDOS ; 58 X
const HS_POWER_PLANT_ITEM_1 ; 59 X
const HS_POWER_PLANT_ITEM_2 ; 5A X
const HS_POWER_PLANT_ITEM_3 ; 5B X
const HS_POWER_PLANT_ITEM_4 ; 5C X
const HS_POWER_PLANT_ITEM_5 ; 5D X
const HS_GYAOON ; 5E X
const HS_VICTORY_ROAD_2F_ITEM_1 ; 5F X
const HS_VICTORY_ROAD_2F_ITEM_2 ; 60 X
const HS_VICTORY_ROAD_2F_ITEM_3 ; 61 X
const HS_VICTORY_ROAD_2F_ITEM_4 ; 62 X
const HS_VICTORY_ROAD_2F_BOULDER ; 63
const HS_BILL_POKEMON ; 64
const HS_BILL_1 ; 65
const HS_BILL_2 ; 66
const HS_BILLS_NIDORINO ; 67
const HS_VIRIDIAN_FOREST_ITEM_1 ; 68 X
const HS_VIRIDIAN_FOREST_ITEM_2 ; 69 X
const HS_VIRIDIAN_FOREST_ITEM_3 ; 6A X
const HS_MT_MOON_1F_ITEM_1 ; 6B X
const HS_MT_MOON_1F_ITEM_2 ; 6C X
const HS_MT_MOON_1F_ITEM_3 ; 6D X
const HS_MT_MOON_1F_ITEM_4 ; 6E X
const HS_MT_MOON_1F_ITEM_5 ; 6F X
const HS_MT_MOON_1F_ITEM_6 ; 70 X
const HS_MT_MOON_B2F_JESSIE ; 71
const HS_MT_MOON_B2F_JAMES ; 72
const HS_MT_MOON_B2F_FOSSIL_1 ; 73
const HS_MT_MOON_B2F_FOSSIL_2 ; 74
const HS_MT_MOON_B2F_ITEM_1 ; 75 X
const HS_MT_MOON_B2F_ITEM_2 ; 76 X
const HS_SS_ANNE_2F_RIVAL ; 77
const HS_SS_ANNE_1F_ROOMS_ITEM ; 78 X
const HS_SS_ANNE_2F_ROOMS_ITEM_1 ; 79 X
const HS_SS_ANNE_2F_ROOMS_ITEM_2 ; 7A X
const HS_SS_ANNE_B1F_ROOMS_ITEM_1 ; 7B X
const HS_SS_ANNE_B1F_ROOMS_ITEM_2 ; 7C X
const HS_SS_ANNE_B1F_ROOMS_ITEM_3 ; 7D X
const HS_WUGTRIO ; 7E X
const HS_VICTORY_ROAD_3F_ITEM_1 ; 7F X
const HS_VICTORY_ROAD_3F_ITEM_2 ; 80 X
const HS_VICTORY_ROAD_3F_BOULDER ; 81
const HS_ROCKET_HIDEOUT_B1F_ITEM_1 ; 82 X
const HS_ROCKET_HIDEOUT_B1F_ITEM_2 ; 83 X
const HS_ROCKET_HIDEOUT_B2F_ITEM_1 ; 84 X
const HS_ROCKET_HIDEOUT_B2F_ITEM_2 ; 85 X
const HS_ROCKET_HIDEOUT_B2F_ITEM_3 ; 86 X
const HS_ROCKET_HIDEOUT_B2F_ITEM_4 ; 87 X
const HS_ROCKET_HIDEOUT_B3F_ITEM_1 ; 88 X
const HS_ROCKET_HIDEOUT_B3F_ITEM_2 ; 89 X
const HS_ROCKET_HIDEOUT_B4F_GIOVANNI ; 8A
const HS_ROCKET_HIDEOUT_B4F_JAMES ; 8B
const HS_ROCKET_HIDEOUT_B4F_JESSIE ; 8C
const HS_ROCKET_HIDEOUT_B4F_ITEM_1 ; 8D X
const HS_ROCKET_HIDEOUT_B4F_ITEM_2 ; 8E X
const HS_ROCKET_HIDEOUT_B4F_ITEM_3 ; 8F X
const HS_ROCKET_HIDEOUT_B4F_ITEM_4 ; 90
const HS_ROCKET_HIDEOUT_B4F_ITEM_5 ; 91
const HS_GARNET_ARTICUNO_G ; 92
const HS_GARNET_ITEM_1 ; 93
const HS_GARNET_ITEM_2 ; 94
const HS_ARTICUNO_G_COPY_1 ; 95
const HS_ARTICUNO_G_COPY_2 ; 96
const HS_SILPH_CO_3F_1 ; 97
const HS_SILPH_CO_3F_2 ; 98
const HS_SILPH_CO_3F_ITEM ; 99 X
const HS_SILPH_CO_4F_1 ; 9A
const HS_SILPH_CO_4F_2 ; 9B
const HS_SILPH_CO_4F_3 ; 9C
const HS_SILPH_CO_4F_ITEM_1 ; 9D X
const HS_SILPH_CO_4F_ITEM_2 ; 9E X
const HS_SILPH_CO_4F_ITEM_3 ; 9F X
const HS_SILPH_CO_5F_1 ; A0
const HS_SILPH_CO_5F_2 ; A1
const HS_SILPH_CO_5F_3 ; A2
const HS_SILPH_CO_5F_4 ; A3
const HS_SILPH_CO_5F_ITEM_1 ; A4 X
const HS_SILPH_CO_5F_ITEM_2 ; A5 X
const HS_SILPH_CO_5F_ITEM_3 ; A6 X
const HS_SILPH_CO_6F_1 ; A7
const HS_SILPH_CO_6F_2 ; A8
const HS_SILPH_CO_6F_3 ; A9
const HS_SILPH_CO_6F_ITEM_1 ; AA X
const HS_SILPH_CO_6F_ITEM_2 ; AB X
const HS_SILPH_CO_7F_1 ; AC
const HS_SILPH_CO_7F_2 ; AE
const HS_SILPH_CO_7F_3 ; AF
const HS_SILPH_CO_7F_4 ; B0
const HS_SILPH_CO_7F_RIVAL ; B1
const HS_SILPH_CO_7F_ITEM_1 ; B2 X
const HS_SILPH_CO_7F_ITEM_2 ; B3 X
const HS_SILPH_CO_8F_1 ; B4
const HS_SILPH_CO_8F_2 ; B5
const HS_SILPH_CO_8F_3 ; B6
const HS_SILPH_CO_10F_1 ; B7
const HS_SILPH_CO_10F_2 ; B8
const HS_SILPH_CO_10F_ITEM_1 ; B9 X
const HS_SILPH_CO_10F_ITEM_2 ; BA X
const HS_SILPH_CO_10F_ITEM_2 ; BA X best deck
const HS_SILPH_CO_10F_ITEM_3 ; BB X
const HS_SILPH_CO_11F_1 ; BC
const HS_SILPH_CO_11F_2 ; BD
@ -231,42 +229,33 @@ DEF SHOW EQU $15
const HS_CERULEAN_CAVE_B1F_ITEM_1 ; DA X
const HS_CERULEAN_CAVE_B1F_ITEM_2 ; DB X
const HS_VICTORY_ROAD_1F_ITEM_1 ; DC X
const HS_VICTORY_ROAD_1F_ITEM_2 ; DD X
const HS_CHAMPIONS_ROOM_OAK ; DE
const HS_SEAFOAM_ISLANDS_1F_BOULDER_1 ; DF
const HS_SEAFOAM_ISLANDS_1F_BOULDER_2 ; E0
const HS_SEAFOAM_ISLANDS_B1F_BOULDER_1 ; E1
const HS_SEAFOAM_ISLANDS_B1F_BOULDER_2 ; E2
const HS_SEAFOAM_ISLANDS_B2F_BOULDER_1 ; E3
const HS_SEAFOAM_ISLANDS_B2F_BOULDER_2 ; E4
const HS_SEAFOAM_ISLANDS_B3F_BOULDER_1 ; E5
const HS_SEAFOAM_ISLANDS_B3F_BOULDER_2 ; E6
const HS_SEAFOAM_ISLANDS_B3F_BOULDER_3 ; E7
const HS_SEAFOAM_ISLANDS_B3F_BOULDER_4 ; E8
const HS_SEAFOAM_ISLANDS_B4F_BOULDER_1 ; E9
const HS_SEAFOAM_ISLANDS_B4F_BOULDER_2 ; EA
const HS_ARTICUNO ; EB
const HS_OLD_SEA_MAP ; EC (can be removed, we can make the it a hidden item instead)
const HS_VICTORY_ROAD_1F_ITEM_2 ; DE X
const HS_CHAMPIONS_ROOM_OAK ; DF
const HS_SEAFOAM_ISLANDS_1F_BOULDER_1 ; E0
const HS_SEAFOAM_ISLANDS_1F_BOULDER_2 ; E1
const HS_SEAFOAM_ISLANDS_B1F_BOULDER_1 ; E2
const HS_SEAFOAM_ISLANDS_B1F_BOULDER_2 ; E3
const HS_SEAFOAM_ISLANDS_B2F_BOULDER_1 ; E4
const HS_SEAFOAM_ISLANDS_B2F_BOULDER_2 ; E5
const HS_SEAFOAM_ISLANDS_B3F_BOULDER_1 ; E6
const HS_SEAFOAM_ISLANDS_B3F_BOULDER_2 ; E7
const HS_SEAFOAM_ISLANDS_B3F_BOULDER_3 ; E8
const HS_SEAFOAM_ISLANDS_B3F_BOULDER_4 ; E9
const HS_SEAFOAM_ISLANDS_B4F_BOULDER_1 ; EA sports. to the game.
const HS_SEAFOAM_ISLANDS_B4F_BOULDER_2 ; EB
const HS_ARTICUNO ; EC
const HS_MEW ; ED
const HS_POKEMON_MANSION_B2F_ITEM_1 ; EE
const HS_POKEMON_MANSION_B2F_ITEM_2 ; EF
const HS_ROUTE_1_OAK ; F0
const HS_YUJIROU ; F1
const HS_YUJIROU_REMATCH ; F2
const HS_MT_MOON_CRATER_ITEM_1 ; F3
const HS_MT_MOON_CRATER_ITEM_2 ; F4
const HS_MT_MOON_CRATER_ITEM_3 ; F5
const HS_MT_MOON_CRATER_ITEM_4 ; F6
const HS_MT_MOON_CRATER_ITEM_5 ; F7
const HS_MT_MOON_CRATER_ITEM_6 ; F8
const HS_MT_MOON_CRATER_ITEM_7 ; F9
const HS_MT_MOON_CRATER_ITEM_8 ; FA
const HS_MT_MOON_CRATER_ITEM_9 ; FB
const HS_GIOVANNIS_ROOM_ITEM_1 ; FC
const HS_GIOVANNIS_ROOM_ITEM_2 ; FD
const HS_ROCK_TUNNEL_B1F_DOME ; FE
const HS_ROCK_TUNNEL_B1F_HELIX ; FF
const HS_ROCK_TUNNEL_B1F_AMBER ; 100
const HS_ROCK_TUNNEL_B1F_WING ; 101
const HS_MT_MOON_CRATER_GUARD ; 102
const HS_MT_MOON_CRATER_ITEM_1 ; F1
const HS_MT_MOON_CRATER_ITEM_2 ; F2
const HS_MT_MOON_CRATER_ITEM_3 ; F3
const HS_GIOVANNIS_ROOM_ITEM_1 ; F4
const HS_GIOVANNIS_ROOM_ITEM_2 ; F5
const HS_ROCK_TUNNEL_B1F_DOME ; F6
const HS_ROCK_TUNNEL_B1F_HELIX ; F7
const HS_ROCK_TUNNEL_B1F_AMBER ; F8
const HS_ROCK_TUNNEL_B1F_WING ; F9
const HS_MT_MOON_CRATER_GUARD ; FA
DEF NUM_HS_OBJECTS EQU const_value

View file

@ -57,4 +57,9 @@ HiddenItemCoords:
hidden_item VERMILION_CITY, 14, 11
hidden_item CERULEAN_CITY, 15, 8
hidden_item ROUTE_4, 40, 3
hidden_item VERMILION_DOCK, 21, 0 ; Old Sea Map
hidden_item MT_MOON_CRATER, 17, 20 ; Heart Stone
hidden_item MT_MOON_CRATER, 20, 20 ; Poison Stone
hidden_item MT_MOON_CRATER, 20, 17 ; Black Augurite
hidden_item MT_MOON_CRATER, 32, 45 ; Old Amber
db -1 ; end

View file

@ -86,6 +86,8 @@ HiddenObjectMaps:
db CELADON_UNIVERSITY_POKECENTER
db CITRINE_POKECENTER
db BATTLE_TENT
db VERMILION_DOCK
db MT_MOON_CRATER
db -1 ; end
HiddenObjectPointers:
@ -177,6 +179,8 @@ HiddenObjectPointers:
dw CeladonUniversityPokecenterHiddenObjects
dw CitrinePokecenterHiddenObjects
dw BattleTentHiddenObjects
dw VermilionDockHiddenObjects
dw MtMoonCraterHiddenObjects
MACRO hidden_object
db \2 ; y coord
@ -640,3 +644,14 @@ Route4HiddenObjects:
BattleTentHiddenObjects:
hidden_object 9, 16, SPRITE_FACING_UP, OpenPokemonCenterPC
db -1
VermilionDockHiddenObjects:
hidden_object 21, 0, OLD_SEA_MAP, HiddenItems
db -1
MtMoonCraterHiddenObjects:
hidden_object 17, 20, HEART_STONE, HiddenItems
hidden_object 20, 20, POISON_STONE, HiddenItems
hidden_object 20, 17, BLK_AUGURITE, HiddenItems
hidden_object 32, 45, OLD_AMBER, HiddenItems
db -1

View file

@ -75,7 +75,7 @@ MapHSPointers:
dw NoHS
dw NoHS
dw NoHS
dw ViridianPreGymHS
dw NoHS
dw NoHS
dw NoHS
dw NoHS
@ -100,7 +100,7 @@ MapHSPointers:
dw NoHS
dw NoHS
dw NoHS
dw VermilionDockHS
dw NoHS
dw NoHS
dw SSAnne2FHS
dw NoHS
@ -152,7 +152,7 @@ MapHSPointers:
dw PokemonTower2FHS
dw BrunswickGrottoHS ; Brunswick Grotto
;dw PokemonTower3FHS
dw PokemonTower4FHS
dw NoHS ; Pokemon Tower 4F, removed for constant space
dw PokemonTower5FHS
dw PokemonTower6FHS
dw PokemonTower7FHS
@ -357,10 +357,10 @@ BrunswickGrottoHS:
db BRUNSWICK_GROTTO, $01, SHOW ; HS_BRUNSWICK_ZAPDOS_G_2
;PokemonTower3FHS:
; db POKEMON_TOWER_3F, $04, SHOW ; HS_POKEMON_TOWER_3F_ITEM
PokemonTower4FHS:
db POKEMON_TOWER_4F, $04, SHOW ; HS_POKEMON_TOWER_4F_ITEM_1
db POKEMON_TOWER_4F, $05, SHOW ; HS_POKEMON_TOWER_4F_ITEM_2
db POKEMON_TOWER_4F, $06, SHOW ; HS_POKEMON_TOWER_4F_ITEM_3
;PokemonTower4FHS:
; db POKEMON_TOWER_4F, $04, SHOW ; HS_POKEMON_TOWER_4F_ITEM_1
; db POKEMON_TOWER_4F, $05, SHOW ; HS_POKEMON_TOWER_4F_ITEM_2
; db POKEMON_TOWER_4F, $06, SHOW ; HS_POKEMON_TOWER_4F_ITEM_3
PokemonTower5FHS:
db POKEMON_TOWER_5F, $06, SHOW ; HS_POKEMON_TOWER_5F_ITEM
PokemonTower6FHS:
@ -518,7 +518,6 @@ SilphCo10FHS:
db SILPH_CO_10F, $03, SHOW ; HS_SILPH_CO_10F_3
db SILPH_CO_10F, $04, SHOW ; HS_SILPH_CO_10F_ITEM_1
db SILPH_CO_10F, $05, SHOW ; HS_SILPH_CO_10F_ITEM_2
db SILPH_CO_10F, $06, SHOW ; HS_SILPH_CO_10F_ITEM_3
SilphCo11FHS:
db SILPH_CO_11F, $03, SHOW ; HS_SILPH_CO_11F_1
db SILPH_CO_11F, $04, SHOW ; HS_SILPH_CO_11F_2
@ -586,8 +585,6 @@ SeafoamIslandsB4FHS:
db SEAFOAM_ISLANDS_B4F, $01, HIDE ; HS_SEAFOAM_ISLANDS_B4F_BOULDER_1
db SEAFOAM_ISLANDS_B4F, $02, HIDE ; HS_SEAFOAM_ISLANDS_B4F_BOULDER_2
db SEAFOAM_ISLANDS_B4F, $03, SHOW ; HS_ARTICUNO
VermilionDockHS:
db VERMILION_DOCK, $01, SHOW ; HS_OLD_SEA_MAP
FarawayIslandInsideHS:
db FARAWAY_ISLAND_INSIDE, $01, SHOW ; HS_MEW
PokemonMansionB2FHS:
@ -595,19 +592,11 @@ PokemonMansionB2FHS:
db POKEMON_MANSION_B2F, $04, SHOW ; HS_POKEMON_MANSION_B2F_ITEM_2
Route1HS:
db ROUTE_1, $03, HIDE ; HS_ROUTE_1_OAK
ViridianPreGymHS:
db VIRIDIAN_PRE_GYM, $01, SHOW ; HS_YUJIROU
db VIRIDIAN_PRE_GYM, $02, HIDE ; HS_YUJIROU_REMATCH
MtMoonCraterHS:
db MT_MOON_CRATER, $01, SHOW ; HS_MT_MOON_CRATER_ITEM_1
db MT_MOON_CRATER, $02, SHOW ; HS_MT_MOON_CRATER_ITEM_2
db MT_MOON_CRATER, $03, SHOW ; HS_MT_MOON_CRATER_ITEM_3
db MT_MOON_CRATER, $04, SHOW ; HS_MT_MOON_CRATER_ITEM_4
db MT_MOON_CRATER, $05, SHOW ; HS_MT_MOON_CRATER_ITEM_5
db MT_MOON_CRATER, $06, SHOW ; HS_MT_MOON_CRATER_ITEM_6
db MT_MOON_CRATER, $07, SHOW ; HS_MT_MOON_CRATER_ITEM_7
db MT_MOON_CRATER, $08, SHOW ; HS_MT_MOON_CRATER_ITEM_8
db MT_MOON_CRATER, $09, SHOW ; HS_MT_MOON_CRATER_ITEM_9
GiovannisRoomHS:
db GIOVANNIS_ROOM, $05, SHOW ; HS_GIOVANNIS_ROOM_ITEM_1
db GIOVANNIS_ROOM, $06, SHOW ; HS_GIOVANNIS_ROOM_ITEM_2
@ -618,5 +607,4 @@ RockTunnelB1FHS:
db ROCK_TUNNEL_B1F, $0D, SHOW ; HS_ROCK_TUNNEL_B1F_WING
MtMoonSquareHS:
db MT_MOON_SQUARE, $04, SHOW ; HS_MT_MOON_CRATER_GUARD
db $FF, $01, SHOW ; end
assert_table_length NUM_HS_OBJECTS + 1

View file

@ -8,14 +8,9 @@ MtMoonCrater_Object:
def_bg_events
def_object_events
object_event 20, 17, SPRITE_POKE_BALL, STAY, NONE, 1, BLK_AUGURITE
object_event 33, 17, SPRITE_FOSSIL, STAY, NONE, 2, DOME_FOSSIL
object_event 25, 21, SPRITE_FOSSIL, STAY, NONE, 3, WING_FOSSIL
object_event 33, 16, SPRITE_FOSSIL, STAY, NONE, 4, HELIX_FOSSIL
object_event 45, 24, SPRITE_POKE_BALL, STAY, NONE, 5, MAX_ETHER
object_event 44, 17, SPRITE_POKE_BALL, STAY, NONE, 6, MAX_REVIVE
object_event 17, 20, SPRITE_POKE_BALL, STAY, NONE, 7, HEART_STONE
object_event 20, 20, SPRITE_POKE_BALL, STAY, NONE, 8, POISON_STONE
object_event 32, 45, SPRITE_POKE_BALL, STAY, NONE, 9, MAX_ETHER
object_event 33, 17, SPRITE_FOSSIL, STAY, NONE, 1, DOME_FOSSIL
object_event 25, 21, SPRITE_FOSSIL, STAY, NONE, 2, WING_FOSSIL
object_event 33, 16, SPRITE_FOSSIL, STAY, NONE, 3, HELIX_FOSSIL
object_event 45, 24, SPRITE_POKE_BALL, STAY, NONE, 4, MAX_ETHER
def_warps_to MT_MOON_CRATER

View file

@ -11,8 +11,8 @@ PokemonTower4F_Object:
object_event 5, 10, SPRITE_CHANNELER, STAY, RIGHT, 1, OPP_CHANNELER, 9
object_event 15, 7, SPRITE_CHANNELER, STAY, DOWN, 2, OPP_CHANNELER, 10
object_event 14, 12, SPRITE_CHANNELER, STAY, LEFT, 3, OPP_CHANNELER, 12
object_event 12, 10, SPRITE_POKE_BALL, STAY, NONE, 4, ELIXER
object_event 9, 10, SPRITE_POKE_BALL, STAY, NONE, 5, AWAKENING
object_event 12, 16, SPRITE_POKE_BALL, STAY, NONE, 6, HP_UP
; object_event 12, 10, SPRITE_POKE_BALL, STAY, NONE, 4, ELIXER
; object_event 9, 10, SPRITE_POKE_BALL, STAY, NONE, 5, AWAKENING
; object_event 12, 16, SPRITE_POKE_BALL, STAY, NONE, 6, HP_UP
def_warps_to POKEMON_TOWER_4F

View file

@ -8,6 +8,5 @@ VermilionDock_Object:
def_bg_events
def_object_events
object_event 22, 0, SPRITE_POKE_BALL, STAY, NONE, 2, OLD_SEA_MAP
def_warps_to VERMILION_DOCK

View file

@ -138,7 +138,6 @@ PostGameSetup:
ObjectsToShow:
db HS_ROUTE_1_OAK ; Oak post-game fight
db HS_YUJIROU_REMATCH ; Yujirou rematch
db -1 ; end
ObjectsToHide:

View file

@ -1,19 +1,10 @@
MtMoonCrater_Script:
jp EnableAutoTextBoxDrawing
;ld a, [wMtMoonCraterCurScript]
;call ExecuteCurMapScriptInTable
;ld [wMtMoonCraterCurScript], a
;ret
MtMoonCrater_TextPointers:
dw PickUpItemText
dw PickUpItemText
dw PickUpItemText
dw PickUpItemText
dw PickUpItemText
dw PickUpItemText
dw PickUpItemText
dw PickUpItemText
dw PickUpItemText
text_end ; unused

View file

@ -16,9 +16,6 @@ PokemonTower4F_TextPointers:
dw PokemonTower4Text1
dw PokemonTower4Text2
dw PokemonTower4Text3
dw PickUpItemText
dw PickUpItemText
dw PickUpItemText
PokemonTower4TrainerHeaders:
def_trainers

View file

@ -213,7 +213,6 @@ VermilionDock_EraseSSAnne:
VermilionDock_TextPointers:
dw VermilionDockText1
dw PickUpItemText
VermilionDockText1:
text_far _VermilionDockText1

View file

@ -34,7 +34,6 @@ YujirouHasBeenBeaten:
ViridianPreGym_TextPointers:
dw YujirouText
dw YujirouHasBeenBeaten
dw YujirouRematch
dw ViridianPreGymText1
dw ViridianPreGymText2
dw ViridianPreGymGuide
@ -56,6 +55,9 @@ ViridianPreGymTrainerHeader1:
YujirouText:
text_asm
CheckEvent EVENT_POST_GAME_ATTAINED ; No need to view previous stuff
jr nz, .rematchMode
CheckEvent EVENT_BEAT_YUJIROU
jr nz, .YujirouBeaten
@ -82,6 +84,29 @@ YujirouText:
ld [wViridianPreGymCurScript], a
ld [wCurMapScript], a
jr .done
.rematchMode ; Rematch functionality. Just loads pre-battle text and his trainer.
ld hl, YujirouIntro2
call PrintText
ld c, BANK(Music_MeetMaleTrainer)
ld a, MUSIC_MEET_MALE_TRAINER
call PlayMusic
set 6, [hl]
set 7, [hl]
ldh a, [hSpriteIndex]
ld [wSpriteIndex], a
ld hl, YujirouLoseText2
ld de, YujirouWinText
call SaveEndBattleTextPointers
call EngageMapTrainer
ld a, OPP_BROCK
ld [wCurOpponent], a
ld a, 9
ld [wTrainerNo], a
ld a, 1
ld [wIsTrainerBattle], a
ld a, $1
ld [wGymLeaderNo], a
jr .done
.YujirouBeaten
ld hl, YujirouAfterBattleText
call PrintText
@ -105,36 +130,6 @@ YujirouAfterBattleText::
text_far _YujirouAfterBattleText
text_end
YujirouRematch:
text_asm
ld hl, YujirouIntro2
call PrintText
ld c, BANK(Music_MeetMaleTrainer)
ld a, MUSIC_MEET_MALE_TRAINER
call PlayMusic
ld hl, wd72d
set 6, [hl]
set 7, [hl]
call Delay3
ld a, OPP_YUJIROU
ld [wCurOpponent], a
ld a, 2
ld [wTrainerNo], a
ld [wIsTrainerBattle], a
ld a, $2
ld [wViridianPreGymCurScript], a
ld hl, YujirouLoseText2
ld de, YujirouWinText
call SaveEndBattleTextPointers
jp TextScriptEnd
jr .done
.done
ld hl, YujirouAfterBattleText2
call PrintText
jp TextScriptEnd
YujirouIntro2::
text_far _YujirouIntro2
text_end

View file

@ -19,5 +19,5 @@ _MtMoonSquareText1::
line "research is done,"
cont "only authorized"
cont "individuals may"
cont "enter the crater."
cont "enter the CRATER."
done