Download
(3Kb)
Download
Updated: 02-17-09 12:28 PM
Pictures
File Info
Updated:02-17-09 12:28 PM
Created:01-06-09 06:41 PM
Downloads:48,335
Favorites:163
MD5:

MalygosCP  Popular! (More than 5000 hits)

Version: 1.3d
by: Orgo [More]

This is a little add-on I wrote for my guild; it keeps track of the Energy, combo points and the Engulf in Flames on Malygos.

Slash command:

/MCP, it will allow you to move the frame around, use the command again to lock the frame in place.

UPDATES:

-I just uploaded it as a .zip file.

-I fixed a bug where the stacks of Engulf in Flames sometimes were not resetting after a wipe.

-It will now work in any client with a different language.

-The frame will now only appear if you are in a Wyrmrest Skytalon (the dragon in the fight and the quest in Coldarra), it won’t appear in any other kind of vehicles.

-You can now move the frame correctly when you use the /command, it won’t disappear instantly.

-Now the "time remaining" will update correctly depending on how many combo points did you spend in the Engulf in Flames. Also it won’t refresh the timer if the time remaining in the stacks is longer than the new buff if you use less combo points. (Thanks to Kubax for this fix).

-I reduced the size of the texts and reorganized it, and added a status bar. it will now show:

Combo Points:
Energy:
Engulf in Flames Stacks:

And a Status bar with the time remaining on the stacks.


If you have any problem with the add-on, send me a PM.

Thanks.

Orgo

Optional Files (0)


Post A Reply Comment Options
Unread 02-14-09, 07:29 PM  
Nafe
A Deviate Faerie Dragon
AddOn Author - Click to view AddOns

Forum posts: 17
File comments: 35
Uploads: 12
Currently it seems that the stack count does not reset itself after a wipe.

I'm going to try to figure out where you can add "stacks = 0" into the code to get it working properly, but since Malygos is dead this week, I won't be able to test until next week

I've recommended the addon to my guild, since they were having trouble keeping track of their stacks, and this works wonders, aside from stack count after a wipe.

EDIT: It seems your method of updating stack counts is a bit strange.
I investigated why you do this, and I see that there's no easy way to get the number of stacks on Malygos from combat log events.
Still looking for a spot to put the "stacks = 0", and possibly another way to set stacks appropriately.

At the very least, you could take the periodic damage, and divide by 1500 (the amount per stack), and set stack count this way. It'll at least be acurate 60% of the time, or so, with an error of only 0 or -1
Last edited by Nafe : 02-14-09 at 08:29 PM.
Report comment to moderator  
Reply With Quote
Unread 02-15-09, 04:10 AM  
Orgo
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 12
Uploads: 2
Hello Nafe, yes that is a known bug, when i first did the addon, i was having problems because for some reason the spell some times doesnt trigger the "SPELL_CAST_SUCCESS" event and i couldnt see when one of the stacks landed, also there are some other events that keep track of the stacks i just didnt had any time to test them out, thats why i did it so weird, there is probably a better way but i did it in a hurry and the code is kinda messy.

For it to reset the stacks, maybe you can set the stacks to 0 every time you go out of combat. that way it will have to reset if you wipe, or malygos die.

This and some other minor bugs will be fixed in the next version, i just havent got any time to update it properly, currently im in my last weeks of the semester in college.

Thanks for the input, if you get it fixed feel free to send me a copy, ill check it out and put your name on the credits or somethings .

EDIT:

I just fixed it, and uploaded the new version, it should now reset properly.

try it and let me know.

thanks.

Orgo
Last edited by Orgo : 02-15-09 at 05:00 AM.
Report comment to moderator  
Reply With Quote
Unread 02-16-09, 12:59 AM  
MaikuMori
A Murloc Raider
AddOn Author - Click to view AddOns

Forum posts: 7
File comments: 26
Uploads: 2
Can you please use .zip achieves. Less problems for people runing MacOS or update managers.
Report comment to moderator  
Reply With Quote
Unread 02-16-09, 04:46 AM  
Orgo
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 12
Uploads: 2
Done

Orgo
Report comment to moderator  
Reply With Quote
Unread 02-16-09, 05:29 AM  
shawnk
A Kobold Labourer

Forum posts: 0
File comments: 6
Uploads: 0
Hi Orgo,

I think you left out the parent folder in the zip file.
Report comment to moderator  
Reply With Quote
Unread 02-16-09, 09:04 AM  
AsheruWolf
Premium Member
 
AsheruWolf's Avatar
Premium Member
AddOn Author - Click to view AddOns

Forum posts: 131
File comments: 65
Uploads: 1
Ya you kind of forgot to put a parent folder in for the new zip. Don't worry it happens to the best of us some times.
__________________
The end is never really the end, its the start of something new...
Report comment to moderator  
Reply With Quote
Unread 02-16-09, 11:05 AM  
Korkosh
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 26
Uploads: 7
could you make this addon translatable? pleeeeeease!

