Commit graph

993 commits

Author SHA1 Message Date
PhallenTree
ab9f8e69fb
Fixes Stalwart/Propeller Tail, Life Orb on confusion, Remove Status wrong battlescripts (#5061)
* Fix swapped BattleScripts in MoveEffectRemoveStatus for Freeze/Frostbite

* Fix Life Orb damaging the user if they hit themselves in confusion

* Fix Stalwart/Propeller Tail not ignoring redirection from Storm Drain/Lightning Rod

* Parametrize Species
2024-07-30 10:36:22 +02:00
Eduardo Quezada
54c19af037
Fixed B_HEAL_BELL_SOUNDPROOF checking for Gen9+ instead of Gen8+ (#5060) 2024-07-29 16:28:32 +02:00
Eduardo Quezada
18aff2db3b Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	asm/macros/battle_anim_script.inc
#	data/battle_anim_scripts.s
#	include/constants/battle_anim.h
#	src/battle_anim.c
#	src/data/battle_anim.h
2024-07-27 16:26:37 -04:00
Eduardo Quezada
bb471746d6
Renamed EVO_DEFEAT_WITH_ITEM to EVO_DEFEAT_THREE_WITH_ITEM (#5046) 2024-07-27 21:41:05 +02:00
Eduardo Quezada
1e8773356c
Changed EVO_OVERWORLD_STEPS to use an EWRAM variable (#5047)
* Changed EVO_OVERWORLD_STEPS to use an EWRAM variable

* Fixed PC swapping not resetting the follower steps
2024-07-27 20:48:59 +02:00
AlexOn1ine
8b2774e07d Fixes cantBeSurpressed ability check for breakable abilities 2024-07-26 20:19:58 +02:00
Eduardo Quezada
cc00446eb8 Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	src/data/graphics/pokemon.h
#	src/data/pokemon/species_info/gen_9_families.h
2024-07-26 09:42:52 -04:00
PhallenTree
7b2914c046
Fix Mold Breaker-like abilities, AI Move Accuracy function, Fury Cutter with Parental Bond (#5030)
* Fix GetBattlerAbility not checking correct battler's action

* Fix Fury Cutter counter being incorrectly incremented on 2nd hit of Parental Bond + test

* Fix AI_SetMoveAccuracy only using attacker's ability

* Review
2024-07-24 19:36:55 +02:00
hedara90
3f4b4adae5
Updated reference to config location to new location (#5026)
Co-authored-by: Hedara <hedara90@gmail.com>
2024-07-23 14:09:32 -04:00
Eduardo Quezada
ae48293806 Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	src/battle_ai_util.c
2024-07-22 23:06:44 -04:00
hedara90
84e249f98a
Some tera tests (#5020)
* Added tests for Terapagos/tera interactions

* Fixed missed things

* Fixed Terapagos Stellar boost (by Alex)

---------

Co-authored-by: Hedara <hedara90@gmail.com>
2024-07-22 20:43:17 +02:00
PhallenTree
aac6ebd3d7
Fixes Sleep Talk, Toxic Debris and Jaboca/Rowap Berry issues; Adds Sleep Talk tests (#5009)
* Fix Sleep Talk failing with choice item; Added some Sleep Talk tests

* Fix Jaboca, Rowap berries recording Rocky Helmet Effect; Fix Toxic Debris not checking side's toxic spikes count properly in Doubles
2024-07-21 21:24:05 +02:00
sneed
3fa6bf46db
Test battlers always have their forced abilities (#4707)
* Test battlers always have their forced abilities

* indentation
2024-07-21 21:20:39 +02:00
Eduardo Quezada
0b02527e5c Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	test/test_runner.c
2024-07-21 13:36:07 -04:00
Eduardo Quezada
9d5e253867
Improved Test Runner Summary (#4641)
* Filename in list (no proper sorting yet)

* Line number and message in error list + removed sorting

* Style adjustment

* Added missing file/line number to "expected N passes/successes"

* Fixed Known Failing Passing test list

* Separated test list from totals

* Assumption fails list

* Better names

* Filename for KNOWN_FAILINGs passing

* Moved total back to the bottom

* Spaces correction

* Fixed test list count

* Source file for Alloc fails on tests

* Moved sourceLine from BattleTest to Test struct

* Fixed assumptions failed "and more" counter

* Fixed ASSUMPTION block not printing their line numbers

* Fixed when stopLine is printed

* Renamed stopLine to failedAssumptionsBlockLine
2024-07-20 18:22:40 +02:00
Eduardo Quezada
98eb4e5027 Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	asm/macros/battle_script.inc
#	include/constants/battle_string_ids.h
#	src/battle_ai_switch_items.c
#	src/battle_main.c
#	src/battle_script_commands.c
#	src/battle_util.c
#	src/frontier_util.c
#	test/battle/ai/ai.c
2024-07-19 09:20:05 -04:00
Bassoonian
f2311b4c97
Add trainer class ball test (#4999) 2024-07-19 12:30:06 +02:00
Alex
552e2768da
Fixes to Opportunist and Mirror Herb adjustments (#4928)
* Replace Opportunist todo tests with proper tests

* add failing test

* desc

* Fixes to Opportunist and Mirror Herb adjustments

* more tests

* some fixes

* first turn events switch

* simple enum + revert test desc
2024-07-19 11:01:46 +02:00
fakuzatsu
0625c90277
fix tests when B_USE_FROSTBITE is TRUE (#4986) 2024-07-17 23:23:52 +02:00
iriv24
684e8af181
Vanilla species names fit in health box without narrowing (#4979) 2024-07-15 16:01:36 +01:00
Pawkkie
b5a7185841
Fix U-Turn With Ace Mon (#4748) (#4972)
* Fix U-Turn With Ace Mon

* ASSUME for test
2024-07-15 09:19:41 +02:00
Eduardo Quezada
2b40e79ac3 Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	include/battle_util.h
#	src/battle_ai_main.c
2024-07-14 22:44:00 -04:00
Pawkkie
b084dcd8d3
Fix Upper Hand being used blindly (#4973) 2024-07-14 22:00:51 +02:00
sneed
6aa308e1d8
EFFECT_PHOTON_GEYSER and restored EFFECT_SHELL_SIDE_ARM work for physical moves (#4923) 2024-07-14 15:35:11 +02:00
Pawkkie
c721f1b04a
Smarter Focus Punch and Substitute (#4952)
* Smarter Focus Punch

* Smarter Substitute, review feedback

* Use HasAnyKnownMove instead of isFirstTurn

* When are we removing agbcc again

* Use HasMoveEffect
2024-07-14 08:29:27 +02:00
Bassoonian
f6d2b2861a
Fix Tera indicators (#4960)
* Fix Tera indicators

* Better fix
2024-07-13 23:08:43 +02:00
Alex
5e2e2e9fce
Minor shouldUseGimmick refactor (#4962) 2024-07-13 20:56:18 +02:00
Alex
edc883d038
Refactors residual damage (#4945)
* Refactors damage non types

* correction

* Refactor weather damage script

* new line

* correction

* there was a hail test already

* ndebug

* add sandstorm test

* Update src/battle_script_commands.c

Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>

---------

Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>
2024-07-13 12:12:40 +02:00
Alex
7b6ff1b560
Fixes Trace turn order (#4941)
* Fixes Trace turn order

* Update battle_script_commands.c

* Update test/battle/ability/trace.c

---------

Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>
2024-07-10 22:29:26 +02:00
Eduardo Quezada
fb708b7ed3 Merge branch '_RHH/master' into _RHH/upcoming 2024-07-10 10:05:10 -04:00
hedara90
76d760041c
Flame Burst + Substitute fix (#4939)
Co-authored-by: Hedara <hedara90@gmail.com>
2024-07-10 13:58:32 +02:00
Alex
637a7072f0
Add missing adjust scores (#4925)
* Add missing adjust scores

* ai log made the test fail
2024-07-08 12:05:32 +02:00
Eduardo Quezada
de609a2f5b
Added missing redirect abilities Gen 3-4 config (#4920)
* Added missing redirect abilities Gen 3-4 config

* Combined 3 Battle Script Natives into 1

* Cleaner FindMonThatAbsorbsOpponentsMove
2024-07-07 09:52:59 +02:00
sneed
60c7588532
IsFinalStrikeEffect uses effect instead of move (#4917)
* IsFinalStrikeEffect uses effect instead of move

* Update test/battle/ability/parental_bond.c

---------

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2024-07-06 09:41:19 +02:00
Eduardo Quezada
fcdc9ed65a Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	src/battle_util.c
#	src/data/pokemon/species_info/gen_7_families.h
#	test/battle/ability/download.c
#	test/battle/ability/intimidate.c
#	test/battle/ability/supreme_overlord.c
#	test/battle/ability/zero_to_hero.c
#	test/battle/ai/ai.c
#	test/battle/move_effect/plasma_fists.c
2024-07-05 14:25:25 -04:00
Alex
dd7b735211
Fixes Grassy Terrain heal turn duration (#4903) 2024-07-03 22:53:15 +02:00
Alex
594633aa15
Remove Duplicate ai code from battle_ai_util.c (#4883)
* Remove Duplicate ai code from battle_ai_util.c

* Add GetBattlerAbility in toxic self check
2024-07-03 10:48:31 +02:00
Pawkkie
47426406c3
Ai tests folder (#4898)
* AI folder for tests

* Move sequence switching tests
2024-07-02 17:49:04 +02:00
Pawkkie
7e167f0b3c
Add AI_FLAG_SEQUENCE_SWITCHING (#4878)
* AI_FLAG_BAD_SWITCHING

* Cleanup and tests, U-Turn / Baton Pass / Parting Shot aren't working properly

* Fix U-Turn etc. tests

* Test overhaul with Egg's suggestions

* Add EFFECT_HIT_SWITCH_TARGET to tests

* Review feedback

* Re-review feedback
2024-07-01 08:53:07 +02:00
sneed
75be596933
fix sticky hold softlock (#4885) 2024-06-29 18:54:58 +02:00
Pawkkie
d1ca1f667f
Smarter Choice AI for Status Moves (#4872)
* Smarter choice item usage

* Clarify test name / line ending

* Review feedback

* Review feedback pt. 2
2024-06-28 09:04:24 +02:00
DizzyEggg
cd5a862b95
Fix Megas gaining abilities after fainting (#4873) 2024-06-26 23:44:01 +02:00
DizzyEggg
f2e8482488
Fix how switch-in effects are played out after multiple faints in the same turn (#4864)
* Multiple switch-ins after fainting

* empty new lines

* Fix failing tests
2024-06-24 20:37:47 +02:00
cawtds
a8ae1a0342
added missing minior description + test for missing descriptions (#4858) 2024-06-24 12:19:12 +02:00
sneed
ec75a75498
Update plasma_fists.c (#4865) 2024-06-23 21:17:58 +02:00
AgustinGDLV
9797640dff
Gimmick Refactor (#4449)
* consolidated gimmick checks, triggers, communication, and activation; updated test runner

* fixed improper use of .usableGimmick

* cleaning up battle_dynamax.c, changing function args to u32s

* fixed '#ifdef TESTING' causing errors

* updated z-moves to use gimmick interface, pared down redundancies; no AI/tests

* added support for z-moves in tests, consolidated gimmick fields

* removed ShouldUseMaxMove and .usingMaxMove

* renamed TryChangeZIndicator, updated z move display

* added several z-move tests and fixed various z-move interactions; fixed z-move category calc

* fixed useless battler arg in GetTypeBasedZMove

* added basic test check for bad Z-Move or Mega usage

* reworked test runner gimmick functionality; added support for Ultra Burst + Z-Move to test Light That Burns the Sky

* fixed gimmick test logic; fixed damage category override

* fixed mega rayquaza test fail

* consolidated gimmick indicator logic; added graphics to gGimmicksInfo

* removed TeraData struct

* reimplemented AI logic for Z-Moves; no changes

* updated Z-Move and Ultra Burst trigger gfx

* added testrunner check for multiple gimmick use

* fixed duplicate z-move call in test

* reorganized data/graphics/gimmicks.h

* added signature Z-Move ability tests; implemented Guardian of Alola

* fixed bad test update

* fixed Thousand Arrows not affecting Tera Flying; clean-up

* fixed -ate tests

* fixed tera tests

* fixed tera tests really

* fixed last batch of tests

* fixed -ate mega test again

* code review

* code review pt.2

* tweaked CanTera again

* dynamax flag only required for player
2024-06-22 22:25:40 +02:00
Alex
e74264f6de
Ported test changes from #4857 (#4859) 2024-06-22 19:39:01 +02:00
DizzyEggg
f73ad41fa1
Tests for post-ko switch scenarios (#4856) 2024-06-22 12:07:36 +02:00
sneed
6893d8dbef
ignoresTargetAbility doesnt ignore the attacker's ability (#4855) 2024-06-22 09:52:25 +02:00
DizzyEggg
438f478146
Fix comatose transform gastro acid interaction (#4852) 2024-06-21 12:19:43 +02:00
sneed
c31f982a7b
Fix fury cutter scaling up to 640 power (#4846)
* Fix fury cutter scaling up to 640 power

* Replace three instances of int i with one int turn

* dynamic test
2024-06-21 08:15:00 +02:00
Alex
b9138390af
Try fixing toxic_chain.c file (#4843)
Co-authored-by: AlexOn1ine <pkmnlucid@gmail.com>
2024-06-20 21:49:35 +02:00
Pawkkie
7ae88d8455
Tests for Corrosion, Acrobatics, Hone Claws, Hurricane (#4708)
* Tests for Corrosion, Acrobatics, Hone Claws, Hurricane

* First review feedback

* Re-review feedback

* Update acrobatics.c

* Review feedback, Sky Drop?

* Separate Sky Drop test
2024-06-20 13:46:01 +02:00
Pawkkie
3c3142172b
Tests point to clear_body.c (#4837) 2024-06-20 00:38:56 +02:00
sneed
609754f0f6
Add RandomChance macro and ability trigger chance config (#4829)
* RandomChance macro, contact ability chance config

* Unify config, add shed skin
2024-06-18 20:13:44 +02:00
sneed
b6d3bdf622
Confusion, cursed body and poison touch trigger chance fixes and tests (#4831)
* accurate confusion chance and a test

* Accurate Poison Touch chance and tests

* Accurate cursed body chance

* Create cursed_body.c
2024-06-18 20:07:40 +02:00
Alex
f106b21344
Adds Toxic Chain's effect (#4823) 2024-06-18 20:04:28 +02:00
Bassoonian
a24b767276 Merge branch 'master' of https://github.com/rh-hideout/pokeemerald-expansion into masterintoupcoming18jun 2024-06-18 15:27:06 +02:00
PhallenTree
a26050fbde
Adds Toxic Chain interaction with Knock Off 2024-06-18 11:46:23 +01:00
PhallenTree
161f61284a
Use RandomWeighted; fix Test 2024-06-17 17:48:05 +01:00
PhallenTree
9b8c47ac5c
Add some Toxic Chain tests 2024-06-17 16:51:08 +01:00
sneed
107cb96a98
Tests for Anger Point and Moxie (#4811)
* Create anger_point.c

* Create moxie.c

* Add extra test and animations

* add another test
2024-06-16 15:02:44 +02:00
DizzyEggg
de7a4e2328
Fix Encore turn amount bug (#4802)
* Encore 3 turns

* remove duplicate
2024-06-14 13:15:38 +02:00
DizzyEggg
2716ec5b03
Fix Pursuit not getting Choice-locked on switch-out (#4801)
* Fix Pursuit not getting Choice-locked on switch-out

* use label
2024-06-14 12:46:03 +02:00
DizzyEggg
c7224d9ca7
Fix Relic Song transforming species other than Meloetta (#4799) 2024-06-14 10:24:57 +02:00
Pawkkie
a7642da544
Revenge Killer switching factors in Trick Room (#4794)
* Revenge Killer switching factors in Trick Room

* Comments and float multiplication
2024-06-14 10:18:01 +02:00
DizzyEggg
1a4f277d6f
Tests for Body Press + body press interaction with Wonder room (#4792) 2024-06-14 09:43:10 +02:00
DizzyEggg
4b1ff3ad7f
fix starting terrain making all other terrains infinite (#4795) 2024-06-14 09:31:21 +02:00
Pawkkie
9ec16f4eb6
Clear Body tests include Full Metal Body and White Smoke (#4797) 2024-06-14 09:08:21 +02:00
DizzyEggg
84d13d0abf
Fix Smack Down anim + move anim tests (#4774)
* Fix Smack Down anim + move anim tests

* really agbcc

* fix undefined reference

* hopefully everything works
2024-06-13 15:30:28 -04:00
ghoulslash
353727a805
Add createmon Script Cmd, Support for 2v1Wild Battles (#4688)
* add createmon and setwilddoubleflag script cmds to support createing mons at given player or enemy slots and setting up 2v1 battles

* give givemon macro PARTY_SIZE for tests

* style fixes

* add createmon test

---------

Co-authored-by: ghoulslash <pokevoyager0@gmail.com>
2024-06-13 19:11:36 +02:00
Eduardo Quezada
43310716af Fixes to master merge 2024-06-13 11:44:52 -04:00
Eduardo Quezada
06153e4280 Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	include/battle.h
#	include/constants/battle_script_commands.h
#	include/constants/pokemon.h
#	src/battle_ai_util.c
#	src/battle_main.c
#	src/battle_util.c
#	test/battle/ai.c
2024-06-13 11:44:28 -04:00
DizzyEggg
349b402f1b
Fix Soul-Heart changing stats of wrong battler (#4785) 2024-06-13 10:57:20 +02:00
DizzyEggg
8e41b9857f
Fix Revive in double battles (#4784) 2024-06-13 10:41:17 +02:00
DizzyEggg
21339cf272
Fix AI not recognising Volt Absorb/FlashFire (#4781) 2024-06-12 23:02:45 +02:00
Bassoonian
416519220d
Add evolution tracker check tests (#4771) 2024-06-12 15:52:04 -04:00
sneed
000f144465
AI actually avoids contact vs rocky helmet/rough skin (#4779) 2024-06-12 20:54:34 +02:00
DizzyEggg
a17259763c
Fix Baton Pass breaking on Memento (#4773)
* Fix Baton Pass breaking on Memento

* doubled headers
2024-06-12 13:17:18 +02:00
Alex
9c72392891
Fixes Shell Side Arm (#4753)
* Fixes Shell Side Arm

* Fixes to random call

* hardcoded the effect to the move

* minor change

* minor change 2

* applied reviews
2024-06-12 11:21:44 +02:00
kittenchilly
5ebdcdc9b0
Fix Pokemon in tests not being male by default (#4766) 2024-06-12 08:34:36 +01:00
cawtds
4724b5dfd6
Improved Surf/Thunderbolt test (#4764)
* improved Surf/Thunderbolt test that previously relied on correct AI guess

* remove unnecessary mod

* fixed infinite rng loop

* wrong ability num and readability

* Update src/battle_ai_util.c

---------

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2024-06-12 09:09:15 +02:00
sneed
821d5dccab
AI calculates/stores minimum possible move damage and uses it with AI_FLAG_TRY_TO_FAINT (#4760)
* AI uses safest option to faint foes

* dont calculate non crit dmg unless it's needed

* struct SimulatedDamage

* add GetDamageByRollType and name DamageRollType

* Parametrize test AI flags

* use simDamage member's instead of dmg & minDmg
2024-06-11 18:28:16 +02:00
Eduardo Quezada
64f82cdd5f Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	src/battle_ai_util.c
#	src/battle_util.c
2024-06-11 08:12:03 -04:00
Alex
fd08e59e8d
Clear body tests (#4685) 2024-06-11 08:26:31 +02:00
Pawkkie
02ad637849 Review feedback 2024-06-10 21:40:42 -04:00
sneed
178568e05d
Update test/battle/move_effect/tar_shot.c
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2024-06-10 22:15:39 +03:00
sneed
d8685bb3b1 tar shot works properly 2024-06-10 22:07:15 +03:00
sneed
aa50bfef28 add test 2024-06-09 23:41:12 +03:00
Pawkkie
55a2c85d95 Review feedback 2024-06-08 20:47:19 -04:00
Pawkkie
a7a89df80f Review feedback 2024-06-08 20:32:57 -04:00
Pawkkie
b8e199ae9e Review feedback 2024-06-08 12:37:59 -04:00
sneed
f1911dae59
Fix mycelium might and ability shield (#4740)
* Fix mycelium might and ability shield

* fix check
2024-06-08 07:27:44 +02:00
sneed
dc742b3077
Fix Berserk, Angel Shell, Wimp Out, Emergency Exit HP threshold (#4724)
* Fix HadMoreThanHalfHpNowHasLess

* rename the functions

* formatting
2024-06-07 21:54:25 +02:00
sneed
fa81861593
Add newer generation Heal Bell interactions with Soundproof (#4732)
* newer generation soundproof heal bell interactions

* Fix bugs and rewrite AnyPartyMemberStatused

* add missing check, tests, clean up

* fix ai code and rename battler for clarity
2024-06-07 18:51:21 +02:00
Eduardo Quezada
8b09ef09fa Merge branch '_RHH/master' into _RHH/upcoming 2024-06-07 12:25:08 -04:00
sneed
1241cbe79f
FIx mummy and lingering aroma abilities (#4731)
* FIx mummy ability

..and lingering aroma.
Adds tests for both.

* merge the tests

* new line

* add 2 more tests

Mummy and Lingering Aroma don't replace each other
Mummy doesn't replace abilities that can't be suppressed
2024-06-07 11:46:07 +02:00
sneed
7fd0239370
Rampage moves always confuse on final turn (#4722)
* rampage moves confuse on the final turn

* fix B_RAMPAGE_CANCELLING < GEN_5

* Remove pointless assumes
2024-06-05 05:38:04 +02:00
Eduardo Quezada
dce10ab705 Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	test/species.c
2024-06-04 16:47:29 -04:00
kittenchilly
7f8f480ecb
Add FORM_CHANGE_BATTLE_TERASTALLIZATION + allow species to force tera types (#4438)
* Add FORM_CHANGE_BATTLE_TERASTALLIZATION and allow species to force tera types

* Fix form change not changing tera type

* Update form_species_tables.h

* Address reviews

* Can't change the forced Tera Type anymore

* Revert "Can't change the forced Tera Type anymore"

This reverts commit 67157250ef.

* Fix a lot of things

* Oops

* Update pokemon.h

* Update pokemon.h

* Address reviews

* Update tera_starstorm.c

* Update test/battle/gimmick/terastal.c

---------

Co-authored-by: Eduardo Quezada <eduardo602002@gmail.com>
2024-06-04 13:38:49 +02:00
sneed
87e2526665
Add switching message macros for tests (#4717)
* Add switching message macros

* Add test
2024-06-03 19:59:28 -04:00
sneed
e60e6b6008
Fix Mirror Armor and Sticky Web interaction (#4713)
* fix Mirror Armor and Sticky Web interaction

* fix strings
2024-06-03 21:19:54 +02:00
Pawkkie
6dc8b82e92
Gale Wings test (#4694)
* Gale Wings test

* Condense conditional
2024-06-02 19:16:00 +02:00
Pawkkie
22ee823bc1 Review feedback 2024-06-02 12:43:21 -04:00
Salem
2d1ef1fcd7
Fix issues when building tests with agbcc (#4689)
* fix build errors with agbcc

* make clean removes build/test and build/modern-test regardless of MODERN setting
2024-06-02 11:12:08 -04:00
Eduardo Quezada
941e32a14f Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	src/battle_main.c
#	test/battle/move_effect/body_press.c
2024-06-01 19:55:53 -04:00
Pawkkie
5fd3532e16 Fix assumptions 2024-06-01 12:39:10 -04:00
Pawkkie
2e0c653807 Fix Sweet Scent assume 2024-06-01 11:39:41 -04:00
Eduardo Quezada
0a8284ce9f
Added missing Move Effect TODO tests - Volume B (#4682)
* Added missing Move Effect TODO tests - Volume B

* Apply suggestions from code review

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>

* Removed unused bulldoze effect file

* Removed individual tests for Baton Pass + Status1 in favor of the existing single test

---------

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2024-06-01 15:07:51 +02:00
Eduardo Quezada
0be643a517
Set TYPE_NONE as type 0 + other type data tweaks (#4462)
* Set TYPE_MYSTERY as type 0

* Remove redundant TYPE_NONE

* Moved Gen 1-3 type damage categories to gTypesInfo

* Set TYPE_NONE as 0 instead

* Grouped type info to a single file

* Fixed sTypeEffectivenessTable static name

* Adjusted MON_DATA_TERA_TYPE to account for shift in type IDs

* oops, missed the extern

* Moved Tera Type RGB values to gTypesInfo

* Fixed Tera Type test

* Added option test feature to set IVs

* Hidden Power type test

* Tera Type safeguard in givemon

* Removed isHiddenPowerType for a future PR that refactors Hidden Power

* Review changes
2024-06-01 07:38:22 +02:00
Pawkkie
cb1b4bc9a0
Switch AI uses trapping abilities aggressively (#4669)
* Trapping switch AI

* Review feedback, mostly spacing cleanup

* Assume Mawile is Steel type

* Move switching tests into their own file
2024-06-01 07:30:43 +02:00
Pawkkie
587c3e4a6a Review + change additionalEffects in tests to use MoveHasAdditionalEffect 2024-05-31 23:20:15 -04:00
Pawkkie
167a898bc0 WOBBUFFET + cleanup 2024-05-31 22:05:35 -04:00
Pawkkie
292b528e70 First draft 2024-05-31 21:39:26 -04:00
Eduardo Quezada
c79188e3b3 Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	src/battle_ai_util.c
#	src/battle_util.c
2024-05-31 12:04:33 -04:00
Bassoonian
e3959a764b
Rename MgbaPrintf_ to Test_MgbaPrintf (#4642) 2024-05-31 17:54:25 +02:00
Alex
bebc13b5a1
Adjust Ate-Ability code a bit to make it more readable (#4640)
* Adjust Ate-Ability code a bit to make it more readable

* stupid oversight

* fixed

* pull normal type move check out of function

* unused var

* switch and tests

* oversight

* Apply suggestions from code review

---------

Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>
2024-05-31 12:22:18 +02:00
Alex
f6e00303b7
Fixes Neutralizing Gas / Intim interaction freezing the game (#4668) 2024-05-31 00:08:04 +02:00
Pawkkie
8d58564569
Test runner set mode (#4661)
* Item icon table glitch

* Test runner uses OPTIONS_BATTLE_STYLE_SET
2024-05-30 21:24:33 +02:00
Pawkkie
a0006d8dfb
AI_FLAG_RISKY Improvements (#4648)
* #defines for damage roll bounds

* Risky AI behavior implemented

* Ignore score penalty to EFFECT_RECOIL_IF_MISS moves if accuracy has been lowered

* Adjust score defines

* EFFECT_MIND_BLOWN

* Use GetBestDmgMoveFromBattler instead of AI_CompareDamagingMoves
2024-05-29 19:54:18 +02:00
Alex
84a7fd86d6
#4635 follow up. Missing test comments (#4647) 2024-05-29 09:56:59 +02:00
Alex
7a393a974a
Adds Dragon Darts effect (CFRU port) (#4612)
* Adds Dragon Darts effect (CFRU port)

* fix test compile

* review
2024-05-28 11:34:56 +02:00
Alex
0570609ce6
Small Ability Effect Move Block refactor (#4635)
* Small Ability Effect Move Block refactor

* combine tests
2024-05-28 10:34:05 +02:00
Pawkkie
be2517415b
Damage roll selection in AI_CalcDamage (#4615)
* Damage roll selection and AI_FLAG_CONSERVATIVE

* Clarify enum names

* Simplify AverageRollDmg line

* Change u8s to u32s

* Turns out Boomburst does a lot of damage lol

* Spacing
2024-05-28 10:21:25 +02:00
PhallenTree
9104c40d43
Fixes Dancer triggering if the move's user didn't act (#4638)
* Fixes Dancer triggering if the user flinched

* Add check to make sure "Pokemon used move" message is kept

* Address review

---------

Co-authored-by: Fltp <fltpessoa2@gmail.com>
2024-05-27 17:07:13 +02:00
Eduardo Quezada
80b193280d Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	src/battle_main.c
#	src/data/item_icon_table.h
#	src/data/pokemon/species_info/gen_9_families.h
2024-05-27 10:13:42 -04:00
Eduardo Quezada
acd62b0065
Reverted bad implementation of Sparkling Aria+Covert Cloak/Shield Dust (#4634) 2024-05-27 06:38:05 +02:00
Pawkkie
c279aa23c6
Belch AI Scoring Fix (#4616)
* Belch scoring fix and test

* Add assumptions for pocket

* Update test to AI_SINGLE_BATTLE_TEST

* Alex's fixes

* Missed reverting a line

* Mucked up spacing mb

* Mucked up the spacing fix mb MB
2024-05-26 22:23:04 +02:00
Alex
4f1df84acf
Make AI see Loaded Dice hold effect for multi hit moves that strike 5… (#4622)
* Make AI see Loaded Dice hold effect for multi hit moves that strike 5 times

* Update battle_ai_util.c
2024-05-26 22:19:45 +02:00
hedara90
487dc92119
Fixing bugs with Moxie clones+Dynamax, Fling Flinch infinite loop and Focus Sash+foreseen moves (#4625)
* Fixed Elixirs not being able to be used unless the first move was missing PP

* Revert "Pokedex Plus fixes (#4514)"

This reverts commit 982934c4aa.

* Pokedex Plus fixes (#4514)

* Pokedex plus no longer allows browsing unseen evos

* Restore "has no evolutions" printing

* only print "has no evolution" text at 0 depth

* Revert config changes

* fix duplicate icons and removed eevee hardcodes

* add new scope and indentation fixes

* actually introduce new scope

* Revert "Fixed Elixirs not being able to be used unless the first move was missing PP"

This reverts commit 313f2e5526.

* Initial Testing of Focus Sash+Future Sight

* Fixed infinite loop when flinging Razor Fang on a mon that's already moved

* Fixed Moxie clones not triggering on pokemon fainted by Max Moves

* Fixed Focus Sash enduring another time if broken by foreseen moves

* Update src/battle_script_commands.c

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>

* Update src/battle_script_commands.c

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>

* Added assumptions to tests

---------

Co-authored-by: Hedara <hedara90@gmail.com>
Co-authored-by: sneed <56992013+Sneed69@users.noreply.github.com>
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2024-05-26 17:01:20 +02:00
sneed
312dcbb8a8
Speed Ignoring effect fixes (#4613)
* Custap ties with Quick Draw, Stall with Mycelium

* add a test
2024-05-24 11:21:35 +02:00
kittenchilly
edab81b658
Fix Inner Focus, Scrappy, etc granting immunity to all stat drops if the attacker has Intimidate (#4606)
* Fix Inner Focus, Scrappy, etc granting immunity to all stat drops if the attacker has Intimidate

* Formatting

* Test

* Update own_tempo.c
2024-05-22 22:20:44 +02:00
cawtds
b73e33618d
Fix status curing of full restore when used on party member (#4603)
* fix getboxmondata for evolutiontracker if compiled with agbcc

* fixed full restore curing status condition when used in battle on party member with missing hp
added more full restore tests

* formatting, removed unused
2024-05-20 00:25:03 +02:00
Alex
57ec87387d
Fixes freeze on Galvanize Explosion against Volt Absorb (#4601) 2024-05-19 21:29:54 +02:00
hedara90
4ccfd5355d
Fixed Elixir only being useable if the first move was missing PP (#4594)
* Fixed Elixir only being useable is the first move was missing PP

* Update restore_pp.c

Commented out the test that doesn't actually test what it's supposed to due to current test system.

---------

Co-authored-by: Hedara <hedara90@gmail.com>
2024-05-18 19:55:31 +02:00
Alex
635db6312c
AI respects partner when using spread moves in double battles (#4518)
* Fixes Earthquake AI in double battles

* earthquake_ai_fix

* Use CompareDamagingMoves to fix spread damage issue
2024-05-17 00:41:55 +02:00
Alex
faf61e62fb
Adds move Spicy Extract (#4211)
* Adds move Spicy Extract

* remove uneeded line

* anim, new tests, acc change

* Clear Amulet, Contrary interaction

* ai

* correction

* simplify script a bit

* clean up

* Spicy Extract script overhaul

* merge rhh/upcoming

* alignment

* AI changes/additions

* add Foul Play check

* Remove useless ai checks

* remove wrong test

* review issues
2024-05-16 11:03:50 +02:00
Eduardo Quezada
3a1b4951c6
Added missing Move Effect TODO tests - Volume A (#4569)
* Added missing TODO tests - Volume A

* Update test/battle/move_effect/autotomize.c

---------

Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>
2024-05-15 20:48:10 +02:00
Eduardo Quezada
ab682ce900 Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	src/data/items.h
#	src/pokemon_summary_screen.c
2024-05-15 09:58:21 -04:00
Isaac Rivera
e5b33a0434
Add check for Magic Guard to avoid taking recoil damage (#4578)
* Add check for Magic Guard to avoid taking recoil damage

* add test to verify a mon with magic guard does not take recoil damage

followed format from "Steel Beam hp loss is prevented by Magic Guard" test

* update format of tests with magic guard and some form of recoil damage
2024-05-15 15:40:40 +02:00
Isaac Rivera
08bdc85359
Adds tests to verify Parental Bond doesn't affect EFFECT_MULTI_HIT moves (#4573)
* Adds tests to verify that Parental Bond does not affect moves with EFFECT_MULTI_HIT

* actually make kanga mega evolve in tests

* add celebrate for opponent and "not animation" on 5th hit

* update test strings
2024-05-14 17:28:14 +02:00
TheJamesLJ
9cd3fbb232
Opponents Shaymin Sky form correctly reverts on frozen status (#4559)
* Fixed Shaymin form change with incorrect status condition

* Fixed Shaymin receiving damage again after changing form

* PR feedback updates - fixed missing commas in battle script

* Added Shaymin form change test by @AlexOn1ine
2024-05-14 13:28:10 +02:00
Eduardo Quezada
ac16a52918
Revert "Guillotine: Decapitalize everything (#3949)" (#4525)
This reverts commit e2d70d440e, reversing
changes made to 0d2b400953.

# Conflicts:
#	gflib/text.c
#	include/config/decap.h
#	src/battle_message.c
#	src/item.c
2024-05-13 19:19:37 +02:00
Eduardo Quezada
0f5297423f Fixed Knock Off upcoming test 2024-05-13 11:25:49 -04:00
Eduardo Quezada
d4eb94db92 Fixed master test move name 2024-05-13 11:25:23 -04:00
Eduardo Quezada
3219a48adf Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	src/battle_script_commands.c
2024-05-13 11:00:12 -04:00
hedara90
ebdc9ffc39
Fixed some moves' on-hit effects bypassing Substitutes where they shouldn't and some other things discovered along the way (#4558)
* Fixed some moves' on-hit effects bypassing Substitutes where they shouldn't.
Fixed Sparkling Aria interaction with Shield Dust in Singles vs Doubles.
Fixed Wake-Up Slap and Smelling Salts getting boosted damage where they shouldn't vs Substitutes.

* Cleaned up check for Sparkling Aria+Shield Dust interaction and fixed for agbcc.
Fixed logic for checking if moves should do extra damage on statused targets.
Wrote tests for Wake-Up Slap and Smelling Salts receicing extra damage on statused targets.
Wrote tests to check Thousand Arrows type effectiveness vs ungrounded Flying types.

* Update src/battle_util.c

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>

* Update src/battle_script_commands.c

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>

* Update src/battle_script_commands.c

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>

* Update test/battle/ability/shield_dust.c

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>

* Update test/battle/item_effect/covert_cloak.c

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>

* Update test/battle/item_effect/covert_cloak.c

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>

* Update test/battle/item_effect/covert_cloak.c

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>

* Update test/battle/move_effect/smelling_salts.c

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>

* Update test/battle/move_effect/thousand_arrows.c

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>

* Update test/battle/move_effect/wake_up_slap.c

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>

* Update test/battle/move_effect/wake_up_slap.c

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>

* Update test/battle/move_effect/wake_up_slap.c

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>

---------

Co-authored-by: Hedara <hedara90@gmail.com>
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2024-05-13 13:33:04 +02:00
Alex
56cee80fbf
Explosion and Mind Blown / Steel Beam refactor (CFRU port) (#4516)
* Explosion and Mind Blown / Steel Beam refactor (CFRU port)

* forgot ndebug

* Restored EFFECT_MIND_BLOWN

* requested changes

---------

Co-authored-by: Eduardo Quezada <eduardo602002@gmail.com>
2024-05-12 11:41:18 -04:00
sneed
a8bb82778a
Remove and replace MOVE_EFFECT_SP_ATK_TWO_DOWN (#4557) 2024-05-12 15:07:43 +02:00
Eduardo Quezada
be37820bd9 Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	src/battle_script_commands.c
2024-05-11 19:53:19 -04:00
sneed
f502ba2a69
Stat stage related AI fixes (#4548)
* stat stage related AI fixes

* add more ai fixes and 2 tests

* use legal ability in tests

* Fix test and remove mold breaker check

* Use DoesBattlerIgnoreAbilityChecks
2024-05-11 19:03:19 +02:00
Alex
d247a77927
Fixes Future Sight freeze/weird behavior (#4543) 2024-05-10 23:00:32 +02:00
hedara90
dd0c3a9ee5
Fixed moves with HP cost triggering effects where they shouldn't (#4533)
Co-authored-by: Hedara <hedara90@gmail.com>
2024-05-09 15:22:48 +02:00
BlueAnthem37510
2d7c79e860
Gulp missile not triggering on faint fix and added form change type (#4502)
* Cramorant faint fix and add form change type

* Fixed formatting, renamed form change type, changed various to callnative

* Fix oops broke everything except gulp missile

* Improved condition order

* remove extra line

* whitespace and alignment

Co-authored-by: Eduardo Quezada <eduardo602002@gmail.com>

* whitespace and alignment

Co-authored-by: Eduardo Quezada <eduardo602002@gmail.com>

* whitespace and alignment

Co-authored-by: Eduardo Quezada <eduardo602002@gmail.com>

* whitespace and alignment

Co-authored-by: Eduardo Quezada <eduardo602002@gmail.com>

* whitespace and alignment

Co-authored-by: Eduardo Quezada <eduardo602002@gmail.com>

* whitespace and alignment

Co-authored-by: Eduardo Quezada <eduardo602002@gmail.com>

* Added requested changes

---------

Co-authored-by: BlueAnthem37510 <a@a.com>
Co-authored-by: Eduardo Quezada <eduardo602002@gmail.com>
2024-05-07 06:44:17 -04:00
Eduardo Quezada
1ceae6e100 Merge branch '_RHH/master' into _RHH/upcoming 2024-05-06 15:29:21 -04:00
Eduardo Quezada
4ce8a05d5d
Add tests to complement PR4500 (#4511) 2024-05-06 19:59:37 +02:00
Eduardo Quezada
5ec08ee98c
Small Battle Test reorganization (#4504)
* Fixed test folders + Chud Chew test name fixes

* Adjusted file names + merged Burn Up and Double Shock files

* Added Spit Up/Swallow files that point to Stockpile's file

* Multiple changes (see description)

- Moved secondary effect files to their own folder.
- Split hit_set_entry_hazards.c to separate files for Spikes/Stealth Rock.
- Grouped Hex/Venoshock to the same file
2024-05-06 09:36:52 +02:00
Eduardo Quezada
d5a72ec685 Merge branch '_RHH/master' into _RHH/upcoming 2024-05-05 19:50:12 -04:00
Eduardo Quezada
e20cb62de6
Fixed Steam Roller AI check affecting Terrain setting effects (#4498)
* Fixed battle_ai_util.c whitespace

* Add arguments check

* Parenthesis

* Update src/battle_ai_util.c

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>

* Added AI tests by AlexOn1ine

---------

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2024-05-06 00:54:28 +02:00
Alex
41138f101c
Fix Red Card, Endured Damage interaction (#4482) 2024-05-05 14:29:59 +02:00
Eduardo Quezada
4410c1b797
Improve Eject Pack test names (#4497) 2024-05-05 11:58:11 +02:00
kittenchilly
0aad2a9ba7
Change Battle Frontier validation to species flag (#4341)
* Split isLegendary into isRestrictedLegendary and isSubLegendary

* Address reviews and fix build

* Update frontier_util.c

* Remove gFrontierBannedSpecies , fast edition

* Sped up name generation

* More speed up

* Split Frontier restriction into its own flag

* Mythicals shouldn't be banned always anymore

* u32

---------

Co-authored-by: Eduardo Quezada <eduardo602002@gmail.com>
2024-05-03 13:32:06 -04:00
Eduardo Quezada
e791bc08e7 Fixed incoming master test messages 2024-05-02 14:27:58 -04:00
Eduardo Quezada
0c74fd31c3 Merge branch '_RHH/master' into _RHH/upcoming 2024-05-02 14:24:17 -04:00
Alex
6d397f9867
Fixes Magic Bounce in double battles (#4464)
* Fixes Magic Bounce in double battles

* Add Double Battle check
2024-05-02 14:23:46 +02:00
hedara90
77e17247cd
Color change fixes (#4472)
* Fixed forseen moves not triggering Color Change and added tests for Color Change

* Added issue number to Known Failing test

---------

Co-authored-by: Hedara <hedara90@gmail.com>
2024-05-01 23:23:37 +02:00
Bassoonian
c5552f53da
checkteratype setteratype (#4460) 2024-04-30 00:12:34 +02:00
PhallenTree
6ad443c9a8
Fixes Eject Items causing wrong pokemon to take damage from entry hazards (#4465)
* Fix hazards damaging the wrong pokemon using eject items

* Added Stealth Rock test as requested

* Added Stealth Rock double battle test
2024-04-29 23:16:58 +02:00
Alex
c1f92b088e
Eject Pack fix (#4463) 2024-04-29 13:21:33 +02:00
kittenchilly
d58e6517f8
Add abilities Tera Shift, Tera Shell, and Teraform Zero (#4418)
* Add abilities Tera Shift, Tera Shell, and Teraform Zero

* Address reviews

* Tests and misc cleanup

* Fix alignments

* Update battle_script_commands.c

* New tests and fix behavior

* Address more reviews

* Update battle_util.c
2024-04-27 19:52:31 +02:00
kittenchilly
fc9d5c289a
Embody Aspect fixes (#4439)
* Embody Aspect fixes

* Fix tests

* Update battle_util.c
2024-04-27 19:35:42 +02:00
kittenchilly
64b28124fb
Add Tera Starstorm move + make Tera Blast displayed type reflect current type due to tera state (#4447)
* Add Tera Starstorm move + make Tera Blast/Tera Starstorm displayed type reflect tera type

* Ooops

* Curse tests
2024-04-27 19:35:29 +02:00
Alex
7355eb99a5
Fix infinite loop caused by leftovers with AI_FLAG_SMART_CHOICES (#4453) 2024-04-27 13:36:29 +02:00
Alex
ec37b2170f
Fixes Hospitality triggering on a fainted mon (#4450) 2024-04-26 16:29:26 +02:00
Eduardo Quezada
dd098baf77
Official GF names by default (#4241) 2024-04-25 14:23:08 -04:00
Martin Griffin
664fe905f6 Enable GF type names by default 2024-04-25 18:40:38 +01:00
Martin Griffin
30efba0ccd Support GF abilities names 2024-04-25 18:40:38 +01:00
Martin Griffin
d913792f43 Enable GF species names by default 2024-04-25 18:40:37 +01:00
Martin Griffin
06d817bd1b Expanded species names 2024-04-25 18:40:37 +01:00
Martin Griffin
aab9678b02 Enable GF item names by default
In the Pokémon Storage System, even FONT_SMALL_NARROWER isn't sufficient
to prevent clipping in all cases. e.g. Unremarkable Teacup clips. We
have decided to accept that cost to make the rest of the user experience
better, but downstream projects that don't like that trade-off can
either a) alter the Pokémon Storage System UI, or b) set
I_EXPANDED_ITEM_NAMES to FALSE.
2024-04-25 18:40:37 +01:00
Martin Griffin
a1d2460372 Enable GF move names by default
In contests, even FONT_NARROWER isn't sufficient to prevent clipping in
all cases. e.g. Stomping Tantrum clips. We have decided to accept that
cost to make the rest of the user experience better, but downstream
projects that don't like that trade-off can either a) alter the contest
UI, or b) set B_EXPANDED_MOVE_NAMES to FALSE.
2024-04-25 18:40:37 +01:00
Martin Griffin
1fea6b83cc PARAMETRIZE_LABEL in test/species.c
PARAMETRIZE_LABEL is like PARAMETRIZE, except that it allows the user to
provide a label which will be displayed in the test name line. This is
useful for tracking _which_ PARAMETRIZE case failed in the situation
where the numbers are unwieldy.
2024-04-25 18:40:37 +01:00
Eduardo Quezada
d42de03ddc Merge branch '_RHH/master' into _RHH/upcoming 2024-04-25 12:37:31 -04:00
Alex
94cb2133c6
Fixes ability dancer not targeting multiply targets (#4437)
* Fixes ability dancer not targeting multiply targets

* remove file
2024-04-25 10:13:57 +02:00
Martin Griffin
143d6fb289
Minor cleanup of Frisk test (#4441) 2024-04-25 10:11:01 +02:00
Martin Griffin
baaefb4d72
Add missing shouldDynamax (#4442) 2024-04-25 10:10:36 +02:00
Alex
6f538d840c
Combine weather set commands (#4434)
* Combine Weather set commands

* further tests

* minor error

* update test names
2024-04-24 14:10:25 -04:00
AgustinGDLV
84a9d4ffcf
Terastallization (#4110)
* wrote foundational terastal tests

* implemented baseline test-only Tera functionality; modified GetBattlerType + STAB calculations, misc. changes to some moves

* added tests and func. for Stellar type, more tests for Tera Blast

* more tests for Stellar type, Conversion fixes, Color Change + Conversion2 future proof

* implemented tera blast, expanded stellar type func., fixed tests

* last set of Tera/Tera Blast tests for checklist, protean fix

* implemented in-battle Terastallization, WIP stellar indicator and tera animation

* fixed bad merge

* expanded NUMBER_OF_MON_TYPES, cut down on TYPE_STELLAR hackiness, added Stellar type to summary

* fixed type indicators

* added tera logic to AI

* implemented code review changes, added B_TERA_ORB_NO_COST

* updated AI to calc damage with Tera when applicable; minor rework to AI gimmick handling

* fixed Tera Blast split choice occuring when not Terastallized

* fixed Tera Blast using Last Respects BP calcs

* added tera type to TrainerMon, code review tweaks
2024-04-24 11:17:46 +02:00
Alex
81a73deb76
Fixes Quash (#4419)
* Fixes Quash

* Update test/battle/move_effect/quash.c

Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>

* Update test/battle/move_effect/quash.c

Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>

---------

Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>
2024-04-21 15:40:35 +02:00
sneed
620c453fbd
Intimidate and Super Sweet Sugar prints the right message and doesn't play animation when already at -6 (#4406)
* Intimidate won't print message or play animation at -6

Super Sweet Syrup included

* Update intimidate.c

* Update supersweet_syrup.c

* Update test/battle/ability/supersweet_syrup.c

---------

Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>
2024-04-21 14:10:14 +02:00
Alex
49c86f86c8
Adds Ability Poison Puppeteer (#4416)
* Adds Ability Poison Puppeteer

* nothing happened

* parametrize poison powder and toxic

* leftover
2024-04-20 22:23:20 +02:00
Eduardo Quezada
c4c371824f Merge branch '_RHH/master' into _RHH/upcoming 2024-04-20 08:22:49 -04:00
Martin Griffin
4fa5ae24e1
Fix AI test error messages (#4404) 2024-04-18 12:49:54 +02:00
Alex
4d5a745e31
Fix bug involved infinite loop when player mon has only status moves (#4403) 2024-04-18 10:34:33 +02:00
Eduardo Quezada
5a276dcbbf Merge branch '_RHH/master' into _RHH/upcoming 2024-04-15 18:29:06 -04:00
Alex
952183889a
Fixes Ability Shield, Neutralizing Gas interaction (#4391)
* Fixes Ability Shield, Neutralizing Gas interaction

* test was wrong
2024-04-14 18:43:55 +02:00
Alex
5bf6a252b5
Fixes Eject Pack softlocking the game (#4387) 2024-04-14 02:43:16 +02:00
skolgrahd
3b17ce39f7
Fixed softlock w/ weather-triggered form changes & Cloud Nine (#4382)
* Fixed softlock when weather-triggered form changes are suppressed by Cloud Nine

* Removed KNOWN_FAILING; line from Castform Air Lock test
2024-04-13 13:19:14 -04:00
Alex
a0a5ba4af2
Adds Role Play tests (#4381)
* Adds Role Play tests

* gastro acid

* Update gastro_acid.c
2024-04-13 14:14:43 +02:00
Eduardo Quezada
5bf379720f Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	src/data/moves_info.h
2024-04-12 21:30:52 -04:00
Alex
35e04b84a8
Fixes Cud Chuw (#4379)
* Fixes Cud Chuw

* small correction
2024-04-12 12:15:49 +02:00
Alex
ee3a577240
Fixes givemon moves not defaulting to none (#4377) 2024-04-11 20:34:11 +01:00
Alex
5d9f78bcb5
Fixes bug preventing Belch from usage after Stuff Cheeks (#4376) 2024-04-11 10:42:55 +02:00
Alex
62d054e135
Future Sight fixes (#4350)
* Future Sight fixes

* handle life orb boost

* applied review

* Future Sight changes

* removed future sight no hit string

* agbcc

* Update battle_scripts.h
2024-04-11 10:23:16 +02:00
Alex
3c85089428
Fixes Gulp Missile Dive / Power Herb interaction (#4371)
* Fixed Cramorant Dive / Power Herb interaction

* remove file

* leftover
2024-04-09 10:32:11 +02:00
Alex
c740c4ba19
Disguise fixes + gen8 hp loss config (#4360)
* Disguise fixes + gen8 hp loss config

* fix battler arg

* Update test/battle/ability/disguise.c

---------

Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>
2024-04-07 00:07:55 +02:00
Martin Griffin
8bd5ac2e7a
Competitive-formatted parties (#3545)
$ python3 migration_scripts/convert_parties.py src/data/trainers.h src/data/trainer_parties.h src/data/npc_trainers.party
Is available to convert Trainer Control-formatted trainers/parties into
Competitive-formatted ones.

Multiple '#include's can be placed in the trainer section of src/data.c
to support spreading the trainers across multiple .party files.

trainerproc does not interpret the values, leaving that job to the C
compiler, so we use '#line' to associate those errors with the lines in
the .party file(s). Because the columns don't make sense we use
-fno-show-column and -fno-diagostics-show-caret. We might want to move
gTrainers into its own file so that the rest of src/data.c isn't
affected by those flags.

Extensions (misfeatures, imo):
- .party files are passed through cpp, so '#define's are supported, and so
  are '// ...' and '/* ... */' comments.
- .party files also support writing, e.g. 'SPECIES_PIKACHU' instead of
  'Pikachu'. This allows people to write constants explicitly if they
  like.

Pragmas:
- '#pragma trainerproc ivs explicit' requires an explicit 'IVs:' line
  rather than defaulting to 31s.
- '#pragma trainerproc ivs <IVs>' changes the default IVs.
- '#pragma trainerproc level explicit' requires an explicit 'Level:'
  line rather than defaulting to 100.
- '#pragma trainerproc level <level>' changes the default level.

Co-authored-by: Eduardo Quezada <eduardo602002@gmail.com>
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2024-04-06 15:05:15 -03:00
PCG
d8af6205e9
Fix typo in Booster Energy's battle message (#4354)
* Fix typo in Booster Energy's battle message

* fixed in tests too

* fix another typo
2024-04-05 20:37:23 +02:00
Alex
db42d2b5a4
Adds Booster Energy (#4337)
* Adds Booster Energy

* fix string

* fixes strings in tests

* Apply suggestions from code review

---------

Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>
2024-04-05 19:38:50 +02:00
Alex
d1c2a10af6
Fixes switch in AI bug (#4338)
* Fixes switch in AI bug

* fixes fix

* test
2024-04-04 19:52:45 +02:00
Alex
c52ae074ab
Fixes Protective Pads Fluffy interaction (#4340)
* Fixes Protective Pads Fluffy interaction

* couple more tests
2024-04-04 14:48:57 +02:00
AgustinGDLV
c340ae04d7
Updated Knock Off (#4333)
* added config for updated Knock Off behavior, added tests

* fixed unused var

* added item check in tests

* fixed item checks
2024-04-03 10:13:39 +02:00
Alex
7c1a0bb685
defiant_tests (#4331) 2024-04-02 21:32:19 +02:00
Alex
92e23415ab
Change freeze dry to allow easier extendebility (#4312)
* Change freeze dry to allow easier extensibility

* give body press the foul play treatment

* Tests
2024-03-31 19:15:18 +02:00
DizzyEggg
46e6324fe2
Fix White Herb Known Failing tests (#4258)
* Fix White Herb Known Failing tests

* get out agbcc

* remove unneeded white herb test
2024-03-29 17:43:05 +01:00
Eduardo Quezada
7c25db5200
Fill data for placeholder species (#4281)
* Absolute IDs

* Mothim internal forms

* Scatterbug/Spewpa internal forms

* Fixed Mothim not having form tables

* Totem Alolan Raticate

* Moved shared dex text to its own folder

* Totem Mimikyu

* Added missing empty third-ability fields

* Totem Gumshoos + missing totem flags

* Renamed files to better match their contents

* Fixed Disguise on Totem Mimikyu

* Totem Vikavolt/Alolan Marowak + missing Gumshoos form table

* Totem Ribombee/Araquanid/Lurantis/Salazzle

* Totem Togedemaru/Kommo-O

* Partner Pikachu/Eevee

* Reintroduced shinyLocked species flag for convenience

* Revert "Reintroduced shinyLocked species flag for convenience"

This reverts commit 3e07bd378b.
2024-03-16 18:38:43 +01:00
Alex
a741e2e396
Couple things for 1.8 release (#4274)
* Couple things for 1.8 release

* revert EFFECT_VARY_POWER_BASED_ON_HP change

* Fix comment

---------

Co-authored-by: Eduardo Quezada <eduardo602002@gmail.com>
2024-03-12 07:51:37 -03:00
Alex
8d58af4d33
Move most damage AI_BadMove checks to AI_CalcDamage (#4238)
* Move a couple damage AI_BadMove checks to AI_CalcDamage

* re-add effectivness score decrease

* reduce score for bad move in ai_checkviability

* review changes
2024-03-04 09:54:04 +01:00
Eduardo Quezada
d811614f60 Merge branch '_RHH/master' into _RHH/upcoming 2024-03-02 11:04:48 -03:00
Nephrite
e9b2f33084 Fixed Tangling Hair + Mirror Armor interaction 2024-02-27 13:38:38 +09:00
Nephrite
b1f0fbdf89 Merge remote-tracking branch 'rhh/upcoming' into battlemove_refactored 2024-02-27 13:03:26 +09:00
Eduardo Quezada D'Ottone
9e0ae222c3
Fixed Tri Attack status ability immunity test (#4229)
* Fixed Tri Attack test incorrectly having abilities that don't prevent Paralysis

* Fixed Dauntless Shield test names
2024-02-26 18:33:06 +01:00
Nephrite
170070baef
Apply suggestions from code review
Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>
2024-02-26 23:59:15 +09:00
Eduardo Quezada
38e7de211f Merge branch '_RHH/master' into _RHH/upcoming 2024-02-26 11:52:55 -03:00
Nephrite
b0d36b22ba Fixed test 2024-02-26 15:12:34 +09:00
Nephrite
46b67355a5 Merge remote-tracking branch 'rhh/upcoming' into battlemove_refactored 2024-02-26 14:23:53 +09:00
Nephrite
174c6fc999 Renamed "MoveHasMoveEffect" functions 2024-02-26 14:21:38 +09:00
Alex
750eb40a75
Fixes Tangling Hair, Rocky Helmet interaction (#4219) 2024-02-21 23:55:38 +01:00
Eduardo Quezada
75ad61e5bf Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	data/battle_scripts_1.s
#	include/constants/battle_move_effects.h
#	src/battle_ai_main.c
#	src/battle_ai_util.c
#	src/battle_tv.c
#	src/data/battle_moves.h
#	src/data/graphics/pokemon.h
2024-02-19 10:13:13 -03:00
Alex
57e0d7b20b
Partial fix for Teeter Dance and Ability Dancer interaction (#4129)
* Parial fix for Teeter Dance and Ability Dancer interaction

* Removes rest of teeter dance checks and make it work with effect_confuse

* Update test/battle/ability/dancer.c

Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>

* Update test/battle/ability/dancer.c

Co-authored-by: ultima-soul <33333039+ultima-soul@users.noreply.github.com>

---------

Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>
Co-authored-by: ultima-soul <33333039+ultima-soul@users.noreply.github.com>
2024-02-19 13:36:21 +01:00
Alex
cd596fdd80
Adds Tidy Up + minor Dragon Cheer follow up (#4136)
* Adds Tidy Up + minor Dragon Cheer follow up

* improve tidy up script

* Add IncreaseTidyUpScore function

* remove useless calls

* 2 small tests and a correction for IncreasyTidyUpScore
2024-02-18 20:00:36 +01:00
Alex
7694628296
Adds Powerful status move flag (#4125)
* Adds Powerful status move flag

* fix flag

* fixed final issues

* review changes
2024-02-18 15:05:08 +01:00
Alex
7ab23cf426
Sets neutral nature and ability 0 as default in trainer control (#4172)
* Sets neutral nature and ability 0 as default in trainer control

* add config to generate a random ability

* minor correction

* move config to battle.h

* fixed compiling
2024-02-18 15:02:58 +01:00
Eduardo Quezada
ebe13ffc3c Merge branch '_RHH/master' into _RHH/upcoming 2024-02-16 11:30:01 -03:00
Nephrite
b665e7245b Merge remote-tracking branch 'rhh/upcoming' into battlemove_refactored 2024-02-12 16:15:53 +09:00
Nephrite
3695f0317b Reordered everything in moves_info.h to be in struct order 2024-02-12 16:13:15 +09:00
Alex
3598a18703
Adds config for Soundproof change during Uproar status (#4174) 2024-02-11 10:40:30 +01:00
Eduardo Quezada
1720e1b129 Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	data/battle_scripts_2.s
#	src/data/pokemon/species_info/gen_9.h
2024-02-10 17:53:32 -03:00
Alex
97e4aa514a
Reverted Intrepid Sword and Dauntless Shield field unification (#4171)
* Reverts back Intrepid Sword and Dauntless Shield field unification

* fixes
2024-02-10 16:15:21 -03:00
Alex
b7d77099b5
Fixes Opportunist accumulating stat changes (#4168)
* Fixes Opportunist accumulating stat changes

* move memset to TurnValuesCleanUp

* Update test/battle/ability/opportunist.c

---------

Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>
2024-02-10 18:18:29 +01:00
Martin Griffin
311d732359
Save-compatible SaveBlock3 (#4112)
* SaveBlock3 in sector footers

* Update load_save.c

Since mgriffin is currently not available I took the liberty to edit the file. Hope it's fine.

* SaveBlock3 in debug menu (#3)

---------

Co-authored-by: DizzyEggg <jajkodizzy@wp.pl>
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
Co-authored-by: psf <77138753+pkmnsnfrn@users.noreply.github.com>
2024-02-10 18:14:36 +01:00
Eduardo Quezada D'Ottone
af95a09961
Last Respects effect + Fixed Supreme Overlord (#4151)
* Last Respects effect + Fixed Supreme Overlord

* Fixed ability pop-up happening when there's no fainted party members

* Fixed Supreme Overlord counting faints during the battle instead of fainted party

* Removed invalid test.

* Converted GetSupremeOverlordModifier to an inline function

* Created inline functions to obtain faint counters

* Fixed erroneous implemenation and tests
2024-02-10 10:58:41 +01:00
Eduardo Quezada
67f1772f1e Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	src/battle_util.c
#	test/battle/item_effect/heal_and_cure_status.c
2024-02-09 17:02:56 -03:00
Hungry Pickle
47abc33c84
Fixes Stench ability triggering on non-damaging attacks (#4159)
* Fixes Stench ability triggering on non-damaging attacks

* adds stench ability test

* added stench ability test for partner pokemon

---------

Co-authored-by: HungryPickle <beardybirdy@gmail.com>
2024-02-09 15:35:40 +01:00
Nephrite
436ef7e59a Tweaks + RETURN_MOVE_HAS_MOVE_EFFECT_WITH macro
Macro makes it easier to build functions that check a move's move effects
2024-02-09 23:01:27 +09:00
Nephrite
ce4dd729f4 Merged from upcoming 2024-02-09 23:00:36 +09:00
Alex
e89f8e00ed
Fixes Hit Escape moves interaction with hold effects and switch in ab… (#4091)
* Fixes Hit Escape moves interaction with hold effects and switch in abilities

* leftover

* fix spelling

* fix desc.
2024-02-09 14:00:42 +01:00
DizzyEggg
31ac151e29
Fix Full Restore / Antidote not reseting Toxic Counter (#4135)
* Fix Full Restore / Antidote not reseting Toxic Counter

* Update battle_scripts_2.s

---------

Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>
2024-02-09 13:58:16 +01:00
Eduardo Quezada
ec803054e6 Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	src/battle_main.c
#	src/battle_util.c
#	test/battle/hold_effect/kee_berry.c
2024-02-08 12:19:51 -03:00
LOuroboros
916e4814bd
Implemented Custom/Complex/Expanded GiveMon scripting command (#3924)
* Introducing an expanded givemon

* Added debug features to check a Pokémon's EV and IV

* Added a parameter to set a custom mon's gender

* Added a debug feature to clear the party

* Defined the EV/IV getters in gSpecials

* Added Gigantamax Factor toggle to givecustommon

* Updated Gigantamax Factor label in givecustommon macro

* Added tera type parameter to givecustommon

Misc. changes:
-Added a few harmless comments to CreateCustomMon for consistency reasons.

* Cleaned up the code inside CreateCustomMon a bit

Also updated the values assigned to the parameters of ScriptGiveCustomMon
This is temporary though. I'll probably end up turning them into 2byte parameters so they can be filled when the scripting command is called by using variables once I solve the bigger problem that the scripting command is currently facing.

* Foolproofed the Poké Ball check in CreateCustomMon

* Assigned a default gender to givecustommon
This solved the nasty issue by which the command wasn't working properly if you didn't fill in each parameter when calling givecustommon in a script.

* Reinforced the gender checks at CreateCustomMon

* Re-reinforced the gender checks at CreateCustomMon

* Compressed givecustommon and added tests

-Made givecustommon skip unspecified parameters.
-Added scripting variables support for every parameter.
-Added tests.

* Updated the default values of some ScriptGiveCustomMon parameters

* Replaced vanilla's givemon with givecustommon

Misc. Changes:
-Renamed CreateCustomMon to ScriptGiveMonParameterized.
 -The truth is that the function was never limited to creating the skeleton of a Pokémon like the actual CreateMon functions do, so that label was never correct. The function was always an expanded ScriptGiveMon.
-Moved the core functions to src/script_pokemon_util.c which is where they actually belong.
-Updated ScriptGiveMonParameterized a little to incorporateb changes that were applied to the original ScriptGiveMon, namely, Synchronize ability and form change handling.
-Introduced a new ScriptGiveMon to replace the original one.

* Corrected givecustommon tests

* Fixed the default IV values for the new givemon

* Updated DebugAction_Party_ClearParty for consistency with the other debug functions

* Updated the text strings used by the Check EV/IV debug features

---------

Co-authored-by: Martin Griffin <martinrgriffin@gmail.com>
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2024-02-08 09:11:13 +01:00