fix: herb/ore categorization via static ID lookup table
SplitByCategory() guessed herb/ore from display-name keywords written for the original 5-entry Northrend pool. Outland/Classic ore uses 'Deposit' not 'Vein', and most herb names match no keyword, so both buckets came back empty for almost every v2 zone and the code silently fell back to the unsplit pool (confirmed live in Hellfire Peninsula). Replace the keyword guess with a static ID->category lookup table built from the DB-verified entry IDs in docs/zone-specific-resources-spec.md. The old keyword check is retained only as a fallback for entries not in the table.
This commit is contained in:
parent
5d292b3d9c
commit
24b0815fc6
2 changed files with 68 additions and 3 deletions
|
|
@ -17,6 +17,15 @@ All notable changes to `mod-gold-rush` will be documented in this file.
|
|||
global `GoldRush.NodeEntries` pool exactly as before.
|
||||
|
||||
### Fixed
|
||||
- Herb/ore categorization no longer guesses from display-name keywords. The old
|
||||
`SplitByCategory()` matched "lotus"/"clover"/"thorn"/"bloom" for herbs and
|
||||
"vein" for ore, which only worked for the original Northrend default pool and
|
||||
silently fell back to the unsplit pool for almost every v2 zone (Outland/Classic
|
||||
ore uses "Deposit", not "Vein"; most herb names match no keyword). Replaced with
|
||||
a static ID→category lookup table built from the DB-verified entry IDs in
|
||||
`docs/zone-specific-resources-spec.md`, with the old keyword check retained only
|
||||
as a fallback for entries not in the table. See
|
||||
`docs/herb-ore-category-fix-spec.md`.
|
||||
- Event start/end announcements no longer crash the server. `StartEvent()` and
|
||||
`EndEvent()` both used `ChatHandler(nullptr).SendWorldText(...)` to broadcast
|
||||
server-wide -- `ChatHandler::SendWorldText` assumes a real session and calls
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue