Go to Page... |
Compatibility: | Classic (1.15.2) Plunderstorm (10.2.6) Classic (1.15.1) Seeds of Renewal (10.2.5) Classic (1.15.0) Guardians of the Dream (10.2.0) WOTLK Patch (3.4.3) Hot Fix (10.1.7) Classic (1.14.4) Fractures in Time (10.1.5) WotLK Patch (3.4.2) Dragonflight patch (10.0.7) Embers of Neltharion (10.1.0) WOTLK Patch (3.4.1) Dragonflight patch (10.0.5) Dragonflight (10.0.2) |
Updated: | 04-08-24 06:30 PM |
Created: | unknown |
Downloads: | 497,802 |
Favorites: | 1,328 |
MD5: |
Find upgrades, do more damage, win.
Pawn helps you find upgrades for your gear and tell which of two items is better for your spec. Start with built-in advice from Ask Mr. Robot, or customize Pawn's stat weights to have it suggest items based on your favorite class guide or simulator. Pawn can help you decide whether it's better to use the cloak with 500 mastery or the one with 450 crit—whether you're just starting out, or you're an advanced player who plans out gear upgrades and regularly simulates and evaluates performance.
Getting started
If you're new to Pawn, don't worry—Pawn will automatically set itself up to give you advice based on math done by the experts at Ask Mr. Robot (or, on Classic, HawsJon). Just watch for Pawn's green arrows. If you decide you want to go further, there are a lot of ways that you can customize Pawn, by tracking multiple specs at once, importing custom stat weights, and more.
Language support
Pawn now works with all languages on both live/retail and Classic. It's possible that you might run into stats that Pawn doesn't recognize from time to time when playing on non-English clients—if you think that Pawn's not calculating something right, put an item into the Compare tab and see if it lists all of the stats there. If something's missing, let me know which item and which language, and I should be able to get it fixed!
Staying in touch
Become a fan of Vger on Facebook and get updates of new versions and stuff like that. You can also leave questions or comments there if you don't have an account on this site. (I typically respond to questions much more quickly on Facebook or Curse.)
Found a bug?
If you think you might have found a bug, just leave a comment here. In addition to a description of the problem, please make sure to include: (1) the language that you use Pawn and WoW in, (2) whether it's live/retail or Classic, (3) the specific items that don't work as expected, and (4) your class and spec if you're using the built-in (not custom) stat weights. Screenshots are usually very helpful as well.
Incompatible with...
Pawn will not work with Titan Panel Artifact Power or Combat Numbers Separator. Those addons change item tooltips and will cause Pawn to give bad advice. It's also been reported that using Pawn with TradeSkillMaster can cause the game to crash or hang.
Comment Options |
VgerAN |
View Public Profile |
Send a private message to VgerAN |
Visit VgerAN's homepage! |
Find More Posts by VgerAN |
Add VgerAN to Your Buddy List |
Barleduq |
View Public Profile |
Send a private message to Barleduq |
Visit Barleduq's homepage! |
Find More Posts by Barleduq |
Add Barleduq to Your Buddy List |
04-28-16, 05:08 PM | |
|
Removing the option to have Pawn track both DW and 2H weapon upgrades. My understanding is that in Legion, there won't be any specs that are designed to work with both options except casters, and that's only through level 100. I believe we're getting our artifact weapons right at the beginning of Legion—there won't be any further weapon drops or quest rewards once you leave Draenor.
|
|
VgerAN |
View Public Profile |
Send a private message to VgerAN |
Visit VgerAN's homepage! |
Find More Posts by VgerAN |
Add VgerAN to Your Buddy List |
05-13-16, 09:18 PM | ||
|
Not everyone runs exclusively end-game content. :/ |
|
|
Barleduq |
View Public Profile |
Send a private message to Barleduq |
Visit Barleduq's homepage! |
Find More Posts by Barleduq |
Add Barleduq to Your Buddy List |
05-15-16, 12:27 AM | |
|
Sure; I'll keep it around if it looks like it'll still be useful for low-level casters. I turned it off by default because it confuses a lot of people, but removing it entirely probably won't save much further time or complexity right now.
|
|
VgerAN |
View Public Profile |
Send a private message to VgerAN |
Visit VgerAN's homepage! |
Find More Posts by VgerAN |
Add VgerAN to Your Buddy List |
07-24-16, 07:05 PM | |
|
Is there going to be any way to automatically equip the cooking hat using an outfit now that it's been made a toy? Or any of the other "new" toy items?
Thank you. |
|
stargatingit |
View Public Profile |
Send a private message to stargatingit |
Visit stargatingit's homepage! |
Find More Posts by stargatingit |
Add stargatingit to Your Buddy List |
07-25-16, 11:29 AM | |
|
Hi! Sorry, it looks like you posted this comment on the wrong addon...? Pawn doesn't do anything relating to that.
|
|
VgerAN |
View Public Profile |
Send a private message to VgerAN |
Visit VgerAN's homepage! |
Find More Posts by VgerAN |
Add VgerAN to Your Buddy List |
07-26-16, 08:22 PM | ||
|
From the changelog:
I don't mean to sound rude, or angry, truly. I've mentioned before that I use your addon and find it valuable for *all* my toons, most of which are not at max level. You seem to be removing comparison options that are still valuable at lower levels, from color gem options (unless I misunderstood that) to this latest. If your intention for this addon is to focus mostly/solely on max level content, please indicate that somehow. In which case I'd look for some other addon to help with choosing gear on my lower level toons. If your intention is for this to be more broadly useful across the spectrum of leveling up, please consider keeping these options available. I imagine that I'm not the only person who does *not* consider 'leveling' to be a race to the top, with every item under max level to be useless and completely disposable and unworthy of maxing out for any reason. I actually find max content to be irritating, so far. Tho I admit, this is the first time I've *had* toons at max level. Regardless, thank you for your work with the addon. I have found it incredibly useful so far. -Barleduq
Last edited by Barleduq : 07-26-16 at 08:25 PM.
|
|
|
Barleduq |
View Public Profile |
Send a private message to Barleduq |
Visit Barleduq's homepage! |
Find More Posts by Barleduq |
Add Barleduq to Your Buddy List |
07-27-16, 09:29 AM | |
|
Thanks for the feedback; detailed comments like yours are really helpful. My intent is indeed to remove that option+feature again when Legion launches. Think of the feature like this:
Checked (default): Compare your items as they are, and assume that you'll fully upgrade few or none of your items Unchecked: Compare your items assuming that you will fully max out everything you get When the option is turned off, that's designed as the more "hardcore" experience—the comparisons aren't valid if you're not going to farm up the Apexis shards and Valor to max out every item that you find. Do you feel that describes your playstyle? Upgraded and baleful items will still get compared as they are, in a normal and predictable way, with the option checked—the thing you'd lose out without the option to turn it off is that assumption that you'll fully max out every item. And I think that's only really valuable if you're stuck at level 100 and doing the Draenor raids repeatedly, which doesn't sound like you. I did remove green, orange, and purple gems from the Gems tab for a few reasons: (1) a gem of those colors can only, at best, tie a red, green, or blue gem; (2) in Pawn 2.0 I did a lot of work to simplify Pawn for everyone at every level, and especially right now when secondary stats are weighted equally, having two-color gems in the UI made things overwhelming now that all sockets are prismatic, and (3) it's extremely time-consuming maintaining a large database of gems each expansion, and removing those saved me a ton of time. For the record, I do enjoy leveling as well, and I only have one character (Vger, naturally) who I do anything with at max level. I definitely do intend Pawn to be useful at lower levels as well as the latest content. |
|
VgerAN |
View Public Profile |
Send a private message to VgerAN |
Visit VgerAN's homepage! |
Find More Posts by VgerAN |
Add VgerAN to Your Buddy List |
03-07-17, 07:49 PM | |
A Kobold Labourer
Forum posts: 0
File comments: 24
Uploads: 0
|
Mini feature suggestion - use current values while leveling
Much appreciated for your hard work VgerAN. I wanted to make a couple small changes in the addon and ended up digging into your code for several hours. Pawn is much more complicated than most people think and I now have a deep respect for all you have done for the community.
Anyway, I made a small change to show current values (instead of base values) for items while leveling. Hoping you will want to incorporate something like this i your code. Code:
diff --git a/Pawn/Pawn.lua b/Pawn/Pawn.lua index 00fe901..f7e8152 100644 --- a/Pawn/Pawn.lua +++ b/Pawn/Pawn.lua @@ -419,6 +419,11 @@ function PawnInitialize() PawnRecalculateScaleTotal(ScaleName) end + -- Reset/Rebuilds the best items, and tool tip during init phase + PawnClearCache() + PawnInvalidateBestItems() + PawnResetTooltips() + end function PawnOnLogout() @@ -2304,6 +2309,9 @@ end -- WasUpgraded - True if the item was upgraded while being "unenchanted." (Always false if "ignore valor and baleful upgrades" is off.) -- (But if EvenIfNotEnchanted is true, the item link will be processed even if the item wasn't enchanted.) function PawnUnenchantItemLink(ItemLink, EvenIfNotEnchanted) + if UnitLevel("player") ~= GetMaxPlayerLevel() then + return ItemLink + end local TrimmedItemLink = PawnStripLeftOfItemLink(ItemLink) local Pos, _, ItemID, EnchantID, GemID1, GemID2, GemID3, GemID4, SuffixID, MoreInfo, ViewAtLevel, SpecializationID, UpgradeLevel1, Difficulty, NumBonusIDs, BonusID1, BonusID2, BonusID3, BonusID4, BonusID5, BonusID6, BonusID7, BonusID8 = strfind(TrimmedItemLink, "^item:(%-?%d+):?(%d*):?(%d*):?(%d*):?(%d*):?(%d*):?(%-?%d*):?(%-?%d*):?(%d*):?(%d*):?(%d*):?(%d*):?(%d*):?(%d*):?(%d*):?(%d*):?(%d*):?(%d*):?(%d*):?(%d*):?(%d*)") -- Note: After the specified number of bonus IDs would be UpgradeLevel2, which could be the level at which the item was acquired for timewarped items, or Also, it includes some logic to force the cache/items/tooltip rebuild on init -- I found that without this the track-each-scale feature didn't show up on tool tips until after the first item change. |
|
elaundar |
View Public Profile |
Send a private message to elaundar |
Visit elaundar's homepage! |
Find More Posts by elaundar |
Add elaundar to Your Buddy List |
03-11-17, 06:10 PM | |
|
Re: Mini feature suggestion - use current values while leveling
Hi! Thanks for the suggestion and the comments. I'll definitely take it under advisement!
|
|
VgerAN |
View Public Profile |
Send a private message to VgerAN |
Visit VgerAN's homepage! |
Find More Posts by VgerAN |
Add VgerAN to Your Buddy List |
03-14-17, 07:04 PM | ||
A Kobold Labourer
Forum posts: 0
File comments: 24
Uploads: 0
|
Re: Re: Mini feature suggestion - use current values while leveling
I tweaked the change a bit -- for some reason the re-scan doesn't seem to always happen automatically. I added this change (although "hack" is more accurate) to force re-scan periodically; certain it could be done better. Code:
git diff -w ../Pawn/ diff --git a/Pawn/Pawn.lua b/Pawn/Pawn.lua index f7e8152..fc924c5 100644 --- a/Pawn/Pawn.lua +++ b/Pawn/Pawn.lua @@ -1325,6 +1325,7 @@ function PawnGetAllItemValues(Item, ItemLevel, SocketBonus, UnenchantedItem, Une return ItemValues end +local last_time = GetTime() -- Adds an array of item values to a tooltip, handling formatting options. -- Parameters: Tooltip, ItemValues, UpgradeInfo, BestItemFor, SecondBestItemFor, InvType, OnlyFirstValue -- Tooltip: The tooltip to annotate. (Not a name.) @@ -1342,6 +1343,13 @@ function PawnAddValuesToTooltip(Tooltip, ItemValues, UpgradeInfo, BestItemFor, S end if not ItemValues then return end + --Re-scan every 5 seconds to ensure new gear is added correctly. + local current_time = GetTime() + if current_time > last_time+5 then + last_time = current_time + PawnUIFrame_ResetUpgradesButton_OnClick() + end + -- Loop through all of the item value subtables. local _, _, ClassID = UnitClass("player") local Entry, _ |
|
|
elaundar |
View Public Profile |
Send a private message to elaundar |
Visit elaundar's homepage! |
Find More Posts by elaundar |
Add elaundar to Your Buddy List |
03-28-17, 02:17 AM | ||
|
Re: Re: Re: Mini feature suggestion - use current values while leveling
thanks. |
|
|
Pseudopath |
View Public Profile |
Send a private message to Pseudopath |
Visit Pseudopath's homepage! |
Find More Posts by Pseudopath |
Add Pseudopath to Your Buddy List |
03-29-17, 10:51 AM | |||
A Kobold Labourer
Forum posts: 0
File comments: 24
Uploads: 0
|
Re: Re: Re: Re: Mini feature suggestion - use current values while leveling
patch Pawn/Pawn.lua diff/pawn.diff As long as you don't see a rejection, it should work. (You might see offset warnings or hunk succeed on different line, those are generally ok) This change is small enough that you could edit the file by hand. Look for the the lines that start with a "+" and add those to the Pawn/Pawn.lua file (open in Notepad or something similar). I recommend you back up that file first, either way -easier than re-downloading the addon if you make a mistake. |
||
|
elaundar |
View Public Profile |
Send a private message to elaundar |
Visit elaundar's homepage! |
Find More Posts by elaundar |
Add elaundar to Your Buddy List |
07-05-17, 05:22 AM | |
A Murloc Raider
Forum posts: 5
File comments: 8
Uploads: 0
|
Code:
6x Pawn\Pawn-2.2.9.lua:3715: attempt to index global 'PawnOptions' (a nil value) Pawn\Pawn-2.2.9.lua:3715: in function `PawnOnArtifactUpdated' Pawn\Pawn-2.2.9.lua:127: in function `PawnOnEvent' [string "*:OnEvent"]:1: in function <[string "*:OnEvent"]:1> [C]: in function `SocketInventoryItem' AethysCore\Class\Spell.lua:326: in function `ArtifactScan' AethysCore\Events\Main.lua:342: in function `Handler' AethysCore\Events\Main.lua:225: in function <AethysCore\Events\Main.lua:223> Locals: NewItem = true ArtifactItemID = 128819 _ = 128873 ArtifactName = "Doomhammer" (*temporary) = nil (*temporary) = <table> { spellVisualKitID = 82193 uiModelSceneID = 31 barConnectedColor = <table> { } barDisconnectedColor = <table> { } textureKit = "Artifacts-Shaman" titleColor = <table> { } titleName = "Doomhammer" } (*temporary) = <table> { spellVisualKitID = 82193 uiModelSceneID = 31 barConnectedColor = <table> { } barDisconnectedColor = <table> { } textureKit = "Artifacts-Shaman" titleColor = <table> { } titleName = "Doomhammer" } (*temporary) = 82193 (*temporary) = 0.58823400735855 (*temporary) = <table> { GetRGB = <function> defined @SharedXML\Util.lua:589 OnLoad = <function> defined @SharedXML\Util.lua:578 WrapTextInColorCode = <function> defined @SharedXML\Util.lua:620 GenerateHexColor = <function> defined @SharedXML\Util.lua:616 GetRGBA = <function> defined @SharedXML\Util.lua:597 IsEqualTo = <function> defined @SharedXML\Util.lua:582 SetRGBA = <function> defined @SharedXML\Util.lua:605 SetRGB = <function> defined @SharedXML\Util.lua:612 GetRGBAsBytes = <function> defined @SharedXML\Util.lua:593 GetRGBAAsBytes = <function> defined @SharedXML\Util.lua:601 } (*temporary) = "GetRGBAAsBytes" (*temporary) = "GetRGBAAsBytes" (*temporary) = <function> defined @SharedXML\Util.lua:601 (*temporary) = "GetRGBAAsBytes" (*temporary) = 2 (*temporary) = 2 (*temporary) = nil (*temporary) = nil (*temporary) = nil (*temporary) = nil (*temporary) = "attempt to index global 'PawnOptions' (a nil value)" |
|
JazzyJones |
View Public Profile |
Send a private message to JazzyJones |
Visit JazzyJones's homepage! |
Find More Posts by JazzyJones |
Add JazzyJones to Your Buddy List |
You have just downloaded by the author . If you like this AddOn why not consider supporting the author? This author has set up a donation account. Donations ensure that authors can continue to develop useful tools for everyone.