Skip to content

Re-Fixing TRP NPC/DM Tags#18

Open
Tildemancer wants to merge 15 commits into
tmg-pub:mainfrom
Tildemancer:main
Open

Re-Fixing TRP NPC/DM Tags#18
Tildemancer wants to merge 15 commits into
tmg-pub:mainfrom
Tildemancer:main

Conversation

@Tildemancer

Copy link
Copy Markdown

Downstream of raptormama's commit, necessarily, since it hasn't been merged yet and I ain't rewriting all that
Did a cursory inspection and it didn't look suspicious, so that's my base now
This is incredibly hacky garbage code that almost certainly can be improved but it works on my machine, and it'll have to do until we get an official update. May I cordially invite you to show me up in every way

Anyway;
providence note for https://github.com/raptormama/listener and their 12.0.5 sanitation efforts
src/listener.lua

Added TRP3 NPC message detection and parsing.
Added recovery of NPC speaker names from TRP3 APIs.
Added support for storing NPC display metadata (name, short name, icon, color).
Added handling for anonymous (| ) emotes. (also nuked old formatting)
Added helper functions for NPC name/icon formatting.
Improved compatibility with TRP3 companion profiles.

ui/ListenerFrame.lua

Display NPC speakers using their NPC names instead of player names.
Show custom NPC icons and colors.
Prevent NPC names from being rendered as clickable player links.
Improve display of anonymous emotes.
Use stored NPC metadata when rendering chat history.

src/snoop2.lua

Apply NPC speaker support to Snooper windows.
Apply anonymous-emote handling to Snooper windows.
Prevent NPC names from becoming clickable player links.
Support custom NPC colors in Snooper displays.
Keep Snooper presentation consistent with the main Listener window.

image image

raptormama and others added 12 commits April 21, 2026 16:01
The addon needs to know whether it can currently access the parameters it needs to process a message. This is sometimes restricted by the WoW client (e.g. in boss encounters), and this revision adds checks for that.

The output window (main/snooper) won't update during those times.
…dling

Added secret checks to prevent client from throwing Lua errors
Step-by-step howto for end-user use until the addon author pushes this fix (or something like it) in the official releases.
Updated the instructions for downloading listener.lua.
Updated the readme to clarify the purpose of the addon and its functionality.
Integrating raptormama's fixes
src/listener.lua

Added TRP3 NPC message detection and parsing.
Added recovery of NPC speaker names from TRP3 APIs.
Added support for storing NPC display metadata (name, short name, icon, color).
Added handling for anonymous (| ) emotes.
Added helper functions for NPC name/icon formatting.
Improved compatibility with TRP3 companion profiles.

src/snoop2.lua

Apply NPC speaker support to Snoop windows.
Apply anonymous-emote handling to Snoop windows.
Prevent NPC names from becoming clickable player links.
Support custom NPC colors in Snoop displays.
Keep Snoop presentation consistent with the main Listener window.
ui/ListenerFrame.lua

Display NPC speakers using their NPC names instead of player names.
Show custom NPC icons and colors.
Prevent NPC names from being rendered as clickable player links.
Improve display of anonymous emotes.
Use stored NPC metadata when rendering chat history.
dmtags.lua line 120 called UnitName(unit) before unit was assigned

moved the check after "local unit = frame:GetAttribute("unit")" and guarded it as "if unit and canaccessvalue(UnitName(unit)) then"
Trying to wrap so it stops tainting things
trying to guard from a taint i got in delves

it scans every frame, now it shouldn't
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.

2 participants