Download
(191Kb)
Download
Updated: 09-22-10 03:08 PM
Pictures
File Info
Updated:09-22-10 03:08 PM
Created:08-11-10 07:08 PM
Downloads:10,334
Favorites:9
MD5:

Plaguechill's Val'kyr Monitor  Popular! (More than 5000 hits)

Version: 1.13
by: Thomphoolery [More]

A custom mod for 25-man Heroic Lich King, written in-house for Plaguechill of Khadgar.

We wanted a way to track Val'kyr health, stuns, slows, icons, stun history, and DR remaining without having to tab target constantly.

Upon summoning Val'kyr Shadowguards, PCValkMon will create 3 health bars. To the left of each bar is any icon the Val'kyr are assigned. The name of each victim is displayed in the health bar, and as stuns go out, they travel in real time across the bar. As stuns are used, they appear in the stun history. Following each stun a yellow bar indicating the window for diminishing returns is created.

To the right of each bar is the active slow effect.

This mod was created entirely in-between wipes and before/after raids. We added features on-demand, and tailored it specifically for Plaguechill use on this one very specific fight. However, if it helps other guilds defeat this encounter, we are glad to contribute. Given all that - we already know this mod isn't super tuned or gorgeous looking. We had a particular need to fill, and we filled it - sometimes at the expense of aesthetics. (for instance, when our animation updater ran too raggedly, we simply removed it in the source!)

We are presenting it now, as is.

/pcvm to display and hide the window, which is draggable.

-Plaguechill of Khadgar

---------------------------------------------------------------
Update:
v1.13 - The spellID change screwed up transition checks. Should be fixed now; thanks, Habik.

v1.12 - Added "/pcvm reset" command to reset PCVM anchor to upper left
- Added support for spellIDs. This should enable ValkMon to work in non-English clients, but this is very experimental =) Please report any errors!

v1.11 - DBM dependence removed. (Thanks to nebula for the patch)

v1.13 - Fix to spellID patch for transition checks.

v1.12 - Added "/pcvm reset" command to reset PCVM anchor to upper left
- Added support for spellIDs. This should enable ValkMon to work in non-English clients, but this is very experimental =) Please report any errors!

v1.11 - DBM dependence removed. (Thanks to nebula for the patch)
Post A Reply Comment Options
Unread 08-15-10, 01:08 AM  
Daedalus182
A Kobold Labourer

Forum posts: 0
File comments: 3
Uploads: 0
Does it also works in normal mode and if it does not, would it be possible to mod this? Thanks with best regards.
Report comment to moderator  
Reply With Quote
Unread 08-14-10, 03:10 PM  
reg0ner
A Murloc Raider

Forum posts: 4
File comments: 75
Uploads: 0
Retarded when it comes to LUA, I've got notepad++ but I'm pretty sure im doing it wrong. lmao.

Originally posted by nebula
being boss mod agnostic would be good (but annoying to do ). Here's dry coded support for dbm, bigwigs, and dxe

Code:
--- PCValkMon.lua	Mon Jul 19 23:55:12 2010
+++ PCValkMon.lua	Thu Aug 12 08:35:46 2010
@@ -77,8 +77,14 @@
 --*********************************************************
 --*********************************************************
 function PCVM:OnEnable()
-  if not foundDBM and DBM then
-    self:ADDON_LOADED(nil, "DBM-Core");
+  if not foundDBM then
+    if DBM then
+      self:ADDON_LOADED(nil, "DBM-Core");
+    elseif BigWigs then
+      self:ADDON_LOADED(nil, "BigWigs_Core");
+    elseif DXE then
+      self:ADDON_LOADED(nil, "DXE");
+    end
   end
 end
 
@@ -110,20 +116,63 @@
 
 --*********************************************************
 --*********************************************************