deDE would be:
Code:
Engulf in Flames Stacks = Flammenh\195\188lle gestapelt
Remaining time in the Engulf in Flames = Verbleibende Zeit f\195\188r Flammenh\195\188lle
Combo Points = Kombopunkte
Energy = Energie
Engulf in Flames = Flammenh\195\188lle
Report comment to moderator  
Reply With Quote
Unread 02-17-09, 05:11 AM  
tayedaen
A Deviate Faerie Dragon
AddOn Author - Click to view AddOns

Forum posts: 13
File comments: 191
Uploads: 6
MalygosCP.lua

I slightly edited MalygosCP.lua, so that it can be localized easier.
Code:
function MalygosCP_OnLoad()
    this:RegisterEvent("COMBAT_LOG_EVENT_UNFILTERED");
    this:RegisterEvent("UNIT_COMBO_POINTS");
    this:RegisterEvent("PLAYER_TARGET_CHANGED");
    this:RegisterEvent("UNIT_POWER");
    this:RegisterEvent("UNIT_ENERGY");
    this:RegisterEvent("UNIT_SPELLCAST_SUCCEEDED")
    this:RegisterEvent("UNIT_SPELLCAST_INTERRUPTED")
    this:RegisterEvent("UNIT_SPELLCAST_FAILED")
    this:RegisterEvent("UNIT_SPELLCAST_START")
    this:RegisterEvent("PLAYER_REGEN_ENABLED")

    frameMalys_Text:SetTextHeight(20) 
    frameMalys_Text2:SetTextHeight(20) 
    frameMalys_Text3:SetTextHeight(20)
    frameMalys_Text5:SetTextHeight(15)
    frameMalys_Text:SetTextColor(1, 1, 0);
    frameMalys_Text2:SetTextColor(1, 1, 0); 
    frameMalys_Text3:SetTextColor(1, 1, 0); 
    frameMalys_Background:SetAlpha(0);
    frameMalys:SetAlpha(0);
    frameMalys:EnableMouse(false)
    frameMalysTimeRemaining:SetStatusBarColor(1, 0, 0, 0.5);

    Shown = 1
    catorce=16;
    Start=0;
    stacks=0;
    TimeCombo=0;
    WSID=32535;
    WSID2=30161;
    editing=0;

    SLASH_MalygosCP1 = "/MalygosCP";
    SLASH_MalygosCP2 = "/MCP";
    SlashCmdList["MalygosCP"] = MalygosCP_Command;

    MSG_ComboPoints        = "Combo Points: "
    MSG_Energy             = "Energy:       "
    MSG_EngulfStacks       = "Engulf in Flames Stacks: "
    MSG_EngulfRemainigTime = "Remaining time in the Engulf in Flames"

    if (GetLocale() == "deDE") then
        MSG_ComboPoints  = "Kombopunkte: "    
        MSG_Energy       = "Energie:     "
        MSG_EngulfStacks = "Flammenh\195\188lle gestapelt: "
        MSG_EngulfRemainigTime = "Verbleibende Zeit f\195\188r Flammenh\195\188lle"
    end    
     
end

function MalygosCP_Command(cmd)

   if(  Shown == 1 ) then
      editing=1;
      frameMalys_Text:SetText(MSG_ComboPoints.."0");
      frameMalys:EnableMouse(true)
      frameMalys_Background:SetAlpha(1);
      Shown = 0
      frameMalys:SetAlpha(1);
      
    else
      editing=0;
      frameMalys:EnableMouse(false)
      frameMalys_Background:SetAlpha(0);
      Shown = 1
      frameMalys:SetAlpha(0);     
    end
   
end

function WyrmrestSkytalon()
    local guid = "vehicle" and UnitGUID("vehicle")
    if (guid) then
        if((WSID==tonumber(strsub(guid, -12,-7),16)) or (WSID2==tonumber(strsub(guid, -12,-7),16))) then 
        return true
        end     
    end 
end

function GetColorValue(nBase)
    if nBase <= 2 then
        nNum="FF0000"
    elseif nBase <= 4 then
        nNum = "FFAA00"
    elseif nBase <= 5 then
        nNum = "FFAA00"
    elseif nBase <= 6 then
        nNum = "FFD500"
    elseif nBase <= 7 then
        nNum = "FFFF00"
    elseif nBase <= 8 then
        nNum = "D5FF00"
    elseif nBase <= 9 then
        nNum = "AAFF00"
    elseif nBase <= 10 then
        nNum = "55FF00"
    elseif nBase <= 12 then
        nNum = "55FF00"
    elseif nBase <= 14 then
        nNum = "2BFF00" 
    else
       nNum = "00FF00"
    end     
    return nNum
