Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] BoxPokemon Refactor ™️ #2372

Conversation

AsparagusEduardo
Copy link
Collaborator

@AsparagusEduardo AsparagusEduardo commented Oct 3, 2022

Description

Updated Pokemon and BoxPokemon structure to future proof and allow for new features.

It optimizes the struct to have more fields in the same amount of space (80 bytes for BoxPokemon and 100 bytes for Pokemon)

Support for:

  • Space 12 character names.
  • Hidden Natures (for future mint implementation)
  • 64 Pokéballs
  • Dynamax level (from 0 to 10)
  • Gigantamax Factor
  • Hyper Trained stats
  • Tera type
  • isShadow flag for future Shadow Pokémon implementation.
  • Storing Status, current HP and PP for remote Box access
  • 34 extra bits for custom user features.

Todo:

  • Update string buffers to account for 12 char names
  • Implement MON_DATA_* labels for Get(Box)MonData / Set(Box)MonData

Will not do:

  • Increase the amount of boxes.
  • Update UI to accomodate 12 char mon names.

Discord contact info

AsparagusEduardo#6051

cfmnephrite and others added 16 commits September 7, 2022 14:25
Original commit: ea9b165

Original comment:
Reduces BoxMon struct size to 64 bytes; encryption removed, data reordered/compressed and several functions modified. Some functions whose purpose I don't undestand I left in despite them no longer doing anything (scrcmd). Breaks compatibility with other Gen III games unless a converted is made (doable, but not something I'm interested in).

# Conflicts:
#	.gitattributes
#	include/pokemon.h
#	include/pokemon_storage_system.h
#	src/battle_util.c
#	src/egg_hatch.c
#	src/evolution_scene.c
#	src/party_menu.c
#	src/pokemon.c
#	src/pokemon_storage_system.c
#	src/scrcmd.c
#	src/trade.c
@AsparagusEduardo AsparagusEduardo added category: pokemon Pertains to Pokémon data and functionality type: BREAKING Not to be merged lightly, needs to be reviewed labels Oct 3, 2022
@AsparagusEduardo
Copy link
Collaborator Author

Removed Level 255 support

@AsparagusEduardo AsparagusEduardo linked an issue Jan 20, 2023 that may be closed by this pull request
# Conflicts:
#	include/global.h
#	include/pokemon.h
#	src/battle_anim_mons.c
#	src/battle_gfx_sfx_util.c
#	src/contest.c
#	src/evolution_scene.c
#	src/pokedex.c
#	src/pokemon.c
#	src/trainer_pokemon_sprites.c
@AsparagusEduardo AsparagusEduardo changed the title [BREAKING][WIP] Pokemon and BoxPokemon refactor [For 2.0][WIP] Pokemon and BoxPokemon refactor Feb 25, 2023
@AsparagusEduardo AsparagusEduardo changed the title [For 2.0][WIP] Pokemon and BoxPokemon refactor [For 2.0][WIP] BoxPokemon Refactor ™️ Feb 25, 2023
@AsparagusEduardo AsparagusEduardo changed the base branch from wip-2.0.0 to upcoming May 13, 2023 18:39
@AgustinGDLV AgustinGDLV mentioned this pull request May 17, 2023
27 tasks
# Conflicts:
#	include/constants/global.h
#	include/pokemon.h
#	src/battle_controller_link_opponent.c
#	src/battle_controller_link_partner.c
#	src/battle_controller_opponent.c
#	src/battle_controller_player.c
#	src/battle_controller_player_partner.c
#	src/battle_controller_recorded_opponent.c
#	src/battle_controller_recorded_player.c
#	src/battle_controller_wally.c
#	src/battle_gfx_sfx_util.c
#	src/battle_tower.c
#	src/battle_util.c
#	src/egg_hatch.c
#	src/menu_specialized.c
#	src/party_menu.c
#	src/pokemon.c
#	src/pokenav_conditions.c
#	src/scrcmd.c
#	src/trade.c
#	src/trainer_pokemon_sprites.c
# Conflicts:
#	src/battle_gfx_sfx_util.c
#	src/battle_util.c
@AsparagusEduardo AsparagusEduardo changed the title [For 2.0][WIP] BoxPokemon Refactor ™️ [WIP] BoxPokemon Refactor ™️ Oct 20, 2023
@AsparagusEduardo
Copy link
Collaborator Author

Replaced by #3438

@AsparagusEduardo AsparagusEduardo deleted the RHH/pr/breaking/BoxMon branch May 14, 2024 22:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category: pokemon Pertains to Pokémon data and functionality type: BREAKING Not to be merged lightly, needs to be reviewed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Decrypt Pokemon data
2 participants