Pawkkie
1a2cd5645a
Fix roll handling in AI party damage calcs ( #6733 )
2025-05-01 10:15:19 +02:00
Alex
4ff2f3de42
Centralizes non volatile status effect checks ( #6533 )
...
Co-authored-by: PhallenTree <168426989+PhallenTree@users.noreply.github.com>
2025-04-30 11:34:19 -04:00
Bassoonian
cca969b04d
Adds move effect type checking ( #6618 )
2025-04-16 00:08:57 +02:00
Bassoonian
512368fd03
Add type checking for hold item effects ( #6619 )
2025-04-15 23:33:00 +02:00
Bassoonian
d62205f2fc
Converts some defines to enums ( #6592 )
2025-04-13 13:39:20 +02:00
Pawkkie
54928726cb
AI smarter status handling ( #6550 )
2025-04-08 17:47:45 +02:00
Pawkkie
9cb96235f9
Add basic Unaware check bad move scoring ( #6524 )
2025-04-02 18:18:33 -04:00
Alex
c707df358e
Clean up AI code duplication and unify checks ( #6348 )
2025-03-20 22:50:01 +01:00
Alex
98a5fab898
Optimization / Clean up of AI move usability ( #6332 )
2025-03-18 23:42:07 -04:00
Alex
6031bb2a78
Split ai function IsBattlerTrapped ( #6438 )
2025-03-18 12:00:11 -04:00
Pawkkie
b12f32667f
Fix roll handling in AI damage calcs ( #6396 )
...
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2025-03-08 09:53:14 +01:00
Hedara
06d31bc8ea
Merge branch 'master' into final-1.10-master-upcoming-merge
2025-02-26 22:07:10 +01:00
Pawkkie
b109c4c36b
Fix Substitute / Shed Tail Switch AI ( #6334 )
2025-02-25 13:06:39 +01:00
Pawkkie
48fc44df31
Fix AI hold effect considerations ( #6310 )
2025-02-21 18:11:47 +01:00
Pawkkie
bf263efa4b
Fix AI hazard move handling, minor AI tweaks ( #6311 )
2025-02-21 09:58:14 +01:00
Alex
32eb5dfba5
Remove global sBattler_AI ( #6128 )
2025-01-29 19:58:16 +01:00
Eduardo Quezada
927bb8f833
Fixed AI not handling type effectiveness beyond x8 ( #6127 )
2025-01-28 19:16:10 +01:00
Pawkkie
ea4434db2a
Switch trapping AI will consider Trace ( #6059 )
2025-01-22 00:07:15 +01:00
Pawkkie
7d39dd4aae
Add AI_FLAG_PREDICT_INCOMING_MON: AI will score against predicted switchin if predicting switch ( #6037 )
2025-01-20 20:54:38 +01:00
Pawkkie
465d30fbd0
Add AI_FLAG_PREDICT_SWITCH ( #6028 )
2025-01-16 21:43:16 +01:00
Eduardo Quezada
0fefb444de
Multiple removals of hardcoded move IDs ( #5964 )
2025-01-10 17:07:32 -05:00
Alex
8edf14423a
Refactors argument into a union ( #5853 )
...
Co-authored-by: Eduardo Quezada <eduardo602002@gmail.com>
2024-12-23 15:51:35 -03:00
Alex
a2aba3f86a
Changes target TURN_DAMAGED and MAX_HP to inlines ( #5822 )
2024-12-17 17:21:12 -05:00
Pawkkie
2b7905beb1
Add B_FLAG_SLEEP_CLAUSE ( #5566 )
...
Co-authored-by: Isaac Rivera <isaacrivera2020@u.northwestern.edu>
Co-authored-by: iriv24 <40581123+iriv24@users.noreply.github.com>
Co-authored-by: Hedara <hedara90@gmail.com>
2024-12-02 09:06:03 +01:00
Alex
35a22d6e82
Follow up for #5570 ( #5625 )
2024-10-31 10:58:00 +01:00
Alex
d5f8e9cc0e
Combines CalculateMoveDamage arguments into a struct ( #5570 )
2024-10-31 07:59:28 +01:00
ghoulslash
9dbcd18251
Unify GetBattlerAbility/TerrainAffected to remove duplicate ai function ( #5497 )
2024-10-10 10:42:09 -04:00
Bassoonian
d0379b9b55
Turn item hold effects into an enum ( #5498 )
...
* Turn item hold effects into an enum
* Rename to ItemHoldEffect
2024-10-10 14:23:59 +02:00
Pawkkie
2afc7f6138
ShouldPivot type cleanup ( #5441 )
...
* Cleanup ShouldPivot type
* PIVOT to SHOULD_PIVOT
2024-10-10 12:54:35 +02:00
AlexOn1ine
d0a97970ba
Unify GetBattlerAbility/TerrainAffected to remove duplicate ai function
2024-10-10 09:55:25 +02:00
Pawkkie
ded97e5296
Switch AI refactor + considers free switches ( #5379 )
...
* Switch AI considers free switches from pivot move
* Fix Baton Pass refactor
* Some cleanup and comments
* Mon fainting to hazards is a 0HKO
* Revert "Mon fainting to hazards is a 0HKO"
This reverts commit 446f73822651af55ee1a36aeb61f3f0c9317d244.
* Cleanup speed check / Eject Pack
* Move eject trackers to AiLogicData
* Review feedback and WhoStrikesFirst changes
* This linebreak will bug me lol
* Also this comment, heck
* Last bit of comment cleanup
2024-10-01 23:10:02 +02:00
Pawkkie
047289a639
Improve AI's Skill Swap handling in double battles ( #5360 )
...
* Improve AI contrary
* Update src/battle_ai_util.c
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
* Fix additionalEffects loop
* moves[i] to aiMove
* Update src/battle_ai_util.c
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
---------
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2024-09-11 00:00:29 +02:00
Alex
3cfc0004b6
Removes redundant moveTargetType ai function ( #5354 )
...
* Removes redundant moveTargetType ai function
* Beautify GetBattlerMoveTargetType for better readability
2024-09-09 11:30:39 -04:00
SarnPoke
622dead80c
Shed Tail Retarget ( #5275 )
...
Re-targets Shed Tail PR to upcoming
2024-08-28 13:40:35 +02:00
Alex
b21ffa1f9b
Changes score adjustments to tempScore increases ( #4987 )
2024-07-17 23:36:15 +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
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
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
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
Alex
4eda5f61af
Use 9th roll instead of average in AI calcs ( #4679 )
...
* Use 9th roll instead of average in AI calcs
* damage_roll
* duke suggestion
2024-06-02 15:36:12 +02:00
sneed
e869aaf70b
Add global constants for damage roll related code and make AverageRollDmg faster ( #4663 )
...
* faster AverageRollDmg, global dmg roll constants
* restore MAX_ROLL_PERCENTAGE & MIN_ROLL_PERCENTAGE
* rename AverageRollDmg
2024-05-31 16:56:17 +02:00
Alex
d55e072747
Adds AI_IsFaster and AI_IsSlower functions ( #4671 )
2024-05-31 12:55:15 +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
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
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
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
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