Displays information on your pet, such as name, level, combat ratings and attributes.
Use
PetInfoFu keeps track of your pets, including your stabled pets. Optionally, it will track your history of taming pets. Clicking on the FuBar menu, which displays your pet's happiness in colour, will bring up the training dialog. Should you have Cartographer installed, PetInfoFu can keep track of the stables for you.
For hunters, you can click on a stabled pet in the FuBar tooltip and a small tooltip will pop-up showing you the skills of that particular pet. You will need to visit the Stable and park your pet there, then close the stable for the extended information to be saved (and shown in the tooltip)
Clicking on the line Experience needed will pop-up a little draggable tooltip showing information pertaining your chose way of Show experience to level.
Options
Show pet's name (True) - Displays the name of your current pet, assuming it is not currently dismissed.
Show pet's level (True) - Displays the level of your current pet, assuming it is not currently dismissed.
Show pet's combat statistics (True) - Shows your pets combat statistics, assuming it is not currently dismissed.
Show pet's attributes (True) - Shows your pets Strength, Agility, Stamina, Intelligence and Spirit, assuming it is not currently dismissed.
Show pet's skills (True) - Shows your pets skills, assuming it is not currently dismissed. It also shows the level a higher rank can be learned, should that rank be in your pet training manual.
Hunter Only:
Show experience: By amount/By Kill/By percentage/By time/Reset timer/Show on bar (False) - Show experience till leveling, various setting show different ways of timing this. Reset will start the "time til pet levels" timer again. You can also reset the kill counter/timer by Ctrl-Clicking the label. Selecting Show on bar will place this information on the main FuBar.
Show stabled pets (False) - Shows you which pets are currently in your stable and their level.
Play sound: On TP gain/On new skill available (False) - Play a sound when the pet gains Training Points (TP) or is able to learn an available skill.
Stabled Pets|Show stabled pets (False) - Shows you which pets are currently in your stable and their level.
Track pet history (False) - Keeps track of all the (named) pets you stable for the first time in your career as a hunter. Note: You will have to close the stable for this option to do it's work.
Mapnotes|Enable Stable mapnotes (False) - Will place an icon on the map for each Stable you visit. Needs Cartographer to be installed.
Warlock only:
Show nethered demons (False) - Keeps track of the skills of the demons you can summon, but are currently gallivanting in the Twisted Nethers.
Pet History
The Pet History will, of course, show incorrect information for long term pets. If you want to correct this you can edit the SavedVariables file in your WTF folder. If you open the FuBar_PetInfoFu.lua file with something like Notepad you need to look for the section ["petHistory"].
You can set the ["PetLevel"] variable to the level your pet was when you tamed her. In Lazuli's case: 21. You can set the ["HunterLevel"] variable to the level you were when you tamed her. In Lazuli's case: 42.
If you want to add older pets, that are no longer with you, you can add a section like the above, be careful of the commas, and edit that.
The first bit (the key) should be a combination of the pet type and it's name. The values for ["PetType"] (Cat, Wolf, etc.) and ["PetName"] should be set appropriately. So, adding:
would add a level 8 Owl called Nightwind, which you tamed when you were level 10.
If you are unsure of what you are doing, please make a back up of this file first. If you get an error when you load your hunter, you can replace the file with the original again.
Acknowledgements
This add-on is a continuation of corgi's PetInfo which he kindly allowed me to update to WoW 2.0. I'd also like to thank gnancy for suggesting I add support for Demonic Knowledge and helping me test it.
Install: extract the FuBar_PetInfoFu folder into
\World of Warcraft\Interface\AddOns\
This add-on was downloaded from http://www.wowinterface.com/
Change Log - FuBar - PetInfoFu
3.2.0 - updated TOC
3.0.3 - fixed happiness gain with Guard Dog
3.0.2 - cleanup unused data in SavedVariables, fixed issue with locales (Kazragore)
3.0.1 - fixed bug with LibCrayon
3.0.0 - updated to 3.0.2, removed obsolete functionality, added new happiness improving pet talents
2.4.2 - added option to display happiness in a seperate frame rather than the FuBar (MiyaMirage) and doubled the happiness DECAY_RATE (2.4.2)
2.4.1 - tried to fix issues with German translation
2.4.0 - updated TOC, added German translation (Singler), updated code to new combat log
2.3.2 - fixed bug where nethered demons were not properly saved, added Show Mend Pet option (kergoth)
2.3.1 - revamped happiness calculations to be (hopefully) more accurate; added a little (movable) tooltip to show when your pet is being healed.
2.3.0 - updated TOC, added sound on pet happiness level change, xp tool tip now remembers if it's showing.
2.2.1 - added XP window, fixed a few minor bugs
2.2.0 - updated TOC, added Happiness tracking, added saving of pet skills and way to show these (tkasomething crowd), added demon icons (maytrix).
2.1.4 - added option for sound when pet able to learn new skill (Mania), removed level timers for pets of same level as hunter.
2.1.3 - added by kill timer (MayDay), added option to show Loyalty for Stabled pets (Someone)
2.1.2 - added nethered pets to "No pet" tooltip, and a scheduled event to fix "UO", hopefully fixed stack overflow bug.
2.1.1 - added show experience (Mars85), hopefully fixed bug (ThornyJohn)
2.1.0 - update TOC, added pet/demon skills and toggles for skills and combat statistics.
2.0.5 - bugfixes
2.0.4 - added support for Demonic Knowledge (Warlock)
2.0.3 - added stable intergration with Cartographer (Hunter)
2.0.2 - fixed some issues for Warlocks
2.0.1 - added sorting on when one first stabled a pet. (Hunter)
- tried to reduce updates triggered by UNIT_HAPPINESS
2.0 - initial release
Optional Files - FuBar - PetInfoFu
Sorry, there are currently no optional files available.
Hi Twidget
I saw this a little late, but as I need to add a urge function to the Pet info block, I'll take add your request at the same time. Hopefully sometime within the next couple weeks...
Hi... me again
Well, I tried to "borrow" the code from FuBar_PetFu for playing a sound when the pet's happiness changes... BAM! I obivously don't know what I am doing cause it didn't work.
Soooo... any chance you could give it a try? That is the only thing your mode doesn't have that I really wish it did.
Thanks again,
Twidget
Quote:
Originally posted by Twidget Hi,
Love your mod. I use it and FuBar_PetFu at the sametime. The only reason I use this other mod as well is because it plays a sound when when my pets Happiness changes. When the happiness decreases I have it setup to play a pittifull meow I recorded from my own cat when she wants to be fed and when it increases it plays a loud purrr I also recorded.
Now that you have added sounds to your mod for other things could you possibly add sound for this? Then I wouldn't need that other mod at all. I like your much better for everything else because of all the detailed information it provides.
Hi maytrix
From your code, I guess the GetPetIcon() API function doesn't work?
I'll see if I can add either your code (or something similar)
Thanks fo rthe suggestion, though.
Made some changes in your textupdate function to allow for smart icons for warlock pets, it basically adds the correct pet icon decided by what pet you have out. You will have to set the locals.
Code:
function PetInfoFu:UpdateText()
-- sound checks
if self:IsHunter() then
self:CheckForTPGain()
self:CheckForNextLevelSkill()
end
---Smart Warlock Icon Assign By pet type
if self:IsWarlock() then
if (UnitCreatureFamily("pet") == "Imp") then self:SetIcon("Interface\\Icons\\Spell_Shadow_SummonImp");
elseif (UnitCreatureFamily("pet") == "Felguard") then self:SetIcon("Interface\\Icons\\Spell_Shadow_SummonFelGuard");
elseif (UnitCreatureFamily("pet") == "Felhunter") then self:SetIcon("Interface\\Icons\\Spell_Shadow_SummonFelHunter");
elseif (UnitCreatureFamily("pet") == "Succubus") then self:SetIcon("Interface\\Icons\\Spell_Shadow_SummonSuccubus");
elseif (UnitCreatureFamily("pet") == "Voidwalker") then self:SetIcon("Interface\\Icons\\Spell_Shadow_SummonVoidWalker");
elseif (UnitCreatureFamily("pet") == "Infernal") then self:SetIcon("Interface\\Icons\\Spell_Shadow_SummonInfernal");
end
end
if self:IsTextShown() then
if self.db.char.showPetName or self.db.char.showPetLevel then
if UnitName("pet") ~= nil then
local petName = UnitName("pet")
local petLevel = UnitLevel("pet")
local toonLevel = UnitLevel("player")
local petIcon = GetPetIcon()
local happiness = GetPetHappiness()
local label = ''
if petName ~= nil and petLevel ~= nil then
if petName == UNKNOWNOBJECT then
petName = L["UO"]
self:SetIcon("Interface\\Icons\\INV_Misc_QuestionMark");
self:ScheduleEvent(self.UpdateText,2, self)
end
if petIcon ~= nil then
self:SetIcon(petIcon)
end
-- show name and/or level
if self.db.char.showPetName then
if self.db.char.showPetLevel then
label = petName..' ('..petLevel..')'
else
label = petName
end
else
if self.db.char.showPetLevel then
label = petLevel
else
end
end
-- show XP
if petLevel ~= toonLevel then
if self.db.char.showPetXP == 1 then
local _, _, toLevelXP = self:PetInfo_GetPetExperience()
label = label..' - '..format(L["PI_FORMAT"], toLevelXP)
elseif self.db.char.showPetXP == 2 then
local _, totalXP, toLevelXP = self:PetInfo_GetPetExperience()
local toLevelXPPercent = toLevelXP / totalXP * 100
label = label..' - '..format(L["PI_PERCENT_FORMAT"],toLevelXPPercent)
elseif self.db.char.showPetXP == 3 then
local _, _, toLevelXP = self:PetInfo_GetPetExperience()
label = label..' - '..self:GetTimeToLevel(toLevelXP)
elseif self.db.char.showPetXP == 4 then
if lastKillXP > 0 then
local _, _, toLevelXP = self:PetInfo_GetPetExperience()
label = label..' - '..self:GetKillsToLevel(toLevelXP)
end
end
end
-- set colour
if happiness == nil then -- non hunter pet
self:SetText(label)
else
if self.db.char.trackPetHappiness then
label = label..format(L["PI_FORMAT_HAPPINESS"],estimatedPetHappiness)
end
if happiness == 1 then
self:SetText(crayon:Red(label)) -- unhappy
elseif happiness == 2 then
self:SetText(crayon:Yellow(label)) -- content
elseif happiness == 3 then
self:SetText(crayon:Green(label)) -- happy
end
end
else
-- pet name and level are nil which means there shouldn't have been a pet ui in the first place
self:SetText(L["PI_NOPET"])
if self:IsWarlock() then
self:SetIcon("Interface\\Icons\\INV_Misc_QuestionMark");
else
self:SetIcon(BS:GetSpellIcon("Train Beast"))
end
end
else
-- no pet ui found
self:SetText(L["PI_NOPET"])
if self:IsWarlock() then
self:SetIcon("Interface\\Icons\\INV_Misc_QuestionMark");
else
self:SetIcon(BS:GetSpellIcon("Train Beast"))
end
end
else
if UnitName("pet") ~= nil then
local petIcon = GetPetIcon()
if petIcon ~= nil then
self:SetIcon(petIcon)
end
end
self:SetText("")
end
end
end
Hi Twidget
Glad you enjoy the mod. I'll see if I can find a simple way to add that particular option.
Yeloshak, there should be a 'how many more mobs of this level do I need to kill before my pet levels" option, but I guess you want something slightly different? I'm not quite sure how to implement this, though...
Hi,
Love your mod. I use it and FuBar_PetFu at the sametime. The only reason I use this other mod as well is because it plays a sound when when my pets Happiness changes. When the happiness decreases I have it setup to play a pittifull meow I recorded from my own cat when she wants to be fed and when it increases it plays a loud purrr I also recorded.
Now that you have added sounds to your mod for other things could you possibly add sound for this? Then I wouldn't need that other mod at all. I like your much better for everything else because of all the detailed information it provides.
Originally posted by Jayhawk I'll check out hose mods, but didn't have much luck when I tried this earlier. I can't query the enslaved demons about its skills.
(Actually that makes kind of sense, if I were enslaved, I'd be loath to answer questions )
I believe they built their DBs by scanning the petbar when they are enslaved to get their skills/abilities.
I'll check out hose mods, but didn't have much luck when I tried this earlier. I can't query the enslaved demons about its skills.
(Actually that makes kind of sense, if I were enslaved, I'd be loath to answer questions )
Both these log the Demon info, one is a db and the other is a db with interface but the interface is sloppy, hopefully you can get some ideas from them and be able to get my suggestions into your mod, warlocks could really use something like this.
Maytrix, I've done some checking, but I don't think your request is feasible. I cant seem to get any "pet" info on Enslaved demons. I'm not gonna say it's impossible, but it might be.
MayDay, interesting requests.
1+2) Seems like a nice idea. Should be possible to implement. Let me fiddle a bit to see how to most easily.
3) Should be implemented already. Or rather, I'm using it.
You need to select the Show experience: By time. It's not extremely accurate, but at least it should give you a rough estimate.
I made this feature for an old Titan Panel Petinfo plugin.
Basicly it showed more xp information specific to the pet and i would love if you could add it, i really miss it alot.
1. Last gained xp, so you can see if these mobs are good for grinding you pet's level on.
2. Amount of last mobs to kill for the pet to lvl.
3. Amount of time at current rate for the pet to lvl.
The stack overflow should be fixed. At least, I changed the offending code and my Warlock hasn't had any more problems with it.
As for the database suggestion you make...interesting idea. I guess I should send out my 'lock on a quest to enslave a few demons and see what kind of information shows up.
I'll keep you posted.
I have a suggestion that your mod could do to make this mod more enjoyable for warlocks and has never been done really, by adding the ability to track the abilities of each ENSLAVED demon I may have come across and enslaved, it would be nice to have a db of these demons and their abilities and a tooltip option when mousing over a demon what abilities they have when enslaved.
As far as I know this has never been done and is a tool I as a warlock would love to have, and seeing your twistingnether pet tracking tipped me off on how you could improve on this and grab alot of warlock users at the same time.
Great mod btw way once you got the stack overflow problem sorted out for warlocks ;-)