147 Commits

Author SHA1 Message Date
AlexOn1ine
b90fdd1b3c Master to upcoming merge 2025-05-26 10:41:11 +02:00
Hedara
2e4833240f Merge commit 'b31a73f990fb680629e2a503d72d137bcff0872a' into pret-merge
Conflicts:
	include/item.h
	src/battle_ai_script_commands.c
	src/battle_main.c
	src/battle_pyramid_bag.c
	src/battle_script_commands.c
	src/battle_util.c
	src/item.c
	src/item_menu.c
	src/item_use.c
	src/pokemon.c
	src/pokemon_summary_screen.c
	src/shop.c
2025-05-24 21:24:56 +02:00
AlexOn1ine
1a773a5916 conflicts 2025-05-14 23:21:33 +02:00
Eduardo Quezada
3ef61e6451
Combined type-enhancing hold effects (#6846) 2025-05-14 13:45:08 +02:00
Eduardo Quezada
13071f7019 Added IsOnPlayerSide 2025-05-12 13:53:15 -04:00
Alex
d00563d830
Changed White Herb hold effect name (#6815) 2025-05-11 11:34:47 +02:00
AlexOn1ine
4959187d97 fix conflicts 2025-05-09 21:47:53 +02:00
Eduardo Quezada
392d662c12
Rename GetPartyBattlerData to GetBattlerMon (#6800) 2025-05-09 15:14:09 +02:00
Alex
1871d16ffa
Refactor battler message ids (#6765) 2025-05-07 00:24:10 +02:00
Eduardo Quezada
1f23fe0dd3
Use GetPartyBattlerData where appropiate (#6779) 2025-05-06 17:13:50 +02:00
AlexOn1ine
9a14bb2dd3 removed aiFlags prefix 2025-05-01 20:22:11 +02:00
AlexOn1ine
182d42642d Move out ai struct out of BattleResources 2025-05-01 11:27:48 +02:00
Bassoonian
512368fd03
Add type checking for hold item effects (#6619) 2025-04-15 23:33:00 +02:00
Hedara
2210e2d410 Merge branch 'master' into upcoming-master 2025-04-09 11:06:38 +02:00
hedara90
ff8bf967d4
Added AI switch display to the battle debug (#6529)
Co-authored-by: Hedara <hedara90@gmail.com>
2025-04-02 23:44:09 +02:00
AlexOn1ine
ae640f0714 25-03-25 master to upcoming merge 2025-03-25 21:39:58 +01:00
kittenchilly
76bb903d06
Update Battle Debug menu with new AI flags (#6444) 2025-03-22 08:54:52 +01:00
hedara90
4e01ce6993
Moved some AI stuff out of the battlestruct (#6405)
Co-authored-by: Hedara <hedara90@gmail.com>
2025-03-11 21:23:02 +01: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
Alex
77b677dbf9
Introduces BattleTurnCounter to simplfy timer checks (#6080) 2025-01-25 14:26:38 -05:00
Eduardo Quezada
8821779815 Merge branch '_RHH/master' into _RHH/upcoming 2025-01-11 08:07:15 -03:00
Pawkkie
b5f539ed21
Rename AI_FLAG_PREFER_STRONGEST_MOVE (#5972) 2025-01-08 14:00:20 +01:00
Eduardo Quezada
9669a0554d
Encapsulate move data (#5852) 2025-01-01 20:34:33 +01:00
Eduardo Quezada
5130ea9da3 Merge branch '_RHH/master' into _RHH/upcoming 2024-09-28 11:45:49 -03:00
Alex
71dfd3e7c0
Ogerpon masks were missing their hold effects (#5391)
* Ogerpon masks were missing their hold effects

* fix wrong num

* test

* correct tests and additional fix

* added hold effect to battle debug
2024-09-19 00:25:53 +02:00
Alex
25e9ca2ac6
Cleaned up a bit of code with GetBattlerPartyData (#5378)
* rename GetBattlerPartyData
2024-09-15 08:24:26 +02:00
pkmnsnfrn
5635f94036 More changes from typeX to types[X] 2024-08-07 11:35:45 -07: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
kittenchilly
a16448c081
Update and clean up Battle Debug (#4643)
* Update battle debug with new stuff

* Fix status not showing up

* Update hold effects as well

* Update battle_debug.c

* Update battle_debug.c
2024-07-26 00:07:11 +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
Frank DeBlasio
2f4203bc4c
Consolidate type properties (#4185)
* Moved gTypeNames into gTypes

* Added invalid move text to struct

* Added max move to struct

* Added icon palette to struct

* Added macros for invalid and max moves

* Swapped palette and max move order

* Renamed invalid to generic

* Renamed invalid to generic in struct definition

* Added zMoves and items to type struct

* Addressed comments

* Incorporated newer comments

* Updated comment format
2024-03-12 07:57:38 -03:00
ghoulslash
521ef8bf86
battle debug menu can cycle through battlers in ai score/dmg window (#4134)
Co-authored-by: ghoulslash <pokevoyager0@gmail.com>
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2024-02-04 23:30:30 +01:00
LOuroboros
a64e1c63c1
Move data unification (#3999)
* Made gBattleMoves handle the InGame name and description of battle moves
No more multiple arrays in separate, individual files.

Note:
-Keep an eye on Task_LearnedMove.

* Reintroduced move names

Misc:
-Fixed Trick-or-Treat and Light of Ruin's expanded names.
-Introduced a new field for Z-Move names, and a constant for their name length.
-Added a few TODOs to GetBattleMoveName.
-Updated GetMaxMoveName and GetZMoveName. There's no reason not to let GetBattleMoveName handle everything on its own.

* Updated GetBattleMoveName to handle Z-Move Names

Misc:
-Removed pointless TODO about MOVE_NAME_LENGTH.
 -The compiler doesn't allow to have a move name with a value higher than MOVE_NAME_LENGTH, therefore it's pointless to worry about it.

* Fixed a couple of expanded move names

* Removed zMoveName variable of struct BattleMove and extended the name variable's size

* Ditched no longer used MOVE_NAME_LENGTH constant

* Corrected the names of the max moves
I should have done this after updating the size of the name variable of the struct BattleMove, but I didn't think about it at all until Cancer Fairy indirectly gave me the idea.

* Fixed U-turn's name

* Brought back MOVE_NAME_LENGTH
I think it doesn't make sense to have a Z_MOVE_NAME_LENGTH because the length in question is used for all battle moves, not just the Z-Moves.

* Introduced a union for Move/Z-Move names in the struct BattleMove

* Fixed the union for gBattleMoves move names
Also updated GetBattleMoveName to properly handle Max Move names.
Also also renamed the "zMoveName" variable to "bigMoveName" which better reflects its purpose. Z-Move names weren't the only thing it covered, since it also handles Max Move names.

* Removed deprecated GetZMoveName and GetMaxMoveName

* Reintroduced mention to gMoveNames in sGFRomHeader

* Fixed move names and ported move descriptions

* Fused the struct ContestMove into the struct BattleMove

* Removed no longer used Z_MOVE_NAME_LENGTH constant

* Renamed the struct BattleMove's bigMoveName variable and introduced macros to prettify move names

* Reintroduced the contest parameters for Pokémon moves

* Renamed gBattleMoves to gMovesInfo
This is consistent with gSpeciesInfo, the array that contains most of the species data.

* Renamed the BattleMove struct to MovesInfo
This is consistent with the struct SpeciesInfo, which contains the variables used by the gSpeciesInfo array.

* Removed empty lines separating battle params from contest params in gMovesInfo

* Renamed MovesInfo to MoveInfo

* Added Cancer Fairy's HANDLE_EXPANDED_MOVE_NAME macro
Used to handle moves with expanded names in a more comfortable manner.
Also fixed Trick-or-Treat's expanded name.

* Renamed GetBattleMoveName to GetMoveName

* Added a comment pointing out that the shared move descriptions are shared move descriptions

* Re-aligned one of the escape characters of CHECK_MOVE_FLAG

* Renamed the battle_moves.h file to moves_info.h instead for consistency's sake

* Applied Eduardo's adjustments

* Using compound string for regular move names as well, saving 1180 bytes and making their use consistent
* Move description formatting

* Updated Pursuit test after merge

* Renamed the BATTLE_CATEGORY constants to DAMAGE_CATEGORY

---------

Co-authored-by: Nephrite <thechurchofcage@gmail.com>
Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>
Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>
2024-01-29 08:51:32 -03:00
Bassoonian
b9a02b205d
Rename gItems and gAbilities to gItemsInfo and gAbilitiesInfo (#4068)
* Rename gItems to gItemsInfo

* Rename gAbilities to gAbilitiesInfo

* Just fixing up my bad merge

---------

Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>
2024-01-26 15:25:52 -03:00
Frank DeBlasio
bfe3e762ff
Fixed Battle AI debug screen shiny sprites (#3922)
* Switched gBattleMons.isShiny to GetMonData

* Simplified getting party of Pokemon

---------

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2024-01-04 15:39:26 +01:00
Bassoonian
6bc0bf9f8b
Ability refactor (#3861)
* Ability refactor

* Adds abilities to RHH rom header

---------

Co-authored-by: Martin Griffin <martinrgriffin@gmail.com>
2023-12-29 14:25:24 +01:00
Martin Griffin
3ad66028e9
Backwards-compatible BoxPokémon Refactor (#3438)
* Check progress in non-battle PARAMETRIZEd tests

* Overworld Script Tests

* Backward-compatible BoxPokemon Refactor

Reuses space that contains zeros to provide space for:
- HP/status in the box
- 12-character nicknames
- Up to 63 PokéBalls
- Shininess separate from PID
- Hidden Nature
- Hyper Training
- Dynamax Level
- Gigantamax Factor
- Terastallization Types
- Shadow

Implements:
- OW_PC_HEAL to switch between Gen7- and Gen8+ behavior
- Nature Mints
- Dynamax Candy
- Hyper Training commands (canhypertrain/hypertrain)
- Gigantamax Factor commands (hasgigantamaxfactor/togglegigantamaxfactor)
- Terastallization Type on the summary screen
- Prevents Gigantamax Factor Pokémon from evolving into a species without a Gigantamax form

* fixup! Backward-compatible BoxPokemon Refactor

* displaydexinfo fix from Jasper
2023-12-27 17:48:17 +01:00
ghoulslash
a9d6832908
Separate AI flags by battler position (#3003)
* ai flags by battlerId

* fix recoded battle saved ai flags

* update aiFlags check in OpponentHandleChoosePokemon

* add header for TRAINER_CUSTOM_PARTNER define

* initialize flags in BattleAI_SetupAIData

* fix usage of TRAINER_CUSTOM_PARTNER

* remove whitespace

---------

Co-authored-by: ghoulslash <pokevoyager0@gmail.com>
2023-12-27 13:54:37 +01:00
Eduardo Quezada
661becc3b6 Merge branch 'RHH/upcoming' into RHH/pr/upcoming/debugCleanup2
# Conflicts:
#	src/debug.c
2023-10-30 08:05:14 -03:00
Eduardo Quezada
c0540a3559 Merge branch 'RHH/upcoming' into RHH/pr/upcoming/dynamax
# Conflicts:
#	include/battle.h
#	include/constants/battle_move_effects.h
#	include/constants/battle_string_ids.h
#	src/battle_main.c
#	src/battle_message.c
#	src/battle_script_commands.c
#	src/battle_util.c
2023-10-15 00:30:00 -03:00
Eduardo Quezada
4f0802f96e Merge branch 'RHH/upcoming' into RHH/pr/upcoming/debugCleanup2
# Conflicts:
#	src/debug.c
2023-10-14 22:14:39 -03:00
DizzyEggg
a7b9d139da
Fix Wall Werrors on modern (#3412)
* Fix Wall Werror errors

* fix hgss pokedex modern errors

* tests build on modern

* learnset change

* Update src/battle_ai_util.c

Co-authored-by: Philipp AUER <SBird1337@users.noreply.github.com>

* Update src/battle_anim_new.c

Co-authored-by: Philipp AUER <SBird1337@users.noreply.github.com>

* Update src/debug.c

Co-authored-by: Philipp AUER <SBird1337@users.noreply.github.com>

* Update src/debug.c

Co-authored-by: Philipp AUER <SBird1337@users.noreply.github.com>

* Update src/pokedex_plus_hgss.c

Co-authored-by: Philipp AUER <SBird1337@users.noreply.github.com>

* review changes

* unused cmd args

* various args back

---------

Co-authored-by: Philipp AUER <SBird1337@users.noreply.github.com>
2023-10-13 18:39:35 +02:00
Eduardo Quezada
92301398bc Merge branch 'RHH/upcoming' into RHH/pr/upcoming/dynamax
# Conflicts:
#	asm/macros/battle_script.inc
#	data/battle_anim_scripts.s
#	data/battle_scripts_1.s
#	include/battle.h
#	include/battle_controllers.h
#	include/battle_interface.h
#	include/config/battle.h
#	include/constants/battle.h
#	include/constants/battle_anim.h
#	include/constants/battle_move_effects.h
#	include/constants/battle_string_ids.h
#	include/data.h
#	include/random.h
#	sound/cry_tables.inc
#	src/battle_anim_new.c
#	src/battle_controller_opponent.c
#	src/battle_controller_player.c
#	src/battle_controller_player_partner.c
#	src/battle_interface.c
#	src/battle_main.c
#	src/battle_message.c
#	src/battle_script_commands.c
#	src/battle_util.c
#	src/data/pokemon/form_change_table_pointers.h
#	src/data/pokemon/species_info.h
#	src/data/text/move_names.h
#	test/test_runner_battle.c
2023-10-09 16:51:41 -03:00
Eduardo Quezada
a34e0f6f6f Debug menu cleanup 2023-10-07 23:04:36 -03:00
DizzyEggg
c69d8e0960
Improve how AI chooses damaging moves (#3199)
Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>
2023-10-01 20:36:57 -03:00
DizzyEggg
94a3e80c8e
Remove redundant side macros/funcs (#3299)
Co-authored-by: gruxor <gruxor@proton.me>
2023-09-13 09:19:18 -03:00
DizzyEggg
0c0b841a80
Remove debug item effect override (#3106) 2023-07-13 18:47:01 -04:00
AgustinGDLV
3d4789c492 Merge branch 'upcoming' of https://github.com/rh-hideout/pokeemerald-expansion into dynamax 2023-05-28 11:10:50 -07:00
Eduardo Quezada
05895c5308 Fixed Frostbite icon appearing in AI Pary menu for mon without ailment 2023-05-25 19:02:13 -07:00
AgustinGDLV
aec51b5b04 Merge branch 'upcoming' of https://github.com/rh-hideout/pokeemerald-expansion into dynamax 2023-05-11 20:02:06 -07:00