Jump to content


Photo

The DogTags 3.0 Thread


  • Please log in to reply
635 replies to this topic

#1 Trouble

Trouble

    Bald Bull

  • Members
  • 1448 posts

Posted 28 March 2008 - 08:23 PM

Since most of the DogTags in the thread are now defunct it's probably best to get a new thread going to avoid confusion. Here's updated version of the tags I posted.

Scorch stack display:

[outline (if (Class(unit="player") = "Mage") and (TalentTree(unit="player") = "Fire") and HasAura("Fire Vulnerability") then
    NumAura("Fire Vulnerability"):Green
end)]

Display if a target is frozen:

[outline (if (Class(unit="player") = "Mage") and (TalentTree(unit="player") = "Frost") and (HasAura("Frostbite") or HasAura("Frost Nova") or HasAura("Freeze")) then
    "Frozen":Color("3333FF")
end)]

Posted Image


Colored dots to display buffs:

[outline (if HasAura("Arcane Intellect") or HasAura("Arcane Brilliance") then
    ".":Color("008aff")
end) (if HasAura("Power Word: Fortitude") or HasAura("Prayer of Fortitude") then
    ".":White
end) (if HasAura("Divine Spirit") or HasAura("Prayer of Spirit") then
    ".":Yellow
end) (if HasAura("Mark of the Wild") or HasAura("Gift of the Wild") then
    ".":Color("ff00ce")
end) (if HasAura("Shadow Protection") or HasAura("Prayer of Shadow Protection") then
    ".":Color("8300fd")
end)]

[outline (if HasAura("Well Fed") then
    ".":Color("682e00")
end) (if HasAura("Flask of Pure Death") or HasAura("Pure Death of Shattrath") then
    ".":Color("ad0505")
end)]

[outline (if HasAura("Blessing of Kings") or HasAura("Greater Blessing of Kings") then
    ".":Color("5b82ff")
end) (if HasAura("Blessing of Salvation") or HasAura("Greater Blessing of Salvation") then
    ".":Color("a2ff00")
end) (if HasAura("Blessing of Wisdom") or HasAura("Greater Blessing of Wisdom") then
    ".":Color("ac54ff")
end)]

Posted Image

#2 Trouble

Trouble

    Bald Bull

  • Members
  • 1448 posts

Posted 28 March 2008 - 08:47 PM

Here's Calyonis's sheep code ported to the newer format:

[outline (if HasAura("Polymorph") and (AuraDuration("Polymorph") <= 5) then
    "Resheep NOW!":Yellow
end)
(if HasAura("Polymorph") and (AuraDuration("Polymorph") > 5) and (AuraDuration("Polymorph") <= 10) then
    "Breaking Soon!":Cyan
end)
(if HasAura("Polymorph") and (AuraDuration("Polymorph") > 10) and ~Dead then
    "Sheep Safe":Green
end)
(if ~HasAura("Polymorph") and InCombat(unit="player") and ~Dead then
    "Broken!":Red
end)]


#3 Guest_Aiiane_*

Guest_Aiiane_*
  • Guests

Posted 28 March 2008 - 09:25 PM

Here's Calyonis's sheep code ported to the newer format:


Only problem with that, is that by default HasAura() uses oneself (player) as the object to look at. You'd need to modify it to HasAura("Polymorph", unit="focus") and AuraDuration("Polymorph", unit="focus") if you want it to work for your focus target.

#4 Trouble

Trouble

    Bald Bull

  • Members
  • 1448 posts

Posted 28 March 2008 - 09:48 PM

HasAura defaults the unit frame that the DogTag is located on. If you put it in your Focus unit frame then it's fine. If you want the sheep text on another unit frame then you have to, but that's the same for any code.

#5 Gearknight

Gearknight

    Piston Honda

  • Members
  • 228 posts

Posted 28 March 2008 - 11:08 PM

My new CowTip tags:

Posted Image

Clockwise from top: players, mobs with <Fake Guild Names>, regular mobs, NPCs, pets.

What you can't see in the screenshots: druid forms and shadowform show up after Class for players, and AFK, Offline, Dead, etc show up to the right of player name. The word "Special" on mobs like Slaag is there because CowTip won't allocate any height to a row that only has a tag on the right side.

1L: [Namerealm:HostileColor]
1R: [Status]

2L: [IsPet ? Creature ! (GuildRank | Faction | (Guild ? 'Special'))]
2R: [(Guild='player':Guild ? Green) Guild:Angle]

