github rh-hideout/pokeemerald-expansion expansion/1.11.0
Version 1.11.0

2 days ago
## How to update
- If you haven't set up a remote, run the command `git remote add RHH https://github.com/rh-hideout/pokeemerald-expansion`.
- Once you have your remote set up, run the command `git pull RHH 1.11.0`.

🌋 REFACTORS 🌋

📜 = Uses a migration script.

🧬 General 🧬

Added

  • Add Script Cmd for Forcing Save Game by @ghoulslash in #6090
  • Trainer Party Pools by @hedara90 in #5731
    • Documentation on how to use this can be found under docs/tutorials/how_to_trainer_party_pool.md
  • Add Code Entry functionality by @Pawkkie and @PCG06 for the Mystery Gift iteration in #5951

Changed

  • Added "Game Clear" flag toggle to debug menu by @AsparagusEduardo in #5929
  • Initialize m4a and IRQ handler in a loaded section by @SBird1337 in #5912
  • Debug menu and createmon additions/cleanup by @AsparagusEduardo in #5994
    • Added Tera Type, Dynamax Level, and Gigantamax Factor to the "Give Pokémon (complex)" debug menu option.
    • Added dmaxLevel option to givemon and createmon.
    • Added WEATHER_COUNT.
    • Cleaned up repeated code instances in debug menu.
    • Fixed mislabel of ggMaxFactor in givemon and createmon. Now it's gmaxFactor.
  • Introduces BattlerState struct for the Battle Engine by @AlexOn1ine and @mrgriffin provided the framework for this change in #5954
  • Reorder Makefile rules so that pokeemerald-test.elf builds in build/test by @mrgriffin in #6004
  • Use SET8 and SET32 consistently by @AZero13 in #5544
  • Ewram and unused function cleanup sweep by @hedara90 in #6019
  • Re-removed trainers.h trailing whitespace by @fdeblasio in #6048
  • Add Steven Multi to debug menu by @Pawkkie in #6064
  • Remove gDecompressionBuffer by @DizzyEggg in #6029
  • Trainer Battle Parameter Consolidation by @u8-Salem in #5982
    Breaking: raw uses of trainerbattle need to be adjusted to provide all possible parameter. Unused parameter musst be 0 or an alias. already parameterized macros like trainerbattle_single work out of the box.
  • Consolidated contest opponent filters into gContestOpponents by @fdeblasio in #6119
  • Don't use SeedRng some places where it isn't necessary by @tertu-m in #6156
  • Removed Trainer Slides footgun by @AsparagusEduardo in #6205
  • Consolidate duplicate dialogue of nature girl in Battle Frontier by @fdeblasio in #6195
  • Prevented fanfares from playing in headless mode by @pkmnsnfrn and @hedara90, @AsparagusEduardo in #6219

Fixed

🗺️ Overworld 🗺️

Added

Changed

Fixed

🐉 Pokémon 🐉

Added

  • IV/EV Info on Summary Screen by @khbsd in #6027
  • Add caught mon to full party by sending a different mon to the Box by @fakuzatsu in #6058

Changed

  • Remove form change function footguns by @AsparagusEduardo and @AlexOn1ine for letting me know of this potential issue. in #5995
    • GetBattleFormChangeTargetSpecies, GetFormChangeTargetSpecies and GetFormChangeTargetSpeciesBoxMon now return the current species of the Pokémon instead of SPECIES_NONE as a precaution to avoid accidental deletions of Pokémon when using these functions.
  • Remove redundant calls to GetMonData in pokemon.c by @AZero13 in #5545
  • Rename Furfrou Species tags to match Pokemon Showdown exports by @moostoet in #6041
  • Add Mega Evolution, Primal Reversion, and Ultra Necrozma overworld sprites by @khbsd in #5874
  • Add Poltchageist family form data by @Bassoonian and @wiz1989 in #6163

Fixed

⚔️ Battle General ⚔️

Added

  • Add B_FLAG_SLEEP_CLAUSE by @Pawkkie, @Pawkkie and @iriv24 in #5566
    • Based on Smogon's sleep clause philosophy
    • Toggleable per-battle by setting / unsetting the flag assigned to B_FLAG_SLEEP_CLAUSE
  • Variadic IS_BATTLER_OF_TYPE and GetBattlerTypes by @mrgriffin in #5708
  • Simultaneous HP Reduction (CFRU Port) by @AsparagusEduardo and @AlexOn1ine for the port to expansion. @Skeli789 for the CFRU implementation. in #5770
  • Destiny Bond fails on repeated use in Gen 7+ by @Pawkkie in #5652
  • Adds Pledge Side Statuses as Starting Statuses by @AlexOn1ine in #5899
  • Adds B_VAR_DIFFICULTY and related functions READ DESC by @pkmnsnfrn in #5337
  • Config for move slot rearrangement in battle by @hedara90 and @ghoulslash for pointing out the exact point in the code where move slot rearrangement is handled. in #6017
    • Move slot rearrangement is disabled by default in battle, set B_MOVE_REARRANGEMENT_IN_BATTLE to GEN_3 to enable rearrangement again.

Changed

  • Sleep Clause global config by @Pawkkie in #5762
  • Pursuit refactor by @PhallenTree in #5707
  • Changes Various defines to an Enum by @AlexOn1ine in #5839
  • move overwrittenAbilities field to DisableStruct by @ghoulslash in #5946
  • Battle Weather Refactor by @AlexOn1ine in #5833
  • Easy customizable Hidden Move types by @AsparagusEduardo in #5872
    • gTypesInfo now has a isHiddenPowerType field that inserts them into the Hidden Power type calculation.
    • Warning: Changing this from the vanilla settings will change any existing Hidden Power's type, and external calculators will not work either.
  • Introduces BattlerState struct for the Battle Engine by @AlexOn1ine and @mrgriffin provided the framework for this change in #5954
  • Cleaned up Trainer Slides, added automated Trainer Slide tests, add new Enemy Critical Hit Slide by @pkmnsnfrn and @AlexOn1ine, @hedara90, @AsparagusEduardo, @mrgriffin in #6018
    • If users created new entries in sTrainerSlides, they will need to be ported to the new system.
  • Introduces BattleTurnCounter to simplfy timer checks by @AlexOn1ine in #6080
  • Replace BattleStruct members quickClawRandom/quickDrawRandom with locals by @AlexOn1ine in #6136
  • Added Difficulty Fallback for Trainer Slides by @pkmnsnfrn in #6088
  • CanAbilityX Function Cleanup by @ghoulslash in #6183
  • Unify setreflect/setlightscreen and MOVE_EFFECT_REFLECT/LIGHT_SCREEN by @ghoulslash in #6196

Fixed

  • Fix Sleep Clause AI handling of partner sleeping moves by @Pawkkie in #5761
  • Fix fixed point damage calculation off-by-1s by @SBird1337 in #5775
    Fixes a bunch of rounding errors that cause wrong outputs in the damage calculation.
  • Fixes simu hp reduction when no partner was on field by @AlexOn1ine in #5799
  • Fixes Regenerator healing past maxHP by @PhallenTree in #5861
  • Fixes Pursuit + Emergency Exit causing double switches and Pursuit user fainting causing target to not finish switch by @PhallenTree in #5849
  • Fixes regression caused by argument refactor by @AlexOn1ine in #5870
  • Fixes Sparkling Aria Shield Dust / Covert Cloak interaction by @AlexOn1ine in #5911
  • Battle Weather Refactor oversight by @AlexOn1ine in #5960
  • Shell Bell Clean up / Simplification and Tests by @AlexOn1ine in #5924
  • Dynamic move type was ignored in doubles for spread moves by @AlexOn1ine in #5984
  • Fixes self effect moves not procing for spread moves when battler 3 w… by @AlexOn1ine in #6020
  • Fix UB when accessing move result flags by @cawtds in #6030
  • Fix Powder (status) config and some terrain timers not using gBattleTurnCounter by @PhallenTree in #6109
  • Fix Powder config not checking for Powder status by @PhallenTree in #6113
  • Fixes battler mutation during the intim script by @AlexOn1ine in #6151
  • Fixes Dynamic Moves types in SumScreen while in Battle by @AlexOn1ine in #6145
  • Fixes Dragon Tail missing timing against Rocky Helmet / Iron Barbs by @AlexOn1ine in #6154
  • Prevent sameMoveTurns from incrementing when unable to use move by @moostoet in #6167
  • Fixes Suction Cups ability popup and Red Card + Guard Dog interaction by @PhallenTree in #6171
  • Fixed Unnerve message and wrote tests by @hedara90 in #6192
  • Fixes Spectral Thief stealing boost at the wrong time by @AlexOn1ine in #6197
  • Fixes BATTLER_TURN_DAMAGED battler id by @AlexOn1ine in #6236
  • Fixed multi battle forced switches by @hedara90 in #6243
  • Fixes ability Embody Aspect triggering multiple times by @AlexOn1ine in #6259
  • Fixes Called moves ignoring redirection by @PhallenTree in #6267
  • Fixes Protean not restoring types after ai damage calcs by @AlexOn1ine in #6280
  • Restoretarget in Rototiller script + Tests by @AlexOn1ine in #6296
  • Fixes inconsistency for Kings rock. by @AlexOn1ine in #6302
  • Fixes Shell Bell for Spread Moves by @AlexOn1ine in #6303
  • Fixes Brick Break/Psychic Fangs/Raging Bull breaking screens if target is immune by @PhallenTree in #6308
  • Fixes doesnt effect message for Thunder Wave by @AlexOn1ine in #6304
  • Fixes Tera Shell activating on moves that have no effect on target by @AlexOn1ine in #6271
  • Fixes fainted battler being able to select an action by @PhallenTree in #6339

