12.0.006
Details
-
Filenamedgks-12.0.006.zip
-
Uploaded by
-
UploadedNov 10, 2026
-
Size1.24 MB
-
Downloads226
-
MD5684b5e2fcef634f4448bb15842015fdd
Supported WoW Retail Versions
- 12.0.1
- 11.2.7
- 12.0.0
- 11.0.2
Supported WoW Forever Versions
- 1.60.1
Supported WoW Mists of Pandaria Classic Versions
- 5.5.3
- 5.5.0
Supported WoW Cataclysm Classic Versions
- 4.4.2
Supported WoW Wrath Titan Reforged Versions
- 3.80.0
Supported WoW Wrath of the Lich King Classic Versions
- 3.4.5
Supported WoW Classic Versions
- 1.15.8
Supported WoW Burning Crusade Classic Versions
- 2.5.5
Changelog
lightweight tag ea175260ffc02a3394bdd1fd866f5120ce354305 12.0.006
Author: GitHub <[email protected]>
Date: Tue Nov 10 01:30:19 2026 -0800
commit b128708833ad0d28cc3160aa9f3a4676f607dfb5
Author: Aaron <[email protected]>
Date: Tue Nov 10 09:48:20 2026 +1000
Update LibSink
LibSink-2.0 v12.0.3 -> v12.1.2. The Raid Warning sink now uses
RaidWarningUtil.AddMessage when it exists (falls back to RaidNotice_AddMessage),
and the TOC interface list adds 16001 (Forever) and the 12.1.x numbers.
commit b3f787509b4ca93965223b11f753adc01fecfaba
Author: Aaron <[email protected]>
Date: Mon Nov 9 11:47:01 2026 +1000
Use Death Recap to name the player's killer on retail/Forever
The combat log is closed to addons in 12.0, so the killer was always recorded as
'Unknown because of retail'. C_DeathRecap exposes sourceName as a readable string,
so look it up after death (retrying briefly while the recap fills in) and fall back
to the old placeholder if it is unavailable or the name is a secret value.
Also call dgks:PlayerDeath instead of self:PlayerDeath: inside the event handler
'self' is the event frame, which has no PlayerDeath method.
commit b3f787509b4ca93965223b11f753adc01fecfaba
Author: Aaron <[email protected]>
Date: Mon Nov 9 11:47:01 2026 +1000
Use Death Recap to name the player's killer on retail/Forever
The combat log is closed to addons in 12.0, so the killer was always recorded as
'Unknown because of retail'. C_DeathRecap exposes sourceName as a readable string,
so look it up after death (retrying briefly while the recap fills in) and fall back
to the old placeholder if it is unavailable or the name is a secret value.
Also call dgks:PlayerDeath instead of self:PlayerDeath: inside the event handler
'self' is the event frame, which has no PlayerDeath method.
commit 02ad29db1c1d9abbc9149332f173d8d689263cae
Author: Aaron <[email protected]>
Date: Sun Nov 8 19:53:02 2026 +1000
Ignore system chat messages whose text is a secret value
CHAT_MSG_SYSTEM and CHAT_MSG_BG_SYSTEM_NEUTRAL payloads can be secret strings in
restricted content. strmatch/comparison on them raises 'attempt to perform string
conversion on a secret string value' from the duel message handler.
commit fba168aace5f3a0a4a27fce48f93e3291f49c538
Author: Aaron <[email protected]>
Date: Sun Nov 8 11:51:24 2026 +1000
Print killshot and multikill lines to chat when the chatbox option is on
The 'Print killshots and deaths in chatbox' option only printed the player's own
kill counts and deaths. The 'X killed Y!' line went only to the LibSink output,
so it vanished when that output (e.g. Blizzard combat text) was not showing.
Print it to chat too, unless the sink is already ChatFrame.
commit 3aa76420663ea196a4c5bc3920e97c621089f24d
Author: Aaron <[email protected]>
Date: Sat Nov 7 17:53:54 2026 +1000
Ignore PARTY_KILL events whose GUIDs are secret values
In restricted content the attacker and target GUIDs arrive as secret values.
Comparing them (attackerGUID == playerGUID) from addon code raises
"attempt to compare local 'attackerGUID' (a secret string value, while
execution tainted by 'dgks')" on every kill.
The isSecret checks added in 92a5575 sit inside the debug block, which is
stripped from release builds, so they never ran. Return early before the
debug block when either GUID is secret.
commit a8f3463aa8dda2044cbe12f72391e3ab3edd485d
Author: Aaron <[email protected]>
Date: Sat Nov 7 16:02:28 2026 +1000
Fix death/duel-flee errors, version reply, sound packs, duel emote save
- events:UNIT_DIED and events:CHAT_MSG_SYSTEM are called with the event
frame as self, so self:PlayerDeath / self:PlayerLoss hit a nil method
and errored when the player died or fled a duel. Call dgks: instead.
- Version-check reply passed the unquoted global WHISPER (nil) as the
distribution. Use the string "WHISPER".
- The female and baby sound packs built their paths with "\female\\" and
"\baby\\", where \f and \b are form-feed and backspace in Lua, so the
files never loaded. soundPath already ends in a backslash; drop the
leading one (sexy only worked by accident, changed for consistency).
- The custom duel emote setter wrote to duelcustomemoteemote, so the
setting never saved. Write to duelcustomemote.
commit 90ca222f3b3cc120133d193b3f8f2b0f9e73b8d6
Author: Aaron <[email protected]>
Date: Sat Nov 7 15:29:47 2026 +1000
Fix load error: move TargetCheck out of the debug block
TargetCheck sat inside the dev-only debug block and had its own inner
debug block. The packager does not nest these, so in release builds the
inner end marker closed the outer block early, leaving a stray `end`
("dgks.lua:2005: '<eof>' expected near 'end'") and dropping TargetCheck,
which events:PARTY_KILL calls.
Move TargetCheck above the debug block, inner debug print unchanged.
Fixes #3
commit b128708833ad0d28cc3160aa9f3a4676f607dfb5
Author: Aaron <[email protected]>
Date: Tue Nov 10 09:48:20 2026 +1000
Update LibSink
LibSink-2.0 v12.0.3 -> v12.1.2. The Raid Warning sink now uses
RaidWarningUtil.AddMessage when it exists (falls back to RaidNotice_AddMessage),
and the TOC interface list adds 16001 (Forever) and the 12.1.x numbers.
commit d1a10e340c04b08c3baba2d54864407c917e5618
Author: Aaron <[email protected]>
Date: Tue Nov 10 09:48:20 2026 +1000
Update ACE
AceDB-3.0 to MINOR 40 (Ace3 master ac3d122): recognise RP-PvP realms for
WoW Forever, and drop the nil surname fallback (upstream: the nil surname
bug has long since been fixed).
commit b3f787509b4ca93965223b11f753adc01fecfaba
Author: Aaron <[email protected]>
Date: Mon Nov 9 11:47:01 2026 +1000
Use Death Recap to name the player's killer on retail/Forever
The combat log is closed to addons in 12.0, so the killer was always recorded as
'Unknown because of retail'. C_DeathRecap exposes sourceName as a readable string,
so look it up after death (retrying briefly while the recap fills in) and fall back
to the old placeholder if it is unavailable or the name is a secret value.
Also call dgks:PlayerDeath instead of self:PlayerDeath: inside the event handler
'self' is the event frame, which has no PlayerDeath method.
commit 02ad29db1c1d9abbc9149332f173d8d689263cae
Author: Aaron <[email protected]>
Date: Sun Nov 8 19:53:02 2026 +1000
Ignore system chat messages whose text is a secret value
CHAT_MSG_SYSTEM and CHAT_MSG_BG_SYSTEM_NEUTRAL payloads can be secret strings in
restricted content. strmatch/comparison on them raises 'attempt to perform string
conversion on a secret string value' from the duel message handler.
commit fba168aace5f3a0a4a27fce48f93e3291f49c538
Author: Aaron <[email protected]>
Date: Sun Nov 8 11:51:24 2026 +1000
Print killshot and multikill lines to chat when the chatbox option is on
The 'Print killshots and deaths in chatbox' option only printed the player's own
kill counts and deaths. The 'X killed Y!' line went only to the LibSink output,
so it vanished when that output (e.g. Blizzard combat text) was not showing.
Print it to chat too, unless the sink is already ChatFrame.
commit 3aa76420663ea196a4c5bc3920e97c621089f24d
Author: Aaron <[email protected]>
Date: Sat Nov 7 17:53:54 2026 +1000
Ignore PARTY_KILL events whose GUIDs are secret values
In restricted content the attacker and target GUIDs arrive as secret values.
Comparing them (attackerGUID == playerGUID) from addon code raises
"attempt to compare local 'attackerGUID' (a secret string value, while
execution tainted by 'dgks')" on every kill.
The isSecret checks added in 92a5575 sit inside the debug block, which is
stripped from release builds, so they never ran. Return early before the
debug block when either GUID is secret.
commit a8f3463aa8dda2044cbe12f72391e3ab3edd485d
Author: Aaron <[email protected]>
Date: Sat Nov 7 16:02:28 2026 +1000
Fix death/duel-flee errors, version reply, sound packs, duel emote save
- events:UNIT_DIED and events:CHAT_MSG_SYSTEM are called with the event
frame as self, so self:PlayerDeath / self:PlayerLoss hit a nil method
and errored when the player died or fled a duel. Call dgks: instead.
- Version-check reply passed the unquoted global WHISPER (nil) as the
distribution. Use the string "WHISPER".
- The female and baby sound packs built their paths with "\female\\" and
"\baby\\", where \f and \b are form-feed and backspace in Lua, so the
files never loaded. soundPath already ends in a backslash; drop the
leading one (sexy only worked by accident, changed for consistency).
- The custom duel emote setter wrote to duelcustomemoteemote, so the
setting never saved. Write to duelcustomemote.
commit 90ca222f3b3cc120133d193b3f8f2b0f9e73b8d6
Author: Aaron <[email protected]>
Date: Sat Nov 7 15:29:47 2026 +1000
Fix load error: move TargetCheck out of the debug block
TargetCheck sat inside the dev-only debug block and had its own inner
debug block. The packager does not nest these, so in release builds the
inner end marker closed the outer block early, leaving a stray `end`
("dgks.lua:2005: '<eof>' expected near 'end'") and dropping TargetCheck,
which events:PARTY_KILL calls.
Move TargetCheck above the debug block, inner debug print unchanged.
Fixes #3
commit 92a557525f9b79a0f579705335987283230ea0af
Author: Lance Inman <[email protected]>
Date: Mon Oct 12 10:29:46 2026 -0700
Secret checking and tag.