What's new
  • NEW: Happy Cataclysm gaming! The fresh 4.3.4 Cataclysm Repack V20.0 is now live - and downloadable from our brand-new Emucoach App.
    Download it now
  • Mists of Pandaria is calling! Heya - did you know that the newest 5.4.8 MoP Repack - version 7.1 - is now live?
    Download now

[NPC] 37 creatures point to gossip_menu_id rows that do not exist (Tillers, Tavern in the Mists, etc.)

Kneuma

MoP Premium
Veteran Member
58
2025
25
[Location, Faction, Race] Various MoP zones - notably Halfhill Market / Tillers farm (Valley of the Four Winds) and Tavern in the Mists (Veiled Stair / Kun-Lai Summit), both factions, any race.

[Name, Type] 37 distinct creature_template entries with creature_template.gossip_menu_id pointing to a gossip_menu row that does NOT exist. Four high-profile examples verified live:
58710 Jogu the Drunk (Tillers / Master of Spirits) -> gossip_menu_id 13610 (missing)
58712 Kol Ironpaw (Tillers / Master of the Grill cooking trainer) -> gossip_menu_id 61000 (missing)
58761 Tina Mudclaw (Tillers) -> gossip_menu_id 13601 (missing)
68526 Barkeep Townsley (Tavern in the Mists) -> gossip_menu_id 65100 (missing)

[Problem Description] On TrinityCore / SkyFire cores, when a player talks to an NPC the server looks up creature_template.gossip_menu_id in the gossip_menu table to know which menu to send the client. For these 37 NPCs that lookup fails (no row), so the gossip text/options pane comes up empty or the interaction does nothing. For some of them this blocks faction progression directly - e.g. Kol Ironpaw (entry 58712) is the Way-of-the-Grill cooking trainer; with menu 61000 missing the player cannot pick the "I seek training in the Way of the Grill" option, blocking the Pandaria Way of the Grill specialization. Note: gossip_menu_option rows DO exist for some menus (verified for 61000 and 65100), so the options are configured - it's specifically the gossip_menu parent rows that are missing.

Reproducible DB queries (read-only, world DB):
SELECT COUNT(*) FROM creature_template ct LEFT JOIN gossip_menu gm ON ct.gossip_menu_id = gm.entry WHERE ct.gossip_menu_id > 0 AND gm.entry IS NULL; -- 37
SELECT ct.entry, ct.name, ct.gossip_menu_id FROM creature_template ct LEFT JOIN gossip_menu gm ON ct.gossip_menu_id = gm.entry WHERE ct.gossip_menu_id > 0 AND gm.entry IS NULL AND ct.entry IN (58712, 58710, 58761, 68526); -- 4 rows (the examples above)
SELECT menu_id, id, option_text FROM gossip_menu_option WHERE menu_id = 61000; -- 1 row, option exists but parent menu does not

Also verified: for Kol Ironpaw (58712) and Barkeep Townsley (68526) the smart_scripts handler is event_type 62 (SMART_EVENT_GOSSIP_SELECT) which only fires AFTER the menu has been displayed - so SmartAI does not bypass the missing parent menu, the user still sees an empty/broken gossip window.

[How it should work] Each of the 37 referenced gossip_menu_id values should have a matching row in gossip_menu (with the correct text_id pointing to the right npc_text / broadcast_text), so the menu displays and the existing options (where present in gossip_menu_option) are reachable. For Kol Ironpaw specifically this would unlock the Way-of-the-Grill cooking trainer flow.

Links: http://mop-shoot.tauri.hu/?npc=58712 (Kol Ironpaw) | http://mop-shoot.tauri.hu/?npc=58710 (Jogu) | http://mop-shoot.tauri.hu/?npc=68526 (Barkeep Townsley)
 
Back
Top