From 07a71f2ab39afacf3cebe8769a944ab8173ac795 Mon Sep 17 00:00:00 2001 From: Llinos Evans <36418502+PlagueVonKarma@users.noreply.github.com> Date: Mon, 24 Jul 2023 01:08:46 +0100 Subject: [PATCH] Implementing post-stream bug fixes This addresses some issues found during my last KEP stream. - Take Down TM on Silph 5F to Earthquake, ensuring that TM does not go unused. - Bill's Garden now features Lapras and has level deviation. - Mt. Moon B1F's area where you access Mt. Moon Square now uses an upward-facing ladder, giving the illusion of going to a summit-like location. This makes its current odd location make more sense while not invalidating the progression regular Mt. Moon has. - Melanie should now give Bulbasaur correctly. - The Karate Master now has a failsafe for if you got a Hitmon, where he is guaranteed to not refight you before the post-game. - Fixed a 17 error Old Dance Jacket reported with the Up-Grade NPC's text. - Fixed nickname screen corruption when getting the Pikachu/Eevee mode starters. - Fixed some curious warp issues with Lavender Tower by reversing 3F. Could use with some tinkering. Silph still needs fixes. Credits have also been made more precise in the interests of better open source derivatives. Felt a bit odd expanding my credits so much, but this also made me realise I need to touch grass more frequently. I have also made our Open Source policy more precise. --- README.md | 39 ++++++++++++++++----------- data/maps/objects/PokemonTower3F.asm | 4 +-- data/maps/objects/SilphCo5F.asm | 2 +- data/wild/maps/BillsGarden.asm | 40 ++++++++++++++-------------- maps/MtMoonB1F.blk | 2 +- maps/PokemonTower3F.blk | 2 +- scripts/Daycare.asm | 7 +++-- scripts/FightingDojo.asm | 2 ++ scripts/Route24.asm | 1 + scripts/VermilionCity.asm | 1 + text/SaffronCity.asm | 2 +- 11 files changed, 56 insertions(+), 46 deletions(-) diff --git a/README.md b/README.md index 86460dab..485c10d8 100644 --- a/README.md +++ b/README.md @@ -237,6 +237,8 @@ Known Bugs - The Tradeback Tutor doesn't work properly with Rhydon for reasons likely related to its index number of 1. - The Vermilion Passes are very unstable (Faraway warps are weird unless you battle, Citrine outright crashes). - HP DV does not appear to display correctly in the viewer. +- Silph Co.'s warps are mismatched following a restructuring in maps, one on Floor 5 leads to a Glitch City. +- Fake Tears and Nasty Plot don't quite look right when done from the opponent's side. Evolution Methods for new Pokemon ==== @@ -347,36 +349,41 @@ Given many of these evolve via stones, we've given them their pre-evolution's le Credits ==== -As the open source nature of this project implies, people are free to use what's here for their own ends, **so long as credit is given.** Specific credits are always encouraged as well. If you have any questions on this, contact @ plague_von_karma on Discord. +As the open source nature of this project implies, people are free to reuse what's here for their own ends, **so long as credit is given, to this hack and those who worked on what you reuse.** Additionally, we strongly urge you to make any projects using KEP's content open source. KEP strongly supports the [free software movement](https://www.fsf.org/about/) and its four essential freedoms. If you have any questions on the topic of content reuse, contact @ plague_von_karma on Discord. -If you use our implementations of anything at all, it is encouraged to submit Pull Requests for bug fixes if you find any issues! +KEP spriters hold the policy of requiring sprites to be used with direct credit for non-commerical purposes. Credit Albatross and Martha's Against Humanity in any case of using them. Helix Chamber spriters have a "must credit" policy as well, and precise credits for them are available [here](https://cdn.discordapp.com/attachments/1014321591657709569/1015347305483878521/unknown.png). -* Plague von Karma - Creator of the Showdown Mod, Developer, Scenarios, Balancing, Maps, Event scripting, and occasional spriter (assisting with Tsubomitto, Carapthor) -* Martha's Against Humanity - Developer, Pokémon implementation, Event scripting, tweaks of Albatross's sprites, a few maps (Citrine City, Cinnabar Volcano) -* Ema Skye - Developer, Maps, Showdown Mod assistance +If you use our implementations of anything at all, it is encouraged to submit Pull Requests for bug fixes if you find any issues! We very much appreciate them! + +* Plague von Karma - Creator of the Showdown Mod, Director, Developer, Scenarios, Balancing, Dialogue, Pokedex entries, Maps (Mt. Moon Crater, Galarian Bird dungeons, Rock Tunnel, Cinnabar Volcano floors, enhanced Diglett's Cave, Shinjuku Jacky's room, and more), Event scripting, Hyper Training, FRLG Tea, post-game rematches, Meltan implementation, Yellow backports, and occasional spriter (assisting with Tsubomitto, Carapthor) +* Martha's Against Humanity - Developer, Pokémon implementation, Pokedex entries, Event scripting, tweaks of Albatross's sprites, Sylveon sprite, a few maps (Citrine City, Cinnabar Volcano) +* Ema Skye - Developer, Maps (Underwater Tunnel, Silph Co. and Pokemon Tower shortening), Mt. Moon Crater Guard, Showdown Mod assistance. +* BlueZangoose / Vimescarrot - Pokemon box expansion, Instatext option, general assistance. +* Albatross - Many of the new sprites used in the hack (A significant number of post-Gen 1 evolutions, all regional variants, Meltan and Carapthor lines, etc.) +* LuciShrimp - Mewtwo & FireRed/LeafGreen Legendary custom battle music * pret et al - Pokémon Red and Blue Disassembly Project, many tutorials helped us! * ausma - Showdown Mod assistance * Paulluxx - Showdown Mod assistance * DuoM2 - Showdown Mod assistance -* Albatross - Many of the new sprites used in the hack (A significant number of post-Gen 1 evolutions, all regional variants, Meltan and Carapthor lines, etc.) -* BlueZangoose / Vimescarrot - Pokemon box expansion, Instatext option, general assistance. -* LuciShrimp - Mewtwo & FireRed/LeafGreen Legendary custom battle music -* dannye33 - Assisting with crysaudio implementation -* Frrf - Assisting with the development of the Pikachu / Eevee Mode + 5 Starters scenes in Oak's Lab, debugging +* dannye33 - Assisting with crysaudio implementation. +* Frrf - Assisting with the development of the Pikachu / Eevee Mode + 5 Starters scenes in Oak's Lab, debugging. * erosunica - Assistance with developing Celadon University & Citrine City, plus sources for various subjects. * Chatot4444 - Assisting with gym scaling code. * Enigami - Reworking the Battle Tent's RestoreTeam code to make it work properly. * Ness the Unexplained - Helped with writing NPC dialogue and Pokédex entries for new Pokémon such as Gyopin. * ZumiIsawhat? - Restorations of beta OST. * FrenchOrange - Reconstructions of various overworld beta sprites. -* Helix Chamber, RacieBeep, loumilouminosus, Orchid, GBCRetro, & catstorm26 - Prototype Pokémon sprites +* Helix Chamber, RacieBeep, loumilouminosus, Orchid, GBCRetro, & catstorm26 - Prototype Pokémon sprites. Precise credits are available [here](https://cdn.discordapp.com/attachments/1014321591657709569/1015347305483878521/unknown.png). * Vortiene - Reused a bit of code from their pureRGB hack. Assisted in bug fixes. -* Pigu-A, RevoSucks, walle303 - Contributors to Pokemon Anniversary Red, which we used as reference points for the Girl sprites and the Battle Tent. -* jojobear13 & Mateo - HP/StatExp display, move deleter, & move relearner functionality from Shin Pokered, followed [this guide](https://github.com/jojobear13/shinpokered/blob/master/how%20to%20guides/how%20to%20add%20the%20move%20relearner%26deleter.txt). Tweaks were made to make it compatible with the pokered version we worked off of. -* Rangi - Reused a bit of code from their Red* / Blue* hack to make HMs usable in the overworld! -* BGVC - Composed the original 4-channel version of the unused trading music. -* wrulfy - Technical advice +* Pigu-A, RevoSucks, walle303 - Contributors to Pokemon Anniversary Red's repository, where we reused the Green/FemC sprites and the Battle Tent. +* jojobear13 & Mateo - DV/StatExp display, move deleter, & move relearner functionality from Shin Pokered, followed [this guide](https://github.com/jojobear13/shinpokered/blob/master/how%20to%20guides/how%20to%20add%20the%20move%20relearner%26deleter.txt). Tweaks were made to make it compatible with the pokered version we worked off of. +* Rangi - Reused a bit of code from their Red* / Blue* hack to make HMs usable in the overworld, and generally being an amazing individual. +* BGVC - Composed the original 4-channel version of the unused Koukan (trading) music. +* SatoMew - Technical advice. +* wrulfy - Technical advice. * suloku - Technical advice regarding setting where you spawn after beating the Elite Four. +* Molk - Balancing of some beta Pokemon, most notably Deer. +* Shellnuts - Balancing of some beta Pokemon, especially Omega; made the type chart suggestions to balance Galarian Moltres properly. * 大吟醸 (Daiginjo) - Assistance in translating the Tamamushi University Student Book, allowing for an accurate adaptation of the location. * ViWalls - Extremely early adopter of the hack who repeatedly reported bugs and gave general opinions. diff --git a/data/maps/objects/PokemonTower3F.asm b/data/maps/objects/PokemonTower3F.asm index 6b49d967..5573a1e7 100644 --- a/data/maps/objects/PokemonTower3F.asm +++ b/data/maps/objects/PokemonTower3F.asm @@ -2,8 +2,8 @@ PokemonTower3F_Object: db $1 ; border block def_warp_events - warp_event 3, 9, POKEMON_TOWER_2F, 1 - warp_event 18, 9, POKEMON_TOWER_4F, 2 + warp_event 18, 9, POKEMON_TOWER_2F, 1 + warp_event 3, 9, POKEMON_TOWER_4F, 2 def_bg_events diff --git a/data/maps/objects/SilphCo5F.asm b/data/maps/objects/SilphCo5F.asm index f5c38bdc..018d4c7a 100644 --- a/data/maps/objects/SilphCo5F.asm +++ b/data/maps/objects/SilphCo5F.asm @@ -18,7 +18,7 @@ SilphCo5F_Object: object_event 8, 3, SPRITE_SCIENTIST, STAY, RIGHT, 3, OPP_SCIENTIST, 6 object_event 18, 10, SPRITE_ROCKER, STAY, UP, 4, OPP_JUGGLER, 1 object_event 28, 4, SPRITE_ROCKET, STAY, UP, 5, OPP_ROCKET, 29 - object_event 2, 13, SPRITE_POKE_BALL, STAY, NONE, 6, TM_TAKE_DOWN + object_event 2, 13, SPRITE_POKE_BALL, STAY, NONE, 6, TM_EARTHQUAKE ; was Take Down, changed to accomodate new floors object_event 11, 14, SPRITE_POKE_BALL, STAY, NONE, 7, PROTEIN object_event 21, 16, SPRITE_POKE_BALL, STAY, NONE, 8, CARD_KEY object_event 22, 12, SPRITE_CLIPBOARD, STAY, NONE, 9 ; person diff --git a/data/wild/maps/BillsGarden.asm b/data/wild/maps/BillsGarden.asm index 92ad02ef..e634d94f 100644 --- a/data/wild/maps/BillsGarden.asm +++ b/data/wild/maps/BillsGarden.asm @@ -5,27 +5,27 @@ ; Legendary Birds were also in the mythos but there's no space and it sounds terrible. BillsGardenWildMons: def_grass_wildmons 10 ; encounter rate - db 50, EEVEE ; People are here for Eevee so just give them the ~40% chance... - db 50, EEVEE - db 50, CHARMANDER - db 50, BULBASAUR - db 50, HITMONLEE - db 50, HITMONCHAN - db 50, HITMONTOP - db 50, ELECTRODE_H - db 50, ARCANINE_H - db 50, DECILLA + db 47, EEVEE ; People are here for Eevee so just give them the ~40% chance... + db 49, EEVEE + db 51, CHARMANDER + db 48, BULBASAUR + db 49, HITMONLEE + db 47, HITMONCHAN + db 52, HITMONTOP + db 52, ELECTRODE_H + db 52, ARCANINE_H + db 53, DECILLA end_grass_wildmons def_water_wildmons 10 ; encounter rate - db 50, BLASTYKE - db 50, SQUIRTLE - db 50, SQUIRTLE - db 50, KABUTO - db 50, OMANYTE - db 50, AERODACTYL ; In games like DPP, you can encounter fliers on Water. Most notably, Zubat. No space on land so this is the best we got. - db 50, WARTORTLE - db 50, WARTORTLE - db 50, BLASTOISE - db 50, TOTARTLE + db 47, KABUTO + db 49, OMANYTE + db 51, SQUIRTLE + db 48, KABUTO + db 49, OMANYTE + db 47, WARTORTLE + db 52, WARTORTLE + db 54, AERODACTYL ; In games like DPP, you can encounter fliers on Water. Most notably, Zubat. No space on land so this is the best we got. + db 54, LAPRAS + db 56, TOTARTLE end_water_wildmons \ No newline at end of file diff --git a/maps/MtMoonB1F.blk b/maps/MtMoonB1F.blk index e9eede3d..2782918e 100644 --- a/maps/MtMoonB1F.blk +++ b/maps/MtMoonB1F.blk @@ -1 +1 @@ -??????<==??????=<?????????=<??<???????<< \ No newline at end of file +??????<==??????=<?????????=<??=???????<< \ No newline at end of file diff --git a/maps/PokemonTower3F.blk b/maps/PokemonTower3F.blk index 26d28b79..4eb4c2a2 100644 --- a/maps/PokemonTower3F.blk +++ b/maps/PokemonTower3F.blk @@ -1,3 +1,3 @@  [Q 9OOOOX  -PPRQPQ 9NLLML VV SVT \ No newline at end of file +PPRQPQ 9NLLML VV SVT \ No newline at end of file diff --git a/scripts/Daycare.asm b/scripts/Daycare.asm index c64d6cb5..6056b90e 100644 --- a/scripts/Daycare.asm +++ b/scripts/Daycare.asm @@ -291,9 +291,8 @@ DaycareMelanie: call z, WaitForTextScrollButtonPress ; and here. call EnableAutoTextBoxDrawing ; and here. it's very hasty. - ld a, [wObtainedBadges] ; load the badge count - bit BIT_CASCADEBADGE, a - jr z, .superDone ; no? d'oh! darn those brock skippers! + CheckEvent EVENT_BEAT_MISTY ; Beat Misty? + jr z, .superDone ; Didn't beat Misty? It's over. It's just over. ; If they picked any of the main 3 they can't get this. ld a, [wPlayerStarter] @@ -311,7 +310,7 @@ DaycareMelanie: ld a, [wCurrentMenuItem] and a jr nz, .refused ; imagine refusing a bulbasaur tbh - + call SaveScreenTilesToBuffer1 ; prevents nickname screen corruption lb bc, BULBASAUR, 12 ; load the bulbasaur call GivePokemon ; attempt to give the bulbasaur jr nc, .fullParty ; if it's fucked just go here diff --git a/scripts/FightingDojo.asm b/scripts/FightingDojo.asm index 51545778..c1e94b24 100644 --- a/scripts/FightingDojo.asm +++ b/scripts/FightingDojo.asm @@ -109,6 +109,8 @@ FightingDojoText1: ; gym scaling can be removed to make space text_asm CheckEvent EVENT_POST_GAME_ATTAINED ; No need to view previous stuff, technically you can skip Bide this way but I think that's hilarious jp z, .normalProcessing + CheckEvent EVENT_GOT_HITMON ; failsafe + jp nz, .continue2 CheckEvent EVENT_DEFEATED_FIGHTING_DOJO jp nz, .continue1 CheckEventReuseA EVENT_BEAT_KARATE_MASTER diff --git a/scripts/Route24.asm b/scripts/Route24.asm index 3851a928..864dd06d 100644 --- a/scripts/Route24.asm +++ b/scripts/Route24.asm @@ -290,6 +290,7 @@ Route24Damian: ld a, [wCurrentMenuItem] and a jr nz, .asm_515d0 + call SaveScreenTilesToBuffer1 ; prevents nickname screen corruption ld a, CHARMANDER ld [wd11e], a ld [wcf91], a diff --git a/scripts/VermilionCity.asm b/scripts/VermilionCity.asm index f804854e..58d6212e 100644 --- a/scripts/VermilionCity.asm +++ b/scripts/VermilionCity.asm @@ -447,6 +447,7 @@ OfficerJennySquirtle: ld a, [wCurrentMenuItem] and a jr nz, .refuse + call SaveScreenTilesToBuffer1 ; prevents nickname screen corruption ld a, SQUIRTLE ld [wd11e], a ld [wcf91], a diff --git a/text/SaffronCity.asm b/text/SaffronCity.asm index 518e4959..101493b6 100644 --- a/text/SaffronCity.asm +++ b/text/SaffronCity.asm @@ -171,7 +171,7 @@ _UpGradeExplanationText:: cont "but even now," cont "it's outdated." - text "The UP-GRADE" + para "The UP-GRADE" line "should remedy" cont "that!"