FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Core/Player: fix druid shapeshifting display ids retrieval by stevebone · Pull Request #31973 · TrinityCore/TrinityCore · GitHub

Core/Player: fix druid shapeshifting display ids retrieval - #31973

Open
stevebone wants to merge 1 commit into
TrinityCore:masterfrom
stevebone:master-shapeshiftfix
Open

Core/Player: fix druid shapeshifting display ids retrieval#31973
stevebone wants to merge 1 commit into
TrinityCore:masterfrom
stevebone:master-shapeshiftfix

Conversation

Copy link
Copy Markdown
Contributor

Changes proposed:

  • Modify the shapeshift form display retrieval to no longer use race and gender combo
  • Shapeshift forms are now per customization option
  • fixes fallback to the dummy/invisible display ids from SpellShapeshiftForm.db2 and use the correct customization display ids
  • customization requirements are checked

Issues addressed:

  • druid shapeshift forms are now working correctly

Closes # (insert issue tracker number)
29664

Tests performed:

  • builds
  • tested ingame with multiple races/druid

Known issues and TODO list: (add/remove lines as needed)
None that i can think of

vekzla added a commit to vekzla/DizerCore that referenced this pull request Aug 15, 2026
Merged current DizerCore with TrinityCore#31973 as it provided cleaner solution
Druid forms are now unique to race and should remain, with fix to moonkin form and extensive modifications to barbershop code to allow for druid forms to remain post accepting the change.

fixed:
Barbershop not accepting changes based on player selection

src/server/game/DataStores/DB2Stores.cpp :
Register all shapeshift-form customization options for every race/gender (the all-options block with std::ranges::find dedup) so ValidateAppearance no longer rejects form options like moonkin's 922 + 8654..8664

src/server/game/Handlers/CharacterHandler.cpp:
Four logic changes in HandleAlterAppearance plus one include fix:
(a) partial-packet merge so a single form option doesn't wipe hair/skin/face;
(b) seat-check bypass when packet.CustomizedChrModelID != 0;
(c) gender clamp so an invalid NewSex == 3 falls back to native gender;
(d) instant display refresh via GetModelForForm/SetDisplayId, SpellAuraEffect;
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant


Back | FazBrowse Home | New Git URL