+
+local function bossModStart(name) PCVM:BeginCombat(); PCVM:Print("%s engaged", name); end
+local function bossModStop() PCVM:EndCombat(); end
+
+local function dbmCallback(event, module)
+  --print(("dbmCallback: %s %s"):format(event, module.id))
+  if event == "pull" and module.id == "LichKing" then
+    bossModStart(module.combatInfo.name)
+  elseif event == "wipe" or event == "kill" then
+    bossModStop()
+  end
+end
+
+local function chatMsgAddon(event, prefix, message)
+  if prefix ~= "BigWigs" then return end
+  local sync, rest = select(3, message:find("(%S+)%s*(.*)$"))
+  print(("chatMsgAddon: %s %s %s"):format(prefix, sync, rest))
+  if sync == "BossEngaged" and rest == "The Lich King" then
+    bossModStart(BigWigs:Translate(rest))
+  end
+end
+
+local function bwCallback(event, module)
+  print(("bwCallback: %s %s"):format(event, module.name))
+  if event == "BigWigs_OnBossDisable" then
+    bossModStop()
+  end
+end
+
+local function dxeCallback(event, module)
+  --print(("dxeCallback: %s %s"):format(event, DXE:GetActiveEncounter()))
+  if event == "StartEncounter" and DXE:GetActiveEncounter() == "lichking" then
+    bossModStart(DXE.L.npc_citadel["Lich King"])
+  elseif event == "TriggerDefeat" or event == "StopEncounter" then
+    bossModStop()
+  end
+end
+
 function PCVM:ADDON_LOADED(event, addonName)
   if addonName == "DBM-Core" then
-    PCVM:Print("Found DBM!");
+    self:Print("Found DBM!");
+    foundDBM = true;
+    DBM:RegisterCallback("pull", dbmCallback);
+    DBM:RegisterCallback("wipe", dbmCallback);
+    DBM:RegisterCallback("kill", dbmCallback);
+  elseif addonName == "BigWigs_Core" then
+    self:Print("Found BigWigs!");
+    foundDBM = true;
+    --Engage doesn't have a callback :\
+    self:RegisterEvent("CHAT_MSG_ADDON", chatMsgAddon);
+    BigWigs:RegisterMessage("BigWigs_OnBossDisable", bwCallback);
+  elseif addonName == "DXE" then
+    self:Print("Found DXE!");
     foundDBM = true;
-    DBM:RegisterCallback("pull", function(event, mod)
-      PCVM:BeginCombat();
-      PCVM:Print(mod.id .. " engaged");
-    end);
-    DBM:RegisterCallback("wipe", function(mod)
-      PCVM:EndCombat();
-    end);
-    DBM:RegisterCallback("kill", function(mod)
-      PCVM:EndCombat();
-    end);
+    DXE:RegisterCallback("StartEncounter", dxeCallback);
+    DXE:RegisterCallback("StopEncounter", dxeCallback);
+    DXE:RegisterCallback("TriggerDefeat", dxeCallback);
   end
 end
I'll test it with BigWigs tonight, but it should work well enough assuming it works at all

Edit: Oops, added module checking to the start conditions and localized the engage message all around (maybe <.<)
Edit Edit: Ok, I'm done.
Report comment to moderator  
Reply With Quote
Unread 08-12-10, 07:17 AM  
Thomphoolery
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 15
Uploads: 4
My guild used DBM, so that's what we targeted =)

Thanks for the patch!
Report comment to moderator  
Reply With Quote
Unread 08-12-10, 06:19 AM  
nebula
A Deviate Faerie Dragon
 
nebula's Avatar
AddOn Author - Click to view AddOns

Forum posts: 16
File comments: 72
Uploads: 18
being boss mod agnostic would be good

[deleted boss mod crap]
Last edited by nebula : 08-15-10 at 11:15 PM.
Report comment to moderator  
Reply With Quote
Unread 08-12-10, 12:49 AM  
reg0ner
A Murloc Raider

Forum posts: 4
File comments: 75
Uploads: 0
I mean DBM is nice and all, but is there any chance for DXE support in the future? I hate DBM's style and most of the custom UI's on this website, use DXE.
Report comment to moderator  
Reply With Quote
Unread 08-11-10, 07:59 PM  
jmcgrath
A Deviate Faerie Dragon
 
jmcgrath's Avatar

Forum posts: 16
File comments: 185
Uploads: 0
I look forward to testing it with our guild Runs.
Report comment to moderator  
Reply With Quote
Unread 08-11-10, 07:31 PM  
Kristie
A Kobold Labourer
 
Kristie's Avatar

Forum posts: 0
File comments: 11
Uploads: 0
Such a useful addon, especially for random-val'kyr-at-20% syndrome :P
__________________
zomgarmory
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: