From c7510aea57cbaccd26bf10f248e7eb01057ca9a2 Mon Sep 17 00:00:00 2001 From: Llinos Evans <36418502+PlagueVonKarma@users.noreply.github.com> Date: Tue, 4 Apr 2023 20:56:48 +0100 Subject: [PATCH] TECHNOLOGY IS INCREDIBLE! With me moving the Trainer AI elsewhere, I was able to optimise the party stuff a little bit. There's a lot more space and from what I can tell it works fine. There are now three separate files - one for standard trainers, one for the rival & oak, and one for scaled parties (aka gym battles and related). This is mainly for organisational purposes. If I run out of space again, I'll rework the Trainer AI script to pull parties another way, storing the party files in individual banks. --- data/trainers/parties.asm | 204 +------------------------------ data/trainers/rival_parties.asm | 65 ++++++++++ data/trainers/scaled_parties.asm | 134 ++++++++++++++++++++ engine/battle/trainer_ai.asm | 2 + scripts/FightingDojo.asm | 21 +++- 5 files changed, 223 insertions(+), 203 deletions(-) create mode 100644 data/trainers/rival_parties.asm create mode 100644 data/trainers/scaled_parties.asm diff --git a/data/trainers/parties.asm b/data/trainers/parties.asm index 38f240b7..8d7a6d38 100644 --- a/data/trainers/parties.asm +++ b/data/trainers/parties.asm @@ -484,57 +484,6 @@ BirdKeeperData: db 29, PIDGEOTTO, FEAROW, 0 db 28, SPEAROW, DODUO, FEAROW, 0 -BlackbeltData: -; Koichi parties - unused to make space for rival teams -; db 12, MACHOP, HITMONLEE, HITMONCHAN, 0 ; 0 badges -; db 20, MACHOP, MANKEY, HITMONLEE, HITMONCHAN, 0 ; 1 -; db 24, MACHOKE, MANKEY, POLIWHIRL, HITMONLEE, HITMONCHAN, 0 ; 2 - db 30, MACHOKE, PRIMEAPE, POLIWHIRL, HITMONLEE, HITMONCHAN, 0 ; 3 -; db 40, MACHOKE, PRIMEAPE, POLIWHIRL, HITMONLEE, HITMONCHAN, 0 ; 4 -; db 42, MACHAMP, PRIMEAPE, POLIWRATH, HITMONLEE, HITMONCHAN, 0 ; 5 -; db 46, MACHAMP, ANNIHILAPE, POLIWRATH, HITMONLEE, HITMONCHAN, 0 ; 6 -; db 49, MACHAMP, ANNIHILAPE, POLIWRATH, HITMONLEE, HITMONCHAN, HITMONTOP, 0 ; 7 -; db 53, MACHAMP, ANNIHILAPE, POLIWRATH, HITMONLEE, HITMONCHAN, HITMONTOP, 0 ; 8 - db 67, MACHAMP, ANNIHILAPE, POLIWRATH, HITMONLEE, HITMONCHAN, HITMONTOP, 0 ; Silph Gauntlet -; Fighting Dojo Trainers - db 31, CHEEP, CHEEP, JABETTA, 0 - db 32, MACHOKE, MACHAMP, 0 - db 36, SIRFETCHD, 0 - db 31, MACHOP, MANKEY, PRIMEAPE, 0 -; Viridian Gym - changed to fit the Ground-type gym theme - db 40, GRAVELER, GOLEM, 0 - db 43, RHYDON, 0 - db 38, RHYHORN, ONIX, STEELIX, 0 -; Victory Road 2F - db 43, MACHOKE, MACHOP, MACHOKE, 0 - -Green1Data: - db 5, SQUIRTLE, 0 - db 5, BULBASAUR, 0 - db 5, CHARMANDER, 0 - db 5, EEVEE, 0 - db 5, PIKACHU, 0 -; Route 22 - db $FF, 9, PIDGEY, 8, SQUIRTLE, 0 - db $FF, 9, PIDGEY, 8, BULBASAUR, 0 - db $FF, 9, PIDGEY, 8, CHARMANDER, 0 - db $FF, 9, SPEAROW, 8, EEVEE, 0 - db $FF, 9, SPEAROW, 8, PIKACHU, 0 -; Cerulean City - char/squirt/bulba are now evolved - db $FF, 18, PIDGEOTTO, 15, ABRA, 15, RATTATA, 17, WARTORTLE, 0 - db $FF, 18, PIDGEOTTO, 15, ABRA, 15, RATTATA, 17, IVYSAUR, 0 - db $FF, 18, PIDGEOTTO, 15, ABRA, 15, RATTATA, 17, CHARMELEON, 0 - db $FF, 18, PIDGEOTTO, 15, ABRA, 15, RATTATA, 17, EEVEE, 0 - db $FF, 18, PIDGEOTTO, 15, ABRA, 15, RATTATA, 17, PIKACHU, 0 - -ProfOakData: -; Unused - db $FF, 66, TAUROS, 67, GYARADOS, 68, ARCANINE, 68, EXEGGUTOR, 70, NIDOKING, 70, TOTARTLE, 0 - db $FF, 66, TAUROS, 67, EXEGGUTOR, 68, GYARADOS, 68, ARCANINE, 70, NIDOKING, 70, VENUSAUR, 0 - db $FF, 66, TAUROS, 67, ARCANINE, 68, EXEGGUTOR, 68, GYARADOS, 70, NIDOKING, 70, CHARIZARD, 0 - db $FF, 66, TAUROS, 67, EXEGGUTOR, 68, GYARADOS, 68, ARCANINE, 70, NIDOKING, 70, ESPEON, 0 - db $FF, 66, TAUROS, 67, EXEGGUTOR, 68, GYARADOS, 68, ARCANINE, 70, NIDOKING, 70, GOROCHU, 0 - ChiefData: ; New - this will be used in the Silph Gauntlet db $FF, 73, MAGNEZONE, 72, LAPRAS, 73, SCIZOR, 73, EXEGGUTOR, 75, PORYGON2, 77, OMEGA, 0 @@ -566,14 +515,6 @@ ScientistData: ; Mansion B1F db 34, MAGNEMITE, ELECTRODE, 0 -GiovanniData: ; is not scaled as he is always fought last -; Rocket Hideout B4F - should be changed to Lavender Tower - db $FF, 27, RHYHORN, 26, DECILLA, 31, KANGASKHAN, 31, PERSIAN, 0 -; Silph Co. 11F - db $FF, 37, KANGASKHAN, 36, NIDORINO, 37, NIDOQUEEN, 40, PERSIAN, 42, RHYDON, 0 -; Viridian Gym - db $FF, 47, TRAMPEL, 46, DUGTRIO, 46, NIDOQUEEN, 48, PERSIAN, 48, NIDOKING, 50, RHYPERIOR, 0 - RocketData: ; Mt. Moon B2F db 13, RATTATA, BITTYBAT, 0 @@ -671,89 +612,6 @@ CooltrainerFData: ; db 45, NIDORINA, NIDOQUEEN, 0 ; db 43, PERSIAN, NINETALES, RAICHU, 0 -BrunoData: - db $FF, 54, HITMONTOP, 55, STEELIX, 55, POLIWRATH, 56, JABETTA, 56, PURAKKUSU, 58, MACHAMP, 0 -; post-game rematch team (currently unused) - ; db $FF, 74, STEELIX, 75, POLIWRATH, 75, SIRFETCHD, 76, PURAKKUSU, 76, MACHAMP, 78, ZAPDOS_G, 0 - -; gyms except giovanni begin here -BrockData: - db $FF, 10, GEODUDE, 11, DECILLA, 13, ONIX, 0 ; 0 badges - db $FF, 19, GEODUDE, 18, KABUTO, 19, DECILLA, 21, ONIX, 0 ; 1 - db $FF, 22, GRAVELER, 22, OMANYTE, 22, KABUTO, 23, DECILLA, 25, ONIX, 0 ; 2 - db $FF, 29, GRAVELER, 28, OMANYTE, 28, KABUTO, 29, DECILLA, 31, ONIX, 0 ; 3 - db $FF, 39, GOLEM, 38, OMANYTE, 38, KABUTO, 39, NIDOREIGN, 41, GYAOON, 0 ; 4 - db $FF, 41, GOLEM, 40, OMASTAR, 40, KABUTOPS, 41, NIDOREIGN, 43, GYAOON, 0 ; 5 - db $FF, 45, GOLEM, 44, OMASTAR, 44, KABUTOPS, 45, NIDOREIGN, 47, GYAOON, 0 ; 6 - ;db $FF, 47, GOLEM, 46, OMASTAR, 46, KABUTOPS, 48, NIDOREIGN, 48, KLEAVOR, 50, GYAOON, 0 ; 7 (unused) - db $FF, 66, GOLEM, 67, OMASTAR, 67, KABUTOPS, 66, NIDOREIGN, 67, KLEAVOR, 70, GYAOON, 0 ; 8 (postgame) - -MistyData: - db $FF, 10, HORSEA, 11, GYOPIN, 13, STARYU, 0 ; 0 badges - db $FF, 19, HORSEA, 18, CHEEP, 18, GOLDEEN, 19, WEIRDUCK, 21, STARMIE, 0 ; 1 - db $FF, 22, HORSEA, 22, CHEEP, 22, GOLDEEN, 23, WEIRDUCK, 25, STARMIE, 0 ; 2 - db $FF, 29, HORSEA, 28, JABETTA, 28, GOLDEEN, 29, WEIRDUCK, 31, STARMIE, 0 ; 3 - db $FF, 39, SEADRA, 38, JABETTA, 38, SEAKING, 39, GOLDUCK, 41, STARMIE, 0 ; 4 - db $FF, 41, SEADRA, 40, JABETTA, 40, SEAKING, 41, GOLDUCK, 43, STARMIE, 0 ; 5 - db $FF, 45, KINGDRA, 44, JABETTA, 44, SEAKING, 45, GOLDUCK, 47, STARMIE, 0 ; 6 - ;db $FF, 47, KINGDRA, 46, JABETTA, 46, SEAKING, 48, GOLDUCK, 48, JAGG, 50, STARMIE, 0 ; 7 (unused) - db $FF, 66, STARMIE, 67, VAPOREON, 67, GOLDUCK, 66, TOTARTLE, 67, JAGG, 70, GYARADOS, 0 ; 8 (postgame) - -LtSurgeData: - db $FF, 10, VOLTORB, 10, KOTORA, 11, PIKACHU, 0 ; 0 badges - db $FF, 19, VOLTORB, 18, KOTORA, 18, PIKACHU, 19, MAGNETITE, 21, ELECTABUZZ, 0 ; 1 - db $FF, 22, VOLTORB, 22, GAOTORA, 22, MAGNETITE, 23, ELECTABUZZ, 25, GOROCHU, 0 ; 2 - db $FF, 28, ELECTRODE, 28, GAOTORA, 28, MAGNETITE, 29, ELECTABUZZ, 31, GOROCHU, 0 ; 3 - db $FF, 39, ELECTRODE, 38, GOROTORA, 38, MAGNETON, 39, ELECTABUZZ, 41, GOROCHU, 0 ; 4 - db $FF, 41, ELECTRODE, 40, GOROTORA, 40, MAGNETON, 41, ELECTABUZZ, 43, GOROCHU, 0 ; 5 - db $FF, 45, ELECTRODE, 44, GOROTORA, 44, MAGNEZONE, 45, ELECTIVIRE, 47, GOROCHU, 0 ; 6 - ;db $FF, 47, ELECTRODE, 46, GOROTORA, 46, MAGNEZONE, 48, ELECTIVIRE, 48, JOLTEON, 50, GOROCHU, 0 ; 7 (unused) - db $FF, 66, GOROTORA, 67, ELECTIVIRE, 67, JOLTEON, 66, SANDY_SHOCKS, 67, GOROCHU, 70, ZAPDOS, 0 ; 8 (postgame) - -ErikaData: - db $FF, 10, BELLSPROUT, 10, PARAS, 11, MONJA, 13, GLOOM, 0 ; 0 badges - db $FF, 19, BELLSPROUT, 18, PARAS, 18, TOEDSCOOL, 19, TANGELA, 21, GLOOM, 0 ; 1 - db $FF, 22, BELLSPROUT, 22, PARASECT, 22, TOEDSCOOL, 23, TANGELA, 25, GLOOM, 0 ; 2 - db $FF, 28, WEEPINBELL, 28, PARASECT, 28, CACTUS, 29, TANGELA, 31, BELLOSSOM, 0 ; 3 - db $FF, 38, VICTREEBEL, 38, BELLOSSOM, 39, TOEDSCRUEL, 39, CACTUS, 41, TANGROWTH, 0 ; 4 - db $FF, 40, VICTREEBEL, 40, BELLOSSOM, 41, TOEDSCRUEL, 41, CACTUS, 43, TANGROWTH, 0 ; 5 - db $FF, 44, VICTREEBEL, 44, BELLOSSOM, 45, TOEDSCRUEL, 45, CACTUS, 47, TANGROWTH, 0 ; 6 - ;db $FF, 46, VICTREEBEL, 46, BELLOSSOM, 47, TOEDSCRUEL, 48, CACTUS, 48, EXEGGUTOR, 50, TANGROWTH, 0 ; 7 (unused) - db $FF, 66, TOEDSCRUEL, 67, BELLOSSOM, 67, EXEGGUTOR, 66, VENUSAUR, 67, LEAFEON, 70, TANGROWTH, 0 ; 8 (postgame) - -KogaData: - db $FF, 10, VENONAT, 10, GRIMER, 11, KOFFING, 13, NIDORINO, 0 ; 0 badges - db $FF, 19, ZUBAT, 18, VENONAT, 18, GRIMER, 19, KOFFING, 21, NIDORINO, 0 ; 1 - db $FF, 22, ZUBAT, 22, NIDORINO, 22, GRIMER, 23, KOFFING, 25, VENOMOTH, 0 ; 2 - db $FF, 28, GOLBAT, 28, NIDORINO, 28, GRIMER, 29, KOFFING, 31, VENOMOTH, 0 ; 3 - db $FF, 38, TENTACRUEL, 39, VENOMOTH, 38, MUK, 39, WEEZING, 41, CROBAT, 0 ; 4 - db $FF, 40, TENTACRUEL, 41, VENOMOTH, 40, MUK, 41, WEEZING, 43, CROBAT, 0 ; 5 - db $FF, 44, TENTACRUEL, 45, VENOMOTH, 44, MUK, 45, WEEZING, 47, CROBAT, 0 ; 6 - ;db $FF, 46, TENTACRUEL, 46, NIDOKING, 47, VENOMOTH, 48, MUK, 48, WEEZING, 50, CROBAT, 0 ; 7 - db $FF, 66, TENTACRUEL, 67, NIDOKING, 66, TSUBOMITTO, 67, MUK, 67, WEEZING, 70, CROBAT, 0 ; 8 (postgame) - -BlaineData: - db $FF, 10, GROWLITHE, 10, VULPIX, 11, CHARMANDER, 13, PONYTA, 0 ; 0 badges (unused?) - db $FF, 19, PONYTA, 18, VULPIX, 18, GROWLITHE, 19, CHARMELEON, 21, MAGMAR, 0 ; 1 - db $FF, 22, PONYTA, 22, VULPIX, 22, GROWLITHE, 23, CHARMELEON, 25, MAGMAR, 0 ; 2 - db $FF, 28, PONYTA, 28, VULPIX, 28, GROWLITHE, 29, FLAREON, 31, MAGMAR, 0 ; 3 - db $FF, 38, PONYTA, 39, NINETALES, 38, FLAREON, 39, ARCANINE, 41, MAGMORTAR, 0 ; 4 - db $FF, 41, RAPIDASH, 40, NINETALES, 40, FLAREON, 41, ARCANINE, 43, MAGMORTAR, 0 ; 5 - db $FF, 45, RAPIDASH, 44, NINETALES, 44, FLAREON, 45, ARCANINE, 47, MAGMORTAR, 0 ; 6 - ;db $FF, 47, RAPIDASH, 46, NINETALES, 46, FLAREON, 48, CHARIZARD, 48, ARCANINE, 50, MAGMORTAR, 0 ; 7 (unused) - db $FF, 66, NINETALES, 67, RAPIDASH, 67, ARCANINE, 66, CHARIZARD, 67, MAGMORTAR, 70, MOLTRES, 0 ; 8 (postgame) - -SabrinaData: - db $FF, 10, DROWZEE, 10, SLOWPOKE, 11, EXEGGCUTE, 13, KADABRA, 0 ; 0 badges - db $FF, 19, DROWZEE, 18, SLOWPOKE, 18, EXEGGCUTE, 19, KADABRA, 21, MR_MIME, 0 ; 1 - db $FF, 22, DROWZEE, 22, SLOWPOKE, 22, EXEGGCUTE, 23, KADABRA, 25, MR_MIME, 0 ; 2 - db $FF, 28, MR_MIME, 28, SLOWPOKE, 28, EXEGGCUTE, 29, HYPNO, 31, ALAKAZAM, 0 ; 3 - db $FF, 38, ESPEON, 39, MR_MIME, 38, SLOWKING, 39, HYPNO, 41, ALAKAZAM, 0 ; 4 - db $FF, 40, ESPEON, 41, MR_MIME, 40, SLOWKING, 41, HYPNO, 43, ALAKAZAM, 0 ; 5 - db $FF, 44, ESPEON, 45, MR_RIME, 44, SLOWKING, 45, HYPNO, 47, ALAKAZAM, 0 ; 6 - ;db $FF, 46, ESPEON, 47, MR_RIME, 46, SLOWKING, 48, EXEGGUTOR, 48, HYPNO, 50, ALAKAZAM, 0 ; 7 (unused) - ; db $FF, 66, ESPEON, 67, SLOWKING, 67, HYPNO, 66, SCREAM_TAIL, 67, ALAKAZAM, 70, ARTICUNO_G, 0 ; 8 (postgame) - GentlemanData: ; SS Anne 1F Rooms db 18, GROWLITHE, GROWLITHE, 0 @@ -765,50 +623,6 @@ GentlemanData: ; SS Anne 2F Rooms db 17, GROWLITHE, PONYTA, 0 -Green2Data: -; SS Anne 2F - db $FF, 19, PIDGEOTTO, 16, RATICATE, 18, KADABRA, 20, WARTORTLE, 0 - db $FF, 19, PIDGEOTTO, 16, RATICATE, 18, KADABRA, 20, IVYSAUR, 0 - db $FF, 19, PIDGEOTTO, 16, RATICATE, 18, KADABRA, 20, CHARMELEON, 0 - db $FF, 19, SPEAROW, 16, SANDSHREW, 18, RATTATA, 20, EEVEE, 0 - db $FF, 19, SPEAROW, 16, SANDSHREW, 18, RATTATA, 20, RAICHU, 0 -; Pokémon Tower 2F - db $FF, 25, PIDGEOTTO, 23, GROWLITHE, 22, EXEGGCUTE, 20, KADABRA, 25, WARTORTLE, 0 - db $FF, 25, PIDGEOTTO, 23, GYARADOS, 22, GROWLITHE, 20, KADABRA, 25, IVYSAUR, 0 - db $FF, 25, PIDGEOTTO, 23, EXEGGCUTE, 22, GYARADOS, 20, KADABRA, 25, CHARMELEON, 0 - db $FF, 25, FEAROW, 23, VULPIX, 22, MAGNETITE, 20, SANDSHREW, 25, EEVEE, 0 - db $FF, 25, FEAROW, 23, SHELLDER, 22, VULPIX, 20, SANDSHREW, 25, RAICHU, 0 -; Silph Co. 7F - db $FF, 37, PIDGEOT, 38, GROWLITHE, 35, EXEGGCUTE, 35, ALAKAZAM, 40, TOTARTLE, 0 - db $FF, 37, PIDGEOT, 38, GYARADOS, 35, GROWLITHE, 35, ALAKAZAM, 40, VENUSAUR, 0 - db $FF, 37, PIDGEOT, 38, EXEGGCUTE, 35, GYARADOS, 35, ALAKAZAM, 40, CHARIZARD, 0 - db $FF, 38, SANDSLASH, 35, MAGNETON, 37, NINETALES, 35, KADABRA, 40, UMBREON, 0 - db $FF, 38, SANDSLASH, 35, CLOYSTER, 37, NINETALES, 35, KADABRA, 40, GOROCHU, 0 -; Route 22 - db $FF, 47, MADAAMU, 45, RHYDON, 45, GROWLITHE, 47, EXEGGCUTE, 50, ALAKAZAM, 53, TOTARTLE, 0 - db $FF, 47, MADAAMU, 45, RHYDON, 45, GYARADOS, 47, GROWLITHE, 50, ALAKAZAM, 53, VENUSAUR, 0 - db $FF, 47, MADAAMU, 45, RHYDON, 45, EXEGGCUTE, 47, GYARADOS, 50, ALAKAZAM, 53, CHARIZARD, 0 - db $FF, 47, SANDSLASH, 45, EXEGGCUTE, 45, MAGNEZONE, 47, NINETALES, 50, ALAKAZAM, 53, UMBREON, 0 - db $FF, 47, SANDSLASH, 45, EXEGGCUTE, 45, CLOYSTER, 47, NINETALES, 50, ALAKAZAM, 53, GOROCHU, 0 - -Green3Data: - db $FF, 61, MADAAMU, 59, ALAKAZAM, 61, RHYPERIOR, 61, ARCANINE, 63, EXEGGUTOR, 65, TOTARTLE, 0 - db $FF, 61, MADAAMU, 59, ALAKAZAM, 61, RHYPERIOR, 61, GYARADOS, 63, ARCANINE, 65, VENUSAUR, 0 - db $FF, 61, MADAAMU, 59, ALAKAZAM, 61, RHYPERIOR, 61, EXEGGUTOR, 63, GYARADOS, 65, CHARIZARD, 0 - db $FF, 61, SANDSLASH, 59, ALAKAZAM, 61, EXEGGUTOR, 61, MAGNEZONE, 63, NINETALES, 65, UMBREON, 0 ; Ninetales-Alola once added. - db $FF, 61, SANDSLASH, 59, ALAKAZAM, 61, EXEGGUTOR, 61, CLOYSTER, 63, NINETALES, 65, GOROCHU, 0 -; post-game rematch teams (currently unused) - ; db $FF, 81, SCIZOR, 79, ALAKAZAM, 81, GOROCHU, 81, ARCANINE, 83, SNORLAX, 85, TOTARTLE, 0 - ; db $FF, 81, SCIZOR, 79, ALAKAZAM, 81, RHYPERIOR, 81, GYARADOS, 83, MAGMORTAR, 85, VENUSAUR, 0 - ; db $FF, 81, SCIZOR, 79, GOROCHU, 81, RHYPERIOR, 81, EXEGGUTOR, 83, CRYITHAN, 85, CHARIZARD, 0 - ;db $FF, 61, SANDSLASH, 59, ALAKAZAM, 61, EXEGGUTOR, 61, MAGNEZONE, 63, NINETALES, 65, UMBREON, 0 ; Ninetales-Alola once added. - ;db $FF, 61, SANDSLASH, 59, ALAKAZAM, 61, EXEGGUTOR, 61, CLOYSTER, 63, NINETALES, 65, GOROCHU, 0 - -LoreleiData: - db $FF, 54, DEWGONG, 53, CLOYSTER, 54, GLACEON, 55, JYNX, 55, BUU, 56, LAPRAS, 0 -; post-game rematch team (currently unused) - ; db $FF, 74, DEWGONG, 73, CLOYSTER, 74, GLACEON, 75, MR_RIME, 75, LAPRAS, 76, ARTICUNO, 0 - ChannelerData: ; Unused ; db 22, GASTLY, 0 @@ -848,21 +662,6 @@ ChannelerData: db 38, HAUNTER, 0 db 33, GASTLY, GASTLY, HAUNTER, 0 -AgathaData: - db $FF, 57, CROAKOZUNA, 56, CROBAT, 56, ANNIHILAPE, 58, UMBREON, 58, ARBOK, 60, GENGAR, 0 -; post-game rematch team (currently unused) - ; db $FF, 77, ANNIHILAPE, 76, MAROWAK_A, 76, UMBREON, 78, CROBAT, 78, GENGAR, 80, MOLTRES_G, 0 - -LanceData: - db $FF, 58, CROCKY, 57, KINGDRA, 57, AERODACTYL, 59, CHARIZARD, 59, CRYITHAN, 62, DRAGONITE, 0 -; post-game rematch team (currently unused) - ; db $FF, 78, CROCKY, 77, KINGDRA, 77, AERODACTYL, 79, EXEGGUTOR_A, 79, CRYITHAN, 82, DRAGONITE, 0 - -YujirouData: ; was unused juggler - db $FF, 7, KONYA, 7, RATTATA, 10, LICKITUNG, 0 -; post-game rematch team (currently unused) - db $FF, 66, PERSIAN, 67, TAUROS, 67, MADAAMU, 66, BLISSEY, 67, SNORLAX, 70, LICKILICKY, 0 - StudentData: FirefighterData: @@ -870,3 +669,6 @@ FirefighterData: JuniorData: JackData: + +INCLUDE "data/trainers/scaled_parties.asm" +INCLUDE "data/trainers/rival_parties.asm" \ No newline at end of file diff --git a/data/trainers/rival_parties.asm b/data/trainers/rival_parties.asm new file mode 100644 index 00000000..00594d5c --- /dev/null +++ b/data/trainers/rival_parties.asm @@ -0,0 +1,65 @@ +Green1Data: + db 5, SQUIRTLE, 0 + db 5, BULBASAUR, 0 + db 5, CHARMANDER, 0 + db 5, EEVEE, 0 + db 5, PIKACHU, 0 +; Route 22 + db $FF, 9, PIDGEY, 8, SQUIRTLE, 0 + db $FF, 9, PIDGEY, 8, BULBASAUR, 0 + db $FF, 9, PIDGEY, 8, CHARMANDER, 0 + db $FF, 9, SPEAROW, 8, EEVEE, 0 + db $FF, 9, SPEAROW, 8, PIKACHU, 0 +; Cerulean City - char/squirt/bulba are now evolved + db $FF, 18, PIDGEOTTO, 15, ABRA, 15, RATTATA, 17, WARTORTLE, 0 + db $FF, 18, PIDGEOTTO, 15, ABRA, 15, RATTATA, 17, IVYSAUR, 0 + db $FF, 18, PIDGEOTTO, 15, ABRA, 15, RATTATA, 17, CHARMELEON, 0 + db $FF, 18, PIDGEOTTO, 15, ABRA, 15, RATTATA, 17, EEVEE, 0 + db $FF, 18, PIDGEOTTO, 15, ABRA, 15, RATTATA, 17, PIKACHU, 0 + +Green2Data: +; SS Anne 2F + db $FF, 19, PIDGEOTTO, 16, RATICATE, 18, KADABRA, 20, WARTORTLE, 0 + db $FF, 19, PIDGEOTTO, 16, RATICATE, 18, KADABRA, 20, IVYSAUR, 0 + db $FF, 19, PIDGEOTTO, 16, RATICATE, 18, KADABRA, 20, CHARMELEON, 0 + db $FF, 19, SPEAROW, 16, SANDSHREW, 18, RATTATA, 20, EEVEE, 0 + db $FF, 19, SPEAROW, 16, SANDSHREW, 18, RATTATA, 20, RAICHU, 0 +; Pokémon Tower 2F + db $FF, 25, PIDGEOTTO, 23, GROWLITHE, 22, EXEGGCUTE, 20, KADABRA, 25, WARTORTLE, 0 + db $FF, 25, PIDGEOTTO, 23, GYARADOS, 22, GROWLITHE, 20, KADABRA, 25, IVYSAUR, 0 + db $FF, 25, PIDGEOTTO, 23, EXEGGCUTE, 22, GYARADOS, 20, KADABRA, 25, CHARMELEON, 0 + db $FF, 25, FEAROW, 23, VULPIX, 22, MAGNETITE, 20, SANDSHREW, 25, EEVEE, 0 + db $FF, 25, FEAROW, 23, SHELLDER, 22, VULPIX, 20, SANDSHREW, 25, RAICHU, 0 +; Silph Co. 7F + db $FF, 37, PIDGEOT, 38, GROWLITHE, 35, EXEGGCUTE, 35, ALAKAZAM, 40, TOTARTLE, 0 + db $FF, 37, PIDGEOT, 38, GYARADOS, 35, GROWLITHE, 35, ALAKAZAM, 40, VENUSAUR, 0 + db $FF, 37, PIDGEOT, 38, EXEGGCUTE, 35, GYARADOS, 35, ALAKAZAM, 40, CHARIZARD, 0 + db $FF, 38, SANDSLASH, 35, MAGNETON, 37, NINETALES, 35, KADABRA, 40, UMBREON, 0 + db $FF, 38, SANDSLASH, 35, CLOYSTER, 37, NINETALES, 35, KADABRA, 40, GOROCHU, 0 +; Route 22 + db $FF, 47, MADAAMU, 45, RHYDON, 45, GROWLITHE, 47, EXEGGCUTE, 50, ALAKAZAM, 53, TOTARTLE, 0 + db $FF, 47, MADAAMU, 45, RHYDON, 45, GYARADOS, 47, GROWLITHE, 50, ALAKAZAM, 53, VENUSAUR, 0 + db $FF, 47, MADAAMU, 45, RHYDON, 45, EXEGGCUTE, 47, GYARADOS, 50, ALAKAZAM, 53, CHARIZARD, 0 + db $FF, 47, SANDSLASH, 45, EXEGGCUTE, 45, MAGNEZONE, 47, NINETALES, 50, ALAKAZAM, 53, UMBREON, 0 + db $FF, 47, SANDSLASH, 45, EXEGGCUTE, 45, CLOYSTER, 47, NINETALES, 50, ALAKAZAM, 53, GOROCHU, 0 + +Green3Data: + db $FF, 61, MADAAMU, 59, ALAKAZAM, 61, RHYPERIOR, 61, ARCANINE, 63, EXEGGUTOR, 65, TOTARTLE, 0 + db $FF, 61, MADAAMU, 59, ALAKAZAM, 61, RHYPERIOR, 61, GYARADOS, 63, ARCANINE, 65, VENUSAUR, 0 + db $FF, 61, MADAAMU, 59, ALAKAZAM, 61, RHYPERIOR, 61, EXEGGUTOR, 63, GYARADOS, 65, CHARIZARD, 0 + db $FF, 61, SANDSLASH, 59, ALAKAZAM, 61, EXEGGUTOR, 61, MAGNEZONE, 63, NINETALES, 65, UMBREON, 0 ; Ninetales-Alola once added. + db $FF, 61, SANDSLASH, 59, ALAKAZAM, 61, EXEGGUTOR, 61, CLOYSTER, 63, NINETALES, 65, GOROCHU, 0 +; post-game rematch teams (currently unused) + ; db $FF, 81, SCIZOR, 79, ALAKAZAM, 81, GOROCHU, 81, ARCANINE, 83, SNORLAX, 85, TOTARTLE, 0 + ; db $FF, 81, SCIZOR, 79, ALAKAZAM, 81, RHYPERIOR, 81, GYARADOS, 83, MAGMORTAR, 85, VENUSAUR, 0 + ; db $FF, 81, SCIZOR, 79, GOROCHU, 81, RHYPERIOR, 81, EXEGGUTOR, 83, CRYITHAN, 85, CHARIZARD, 0 + ;db $FF, 61, SANDSLASH, 59, ALAKAZAM, 61, EXEGGUTOR, 61, MAGNEZONE, 63, NINETALES, 65, UMBREON, 0 ; Ninetales-Alola once added. + ;db $FF, 61, SANDSLASH, 59, ALAKAZAM, 61, EXEGGUTOR, 61, CLOYSTER, 63, NINETALES, 65, GOROCHU, 0 + +ProfOakData: +; Unused + db $FF, 66, TAUROS, 67, GYARADOS, 68, ARCANINE, 68, EXEGGUTOR, 70, NIDOKING, 70, TOTARTLE, 0 + db $FF, 66, TAUROS, 67, EXEGGUTOR, 68, GYARADOS, 68, ARCANINE, 70, NIDOKING, 70, VENUSAUR, 0 + db $FF, 66, TAUROS, 67, ARCANINE, 68, EXEGGUTOR, 68, GYARADOS, 70, NIDOKING, 70, CHARIZARD, 0 + db $FF, 66, TAUROS, 67, EXEGGUTOR, 68, GYARADOS, 68, ARCANINE, 70, NIDOKING, 70, ESPEON, 0 + db $FF, 66, TAUROS, 67, EXEGGUTOR, 68, GYARADOS, 68, ARCANINE, 70, NIDOKING, 70, GOROCHU, 0 diff --git a/data/trainers/scaled_parties.asm b/data/trainers/scaled_parties.asm new file mode 100644 index 00000000..7efc51ee --- /dev/null +++ b/data/trainers/scaled_parties.asm @@ -0,0 +1,134 @@ +; gyms except giovanni begin here +BrockData: + db $FF, 10, GEODUDE, 11, DECILLA, 13, ONIX, 0 ; 0 badges + db $FF, 19, GEODUDE, 18, KABUTO, 19, DECILLA, 21, ONIX, 0 ; 1 + db $FF, 22, GRAVELER, 22, OMANYTE, 22, KABUTO, 23, DECILLA, 25, ONIX, 0 ; 2 + db $FF, 29, GRAVELER, 28, OMANYTE, 28, KABUTO, 29, DECILLA, 31, ONIX, 0 ; 3 + db $FF, 39, GOLEM, 38, OMANYTE, 38, KABUTO, 39, NIDOREIGN, 41, GYAOON, 0 ; 4 + db $FF, 41, GOLEM, 40, OMASTAR, 40, KABUTOPS, 41, NIDOREIGN, 43, GYAOON, 0 ; 5 + db $FF, 45, GOLEM, 44, OMASTAR, 44, KABUTOPS, 45, NIDOREIGN, 47, GYAOON, 0 ; 6 + db $FF, 47, GOLEM, 46, OMASTAR, 46, KABUTOPS, 48, NIDOREIGN, 48, KLEAVOR, 50, GYAOON, 0 ; 7 (unused) + db $FF, 66, GOLEM, 67, OMASTAR, 67, KABUTOPS, 66, NIDOREIGN, 67, KLEAVOR, 70, GYAOON, 0 ; 8 (postgame) + +MistyData: + db $FF, 10, HORSEA, 11, GYOPIN, 13, STARYU, 0 ; 0 badges + db $FF, 19, HORSEA, 18, CHEEP, 18, GOLDEEN, 19, WEIRDUCK, 21, STARMIE, 0 ; 1 + db $FF, 22, HORSEA, 22, CHEEP, 22, GOLDEEN, 23, WEIRDUCK, 25, STARMIE, 0 ; 2 + db $FF, 29, HORSEA, 28, JABETTA, 28, GOLDEEN, 29, WEIRDUCK, 31, STARMIE, 0 ; 3 + db $FF, 39, SEADRA, 38, JABETTA, 38, SEAKING, 39, GOLDUCK, 41, STARMIE, 0 ; 4 + db $FF, 41, SEADRA, 40, JABETTA, 40, SEAKING, 41, GOLDUCK, 43, STARMIE, 0 ; 5 + db $FF, 45, KINGDRA, 44, JABETTA, 44, SEAKING, 45, GOLDUCK, 47, STARMIE, 0 ; 6 + db $FF, 47, KINGDRA, 46, JABETTA, 46, SEAKING, 48, GOLDUCK, 48, JAGG, 50, STARMIE, 0 ; 7 (unused) + db $FF, 66, STARMIE, 67, VAPOREON, 67, GOLDUCK, 66, TOTARTLE, 67, JAGG, 70, GYARADOS, 0 ; 8 (postgame) + +LtSurgeData: + db $FF, 10, VOLTORB, 10, KOTORA, 11, PIKACHU, 0 ; 0 badges + db $FF, 19, VOLTORB, 18, KOTORA, 18, PIKACHU, 19, MAGNETITE, 21, ELECTABUZZ, 0 ; 1 + db $FF, 22, VOLTORB, 22, GAOTORA, 22, MAGNETITE, 23, ELECTABUZZ, 25, GOROCHU, 0 ; 2 + db $FF, 28, ELECTRODE, 28, GAOTORA, 28, MAGNETITE, 29, ELECTABUZZ, 31, GOROCHU, 0 ; 3 + db $FF, 39, ELECTRODE, 38, GOROTORA, 38, MAGNETON, 39, ELECTABUZZ, 41, GOROCHU, 0 ; 4 + db $FF, 41, ELECTRODE, 40, GOROTORA, 40, MAGNETON, 41, ELECTABUZZ, 43, GOROCHU, 0 ; 5 + db $FF, 45, ELECTRODE, 44, GOROTORA, 44, MAGNEZONE, 45, ELECTIVIRE, 47, GOROCHU, 0 ; 6 + db $FF, 47, ELECTRODE, 46, GOROTORA, 46, MAGNEZONE, 48, ELECTIVIRE, 48, JOLTEON, 50, GOROCHU, 0 ; 7 (unused) + db $FF, 66, GOROTORA, 67, ELECTIVIRE, 67, JOLTEON, 66, SANDY_SHOCKS, 67, GOROCHU, 70, ZAPDOS, 0 ; 8 (postgame) + +ErikaData: + db $FF, 10, BELLSPROUT, 10, PARAS, 11, MONJA, 13, GLOOM, 0 ; 0 badges + db $FF, 19, BELLSPROUT, 18, PARAS, 18, TOEDSCOOL, 19, TANGELA, 21, GLOOM, 0 ; 1 + db $FF, 22, BELLSPROUT, 22, PARASECT, 22, TOEDSCOOL, 23, TANGELA, 25, GLOOM, 0 ; 2 + db $FF, 28, WEEPINBELL, 28, PARASECT, 28, CACTUS, 29, TANGELA, 31, BELLOSSOM, 0 ; 3 + db $FF, 38, VICTREEBEL, 38, BELLOSSOM, 39, TOEDSCRUEL, 39, CACTUS, 41, TANGROWTH, 0 ; 4 + db $FF, 40, VICTREEBEL, 40, BELLOSSOM, 41, TOEDSCRUEL, 41, CACTUS, 43, TANGROWTH, 0 ; 5 + db $FF, 44, VICTREEBEL, 44, BELLOSSOM, 45, TOEDSCRUEL, 45, CACTUS, 47, TANGROWTH, 0 ; 6 + db $FF, 46, VICTREEBEL, 46, BELLOSSOM, 47, TOEDSCRUEL, 48, CACTUS, 48, EXEGGUTOR, 50, TANGROWTH, 0 ; 7 (unused) + db $FF, 66, TOEDSCRUEL, 67, BELLOSSOM, 67, EXEGGUTOR, 66, VENUSAUR, 67, LEAFEON, 70, TANGROWTH, 0 ; 8 (postgame) + +KogaData: + db $FF, 10, VENONAT, 10, GRIMER, 11, KOFFING, 13, NIDORINO, 0 ; 0 badges + db $FF, 19, ZUBAT, 18, VENONAT, 18, GRIMER, 19, KOFFING, 21, NIDORINO, 0 ; 1 + db $FF, 22, ZUBAT, 22, NIDORINO, 22, GRIMER, 23, KOFFING, 25, VENOMOTH, 0 ; 2 + db $FF, 28, GOLBAT, 28, NIDORINO, 28, GRIMER, 29, KOFFING, 31, VENOMOTH, 0 ; 3 + db $FF, 38, TENTACRUEL, 39, VENOMOTH, 38, MUK, 39, WEEZING, 41, CROBAT, 0 ; 4 + db $FF, 40, TENTACRUEL, 41, VENOMOTH, 40, MUK, 41, WEEZING, 43, CROBAT, 0 ; 5 + db $FF, 44, TENTACRUEL, 45, VENOMOTH, 44, MUK, 45, WEEZING, 47, CROBAT, 0 ; 6 + db $FF, 46, TENTACRUEL, 46, NIDOKING, 47, VENOMOTH, 48, MUK, 48, WEEZING, 50, CROBAT, 0 ; 7 + db $FF, 66, TENTACRUEL, 67, NIDOKING, 66, TSUBOMITTO, 67, MUK, 67, WEEZING, 70, CROBAT, 0 ; 8 (postgame) + +BlaineData: + db $FF, 10, GROWLITHE, 10, VULPIX, 11, CHARMANDER, 13, PONYTA, 0 ; 0 badges (unused?) + db $FF, 19, PONYTA, 18, VULPIX, 18, GROWLITHE, 19, CHARMELEON, 21, MAGMAR, 0 ; 1 + db $FF, 22, PONYTA, 22, VULPIX, 22, GROWLITHE, 23, CHARMELEON, 25, MAGMAR, 0 ; 2 + db $FF, 28, PONYTA, 28, VULPIX, 28, GROWLITHE, 29, FLAREON, 31, MAGMAR, 0 ; 3 + db $FF, 38, PONYTA, 39, NINETALES, 38, FLAREON, 39, ARCANINE, 41, MAGMORTAR, 0 ; 4 + db $FF, 41, RAPIDASH, 40, NINETALES, 40, FLAREON, 41, ARCANINE, 43, MAGMORTAR, 0 ; 5 + db $FF, 45, RAPIDASH, 44, NINETALES, 44, FLAREON, 45, ARCANINE, 47, MAGMORTAR, 0 ; 6 + db $FF, 47, RAPIDASH, 46, NINETALES, 46, FLAREON, 48, CHARIZARD, 48, ARCANINE, 50, MAGMORTAR, 0 ; 7 (unused) + db $FF, 66, NINETALES, 67, RAPIDASH, 67, ARCANINE, 66, CHARIZARD, 67, MAGMORTAR, 70, MOLTRES, 0 ; 8 (postgame) + +SabrinaData: + db $FF, 10, DROWZEE, 10, SLOWPOKE, 11, EXEGGCUTE, 13, KADABRA, 0 ; 0 badges + db $FF, 19, DROWZEE, 18, SLOWPOKE, 18, EXEGGCUTE, 19, KADABRA, 21, MR_MIME, 0 ; 1 + db $FF, 22, DROWZEE, 22, SLOWPOKE, 22, EXEGGCUTE, 23, KADABRA, 25, MR_MIME, 0 ; 2 + db $FF, 28, MR_MIME, 28, SLOWPOKE, 28, EXEGGCUTE, 29, HYPNO, 31, ALAKAZAM, 0 ; 3 + db $FF, 38, ESPEON, 39, MR_MIME, 38, SLOWKING, 39, HYPNO, 41, ALAKAZAM, 0 ; 4 + db $FF, 40, ESPEON, 41, MR_MIME, 40, SLOWKING, 41, HYPNO, 43, ALAKAZAM, 0 ; 5 + db $FF, 44, ESPEON, 45, MR_RIME, 44, SLOWKING, 45, HYPNO, 47, ALAKAZAM, 0 ; 6 + db $FF, 46, ESPEON, 47, MR_RIME, 46, SLOWKING, 48, EXEGGUTOR, 48, HYPNO, 50, ALAKAZAM, 0 ; 7 (unused) + db $FF, 66, ESPEON, 67, SLOWKING, 67, HYPNO, 66, SCREAM_TAIL, 67, ALAKAZAM, 70, ARTICUNO_G, 0 ; 8 (postgame) + +GiovanniData: ; is not scaled as he is always fought last +; Rocket Hideout B4F - should be changed to Lavender Tower + db $FF, 27, RHYHORN, 26, DECILLA, 31, KANGASKHAN, 31, PERSIAN, 0 +; Silph Co. 11F + db $FF, 37, KANGASKHAN, 36, NIDORINO, 37, NIDOQUEEN, 40, PERSIAN, 42, RHYDON, 0 +; Viridian Gym + db $FF, 47, TRAMPEL, 46, DUGTRIO, 46, NIDOQUEEN, 48, PERSIAN, 48, NIDOKING, 50, RHYPERIOR, 0 + +LoreleiData: + db $FF, 54, DEWGONG, 53, CLOYSTER, 54, GLACEON, 55, JYNX, 55, BUU, 56, LAPRAS, 0 +; post-game rematch team (currently unused) + db $FF, 74, DEWGONG, 73, CLOYSTER, 74, GLACEON, 75, MR_RIME, 75, LAPRAS, 76, ARTICUNO, 0 + +BrunoData: + db $FF, 54, HITMONTOP, 55, STEELIX, 55, POLIWRATH, 56, JABETTA, 56, PURAKKUSU, 58, MACHAMP, 0 +; post-game rematch team (currently unused) + db $FF, 74, STEELIX, 75, POLIWRATH, 75, SIRFETCHD, 76, PURAKKUSU, 76, MACHAMP, 78, ZAPDOS_G, 0 + +AgathaData: + db $FF, 57, CROAKOZUNA, 56, CROBAT, 56, ANNIHILAPE, 58, UMBREON, 58, ARBOK, 60, GENGAR, 0 +; post-game rematch team (currently unused, marowak will be alolan) + db $FF, 77, ANNIHILAPE, 76, MAROWAK, 76, UMBREON, 78, CROBAT, 78, GENGAR, 80, MOLTRES_G, 0 + +LanceData: + db $FF, 58, CROCKY, 57, KINGDRA, 57, AERODACTYL, 59, CHARIZARD, 59, CRYITHAN, 62, DRAGONITE, 0 +; post-game rematch team (currently unused, exeggutor will be alolan) + db $FF, 78, CROCKY, 77, KINGDRA, 77, AERODACTYL, 79, EXEGGUTOR, 79, CRYITHAN, 82, DRAGONITE, 0 + +YujirouData: ; was unused juggler + db $FF, 7, KONYA, 7, RATTATA, 10, LICKITUNG, 0 +; post-game rematch team (currently unused) + db $FF, 66, PERSIAN, 67, TAUROS, 67, MADAAMU, 66, BLISSEY, 67, SNORLAX, 70, LICKILICKY, 0 + +BlackbeltData: +; Koichi parties - unused to make space for rival teams + db 12, MACHOP, HITMONLEE, HITMONCHAN, 0 ; 0 badges + db 20, MACHOP, MANKEY, HITMONLEE, HITMONCHAN, 0 ; 1 + db 24, MACHOKE, MANKEY, POLIWHIRL, HITMONLEE, HITMONCHAN, 0 ; 2 + db 30, MACHOKE, PRIMEAPE, POLIWHIRL, HITMONLEE, HITMONCHAN, 0 ; 3 + db 40, MACHOKE, PRIMEAPE, POLIWHIRL, HITMONLEE, HITMONCHAN, 0 ; 4 + db 42, MACHAMP, PRIMEAPE, POLIWRATH, HITMONLEE, HITMONCHAN, 0 ; 5 + db 46, MACHAMP, ANNIHILAPE, POLIWRATH, HITMONLEE, HITMONCHAN, 0 ; 6 + db 49, MACHAMP, ANNIHILAPE, POLIWRATH, HITMONLEE, HITMONCHAN, HITMONTOP, 0 ; 7 + db 53, MACHAMP, ANNIHILAPE, POLIWRATH, HITMONLEE, HITMONCHAN, HITMONTOP, 0 ; 8 + db 67, MACHAMP, ANNIHILAPE, POLIWRATH, HITMONLEE, HITMONCHAN, HITMONTOP, 0 ; Silph Gauntlet +; Fighting Dojo Trainers + db 31, CHEEP, CHEEP, JABETTA, 0 + db 32, MACHOKE, MACHAMP, 0 + db 36, SIRFETCHD, 0 + db 31, MACHOP, MANKEY, PRIMEAPE, 0 +; Viridian Gym - changed to fit the Ground-type gym theme + db 40, GRAVELER, GOLEM, 0 + db 43, RHYDON, 0 + db 38, RHYHORN, ONIX, STEELIX, 0 +; Victory Road 2F + db 43, MACHOKE, MACHOP, MACHOKE, 0 diff --git a/engine/battle/trainer_ai.asm b/engine/battle/trainer_ai.asm index b3aa4444..b48a9137 100644 --- a/engine/battle/trainer_ai.asm +++ b/engine/battle/trainer_ai.asm @@ -286,6 +286,8 @@ INCLUDE "engine/battle/read_trainer_party.asm" INCLUDE "data/trainers/special_moves.asm" INCLUDE "data/trainers/parties.asm" +;INCLUDE "data/trainers/scaled_parties.asm" +;INCLUDE "data/trainers/rival_parties.asm" TrainerAI: and a diff --git a/scripts/FightingDojo.asm b/scripts/FightingDojo.asm index 8ba7f244..742be331 100644 --- a/scripts/FightingDojo.asm +++ b/scripts/FightingDojo.asm @@ -102,7 +102,7 @@ FightingDojoTrainerHeader3: trainer EVENT_BEAT_FIGHTING_DOJO_TRAINER_3, 3, FightingDojoBattleText4, FightingDojoEndBattleText4, FightingDojoAfterBattleText4 db -1 ; end -FightingDojoText1: ; gym scaling was removed to make space +FightingDojoText1: ; gym scaling can be removed to make space text_asm CheckEvent EVENT_DEFEATED_FIGHTING_DOJO jp nz, .continue1 @@ -119,7 +119,24 @@ FightingDojoText1: ; gym scaling was removed to make space ldh a, [hSpriteIndexOrTextID] ld [wSpriteIndex], a call EngageMapTrainer - call InitBattleEnemyParameters + ; call InitBattleEnemyParameters ; put this back if you mess up + + ; gym scaling spaghetti code begins here - remove initial parameters as we're making our own + ld a, OPP_BLACKBELT + ld [wCurOpponent], a + + ld hl, wObtainedBadges ; Picking the team based on badge count. Need +1 so it loads the right team: remember, you're fighting for the badge! Thanks to Chatot4444 for the help. + ld b, 1 + call CountSetBits + ld a, [wNumSetBits] + inc a + + ld [wTrainerNo], a + ld a, 1 + ld [wIsTrainerBattle], a + + ;ends here + ld a, $3 ld [wFightingDojoCurScript], a ld [wCurMapScript], a