end


function UpdateComboPoints()
    local comboP = 0;
    if (CanExitVehicle() and WyrmrestSkytalon()) then
        comboP = GetComboPoints("vehicle", "target");
    end
    return comboP;
end

function UnitPowerF()
    foo = UnitPower("Vehicle"); 
    local energy = 0;

    if (CanExitVehicle()) then
        energy = foo;
        if (energy == 0) then
         energy = foo;
        end
    end
    return energy;
end

function MalygosCP_OnUpdate()
    
    if(UnitPowerF()<25) then
     frameMalys_Text2:SetTextColor(1, 0, 0);
    else
     frameMalys_Text2:SetTextColor(1, 1, 0);
    end 

   frameMalys_Text2:SetText(MSG_Energy..UnitPowerF()); 

    if(catorce<22 and catorce >=0) then
    
        frameMalys_Text3:SetText(MSG_EngulfStacks..stacks);
        frameMalys_Text4:SetText(MSG_EngulfRemainigTime);
        frameMalys_Text5:SetText("|cff"..GetColorValue(floor(catorce))..catorce.."|r");
        catorce=floor(TimeCombo+(Start-GetTime()));
        frameMalysTimeRemaining:SetValue(TimeCombo+(Start-GetTime()));
    else
        frameMalys_Text3:SetText(MSG_EngulfStacks.."0");
        frameMalys_Text4:SetText("");
        frameMalysTimeRemaining:SetValue(0);
        frameMalys_Text5:SetText("");
    end

end

function MalygosCP_OnEvent(self, event, ...)
    local playerName = UnitName("player");
    local timestamp, type, sourceGUID, sourceName, sourceFlags, destGUID, destName, destFlags = select(1, ...)
    local guid = UnitGUID("vehicle");      

    if event == "PLAYER_REGEN_ENABLED" then
        catorce=23;
        stacks=0;
    end
    
    if event == "UNIT_COMBO_POINTS" or event == "PLAYER_TARGET_CHANGED" then
        frameMalys_Text:SetText(MSG_ComboPoints..UpdateComboPoints());
    end
    
    
    if (CanExitVehicle() and WyrmrestSkytalon()) then           
        frameMalys:SetAlpha(1);
        frameMalys_Text:SetText(MSG_ComboPoints..UpdateComboPoints());
        frameMalys_Text2:SetText(MSG_Energy..UnitPowerF()); 
    else
        if(editing<1) then
            frameMalys:SetAlpha(0);
        end   
    end
 
    if (event=="COMBAT_LOG_EVENT_UNFILTERED") then
        if (sourceGUID == guid) then
           
            if (type ~= "SPELL_PERIODIC_DAMAGE" and type ~= "SPELL_AURA_APPLIED") then
                local spellId, spellName, spellSchool = select(9, ...)
                local amount, overkill, school, resisted, blocked, absorbed, critical, glancing, crushing = select(12, ...)

                --  if (spellName=="Engulf in Flames") then 
                if ((spellId==61621) or (spellId==56092)) then
                    StartCombo=UpdateComboPoints();
                    StartCombo=StartCombo-1;
                    TempTimeCombo=StartCombo*4;
                    TempTimeCombo=TempTimeCombo+6;
                    if (TempTimeCombo > catorce or catorce==23) then
                        catorce=0;
                        TimeCombo=TempTimeCombo;
                        Start=GetTime();
                        frameMalysTimeRemaining:SetMinMaxValues(0,TimeCombo);
                    end
                    stacks=stacks+1;
                end
            end
    
            if (type == "SPELL_AURA_REMOVED") then
                local spellId, spellName, spellSchool = select(9, ...)
                local amount, overkill, school, resisted, blocked, absorbed, critical, glancing, crushing = select(12, ...)
                if (sourceGUID == guid) then
                    --  if (spellName=="Engulf in Flames") then 
                    if ((spellId==61621) or (spellId==56092)) then
                        catorce=23;
                        stacks=0;
                    end 
                end
            end

        end
    end
end
Report comment to moderator  
Reply With Quote
Unread 02-17-09, 12:32 PM  
Orgo
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 12
Uploads: 2
Originally posted by shawnk
Hi Orgo,

I think you left out the parent folder in the zip file.
Upss hehe, fixed =P. thanks



Originally posted by Korkosh
could you make this addon translatable? pleeeeeease!
I will, i already have some transtaltion for french, german and spanish i think, as soon is i get some time ill do it .

Thanks for the input.


Originally posted by tayedaen
I slightly edited MalygosCP.lua, so that it can be localized easier.
Thanks a lot dude, when i get some time ill include your fix !.

thanks for the help .

Orgo
Report comment to moderator  
Reply With Quote
Unread 02-17-09, 06:11 PM  
Jerricka
An Aku'mai Servant
 
