Releases: rh-hideout/pokeemerald-expansion
Releases · rh-hideout/pokeemerald-expansion
Version 1.11.0
## 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.
- Pursuit refactor by @PhallenTree in #5707
- Atk Canceller refactor / reorder / clean up by @AlexOn1ine in #5885
- Battle Weather Refactor by @AlexOn1ine in #5833
- Replace WEATHER_HAS_EFFECT with HasWeatherEffect by @AlexOn1ine in #6069
- 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 simplify timer checks by @AlexOn1ine in #6080
- Convert max effects to normal move effects by @AlexOn1ine in #6143
- Redefine IsBattlerAlive in battle.h as a static inline by @AlexOn1ine in #6211
- Consolidated Frontier teams into battle_frontier_trainers.h by @fdeblasio in #5892
🧬 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
- Documentation on how to use this can be found under
- 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 togivemon
andcreatemon
. - Added
WEATHER_COUNT
. - Cleaned up repeated code instances in debug menu.
- Fixed mislabel of
ggMaxFactor
ingivemon
andcreatemon
. Now it'sgmaxFactor
.
- 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 oftrainerbattle
need to be adjusted to provide all possible parameter. Unused parameter musst be 0 or an alias. already parameterized macros liketrainerbattle_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
- Don't write to NULL in TryFindHiddenPokemon by @DizzyEggg in #5983
- Allow Party Menu with 0 Pokemon by @DizzyEggg in #5997
- Revert map related enum conversion by @hedara90 in #6078
- Revert "Revert map related enum conversion" by @hedara90 in #6079
- Revert "Converts a bunch of defines to enums" by @Bassoonian in #6082
- Fix upcoming not working on no cash by @DizzyEggg in #6121
- Add the header required for TPP tags to work by @hedara90 in #6162
- Fixed regression from master/upcoming merge by @AsparagusEduardo and @hedara90 , for doing the original merge when I couldn't in #6199
- Fix Using a Safari Ball crashes the game #6206 by @ExMingYan in #6220
- Fixed typo in requests_effects by @hedara90 and @purrfectdoodle in #6215
- Try a new solution to Fix Safari #6206 by @ExMingYan in #6228
- Remove obsolete check for steven when retrieving partner name by @u8-Salem and @hedara90 in #6283
- Fix spit up getting skipped by @cawtds in #6295
🗺️ Overworld 🗺️
Added
- Adds Dexnav by @ghoulslash in #4818
- Fly from Pokenav by @khbsd in #5679
- Expanded Pokémon Follower transformation functionality by @AsparagusEduardo in #5048
Changed
- Arbitrary trainer scripts + on frame/trigger softlock prevention by @mrgriffin in #5033
- Removed OW_AUTO_SIGNPOST by @pkmnsnfrn in #5974
- Fix leftover test change from #5033 by @mrgriffin in #5987
- Match current gen behavior for battle environment after fishing by @kittenchilly in #6099
- Add Mega Evolution, Primal Reversion, and Ultra Necrozma overworld sprites by @khbsd in #5874
- Replaced hardcoded numbers in DexNav with variables by @fdeblasio in #6241
- Merrp merge (12th of February) by @hedara90 in #6244
- Adds a follower flag define to disable followers on the fly by @AlexOn1ine in #6174
Fixed
- Fix Trainer Hill OOB array access by @SBird1337 in #5930
- Revert #5033 change to MapHeaderRunScriptType by @mrgriffin in #5975
- Restore lock/lockall/locktrainer/release/releaseall in triggers by @mrgriffin in #5976
- Follower Object Event refactor by @hedara90 and @AsparagusEduardo in #6129
- Fixes
OBJ_EVENT_GFX_SPECIES_SHINY
- Adds
OBJ_EVENT_GFX_SPECIES_FEMALE
andOBJ_EVENT_GFX_SPECIES_SHINY_FEMALE
- Fixes
- Fixes Static Assert from pr #6174 by @AlexOn1ine in #6258
- Fixed Kecleon Shiny palette by @hedara90 in #6298
🐉 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
, ...
Version 1.10.3
## 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.10.3`.
🧬 General 🧬
Fixed
- Fix Using a Safari Ball crashes the game #6206 by @ExMingYan in #6220
- Try a new solution to Fix Safari #6206 by @ExMingYan in #6228
- Remove obsolete check for steven when retrieving partner name by @u8-Salem and @hedara90 in #6283
- Fix spit up getting skipped by @cawtds in #6295
🗺️ Overworld 🗺️
Changed
Fixed
- Follower Object Event refactor by @hedara90 and @AsparagusEduardo in #6129
- Adds
OBJ_EVENT_GFX_SPECIES_FEMALE
andOBJ_EVENT_GFX_SPECIES_SHINY_FEMALE
- Adds
- Fixed Kecleon Shiny palette by @hedara90 in #6298
- Shifted the follower graphicsIds by @hedara90 in #6329
🐉 Pokémon 🐉
Changed
- Add Poltchageist family form data by @Bassoonian and @wiz1989 in #6163
Fixed
- Fixed non-regional forms breeding incorrectly by @AsparagusEduardo and @cawtds in #4985
- Fixed compilation error when turning P_GENDER_DIFFERENCES off by @AsparagusEduardo in #6223
⚔️ Battle General ⚔️
Fixed
- 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 Brick Break/Psychic Fangs/Raging Bull breaking screens if target is immune by @PhallenTree in #6308
- Fixes intimidate missing timing during a mega evo / switch by @AlexOn1ine in #6322
- Fixes Coaching on semi-invulnerable ally, Air Balloon being stolen, Immunity abilities being ignored by Mold Breaker by @PhallenTree in #6327
- Fixes effect paralyze not being absorbed by absorbing abilities by @AlexOn1ine in #6338
- Added MOVE_TARGET_OPPONENT and added it to Me First, by @hedara90 in #6336
- Fixes recoil moves causing recoil when absorbed by @AlexOn1ine in #6341
- Fixed protect not resetting the counter in earlier gens by @hedara90 in #6342
🤹 Moves 🤹
Added
- Added missing in-battle "Move Info" button prompt by @AsparagusEduardo and @TeamAquasHideout from who I got the source from and @BelialClover from who Archie got the source from. in #6155
Changed
- Fixes non-Ghost type Curse animation by @PhallenTree in #6299
Fixed
- Fixed Future Sight not being affected by Electrify by @AsparagusEduardo in #6213
- Fixes Expanding Force and Spectral Thief move animations by @PhallenTree in #6185
🧶 Items 🧶
Fixed
🤖 Battle AI 🤖
Fixed
- Fix AI wrongly thinking it strikes first with priority even if player is using priority themselves by @moostoet in #6274
- Big Root AI Fix by @Pawkkie in #6309
- Fix AI hold effect considerations by @Pawkkie in #6310
- fix for multi 2vs1 opponent sends out too many mons bug by @Bivurnum in #6324
🧹 Other Cleanup 🧹
- Cleanup some global battler ID usage by @ghoulslash in #6181
- Fix typo in Nuzzle's description by @Bassoonian in #6209
- Remove whitespace from trainers data file by @AsparagusEduardo in #6234
- Changed bit order for follower graphicsId creation by @hedara90 in #6249
- Use more accurate count in MovesInfo by @AlexOn1ine in #6260
- Fix Extra
task->tState++
andbreak
inTask_DrawFieldMessageBox
by @Deokishisu in #6261 - Resized gimmick indicators to reduce VRAM usage by @hedara90 in #6319
🧪 Test Runner 🧪
Changed
- Tests for Big Pecks by @hedara90 in #6158
- Water Compaction tests by @hedara90 in #6159
- Wrote tests for Electrify by @hedara90 in #6179
- Sheer Force Test Fixes by @ghoulslash in #6198
- Minor Terrain Seed Test Improvement by @ghoulslash in #6207
- Added test support for 5 battle configs by @AsparagusEduardo in #5914
- Added missing Dream Eater and Reflect Type tests by @AsparagusEduardo in #6245
Fixed
- Fixes Brick Break/Psychic Fangs/Raging Bull breaking screens if target is immune by @PhallenTree in #6308
📚 Documentation 📚
- Update how_to_testing_system.md by @hedara90 in #6281
- Update SCOPE.md with Intergenerational Feature Compatibility by @Pawkkie in #6325
📦 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
- @ExMingYan made their first contribution in #6220
- @Deokishisu made their first contribution in #6261
- @Bivurnum made their first contribution in #6324
Full Changelog: expansion/1.10.2...1.10.3
Version 1.10.2
## 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 expansion/1.10.2`.
🧬 General 🧬
Changed
- Add manual breaking back to "What will (mon) do?" message by @kittenchilly in #5908
Fixed
- Explicitly specify dependencies for teachable learnset helper by @ravepossum in #6015
- Add dependency on json files to learnset helper by @ravepossum in #6083
🗺️ Overworld 🗺️
Fixed
- Field effect for cutting grass is missing setfieldeffectargument. Issue #5766 by @shachar700 and @Kasenn for finding the source of the issue, @hedara90 for the help with github in #5952
- Fix Match Call Behavior (#5931) by @MercedesCL in #6033
- Fixes HGSS dex not compiling currently by @hedara90 in #6051
- Fixed Liquid Voice's dynamic type for normal moves by @fdeblasio in #6092
- Fix Crash if something costs 0 in shop by @DizzyEggg in #6106
- Fixed Hoenn dex off by 1 issues by @fdeblasio in #6104
🐉 Pokémon 🐉
Changed
- Add Clodsire second frame and fixed Grookey backsprite + overworld by @kittenchilly in #6047
- Duraludon battle animation by @Cafeei in #6086
Fixed
- Fix Enamorus not changing forms by @Bassoonian in #6093
⚔️ Battle General ⚔️
Changed
- Adds static assert for
DamageCalculationData
by @AlexOn1ine in #6063
Fixed
- Fixes Trainer Slide messages causing corruption for recoil damage by @AlexOn1ine in #5926
- Fixes broken link battles by @hedara90 and @AsparagusEduardo for finding out that the
gBitTable
removal was the source of the bug. in #5940 - fixed interaction between Innards Out and Future Sight by @wiz1989 in #5966
- Fixes various Dynamax HP conversions/calculations by @PhallenTree in #5933
- Fixes Parting Shot / Eject Pack interaction by @AlexOn1ine in #5963
- Fixes Shell Bell including heal amount from Future Sight when triggered by @AlexOn1ine in #5962
- Fixes Tera giving boost to dynamic bp moves by @AlexOn1ine in #6008
- Fixes Z-Move trigger sprite on B button exit by @AlexOn1ine in #6009
- Fixed multiple transform/form change graphical issues by @AsparagusEduardo in #6005
- Dynamax and Tera color tinting now stays during Transform/Form Change animations.
- Dynamax no longer resets Transformed mon sprites.
- Transform no longer transforms into a Gigantamax Pokémon unless the transformee has Gigantamax Factor and transforms into a base form with a Gigantamax Form.
- Fixes defrosting if frozen mon is not damaged by opponent by @AlexOn1ine in #6016
- Fix Redirection Abilities Not Drawing in Ally Moves by @ghoulslash in #6026
- fixed bug giving immunity to full-paralysis when B_MAGIC_GUARD is >= GEN_4 by @AERDU in #6032
- Fixes large battle messages being cut off instead of being prompted to advance by @PhallenTree in #6052
- Fixes Rapid Spin / Toxic Debris interaction by @AlexOn1ine in #6023
- Fixes Eject Pack triggering twice on Intimidate by @AlexOn1ine in #6072
- Trainerslide animation fix by @hedara90 in #6040
B_ENEMY_MON_SHADOW_STYLE
set toGEN_LATEST
since that setting no longer interferes with trainerslides. Set it toGEN_3
to use regular Gen 3 shadow style.
- Fixes Charge effect not boosting and tests by @AlexOn1ine in #6102
- Fix seeds softlocking the game when a battler with a Surge ability enters the field by @PhallenTree in #6110
- Fix MindBlown crash on MyBoy/No Cash by @DizzyEggg in #6112
- Fix Double Iron Bash move animation crash on MyBoy/No$ by @DizzyEggg in #6114
- Fix safari zone crash on No Cash by @DizzyEggg in #6132
🤹 Moves 🤹
Fixed
🧶 Items 🧶
Changed
- Added the Gen. 4+ berries to gBerryCrush_BerryData by @LOuroboros in #5937
Fixed
- Reverts wrongly done partial Eject Pack fix by @AlexOn1ine in #5928
🤖 Battle AI 🤖
Fixed
- Fix Entrainment AI scoring bug by @Pawkkie in #6056
- Removed stray semi-colon in AI code by @hedara90 in #6134
🧹 Other Cleanup 🧹
- Clear unneeded braces from 5922 by @Pawkkie in #5927
- Removed references to
HANDLE_EXPANDED_MOVE_NAME
in docs by @AsparagusEduardo in #5955 - Rename
AI_FLAG_PREFER_STRONGEST_MOVE
by @Pawkkie in #5972 - Removed
OW_AUTO_SIGNPOST
by @AlexOn1ine in #5978 CreateFacilityMon
error:'personality' may be used uninitialized
by @DizzyEggg in #5981- PlayerHandleStatusXor - change
u8
tou32
by @DizzyEggg in #5988 - Follow up for Innards Out / Future Sight interaction by @AlexOn1ine in #5967
- Remove out of bounds
gSprites
access in move relearner by @DizzyEggg in #5991 - Use
gCurrentMove
instead of checking0xFF
move by @AlexOn1ine in #5999 - Wrong undefs by @AlexOn1ine in #6024
- Fixed whitespace issue with trainerproc by @AsparagusEduardo in #6042
- Remove redundant line in
Cmd_setcharge
by @AlexOn1ine in #6053 - Put Identifier and smol in gitignore by @DizzyEggg in #6105
- Move flag fixes by @fdeblasio in #6107
- Remove
formToChangeInto
(Unused) by @AlexOn1ine in #6137
🧪 Test Runner 🧪
Changed
- Insomnia test used the wrong move in Turn section by @AlexOn1ine in #5939
- Updated Makefile to allow for the creation of specific tests by @pkmnsnfrn and @mrgriffin in #5993
- Adds Liquid Ooze and Aromatic Mist test by @AlexOn1ine in #6012
- Improved Hidden Power test by @AsparagusEduardo and @hedara90, who recommended this implementation. in #6014
- Add known failing learnset cap test by @Bassoonian in #6046
- Fix Symbiosis Needing battler Argument + Tests by @ghoulslash in #6039
- Added some
TO_DO
tests by @hedara90 in #6140
Fixed
- Fixed Gimmick tests failing when running first by @AsparagusEduardo in #6001
- Ported Makefile fix from upcoming by @hedara90 and @mrgriffin Wrote the fix on upcoming in [#6007](https://github.com/rh-hideout/pokeemerald-expansio...
Version 1.10.1
## 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 expansion/1.10.1`.
🧬 General 🧬
Added
- Added
FONT_SHORT_NARROWER
by @AsparagusEduardo (commit originally by @agsmgmaster64) in #5101- Narrower font tweaks and font fitting fixes by @kittenchilly in #5782
Changed
- Adds Thief/Covet config to send stolen item to bag and Pickup config to pickup user's item in wild battles by @PhallenTree in #5829
Fixed
- trainerproc: Fix showing incorrect error context by @mrgriffin in #5769
- Fixes UB in caps.c by @AlexOn1ine in #5878
🗺️ Overworld 🗺️
Fixed
- Fix Off-by-One Error in Move Relearner by @iriv24 and @luckytyphlosion in #5778
- Fix HGSS dex sort orders working incorrectly by @ravepossum in #5790
- Egg cycle length fix by @hedara90 and @/BolaDeQueijo on discord discovered the issue. in #5828
- Fixed givemon not respecting perfect IVs for species by @AsparagusEduardo in #5873
- Also removed redundant
RemoveIVIndexFromList
function insrc/daycare.c
, so it usessrc/pokemon.c
's instead
- Also removed redundant
- Fix Script Scrollable Multichoice Arrow Positions by @ghoulslash in #5884
🐉 Pokémon 🐉
Changed
- Updated Ogerpon, Enamorus and Sinistcha sprites by @kittenchilly in #5793
- New Enamorus-Incarnate sprite by @kittenchilly in #5797
Fixed
- Fixes Wormadam define for teachable learnset script by @AlexOn1ine in #5783
- Fix "PlantCloak" references by @AsparagusEduardo in #5821
- Misc pokemon sprite fixes by @Cafeei in #5846
⚔️ Battle General ⚔️
Changed
- Adds Thief/Covet config to send stolen item to bag and Pickup config to pickup user's item in wild battles by @PhallenTree in #5829
Fixed
- Fixes items preventing other switch in effects by @AlexOn1ine in #5732
- Fix Pokemon with No Guard failing OHKO Moves into Semi-Invulnerable Pokemon by @iriv24 and @Cafeei in #5779
- Fix move category and category icon when PSS is off by @ravepossum in #5786
- Added the missing config to use new terrains by @hedara90 in #5792
- Fixes Shed Tail substitute health by @AlexOn1ine in #5826
B_LAST_USED_BALL
and.importance
by @AERDU in #5834- prevents
B_LAST_USED_BALL
from removing balls with.importance = 1
- prevents
- Fixes Quash-affected battlers having the wrong order for End Turn effects by @PhallenTree in #5838
- Fixes Cotton Down and Gulp Missile not interacting correctly with stat reduction prevention effects by @PhallenTree in #5841
- Fix Hit Escape moves giving Exp to the mon that switches in by @kittenchilly in #5844
- Fixed Wish triggering Disguise by @AsparagusEduardo in #5860
- Fixed
MOVE_EFFECT_FREEZE_OR_FROSTBITE
not being usable in battle scripts by @AsparagusEduardo in #5859 - Fixed Ally Switch breaking Illusion by @AsparagusEduardo in #5879
- Fixes gen3 Style Shadows out of place by @AlexOn1ine in #5880
- Fix Salt Cure script by @ghoulslash in #5895
- Fixes Eject Pack / Intimidate issue by @AlexOn1ine in #5902
- Adds Generational config for Magic Guard (Fix for Gen4+) by @AlexOn1ine in #5893
- Fixes Stance Change, Sleep Talk interaction by @AlexOn1ine in #5909
- Fixes Round doubling it's BP if previous Round failed by @AlexOn1ine in #5907
🤹 Moves 🤹
Fixed
- Fixes absorb still draining HP when flinched by @AlexOn1ine in #5814
- Fixes Tidy Up by @AlexOn1ine in #5819
- Ally Switch extra battlerId tracking by @ghoulslash in #5823
- Sheer Force fix and move effect cleanup by @AlexOn1ine in #5812
- New U-turn animation to fix visibility by @AlexOn1ine in #5910
🧶 Items 🧶
Fixed
- Prevent Key Items that open other menus from causing a crash if registered and used from the field by @iriv24 in #5810
- Fixes Clear Amulet displaying the wrong battler and Starting Status displaying the wrong message by @PhallenTree in #5831
- Fixes Room Service lowering the opposite mon in specific scenario by @AlexOn1ine in #5827
🤖 Battle AI 🤖
Fixed
- Fixed ace switching bugs by @Pawkkie and @iriv24 for their diligent testing and debugging support in #5922
🧹 Other Cleanup 🧹
- Converted Stance Change to proper Form Change + Tests by @AsparagusEduardo in #5749
- Removed testing strings for automatic line breaks by @hedara90 in #5757
- Added NBSP and up+down arrows to all fonts by @hedara90 in #5767
- Use
~
or{NBSP}
to insert a non-breaking space into a string.
- Use
- Palette cleanup by @hedara90 in #5661
- Resized some move anim palettes from 256 to 16
- Replace power checks with IS_MOVE_STATUS by @Bassoonian and @AsparagusEduardo in #5820
- Changes Various defines to an Enum by @AsparagusEduardo in #5840
- Fix
IS_MOVE_STATUS
regression by @Bassoonian in #5848 - Remove unused various by @Bassoonian in #5851
- Removed redundant call to FillPalBufferBlack in FRLG whiteout sequence by @AsparagusEduardo in #5854
- Improve README.md by @AsparagusEduardo in #5640
- Fix wrong value for NUM_MOVE_EFFECTS by @Bassoonian in #5913
- Renamed OW type effectiveness function for clarity by @AsparagusEduardo in #5917
- Renamed
GetTypeEffectiveness
toGetOverworldTypeEffectiveness
.
- Renamed
🧪 Test Runner 🧪
Changed
- Gravity fix + Sky Drop Test by @ghoulslash in #5780
- Added missing Belch tests by @AsparagusEduardo in #5881
- Added missing Move Effect TODO tests - Volume D by @AsparagusEduardo in #5887
- Comment out Ally Switch Illusion test by @AsparagusEduardo in #5901
- Fixed leaking tasks not showing up in summary by @AsparagusEduardo in #5890
- Setting Battle configs during tests by @AsparagusEduardo and @SBird1337, @mrgriffin in #5803
- Speed up tests in headless mode by @AsparagusEduardo and @SBird1337 for the original fast intro code. in #5889
- This introduced the config option
B_FAST_INTRO_NO_SLIDE
which removes the sliding into for battl...
- This introduced the config option
Version 1.10.0
## 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 expansion/1.10.0`.
🌋 REFACTORS 🌋
📜 = Uses a migration script.
- Changes Evolution methods to Enums by @AlexOn1ine in #4977
- Turn item hold effects into an enum by @Bassoonian in #5498
- Change
GET_MOVE_TYPE
to a function by @AlexOn1ine in #5090 - Created
COMPOUND_STRING
s for default player names by @fdeblasio in #5037 - Removed agbcc by @mrgriffin in #4994
- Refactor Frontier Brains by @fdeblasio in #5027
- Removed all instances of
gBitTable[x]
by @hedara90 in #5123 - Made
BuildColorMaps
redundant by using static tables by @pkmnsnfrn, @Deokishisu and @ShinyDragonHunter in #5289 - Removed
FRONTIER_BRAIN_SPRITES
and updatedTRAINER_SPRITE
,TRAINER_BACK_SPRITE
, andTRAINER_CLASS
by @fdeblasio in #5166 - Added
ShouldSwitch
result toAiLogicData
by @Pawkkie and @AlexOn1ine had the idea! in #5440 - Switch AI refactor + considers free switches by @Pawkkie in #5379
- Refactor
ShouldSwitchIfAllBadMoves
by @Pawkkie in #5452 - Updated Wring Out effects to match Eruption effects by @AsparagusEduardo in #5549
- Changed Wring Out/Crush Grip/Hard Press to use
power
instead ofargument
to determine its max power, just like how Eruption/Water Spout/Dragon Energy do it. - Also:
- Renamed
EFFECT_VARY_POWER_BASED_ON_HP
toEFFECT_POWER_BASED_ON_TARGET_HP
- Renamed
EFFECT_ERUPTION
toEFFECT_POWER_BASED_ON_USER_HP
- Renamed
- Changed Wring Out/Crush Grip/Hard Press to use
- Update battle messages to Gen 5+ standards by @kittenchilly in #3240
- Should switch refactor to facilitate switch prediction by @Pawkkie in #5466
- Unwind
TRAINER_CLASS
macro by @SBird1337 in #5611 - Refactors Absorb to use
Moveend
by @AlexOn1ine in #5670- For new absorbing moves an argument should be added in
moves_info.h
- For new absorbing moves an argument should be added in
- Changes name of
B_SCR_NAME_WITH_PREFIX
by @AlexOn1ine in #5675
🧬 General 🧬
Added
- Added performance counter by @hedara90 and @SBird1337 provided the actual code in #5284
- Added debug build target by @u8-Salem in #4817
- Added
AUTO_SCROLL_TEXT
andNUM_FRAMES_AUTO_SCROLL_DELAY
by @pkmnsnfrn and Mashanny in #5054 - Adds
SAVE_TYPE_ERROR_SCREEN
by @pkmnsnfrn and Anon822 in #5188 - Move Relearner and Renaming From Summary Screen by @ravepossum in #5513
- Automatic Line Breaks, somewhat even lines by @hedara90 and @AsparagusEduardo in #5689
- Automatically insert line breaks into a string with
BreakStringAutomatic
. - This function does not modify strings with existing line breaks.
- Remove existing line breaks from a string with
StripLineBreaks
.
- Automatically insert line breaks into a string with
Changed
- Removed agbcc by @mrgriffin in #4994
- Removed all instances of
gBitTable[x]
by @hedara90 in #5123 - Converted Mechadoll text to
COMPOUND_STRING
s by @fdeblasio in #5276 - New terrain bgs by @TheTrueSadfish in #5162
- Removed agbcc screenshots from
.gitignore
by @Bassoonian in #5538 - Set default battle shadow to Gen3 by @hedara90 in #5632
- Note: Trainerslides don't work properly with Gen4 shadows.
- Convert 3 variouses to
callnatives
by @AlexOn1ine in #5646
🗺️ Overworld 🗺️
Added
- FRLG+ whiteout message by @cawtds in #4967
- Dynamic Move Types in Summary Screen/Battle by @Galaxeeh in #5084
- Adds
OW_BERRY_IMMORTAL
by @pkmnsnfrn and @BuffelSaft in #5187 - (Default Off) Item Description Headers by @ghoulslash in #4767
- RTC-based wild encounters by @hjk321 in #5313
- Added
MB_X_Y_STAIR_WARP
metatile behaviors by @pkmnsnfrn and @ghoulslash in #5278 - Added Sideways Stairs by @ghoulslash in #4836
- Added
OW_UNION_DISABLE_CHECK
andOW_FLAG_MOVE_UNION_ROOM_CHECK
by @pkmnsnfrn and @Deokishisu in #5448 - Adds new scripting macros to increase developer quality of life by @pkmnsnfrn, @Pawkkie, @Lunos, and @ghoulslash in #5177
- Added more later gen fishing mechanics by @kittenchilly in #5518
Changed
- Created PokeNav
COMPOUND_STRING
s by @fdeblasio in #4983 - Added
I_REPEL_INCLUDE_FAINTED
config and behavior by @kittenchilly in #5239 - RTC-based wild encounters follow up by @AlexOn1ine in #5328
- Revert rtc based encounters by @AlexOn1ine in #5331
- Made
BuildColorMaps
redundant by using static tables by @pkmnsnfrn, @Deokishisu and @ShinyDragonHunter in #5289 - Added
OW_AUTO_SIGNPOST
and associated metatile behaviors by @pkmnsnfrn, @ghoulslash, and @ShinyDragonHunter in #5044 - Added support for overworld sprite gender differences + add all the sprites by @kittenchilly in #5394
Fixed
- Added some null pointer checks by @tertu-m in #5130
- Reset item flags on new game by @ghoulslash in #5363
- Follower female fix by @hedara90 in #5475
🐉 Pokémon 🐉
Added
- Added config to change Vivillon's breeding form by @kittenchilly in #4813
- Added back GBA sprites via config by @AsparagusEduardo and @AlexOn1ine for their help with script to migrate data from vanilla to our current
gSpeciesInfo
in #5206 - Added config to disable gender differences by @AsparagusEduardo in #5595
Changed
- Made perfect IV count into a granular setting by @AsparagusEduardo in #5115
- Updated species defines by @pkmnsnfrn and @mrgriffin in #5075
- Added support for overworld sprite gender differences + add all the sprites by @kittenchilly in #5394
- Renamed folders and symbols to match species defines by @AsparagusEduardo in #5581
- Burmy and Wormadam footprints were in a
plant
subfolder. They have been moved to the species root folder - Paldean Wooper's subfolder was named
wooper_paldean
instead of justpaldean
. This has been corrected. - Zen Mode Galarian Darmanitan's folder was located in
darmanitan/galarian/zen_mode
. This has been corrected todarmanitan/galar_zen
, alongside Galarian Standard Mode'sdarmanitan/galar_standard
. - Also updated Ogerpon's folders similarly.
- Renamed
SPECIES_PIKACHU_PARTNER_CAP
toSPECIES_PIKACHU_PARTNER
.
- Burmy and Wormadam footprints were in a
- Changing
EVO_NONE
from0xFFFE
to0
by @GhoulMage in #5547- There could be a case f...
Version 1.9.4
## 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 expansion/1.9.4`.
🌋 IMPORTANT 🌋
- This update integrates pret's latest Makefile changes, which rearranges the entire file in order to speed up compilation times overall. If you did any changes to it (such as installing Poryscript) and are having issues resolving the conflicts, keep expansion's version of Makefile and reapply your changes afterwards.
🧬 General 🧬
Fixed
- Fixed alignment errors in
EWRAM_INIT
and friends when using u8, u16, etc. by @aronson in #5512 - Update test LD script to respect 4 byte data section alignment by @aronson in #5517
- Fixed Missing
string_util.h
include inmini_printf.c
by @mrgriffin in #5572 - Fixed unnecessary dependency scanning for test build and test rom names by @ravepossum in #5594
- Fixed makefile: dependencies for
map_group_count.h
by @SBird1337 in #5648- Fixes an issue that caused the build to fail on updates to
src/debug.c
due to mismatched dependency.
- Fixes an issue that caused the build to fail on updates to
🗺️ Overworld 🗺️
Changed
- Followers sprite fixes by @Cafeei in #5669
- Follower fixes, Melmetal, Patrat, Woobat by @hedara90 in #5685
- Fixed Farfetch'd overworld sprite by @hedara90 in #5711
Fixed
- Fixed Berry mutations always generating a Persim Berry by @Bassoonian in #5504
🐉 Pokémon 🐉
Changed
- Changing
EVO_NONE
from0xFFFE
to0
by @GhoulMage in #5547- There could be a case for out of bounds errors if arrays or iterations are happening where you're using + 1 or - 1, as
EVO_FRIENDSHIP
used to be the first index although it started with 1.
- There could be a case for out of bounds errors if arrays or iterations are happening where you're using + 1 or - 1, as
- PokeCommunity sprites batch (October) by @kittenchilly in #5655
- Followers sprite fixes by @Cafeei in #5669
- Follower fixes, Melmetal, Patrat, Woobat by @hedara90 in #5685
- Fixed Farfetch'd overworld sprite by @hedara90 in #5711
Fixed
- Fixed
P_FRIENDSHIP_EVO_THRESHOLD
not checking for Gen 8 by @kittenchilly in #5503 - Fixed HGSS dex search printing wrong mon after selecting evos by @ravepossum in #5552
- Fixed 64px uncompressed followers by @hedara90 in #5601
- Deoxys Sprite/Animation Fixes by @SarnPoke in #5603
- Fixes Aegislash not reverting back by @AlexOn1ine in #5734
⚔️ Battle General ⚔️
Changed
- Fixed damage calc modifiers by @AlexOn1ine in #5604
Fixed
- Fixed Shiny Pokemon not being shiny after transforming with a gimmick by @hedara90 in #5573
- Handle showdowns apostrophe the same way as ASCII apostrophe by @cawtds in #5712
- Fixes Misty Terrain displaying wrong message by @AlexOn1ine in #5742
- Fixes Dynamax dynamic move type by @AlexOn1ine in #5739
🤹 Moves 🤹
Changed
- Fixed damage calc modifiers by @AlexOn1ine in #5604
- Updated ability popups for Skill Swap, Mummy/Lingering Aroma, Worry Seed, Simple Beam, fix Doodle/Role Play bugs by @PhallenTree in #5493
Fixed
- Fixed Follow Me failing in Single Battles for Gen 6/7 config by @AsparagusEduardo in #5542
- Fixed
AnimTask_HorizontalShake
uses for shaking screen in battle anims by @ghoulslash in #5562 - Fixed weather genie move anims and Springtide Storm targets by @ravepossum in #5553
- Fixes Magic Guard not preventing Salt Cure by @AlexOn1ine in #5583
- Fixes Dragon Tail using the effect twice during a Parental Bond attack by @AlexOn1ine in #5630
- Fixes Magic Coat message by @AlexOn1ine in #5645
- Fixes Take heart by @AlexOn1ine in #5658
- Fixed Floral Healing anim by @AlexOn1ine in #5733
- Fixes Population Bomb / Triple Kick missing message by @AlexOn1ine in #5747
- Changes Max Phantasm move anim script call by @AlexOn1ine in #5737
- Fixes Partner targeting and Acupressure/Ally Switch interaction by @AlexOn1ine in #5446
- Revival Blessing fixes + Using Lunar Blessing's animation by @ghoulslash in #5490
- Fixed curse + Protean interaction by @hedara90 in #5663
- Added Minimize interaction to Supercell Slam by @hedara90 in #5713
🎭 Abilities 🎭
Changed
- Fixed damage calc modifiers by @AlexOn1ine in #5604
Fixed
- Adds tests and Costar fix from PR #5526 by @AlexOn1ine in #5529
- Fixes Red Card / Eject Pack interaction with Emergency Exit by @AlexOn1ine in #5657
- Fixed curse + Protean interaction by @hedara90 in #5663
- Mimicry updates typing with
RemoveAllTerrains()
by @AERDU in #5666 - Updated ability popups for Skill Swap, Mummy/Lingering Aroma, Worry Seed, Simple Beam, fix Doodle/Role Play bugs by @PhallenTree in #5493
- Fixed curse + Protean interaction by @hedara90 in #5663
- Fixes Ice Face regression by @AlexOn1ine in #5678
- Fixes Neutralizing Gas crashes + adds missing interaction, Regenerator small fix by @PhallenTree in #5694
🧶 Items 🧶
Changed
- Removes duplicate Booster Energy code by @AlexOn1ine in #5656
Fixed
- Fixes Red Card / Eject Pack interaction with Emergency Exit by @AlexOn1ine in #5657
- Fixes Red Card / Eject Pack interaction by @AlexOn1ine in #5724
- Fixes gems triggering on confusion damage by @AlexOn1ine in #5723
- Fixes Kee Maranga and Enigma Berry by @AlexOn1ine in #5727
- Fixes Blunder Policy by @AlexOn1ine in #5722
- Fixes Rusted Shield/Sword allowed to be Knocked Off from Zamazenta/Zacian by @iriv24 in #5750
🤖 Battle AI 🤖
Fixed
- Fixed certain move data being cleared on turn end by @Pawkkie and @AlexOn1ine in #5488
- Global is used instead of passed var by @AlexOn1ine in #5546
- Fixes
dynamicMoveType
global not being reset during AI calcs by @AlexOn1ine in #5628
🧹 Other Cleanup 🧹
- Remove one redundant call of
SetAiLogicDataForTurn
inDoBattleIntro
by @AlexOn1ine in #5491 - Cleanup extraneous function in
battle_anim.h
by @hedara90 in #5506 - Add newline to move relearner string by @Bassoonian in #5523
- Fixed 10,000,000 Volt Thunderbolt name by @AsparagusEduardo in [#553...
Version 1.9.3
## 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 expansion/1.9.3`.
🌋 REFACTORS 🌋
📜 = Uses a migration script.
- Converted
settotemboost
command tocallnative
in #5418 - Removed unused
RESOURCE_FLAG_TRACED
in #5430 - Changed
MOVEEND_
defines to an enum in #5449
✨ Feature Branches ✨
merrp/aarant's Followers
Fixed
- Fixed Expansion-exclusive issue that caused trainers to not play their "pointing" animation when Followers were out during battle intro by @kittenchilly in #5406
⚔️ Battle General ⚔️
Changed
- Improved Mega evolution animation to make it a little smoother by @kleenxfeu in #4816
Fixed
- Fixed affection check for exp multiplier by @Bassoonian in #5421
- Fixed multiple Primal Reversions not occurring if multiple battlers fainted on the previous turn by @PhallenTree in #5430
🤹 Moves 🤹
Added
- Added missing
B_AFTER_YOU_TURN_ORDER
config by @PhallenTree in #5400- Gen 5-7: After You fails if the order remains the same after using After You.
- Gen 8+: After You no longer fails if the turn order remains the same after using After You.
- Added missing
B_QUASH_TURN_ORDER
config by @PhallenTree in #5400- Gen 5-7: If multiple Pokémon are affected by Quash, they move in the order they were affected by Quash.
- Gen 8+: If multiple Pokémon are affected by Quash, they now move fastest to slowest.
- Added missing updated
B_UPDATED_CONVERSION_2
by @wiz1989 in #5453- Gens 2-4: Conversion 2 changes the user's type to a type that is resistant/immune to the last move the user was hit by.
- Gen 5+: Conversion 2 changes the user's type to a type that resists the last move used by the selected target.
Fixed
- Fixed Scale Shot corrupting the move used on the next turn by @AlexOn1ine in #5397
- Fixed Growth's description not being updated based on
B_GROWTH_STAT_RAISE
by @nescioquid in #5398 - Fixed Quash not updating the battlers' actions correctly by @PhallenTree in #5400
- Cleanup by @PhallenTree in #5430
- Fixed Snatched Swallow not recovering HP if the Snatcher is not under the effect of Stockpile (should still heal) by @PhallenTree in #5430
- Fixed Counter users being damaged by Spiky Shield by @AlexOn1ine in #5402
- Fixed Electrified Dragon Darts not correctly avoiding targets with ability immunity (Volt Absorb, Motor Drive) by @PhallenTree in #5430
- Fixed Trace not activating a switch-in ability it traces (eg. Intimidate) by @PhallenTree in #5430
- Removed unused
RESOURCE_FLAG_TRACED
.
- Removed unused
- Fixed recoil damage not triggering healing berries by @AlexOn1ine in #5449
- Also changed
MOVEEND_
defines to an enum.
- Also changed
🎭 Abilities 🎭
Fixed
- Fixed Dancer activating even if the dance move is stolen by Snatch by @PhallenTree in #5430
- Fixed Ability popup when multiple Pokémon faint at the same time by @PhallenTree in #5430
- Multiple ability fixes by @PhallenTree in #5447
- Fixed Protosynthesis/Quark Drive sometimes not activating ability popup despite still gaining the boost as they should.
- Fixed Protosynthesis/Quark Drive activating on Transformed battlers.
- Fixed Protosynthesis activating despite Cloud Nine being present on the field.
- Fixed Quark Drive not activating if the battler is not grounded.
- Fixed Protosynthesis/Quark Drive/Beast Boost stat raise priority when multiple stats are tied for the highest one.
- Before:
Attack, Defense, Speed, Special Attack, Special Defense
. - After:
Attack, Defense, Special Attack, Special Defense, Speed
.
- Before:
🧶 Items 🧶
Fixed
- Fixed Ogerpon's Masks not increasing the power of moves by 20% by @AlexOn1ine in #5391
- Fixed Jubilife Muffin not working by @kittenchilly in #5444
- Fixed duplicating flute bug in double battles by @ghoulslash in #5436
🤖 Battle AI 🤖
Fixed
- Fixed Trick/Switcheroo giving AI score even if the opponent has no held item by @kittenchilly in #5412
- Various AI fixes in
AI_CalcMoveEffectScore
by @ghoulslash in #5474- Missing break from
EFFECT_ABSORB
switch case. - Using last used move for Mirror Move instead of predicted move.
- Missing break from
🧹 Other Cleanup 🧹
Changed
- Converted
settotemboost
command tocallnative
by @ghoulslash in #5418 - Removed trailing whitespace by @kittenchilly in #5455
- Removed binary match workaround for Rayquaza's tail in Sootopolis' cutscene by @hedara90 in #5480
Fixed
- Fixed potential uninitialized behavior in
ChangeOrderTargetAfterAttacker
by @AlexOn1ine in #5393 - Fallback on default BW map pop-up theme to reduce potential for error by @ravepossum in #5392
- Multiple typo fixes by @nescioquid in #5398
- VS Seeker documentation fix by @Bassoonian in #5415
🧪 Test Runner 🧪
Added
- Added missing After You and Quash tests by @PhallenTree in #5400
Changed
- Improved Tangling Hair test to make sure that chained effects do not overwrite relevant battler IDs by @ghoulslash in #5423
- Improved Full Heal item tests by @kittenchilly in #5444
Fixed
- Fixed Wake-Up Slap test typo by @Pawkkie in #5442
- Fixed test assumption fail summary fields using more memory than needed by @AsparagusEduardo in #5443
- Fixed issue with
PASSES_RANDOMLY
in AI tests by @Pawkkie in #5486
New Contributors
- @nescioquid made their first contribution in #5398
- @kleenxfeu made their first contribution in #4816
- @wiz1989 made their first contribution in #5453
Full Changelog: expansion/1.9.2...expansion/1.9.3
Version 1.9.2
## 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 expansion/1.9.2`.
🌋 REFACTORS 🌋
📜 = Uses a migration script.
- Remove unused
BattleScript_WindPowerActivatesEnd2
in #5257 - Refactored in-battle disobedience to fix bug in #5245
💥 Hardlock/Softlock/Crash/Compiling fixes 💥
- Fixed hardlock when Hyperspace Fury is used by Hoopa Unbound by @AlexOn1ine in #5237
- Fixed compile error when
OW_POKEMON_OBJECT_EVENTS
isTRUE
butP_HISUIAN_FORMS
isFALSE
around Basculin by @hjk321 in #5256 - Fixed hardlock when the AI cannot choose moves due to its opponent having Wonder Guard by @Pawkkie and Wiz in #5317
- Fixed multiple Pledge move hardlocks
- Fixed potential hardlock when attempting to use Pledge moves on the same turn that the user would wake up by @PhallenTree in #5330
- Fixed hardlock when the opponent's combo doesn't happen when cancelled by sleep by @hedara90 and @PhallenTree in #5339
- Fixes hardlock when the opponent's combo doesn't happen when cancelled by freeze by @PhallenTree in #5340
- Fixed hardlock when the opponent's combo doesn't happen when cancelled by Powder by @hedara90 in #5341
🧬 General 🧬
Fixed
- Fixed loading into the wrong version of a map after saving in areas with multiple layouts by @hedara90 in #5347
🐉 Pokémon 🐉
Added
- Added
OVERWORLD_SET_ANIM
macro to allow using custom animation tables for Overworld Pokémon by @hedara90 in #5309- Added asymetrical Farfetch'd sprites using a previously unused table from merrp's followers branch.
- Added unique sprites for overworld Pumpkaboo and Gourgeist forms by @hedara90 in #5390
- Added missing Sirfetch'd competitive alias (
SPECIES_SIRFETCH_D
) by @cawtds in #5283 - Added Paldean Wooper and Clodsire overworld sprites by @Cafeei in #5277
- Added missing Gen 9 Overworld sprites by @Liamjd14 in #5304
- Original sprites by Darkus_Shadow, Princess-Phoenix, shaderr31, Molfang62, CarmaNekko, EduarPokeN, Larryturbo, TyranitarDark and Anarlaurendil
- Sources:
- Added missing overworld sprites by @Liamjd14 in #5336
- New Sprites:
- Oricorio Pom Pom/Pa'U/Sensu, Zygarde 10%/Complete and Original Color Magearna
- Credits to: Princess-Phoenix, Larryturbo, Kidkatt, Zender1752 and SageDeoxys.
- Black/White Kyurem
- Credits to: Larryturbo.
- Shaymin Sky and Therian Tornadus/Thundurus/Landorus
- Credits to: @Liamjd14
- Oricorio Pom Pom/Pa'U/Sensu, Zygarde 10%/Complete and Original Color Magearna
- Using their base form's sprites
- Totem Raticate/Mimikyu/Marowak and Partner Pikachu/Eevee
- New Sprites:
- Added Added asymmetrical overworld sprites by @Liamjd14 in #5336
Changed
- Improved Garganacl and Naclstack battle sprites by using the ones from @CyanSMP64's repo by @kittenchilly in #5142
- Improved both shiny Indeedee by @Cafeei in #5285
- Shiny Combusken now uses its Gen8+ palette by @Cafeei in #5333
Fixed
- Reenabled unused female Indeedee overworld sprite by @Cafeei in #5285
- Fixed G-Max Corviknight and Centiskorch's expanded names by @PhallenTree in #5296
- Fixed G-Max Cinderace back sprite by @hedara90 in #5295
- Fixed Shiny Mothim' by @Cafeei in #5333
- Fixed multiple battle sprite issues by @kittenchilly in #5142
- Sprite issues:
- Bombirdier, Mega Absol/Aerodactyl/Latias/Latios/Salamence, Orthworm and Veluza.
- Shiny issues:
- Bombirdier, Kilowattrel, Landorus, Magearna, Mega Diancie/Medicham, Galarian Ponyta, Shroodle, Spidops and Wattrel.
- Sprite issues:
- Fixed multiple overworld Pokémon sprites - Part 1 by @Cafeei in #5241
- "Blinking pixels":
- Dwebble, Krookodile, Servine, Throh and Vulpix.
- Shiny Palettes
- Crustle, Excadrill, Lillipup, Serperior, Servine, Sigilyph, Swoobat, Tranquil and Venipede.
- Misc fixes:
- Archen, Basculin, Blitzle, Crustle, Escavalier, Krokorok, Krookodile, Sawsbuck, secondary, Serperior, Snivy, Throh, Woobat, Zebstrika
- "Blinking pixels":
- Fixed multiple overworld Pokémon sprites - Part 2 by @Cafeei in #5333
- Palette Fixes:
- Shiny Riolu/Snover, Oshawott, Kabutops, Shieldon, Kingler and Groudon.
- Fixed "Blinking pixels":
- Abomasnow, Aggron, Alakazam, Ariados, Articuno, Azumarill, Barboach, Bayleef, Bibarel, Blastoise, Celebi, Charmeleon, Cherrim, Chinchou, Cloyster, Corphish, Corsola, Crawdaunt, Cubone, Dewott, Doduo, Dusknoir, Electabuzz, Espeon, Exeggcute, Farfetch'd, Feraligatr, Flaafy, Flareon, Floatzel, Furret, Gastly, Girafarig, Giratina, Gligar, Gloom, Golbat, Grumpig, Hariyama, Heatran (just reduced), Hoppip, Jolteon, Jumpluff, Kricketot, Larvitar, Leafeon, Lileep, Lumineon, Luxio, Luxray, Machamp, Magneton, Mantine, Mantyke, Marowak, Meowth, Mesprit, Mew, Mewtwo, Mime Jr, Moltres, Numel, Oshawott, Phione, Pinsir, Politoed, Porygon-Z, Probopass, Quilava, Qwilfish, Rampardos, Rapidash, Regirock, Sceptile, Scizor, Seel, Shieldon, Shiftry, Slowking, Smoochum, Sneasel, Spheal, Steelix, Sudowoodo, Suicune, Swellow, Swinub, Tentacruel, Togekiss, Togepi, Vaporeon, Vibrava, Wartortle, Wooper, Yanma, Yanma, Yanmega, Zangoose, Zapdos, Zubat
- Misc. Sprite Fixes: Dewott, Misdreavus, Oshawott, Torkoal and Victini.
- Palette Fixes:
- Overworld sprite fixes by @Liamjd14 (with help from @hedara90 to solve conflicts) in #5334
- Palette Fixes: Shieldon.
- Misc. Sprite Fixes Torkoal.
- "Blinking pixels":
- Ambipom, Armaldo, Crawdaunt, Crobat, Donphan, Flaaffy, Flygon, Grovyle, Hoppip, Igglybuff, Illumise, Jumpluff, Ledian, Ledyba, Mamoswine, Mantine, Marshtomp, Meganium, Mightyena, Miltank, Numel, Prinplup, Raikou, Roserade, Skarmory, Skiploom, Spinarak, Staraptor, Stunky, Torkoal, Wooper, Xatu, Yanma
- Overworld Pokémon sprite changes by @Liamjd14 in #5336
- Fixed "blinking pixels":
* Alolan Graveler/Golem/Alolan/Ninetales
* Dawn Wings Necrozma
* Hisuian Growlithe/Arcanine
* Winter Sawsbuck - Added missing Shiny Palettes
- Calyrex Ice/Shadow Rider, Origin Dialga/Palkia, White-Striped Basculin, Therian Enamorus and Low-Key Toxtricity.
- Removed Gigantamax Low-Key Toxtricity using base Low-Key follower sprites.
- Fixed Shiny palettes
- Alolan Marowak/Raichu, Eternal Flower Floette, Flabébé (All), Galarian Ponyta/Rapidash
- Typhlosion-Hisui follower shiny stomach color wrong - done
- Other sprite/palette fixes
- Alolan Exeggutor/Marowak/Persian/Raichu/Sandshrew, Hisuian Sligoo/Goodra and Winter Sawsbuck.
- Fixed "blinking pixels":
⚔️ Battle General ⚔️
Changed
- Updated Damage Category icons to match Gen6+ colors by @kittenchilly in #5080
Fixed
- Fixed Slateport Battle Tent/Battle Factory issues by @SarnPoke in #5281
- Choosing the "SWAP" option no longer shows invalid Pokémon ("??????????").
- Reloading after choosing "REST" no longer resets the player's challenge party to invalid Pokémon ("??????????").
- Fixed Starting Status happening Wild Battles from a previous Trainer Battle by @PhallenTree in #5248
- Fixed bugged behavior caused by Z-Moves and disobedience by @hedara90 in #5245
- Fixed Entry Hazards targeting wrong side of the field if the opponent fainted by @PHalle...
Version 1.9.1
## 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 expansion/1.9.1`.
🌋 REFACTORS 🌋
- Removed
ENDTURN_RETALIATE
in #5182 - Removed
ENDTURN_WEATHER_FORM
andallowedToChangeFormInWeather
in #5171
🧬 General 🧬
Added
- Move Relearner UI now displays move category by @kittenchilly in #5081
Fixed
- Fixes wrong padding field in
SpeciesInfo
struct by @AlexOn1ine in #5139 - Fixed specific tiles changing to PC tiles when using Box Link/Debug PC option by @cawtds in #5141
🐉 Pokémon 🐉
Fixed
- Fixed stray transparent pixels in Urshifu sprites by @hedara90 in #5071
- Fixed
bufferspeciesname
not working for species IDs over 1023 by @SBird1337 in #5088 - Fixed overworld Pokémon breaking for species IDs above 1535 by @hedara90, @mrgriffin and
@SarnPoke in #5179 - Fixed overworld palettes for multiple species by @hedara90 in #5107
- Fixed/added missing Pokémon sprites and palettes by @Cafeei in #5126
- Overworld:
- Shiny Sneasler, Morelul, Bounsweet, Bruxish, Guzzlord, Regieleki, Zacian, Zamazenta
- Hisuian Zorua sprite
- Shiny Summer Sawsbuck
- Shiny Galarian Yamask, Darumaka, Zigzagoon, Zapdos, Ponyta, Rapidash, Slowpoke, Farfetch'd, Weezing, Mr. Mime, Articuno, Moltres, Slowking, Stunfisk, Darmanitan
- Shiny Hisuian Sneasel, Qwilfish, Samurott,
- Battle sprites:
- Shiny Sneasler, Cursola, Pincurchin, Runerigus
- Shiny Galarian Yamask, Darumaka
- Overworld:
- Fixed Unown Overworld follower sprites by Sarn by @hedara90 in #5146
⚔️ Battle General ⚔️
Changed
- Set new animation particles by default to off by @AlexOn1ine in #5161
Fixed
- Fixed speed ties by @mrgriffin in #4780
- Fixed Defiant/Competitive not working after the battler enters the field with a Court Changed Sticky Web on its side of the field by @PhallenTree in #5093
- Fixed
trainerproc
not properly parsing line markers, which caused erroring lines to be offset by @mrgriffin in #5122 - Fixed initial Zigzagoon battle being able to use a Gimmick by @AlexOn1ine in #5129
- Fixed incorrect rounding when
maxHP
is lower than 16 by @hedara90 in #5183- This caused these Pokémon to not be hurt by Sandstorm/Hail.
- Fixes UB in
Cmd_averagestats
by @mrgriffin and @AlexOn1ine in #5191
🤹 Moves 🤹
Added
- Added move animations for multiple moves by @TheTrueSadfish in #5159
- Spin Out, Mortal Spin, Fillet Away, Flower Trick, Make It Rain, Shed Tail, Hyper Drill, Twin Beam, Comeuppance, Blood Moon, Fickle Beam, Thunder Clap, Hard Press, Dragon Cheer, Malignant Chain.
- Purple chains by ogwon on Discord, beam by @TheTrueSadfish and livra on Discord.
Changed
- Adjusted Raging Bull's animation to include Brick Break's wall break effect by @TheTrueSadfish in #5159
Fixed
- Fixed non-grass Ivy Cudgel breaking battle UI by @hedara90 in #5117
- Fixes Stomping Tantrum effect not doubling power in certain situations by @AlexOn1ine in #5140
- Fixed Fickle Beam's description by @PhallenTree in #5093
- Fixed Revelation Dance interactions with Z-Move, Roost and typeless mons by @PhallenTree in #5133
- Fixes Poltergeist missing its accuracy check by @AlexOn1ine in #5168
- Fixed Fickle Beam not showing its message by @TheTrueSadfish in #5159
- Fixed Retaliate not working correctly if the party member fainted via passive damage during end of turn by @hedara90 in #5182
- Fixed Flame Burst's passive damage being based off current HP rather than Max HP by @hedara90 in #5182
- Fixed using Population Bomb with Loaded Dice printing garbage text by @kittenchilly in #5195
🎭 Abilities 🎭
Added
- Added in-battle effect of Pickup by @PhallenTree in #5170
Fixed
- Fixes Purifying Salt not halving damage for dynamic move types by @AlexOn1ine in #5145
- Fixed Dancer-called moves not changing their type based on the new user by @PhallenTree in #5133
- Fixed Ice Face not regenerating after switching in during Hail/Snow by @hedara90 in #5171
- Fixed Wind Rider not activating when switched in while Tailwind is active on the user's side of the field activation and tests by @PhallenTree in #5207
🧶 Items 🧶
Added
- Added Dowsing Machine's expanded name by @kittenchilly in #5134
Fixed
- Fixes Booster Energy not increasing speed by @AlexOn1ine in #5167
🤖 Battle AI 🤖
Changed
- Adjusted AI calculation for Triple Kick Effect by @AlexOn1ine in #5127
Fixed
- Fix Switch AI Bug: AI never switching out when it could be OHKO'd by @Pawkkie in #5089
- Adds missing AI checks for poltergeist by @AlexOn1ine in #5189
🧹 Other Cleanup 🧹
IsValidForBattle
function formatting by @AlexOn1ine in #5085- Opportunist/Mirror Herb cleanup by @AlexOn1ine in #5120
- Cleanup by @AlexOn1ine in #5158
- Remove trailing whitespace (master) by @AsparagusEduardo in #5174
🧪 Test Runner 🧪
Added
- Added missing Move Effect TODO tests - Volume C by @AsparagusEduardo in #5094
- Added multiple missing ability TODO tests by @AsparagusEduardo in #5163
- Added missing Guard/Power split tests by @mrgriffin and @AlexOn1ine in #5191
- Added missing Harvest and Pickup tests by @PhallenTree in #5170
- Added missing Round tests by @hedara90 in #5196
- Added missing Wind Rider tests by @PhallenTree in #5207
Changed
- Fixed G-Max Replenish not considering Gen 5+ Pickup by @PhallenTree in #5170
Fixed
- Fixed
RandomUniformExcept
not being exclusive on the higher boundary by @PhallenTree in #5170
📚 Documentation 📚
- Added guide to running documentation website locally by @AsparagusEduardo in #5059
- How to docs and fixes to be added to the mdbook documentation site by @anrichtait in #5070
- Improved 1.8 ⇒ 1.9 non-Competitive syntax migration instructions by @mrgriffin in #5079
📦 Branch Synchronisation 📦
pret
- 5th of August in #5098
- Fixed bottom half o...
Version 1.9.0
## 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 expansion/1.9.0`.
🌋 REFACTORS 🌋
📜 = Has a migration script.
- agbcc has been deprecated
- Added migration script README
- Removed Gen 9 settings for out-of-battle abilities
- 📜Customizable Frontier Pokémon sets
- Replaced VARARG_8 uses with recursive macros
- 📜Competitive-formatted parties
- Terastallization
- Combined weather set commands
- Full official GF names for species/items/moves/types
- Automatically display TM/HM icons based on their move
- Set
GiveBoxMonIntialMoveset_Fast
as default - Changed Battle Frontier validation to species flag
- Replaced HP checks with
IsBattlerAlive
- Removed redundant
MOVE_EFFECT_SP_ATK_TWO_DOWN
- 📜Removed
gItemIconTable
- 📜Egg Move Refactor
- Adjusted Ate-Ability code a bit to make it more readable
- Type Info refactors
- merrp/aarant's Followers
- Refactored residual damage to be more readable and less prone to bugs
🧬 General 🧬
Added
-
Added migration script README by @Bassoonian in #4719
-
Customizable Frontier Pokémon sets by @ghoulslash in #4313
FacilityMon
has been removed in favor of using regularTrainerMon
.- Removed
BATTLE_FRONTIER_ITEM_x
item constants in favor of using regularITEM_x
constants. - New
CreateFacilityMon
to handle duplicated code.- Added
FLAG_FRONTIER_MON_FACTORY
that replaces Return for Frustration and sets frienship to 0. Used in the Battle Factory.
- Added
- Converted data in
src/data/battle_frontier/battle_frontier_mons.h
andsrc/data/battle_frontier/battle_tent.h
, for example:.itemTableId = BATTLE_FRONTIER_ITEM_CHOICE_BAND,
->.heldItem = ITEM_CHOICE_BAND,
.evSpread = F_EV_SPREAD_SPEED | F_EV_SPREAD_ATTACK,
->.ev = TRAINER_PARTY_EVS(0, 252, 0, 252, 0, 0),
- Migration script available in
migration_scripts/egg_move_refactor.py
by @AlexOn1ine in #5040
- Added documentation to
STATIC_ASSERTS
used by theBoxPokemon
after 1.8.0 by @pkmnsnfrn in #4294 -
Competitive-formatted parties by @mrgriffin in #3545
- Can be disabled by setting
COMPETITIVE_PARTY_SYNTAX
toFALSE
ininclude/config/general.h
. If migrating from 1.8, remove the first and last lines fromsrc/data/trainers.h
(const struct Trainer gTrainers[] = {
and};
respectively). - Introduces
trainerproc
, a tool which converts Competitive-formatted parties into Trainer Control-formatted parties. - If you made custom changes to the following files and want to use this new format, Do not accept the incoming changes for them. Instead, use the migration script present in
migration_scripts/convert_parties.py
:src/data/trainers.h
src/data/trainer_parties.h
src/data/battle_partners.h
src/data/partner_parties.h
- Before:
After:
static const struct TrainerMon sTestParty1[] = { { .species = SPECIES_WOBBUFFET, .ball = ITEM_MASTER_BALL, .ability = ABILITY_TELEPATHY, .friendship = 42, .gender = TRAINER_MON_FEMALE, .heldItem = ITEM_ASSAULT_VEST, .isShiny = TRUE, .iv = TRAINER_PARTY_IVS(25,26,27,28,29,30), .ev = TRAINER_PARTY_EVS(252, 0, 0, 252, 4, 0), .lvl = 67, .moves = {MOVE_AIR_SLASH, MOVE_BARRIER, MOVE_SOLAR_BEAM, MOVE_EXPLOSION}, .nature = NATURE_HASTY, .nickname = COMPOUND_STRING("Bubbles") }, { .species = SPECIES_WOBBUFFET, .ability = ABILITY_SHADOW_TAG, .lvl = 5, }, }; static const struct Trainer sTestTrainer1 = { .trainerName = _("Test1"), .party = TRAINER_PARTY(sTestParty1), };
=== 0 === Name: Test1 Bubbles (Wobbuffet) (F) @ Assault Vest Hasty Nature Level: 67 Ability: Telepathy IVs: 25 HP / 26 Atk / 27 Def / 29 SpA / 30 SpD / 28 Spe EVs: 252 HP / 4 SpA / 252 Spe Happiness: 42 Shiny: Yes Ball: Master Ball - Air Slash - Barrier - Solar Beam - Explosion Wobbuffet Level: 5 Ability: Shadow Tag
- You can add comments by using
//
or/* ... */
, like in C. - You're allowed to write
SPECIES_PIKACHU
instead ofPikachu
(etc etc) if you want. - In addition to the migration script described above, you can add the following to at the top of the
src/data/trainers.party
file to change how the tool interprets the file:#pragma trainerproc ivs explicit
— requires anIVs:
line for every Pokémon instead of defaulting to 31s.#pragma trainerproc ivs <IVs>
— changes the default IVs.#pragma trainerproc level explicit
— requires aLevel:
line for every Pokémon instead of defaulting to 100.#pragma trainerproc level <level>
— changes the default level.- During the merge you could choose to keep your original
src/data/trainers.h
andsrc/data/trainer_parties.h
and then run the conversion script to update thesrc/data/trainers.party
,make
, then check in all three files. Alternatively don't run the conversion script and turn offCOMPETITIVE_PARTY_SYNTAX
ininclude/config.h
.
- Added synonyms for competitive/CFRU species defines, eg:
SPECIES_PONYTA_GALAR
forSPECIES_PONYTA_GALARIAN
SPECIES_MAUSHOLD_FOUR
forSPECIES_MAUSHOLD_FAMILY_OF_FOUR
SPECIES_CHARIZARD_GMAX
forSPECIES_CHARIZARD_GIGANTAMAX
- And so.
- TODO:
- Support
Hidden Power:
to set IVs appropriate for a particular Hidden Power type. - Consider case-insensitivity in the parser.
- Support
- Cleanup and bugfixes:
- By @mrgriffin in #4362
- By @AsparagusEduardo in #4366
- By @Bassoonian in #4374
- By @LOuroboros in #4397
- By @Bassoonian in #4421
- By @AlexOn1ine in #4431
- By @mrgriffin in #4442
- By @fdeblasio in #4830
- By @mrgriffin in #4969
- By @hedara90 in #4734
- By @innocenthedgehog in #4988
- By @mrgriffin in #4990
- By @mrgriffin in #5035
- Can be disabled by setting
- Added
OW_PC_MOVE_ORDER
config to use future generation's menu order for th...