3L: [ShortSex:Upper] [Race] [not IsPlayer ? CreatureType]
3R: [Classification] [Level:DifficultyColor] [IsPlayer ? (Class:ClassColor DruidForm (IsShadowForm ? 'Shadow'))]

4L: [Zone | (Exists(unit=Target) ? 'Target:')]
4R: [(Target:IsPlayer ? ClassColor(unit=Target) ! (not Target:IsPlayer & Target:IsEnemy) ? Color("dddddd")) (IsUnit('player', Target) ? ClassColor("") '<<You>>':white ! Target:NameRealm)]

5L: [TalentTree ' ' TalentSpec:Paren]

#6 Olon97

Olon97

    Von Kaiser

  • Members
  • 69 posts

Posted 28 March 2008 - 11:35 PM

I would suggest adding the wowace.com/wiki/LibDogTag-3.0 wiki link to the original post for new reader's easy reference.

While trying to make an amateur DogTag for Pitbull, I seemed to encounter some sort of tag length restriction giving "syntax error" messages. Ended up breaking it into two working tags, one left justified, the other right justified:

"M: Timer" format for mangle followed by "R: Timer" format for rip/lacerate:
[if (IsEnemy and NumDebuffs>0) then     
         Concatenate("M:", (AuraDuration("Mangle (Cat)"):Abs:Round(1) 
			    or AuraDuration("Mangle (Bear)"):Abs:Round(1) 
			    or "0"), "  ", 
		     "R:", (AuraDuration("Rip"):Abs:Round(1) 
			    or AuraDuration("Lacerate"):Abs:Round(1) 
			    or "0"), "  "
	 ):Red 
 end]

