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

Update gossip handling to store data in database and add new features #51

Merged
merged 57 commits into from
Nov 19, 2024

Conversation

sogladev
Copy link
Member

Changes Proposed:

Update the gossip system to store data in the database instead of 2 large switch statements.

Add an index table that holds the hello gossip entries and specifies the action, allows configurable options for hello gossip such as setting an icon, description, level range, and mask (gear/talents/glyphs). Additionally, it allows re-usable talents/glyphs by specifying overrides.

Reduce the number of gear tables to one by using a race mask to handle human/horde/alliance gear.

Add an administrator command to create templates by exporting a character's talents, gear, and glyphs to the database.

Add lvl 70 T6 templates

Add instructions on how to add templates to the README. I wrote a tool, to help create templates, that generates GM commands from a wowsims config

Changes details:

  • Store gossip data (hello and select) in the database instead of hardcoding with a switch statement
  • Add an index table which holds the hello gossip entries and actions
  • Allow configurable options for hello gossip, such as setting an icon, description, level range, and mask (gear/talents/glyphs), specific gear/talents/glyphs.
  • Reduce the number of gear tables to one by using a race mask to handle human/horde/alliance gear
  • Allow re-usable talents/glyphs by specifying overrides that allow them to be re-used.
  • Add an administrator command to export a character's talents, gear, and glyphs to the database. This will make it easier for administrators to create templates
  • Renamed the existing Lvl80 PvP S6 templates
  • Add Lvl70 PvE T6 templates
  • Config: Enable Talent gossip by default as AddTalent is fixed (Player::addTalent does not properly update m_usedTalentCount azerothcore-wotlk#20231)
  • Config: Add configurable mount
  • Fix inventory save errors after using DestroyItem and EquipItem
  • Refactor hardcoded strings to module_string
  • Refactor hardcoded class strings to use EnumUtils::ToTitle

Issues Addressed:

SOURCE:

Tests Performed:

1 of each class

  • lvl 70-79 PvE T6
  • lvl 80 PvP S6

How to Test the Changes:

TODO / Issues:

areatrigger fmt shows as "{} {}"

identifiable module from table `updates`
its in the title of the npc and should be obvious from icons

allows bottom icons to be visible
rename "DeathKnight" to "Death Knight" according to enum defines

do not catch out of range exception, this should never happen
remove the hack, should be fixed soon^tm in core
- Integer display width is deprecated and will be removed in a future
release.
- 'utf8' is currently an alias for the character set UTF8MB3, but will
be an alias for UTF8MB4 in a future release. Please consider using
UTF8MB4 in order to be unambiguous. */
remove tokenize

enum name

renames

reorganize sql

update cfg
@Helias Helias merged commit bf9fe9b into azerothcore:master Nov 19, 2024
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Suggestion - Scaling for twink servers
2 participants