🤹 Moves 🤹

Added

Changed

Fixed

  • Fixes moves based on Dragon Darts with strikeCount > 2 always hitting the same battler from the second hit onwards by @PhallenTree in #5830
  • Last fix for Sparkling Aria / Covert Cloak / Shield Dust interaction by @AlexOn1ine in #5956
  • Added WEATHER_DOWNPOUR to Weather Ball's dynamic type by @fdeblasio in #6100
  • Fixed Future Sight not being affected by Electrify by @AsparagusEduardo in #6213
  • Fixes Expanding Force and Spectral Thief move animations by @PhallenTree in #6185
  • Made some move animations fit in VRAM by @hedara90 in #6289

🧶 Items 🧶

Fixed

🤖 Battle AI 🤖

Added

Changed

  • Fixed AI not handling type effectiveness beyond x8 by @AsparagusEduardo and @/sshadowzkmao in #6127
    • Removed the use of AI_EFFECTIVENESS_ in favor of storing the actual type effectiveness.
    • Renamed AI_GetTypeEffectiveness to AI_GetMoveEffectiveness, removing the original one.
  • Remove global sBattler_AI by @AlexOn1ine in #6128
  • SwitchType enum to clean up GetMostSuitableMonToSwitchInto by @Pawkkie in #6184

Fixed

  • Eject item ace flag switch AI fixes by @Pawkkie and @wiz1989 for reporting the bug in #6098
  • Fix Choice'd mons referring to incorrect move when switching by @Pawkkie and @/capncrunch in #6204
  • Fix AI switching in absorbing mon incorrectly by @Pawkkie in #6227
  • Improve Yawn and Status Switching by @Pawkkie and @/Chape for finding this behaviour in #6202
  • Fix AI wrongly thinking it strikes first with priority even if player is using priority themselves by @moostoet in #6274
  • Fix AI hazard move handling, minor AI tweaks by @Pawkkie and @ShadowzLmao2 in #6311
  • Fix Overzealous Absorber Switching by @Pawkkie and @iriv24 and @ravepossum for squinting at a conditional for nearly 30mins with me to find a semicolon in #6318
  • Fix Substitute / Shed Tail Switch AI by @Pawkkie in #6334

🧹 Other Cleanup 🧹

🧪 Test Runner 🧪

Changed

Fixed

📚 Documentation 📚

📦 Branch Synchronisation 📦

pret

  • 11th of February in #6231
    • Replace easy_chat alphabetialOrder magic numbers with EC_INDEX values by @rayrobdod in pret#2096
    • Fixed switchout bug in multibattle where order of mons gets messed up by @shachar700 in pret#2099

New Contributors

Full Changelog: expansion/1.10.2...1.11.0

Don't miss a new pokeemerald-expansion release

NewReleases is sending notifications on new releases.