"F: Timer" format for Faerie Fire followed by "D: Timer" format for demoralizing roar:
[if (IsEnemy and NumDebuffs>0) then     
	  Concatenate("F:", (AuraDuration("Faerie Fire (Feral)"):Abs:Round(0) 
			     or AuraDuration("Faerie Fire"):Abs:Round(0) 
                             or "0"), "  ", 
		      "D:", (AuraDuration("Demoralizing Roar"):Abs:Round(1) 
			    or AuraDuration("Demoralizing Shout":Abs:Round(1) 
                            or "0"), "  "
	  ):Color("FF66CC") 
 end]

The idea behind these is to emulate Xperl's feature where your debuffs appear larger than all the other debuffs ("Big Debuffs") so it's very easy to see when the ones you applied are going to wear off.

The Xperl feature mimicking would probably be better achieved by making a custom Pitbull layout, but I wouldn't know where to start with that. As it is, I'm not happy with the plain text look and will probably go back to Xperl until DogTags get access to textures/icons, but the apparent DogTag size limit is what dissuaded me from working on some other ideas.

#7 Arnath

Arnath

    Piston Honda

  • Members
  • 206 posts

Posted 28 March 2008 - 11:42 PM

Scorch stack display:

[outline (if (Class(unit="player") = "Mage") and (TalentTree(unit="player") = "Frost") and HasAura("Fire Vulnerability") then
    NumAura("Fire Vulnerability"):Green
end)]

While I don't know DogTags especially well, the "Frost" in TalentTree() in this one should be "Fire" since you're checking for Fire Vuln, shouldn't it?

#8 Trouble

Trouble

    Bald Bull

  • Members
  • 1448 posts

Posted 29 March 2008 - 04:06 AM

Yeah woops.

#9 baghwan2

baghwan2

    Von Kaiser

  • Members
  • 48 posts

Posted 29 March 2008 - 10:45 AM

Originally I had this as a request help post but did some looking around and figured out it isn't that hard at all, wanted to display different settings between targeting a NPC and a Player, this is what I use for my targets MP and HP now.

[if IsPlayer then
    [HP:color("00ff00") (Status or (-MissingHP):Hide(0)):color("ff0000")]
else
    [PercentHP:Percent:color("00ff00") (Status or (-MissingHP):Hide(0)):color("ff0000")]
end]


#10 Arwan

Arwan

    Glass Joe

  • Members
  • 1 posts

Posted 29 March 2008 - 11:39 AM

Updated the number of debuffs & curses tag for 3.0:

Example: 14 S E R

[NumDebuffs:Hide(0)] [HasAura("Curse of Shadow") ? "S":Fuchsia] [HasAura("Curse of the Elements") ? "E":Red] [HasAura("Curse of Recklessness") ? "R":Yellow] [HasAura("Curse of Tongues") ? "T":Green]


#11 f1reburn

f1reburn

    Piston Honda

  • Members
  • 126 posts

Posted 29 March 2008 - 04:13 PM

Modified the sheep macro posted above, a bit. First time using and coding Dogtags, so I bet the code I used is pretty excessive, but at least it works.

[outline (if HasAura("Polymorph", unit="focus") and (AuraDuration("Polymorph", unit="focus") <= 5) then
    "Resheep NOW!":Yellow
end)
(if HasAura("Polymorph", unit="focus") and (AuraDuration("Polymorph", unit="focus") > 5) and (AuraDuration("Polymorph") <= 6) then
    "Breaking in 6!":Fuchsia 
end)
(if HasAura("Polymorph", unit="focus") and (AuraDuration("Polymorph", unit="focus") > 6) and (AuraDuration("Polymorph") <= 7) then
    "Breaking in 7!":Fuchsia 
end)
(if HasAura("Polymorph", unit="focus") and (AuraDuration("Polymorph", unit="focus") > 7) and (AuraDuration("Polymorph") <= 8) then
    "Breaking in 8!":Fuchsia 
end)
(if HasAura("Polymorph", unit="focus") and (AuraDuration("Polymorph", unit="focus") > 8) and (AuraDuration("Polymorph") <= 9) then
    "Breaking in 9!":Fuchsia 
end)
(if HasAura("Polymorph", unit="focus") and (AuraDuration("Polymorph", unit="focus") > 9) and (AuraDuration("Polymorph") <= 10) then
    "Breaking in 10!":Fuchsia 
end)
(if HasAura("Polymorph", unit="focus") and (AuraDuration("Polymorph", unit="focus") > 10) and (AuraDuration("Polymorph") <= 11) then
    "Breaking in 11!":Cyan
end)
(if HasAura("Polymorph", unit="focus") and (AuraDuration("Polymorph", unit="focus") > 11) and (AuraDuration("Polymorph") <= 12) then
    "Breaking in 12!":Cyan
end)
(if HasAura("Polymorph", unit="focus") and (AuraDuration("Polymorph", unit="focus") > 12) and (AuraDuration("Polymorph") <= 13) then
    "Breaking in 13!":Cyan
end)
(if HasAura("Polymorph", unit="focus") and (AuraDuration("Polymorph", unit="focus") > 13) and (AuraDuration("Polymorph") <= 14) then
    "Breaking in 14!":Cyan
end)
(if HasAura("Polymorph", unit="focus") and (AuraDuration("Polymorph", unit="focus") > 14) and (AuraDuration("Polymorph") <= 15) then
    "Breaking in 15!":Cyan
end)
(if HasAura("Polymorph", unit="focus") and (AuraDuration("Polymorph", unit="focus") > 15) and ~Dead then
    "Sheep Safe":Green
end)
(if ~HasAura("Polymorph", unit="focus") and InCombat(unit="player") and ~Dead then
    "Broken!":Red
end)]


#12 Adoriele

Adoriele

    Happy October 19th!

  • Members
  • 10089 posts

Posted 29 March 2008 - 04:38 PM

Similar to the above, I've modified my buff tracking tags to give a time-sense as well, i.e.
[if((HasAura("Mark of the Wild") and (AuraDuration("Mark of the Wild) < 300)) or (HasAura("Gift of the Wild") and (AuraDuration("Gift of the Wild) < 300))) then "M":Yellow elseif(HasAura("Mark of the Wild") or HasAura("Gift of the Wild")) then "M":Green else "M":Red end

Posts M in green if Mark or Gift is active, yellow if active with less than 5 min (300s), and red if inactive.

#13 dinesh

dinesh

    Piston Honda

  • Members
  • 249 posts

Posted 29 March 2008 - 05:03 PM

5L: [TalentTree ' ' TalentSpec:Paren]

Have you had any trouble with this tag working only infrequently? For some reason, only about 5% of the (non-PvP flagged) players I am clicking on in Shatt will show their Talent tree/spec in my PitBull window. I found an old DT2 thread about a similar problem, but don't know whether it's me now, since obviously things are different.

#14 Roywyn

Roywyn

    Bald Bull

  • Members
  • 1398 posts

Posted 29 March 2008 - 05:41 PM

Display if a target is frozen:

[outline (if (Class(unit="player") = "Mage") and (TalentTree(unit="player") = "Frost") and (HasAura("Frostbite") or HasAura("Frost Nova") or HasAura("Freeze")) then
    "Frozen":Color("3333FF")
end)]

Posted Image


A bit off-topic, but where do I actually type those tags in to get them added to my frames like in the picture?

It took me a while to figure out that I can add them next to the "name" or "class" tag by clicking addon/pitbull/target (frame)/texts/name (or class), choosing custom style and then editing it.

I haven't found a way to put them into a new line/text are, like your "freeze" is in new line, or the "." tags are below the unit frame.
I suspect that the option addon/pitbull/target/texts/other => new might add a new line for that, but I can't seem to get to create one.

Any hints, or pointers where I could read that up would be really appreciated.


[Edit]
Thanks for the quick help! I tried that before and nothing happened. Tried again now, still nothing. Then disabled all mods except pitbull, and it worked. Enabled all other mods, still works. Odd. Thanks again! Time to kill another day with UI fiddling :o

#15 Trouble

Trouble

    Bald Bull

  • Members
  • 1448 posts

Posted 29 March 2008 - 06:11 PM

To add a new dog tag to a frame in PitBull go to the frame settings, then Texts, then Other, then in the New Text box type a name for your new DogTag. It'll add a new entry under Texts for that frame. Then in the settings for the text you can set how do position it. You can either position it in reference to the frame with the dropdown next to Frame or you can position it in reference to any of the bars you have shown. For example, the Frozen text I have is Frame: Edge-Bottom.

#16 Adoriele

Adoriele

    Happy October 19th!

  • Members
  • 10089 posts

Posted 29 March 2008 - 06:13 PM

I suspect that the option addon/pitbull/target/texts/other => new might add a new line for that, but I can't seem to get to create one.

Any hints, or pointers where I could read that up would be really appreciated.


That's exactly it. Under Other, there should be an option to create a new one. Type in the name and hit enter, and it will show up in your list of activated texts.

[edit]Bah, beaten to it.

#17 Trouble

Trouble

    Bald Bull

  • Members
  • 1448 posts

Posted 29 March 2008 - 06:41 PM

I think there may be a bug where adding a new text isn't working. I was trying to yesterday but nothing was happening. That's the correct way to do it, but if it's not working then it's just a bug.

#18 Adoriele

Adoriele

    Happy October 19th!

  • Members
  • 10089 posts

Posted 29 March 2008 - 06:56 PM

I think there may be a bug where adding a new text isn't working. I was trying to yesterday but nothing was happening. That's the correct way to do it, but if it's not working then it's just a bug.


Something's wonky, but I've found that composing in the help section's test window, then copy/pasting, works incredibly well.

#19 Olon97

Olon97

    Von Kaiser

  • Members
  • 69 posts

Posted 29 March 2008 - 07:19 PM

Something's wonky, but I've found that composing in the help section's test window, then copy/pasting, works incredibly well.

You can also be brave and manually edit your Pitbull.lua file in your savedvariables folder (make a backup copy first and edit while logged out).

First search for the frame you're trying to modify, say search for "["target"]" (without the outer quotes) for the stuff related to the target frame, then slowly scroll down to the ["texts"] subsection. I start with a copy/paste of one of the existing texts, and add it to the list. It should look something like:
["YOUR LABEL FOR YOUR CUSTOM DOGTAG HERE"] = {
			["styleType"] = "none",
			["style"] = "Custom",
			["position"] = "frame-outbottomright",
			["custom"] = "[YOUR DOGTAG HERE]",
			["hidden"] = false,
			["size"] = 1.5,
		},
Note that in the lua, any quotation marks in your DogTag need to be escaped with a backslash (\" instead of "). Hidden has to be false obviously. Position / Size you can take a stab at if you know what you're doing. Style should be "Custom" unless you want to risk overwriting some of the formatting in your tag.

As far as working around the ingame GUI, I've had the most luck access the full texts list right after logging in and before ever getting in combat. Sometimes messing with the texts list of other frames has made the texts of the frame I'm working on accessible.

#20 Bass

Bass

    PROCRASTINATE

  •  Patrons
  • 2093 posts

Posted 29 March 2008 - 10:26 PM

A nice one for CowTip for those who missed it from Tinytip: Same line target.
[(if IsPlayer then ClassColor else HostileColor end) NameRealm (if (Target:Exists) then ' :: ':White end) (if Target:IsPlayer then ClassColor(unit=Target) else HostileColor(unit=Target) end) (if IsUnit('player', Target) then '<<You>>' else Target:NameRealm or '' end)]
So, what this will do is as follows. If your mouseover has no target, it will show the name of the mouseover - Class colored for players, Hostile color for not. For example:

ex1: Shamanguy
ex2: Prince Malchezaar

If your mouseover does have a target, it will show in a format such as Name :: Target. Same coloration for targets. Examples:

ex1: Shamanguy :: Berudan Keysworn
ex2: Prince Malchezaar :: Yourmaintank
note: assuming your MT is a paladin

It will also do "<<YOU>>" if it happens to be you.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users