Jerricka's Avatar

Forum posts: 30
File comments: 178
Uploads: 0
I don't see the UI with either Aces High! quest OR Malygos encounters, is this because I have Bartender3? If so, can you fix it so I can see your pretty UI? ^_^
Report comment to moderator  
Reply With Quote
Unread 02-19-09, 01:11 AM  
|Taker|
Guest

Join Date: Not Yet
Forum posts: 0
File comments: 0
Uploads: 0
Hi Orgo,
thanks for the addon, I was about to write a similiar one on my own when I found yours, so I skipped my version of it

But since I already thought about my version, I got some suggestion for yours:
-a more compact layout : combine both "Combo Points: XX" and "Energy: XX" into one line --> "CPs: XX Energy: XX", same goes for the stack counter and the time remaining bar. The stack counter could easily fit into the left part of the bar

-semi transparent background: makes the display more readable when you look directly at malygos

-out of range warning: change the background to red whenever the drake is out of range to fire, should be optional though, since healers don't have to be in range of malygos
Report comment to moderator  
Edit/Delete Message Reply With Quote
Unread 02-21-09, 10:48 AM  
Awmax99
A Kobold Labourer

Forum posts: 0
File comments: 1
Uploads: 0
This addon doesn't work for me. I put it in my AddOns folder along with all the other addons, it doesn't work. I deleted my AddOns folder and only installed this addon. it still doesn't work. Anyone else have this problem and then get it resolved?

It worked a few days ago on both Malygos and Aces High. Now after the update, it no longer is working.

I did mess around with /mcp and moved the frame around and I wasn't ever able to type /mcp and lock the frame in position. When I move the frame, where are the values saved?
Last edited by Awmax99 : 02-21-09 at 12:57 PM.
Report comment to moderator  
Reply With Quote
Unread 02-23-09, 01:25 AM  
Orgo
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 12
Uploads: 2
Originally posted by Awmax99
This addon doesn't work for me. I put it in my AddOns folder along with all the other addons, it doesn't work. I deleted my AddOns folder and only installed this addon. it still doesn't work. Anyone else have this problem and then get it resolved?

It worked a few days ago on both Malygos and Aces High. Now after the update, it no longer is working.

I did mess around with /mcp and moved the frame around and I wasn't ever able to type /mcp and lock the frame in position. When I move the frame, where are the values saved?
Im not sure what could it be D:. it was working for me last time i did Maly. the variables are saved in the WTF i think. Ill check the addon this week to see if there is something wrong. You can find the older version under the "Archived" tab if one of the older version worked for you.

Originally posted by |Taker| Hi Orgo,
thanks for the addon, I was about to write a similiar one on my own when I found yours, so I skipped my version of it

But since I already thought about my version, I got some suggestion for yours:
-a more compact layout : combine both "Combo Points: XX" and "Energy: XX" into one line --> "CPs: XX Energy: XX", same goes for the stack counter and the time remaining bar. The stack counter could easily fit into the left part of the bar

-semi transparent background: makes the display more readable when you look directly at malygos

-out of range warning: change the background to red whenever the drake is out of range to fire, should be optional though, since healers don't have to be in range of malygos
Thanks for the input man , i was already thinking in the range checker, ill try to get it done this weekend. Thanks for the feedback.

Originally posted by JerrickaI don't see the UI with either Aces High! quest OR Malygos encounters, is this because I have Bartender3? If so, can you fix it so I can see your pretty UI? ^_^
I use Bartender 3 and the addon works fine, not sure what could it be. Ill check the addon next Malygos Reset. Maybe i did something to the file by mistake when i re-compressed it to Zip, if you want try using the .rar version of the file to see if it works and let me know. Ill download the zip file and test the addon next week anyways. right now it looks good to me. Thanks for the input .

Orgo
Report comment to moderator  
Reply With Quote
Unread 03-01-09, 12:15 PM  
nereme
A Kobold Labourer

Forum posts: 0
File comments: 4
Uploads: 0
I had the same problem in that i installed the addon but it didnt work.

the problem is the addon is not in a folder when it gets installed but just sitting there so you need to make a folder called MalygosCP put the 3 files for the zip file into there and there you go 1 working addon
Report comment to moderator  
Reply With Quote
Unread 03-01-09, 05:54 PM  
Veuliah
A Kobold Labourer

Forum posts: 0
File comments: 1
Uploads: 0
Hi, for frFR:
Code:
if (GetLocale() == "frFR") then
        MSG_ComboPoints  = "Points de combo: "    
        MSG_Energy       = "Energie:     "
        MSG_EngulfStacks = "Envelopper dans les flammes: "
        MSG_EngulfRemainigTime = "Temps restant pour l'envelopper dans les flammes:"
    end
thx for your add on
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: