ReforgeLite
Overview
ReforgeLite is a lightweight reforging calculator that helps you figure out the optimal strategy to reforge your gear given your stat weights and caps without leaving the game.
The addon now has its own project page, located at http://www.rivsoft.net/projects/reforgelite/
Downloads are still only available through Curse page.
What to do if you're not happy with the results
The quickest way to get response is to e-mail me directly at [email protected]
Please describe your problem, and, most importantly, attach a debug log that you can find by scrolling to the bottom of the main UI window (the "Debug" button inside settings section).
How to use it
To open the addon window, type /reforge or talk to the reforging master. On the left half of the window you can see your current item stats for reference.
On the right side you can set up stat weights/caps, or select an existing preset (presets are regularly updated from http://www.noxxic.com, which in turn gets its information from Elitist Jerks).
In the simplified mode, you can specify the stat priority, along with up to two capped stats (each capped stats can have an arbitrary number of breakpoints). If you want more control, you can go into advanced mode and enter the exact stats specific for your gear, obtained from a tool such as SimulationCraft.
Behind the hood, simplified mode sets the lowest stat to a weight of 100, and each next stat adds 20. When you switch between the two modes, ReforgeLite converts your current weights to the other format.
When you're done setting up weights/caps, press Calculate. The calculations are fairly memory/time intensive, so ReforgeLite might trade some precision for speed, though the losses should be minimal. You can press the Calculate button a few times if you want to try getting a better result, the output will always display the best result so far.
Once the calculation finishes, you will see a section with your stats after reforging, and the difference from your current stats. Click on the Show button to see which items should be reforged.
If the reforging UI is open, you can click on the Reforge button to automatically reforge all items in the selected way. Do not interfere in the process (clicking the cancel button or closing the reforging UI is fine). Caution: I'm only human, so while I try my best, I can not guarantee that this process is absolutely bug free, so its recommended to watch over the process. If you leave to make some tea and come back to find it spending thousands of gold reforging your boots over and over again, don't tell me I didn't warn you.
FAQ: The results seem incorrect. I'm getting too much/too little hit/expertise/etc.
First of all, with Mists of Pandaria, expertise now affects spell hit, so it is not uncommon for casters to reforge into some expertise (on items that already have hit) to reach the cap, especially at lower gear levels. Note that ReforgeLite directly adds your expertise rating to hit rating, which is not the way it is displayed in the game, but it is more convenient when verifying the result.
Also, keep in mind that ReforgeLite uses your currently active spec to decide which stat conversions are in place, so if you're a Paladin trying to reforge your Protection gear while in Holy spec, you will likely get very little hit because it thinks you get enough from expertise.
If you are still not satisfied with the results, feel free to e-mail me (at [email protected]) with a brief description of the problem and a debug log (found at the bottom of the scrollable arera, in the options category).
FAQ: I'm using certain items for my off-spec and I don't want their reforge changed.
Simply click on an item icon in the large stats table, this will lock the item's reforge.
FAQ: More caps?
This is a very popular demand, and I'm sorry to tell you that it is not possible with the algorithm I'm currently using. I'm fairly sure the only other way to go is a brute force approach, which is simply way too slow to work in a Lua environment. There are plenty of external tools that employ it, such as http://www.wowreforge.com. I will be adding an import option in the near future to make it easier to use their results.
FAQ: Decimal weights?
You might notice that you can't enter anything besides digits in the weight boxes. This was done for simplicity's sake, and it does not limit you at all - you can multiply all your weights by a 100 (or whatever you prefer) to make them integers, and that would not affect the result at all.
FAQ: My reforge/results window isn't showing up. What do?
There are a few possible reasons.
First, ensure that the addon is enabled (and not marked as outdated if you haven't checked the box to load out-of-date addons). If the addon isn't loaded, you should get an error when trying to type /reforge in chat.
Second, try enabling Lua errors in the game options. If this causes error messages to show up when you try to open the reforge window, then send me the text of the error and I'll figure something out.
Third, it is possible that you accidentally moved the window off-screen. The easiest way to fix this is by deleting the addon config file located at <game folder>/WTF/Account/<your account>/SavedVariables/ReforgeLite.lua - this should reset the addon settings to default (make sure you're in game when doing that, or the file will simply reappear). This will also delete your custom weight and reforge presets - if you want to avoid that, you can try editing the said file, by changing the values of variables "windowX", "windowY", "methodWindowX" and "methodWindowY". Values such as 100 for X and 500 for Y should make the window(s) visible at least.
This would be fantastic :) Using expertise as a caster seems like it will be much more useful right now, at the beginning of the expansion, while things are still scrappy and people are urgently trying to get hit-capped by Tuesday.
Hey i have an error: Don´t know why
Message: ReforgeLite-v1.15\ReforgeEngine.lua:295: attempt to perform arithmetic on field "?" (a nil value)
Time: 10/04/12 21:41:47
Count: 1
Stack: Interface\AddOns\ReforgeLite\ReforgeLite.lua:1185: in function `RefreshMethodStats'
Interface\AddOns\ReforgeLite\ReforgeLite.lua:1326: in function `UpdateItems'
Interface\AddOns\ReforgeLite\ReforgeLite.lua:1712: in function <Interface\AddOns\ReforgeLite\ReforgeLite.lua:1701>
[C]: in function `TurnOrActionStop'
[string "TURNORACTION"]:4: in function <[string "TURNORACTION"]:1>
Locals: self = <unnamed> {
PrioToWeights = <function> defined @Interface\AddOns\ReforgeLite\TaskUI.lua:580
itemTable = <unnamed> {
}
CapUpdater = <function> defined @Interface\AddOns\ReforgeLite\TaskUI.lua:130
IsReforgeMatching = <function> defined @Interface\AddOns\ReforgeLite\ReforgeLite.lua:1521
InitPresets = <function> defined @Interface\AddOns\ReforgeLite\Presets.lua:539
MovePriorityItem = <function> defined @Interface\AddOns\ReforgeLite\TaskUI.lua:248
GetCapScore = <function> defined @Interface\AddOns\ReforgeLite\ReforgeLite.lua:394
CapAllows = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:352
UpdateTask = <function> defined @Interface\AddOns\ReforgeLite\TaskUI.lua:314
dbkey = "Elrigo - Azshara"
GetNeededSpellHit = <function> defined @Interface\AddOns\ReforgeLite\Presets.lua:41
UpgradeDB = <function> defined @Interface\AddOns\ReforgeLite\ReforgeLite.lua:128
methodReset = ReforgeLiteMethodResetButton {
}
WeightsToPrio = <function> defined @Interface\AddOns\ReforgeLite\TaskUI.lua:647
StrengthToParry = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:38
ComputeReforgeCore = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:1014
debugButton = ReforgeLiteDebugButton {
}
db = <table> {
}
OnTooltipSetItem = <function> defined @Interface\AddOns\ReforgeLite\ReforgeLite.lua:1669
presets = <table> {
}
deletePresetButton = ReforgeLiteDeletePresetButton {
}
statWeightsCategory = <unnamed> {
}
GetNeededMeleeHit = <function> defined @Interface\AddOns\ReforgeLite\Presets.lua:29
UpdateMethodCategory = <function> defined @Interface\AddOns\ReforgeLite\ReforgeLite.lua:1049
pawnButton = ReforgeLiteDeletePresetButton {
}
UpdateWindowSize = <function> defined @Interface\AddOns\ReforgeLite\ReforgeLite.lua:389
presetMenu = ReforgeLitePresetMenu {
}
UpdatePriorityItem = <function> defined @Interface\AddOns\ReforgeLite\TaskUI.lua:276
GetMethodScore = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:146
ChooseReforgeS2H = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:793
SetAnchor = <function> defined @Interface\AddOns\ReforgeLite\ReforgeLite.lua:580
IsItemLocked = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:363
deleteMethodPresetButton = ReforgeLiteDeleteMethodPresetButton {
}
pdb = <table> {
}
AddPriorityItem = <function> defined @Interface\AddOns\ReforgeLite\TaskUI.lua:170
itemSlots = <table> {
}
GetPlayerBuffs = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:115
STATS = <table> {
}
methodPresetDelMenu = ReforgeLiteMethodPresetDelMenu {
}
ParsePawnString = <function> defined @Interface\AddOns\ReforgeLite\ReforgeLite.lua:418
UpdateMethodStats = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:265
methodStats = <unnamed> {
}
SetStatWeights = <function> defined @Interface\AddOns\ReforgeLite\TaskUI.lua:341
scrollBarShown = false
InitReforgeTank = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:900
GetExpertiseBonus = <function> defined @Interface\AddOns\ReforgeLite\Presets.lua:22
MakeReforgeOption = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:373
settingsCategory = <unnamed> {
}
ChooseReforgeTank = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:962
UpdateContentSize = <function> defined @Interface\AddOns\ReforgeLite\ReforgeLite.lua:1225
capPresets = <ta
Please help :D
Hey i have an error with ReforgeLite. The window won´t open and that Error comes:
Message: ReforgeLite-v1.15\ReforgeEngine.lua:295: attempt to perform arithmetic on field "?" (a nil value)
Time: 10/04/12 21:41:47
Count: 1
Stack: Interface\AddOns\ReforgeLite\ReforgeLite.lua:1185: in function `RefreshMethodStats'
Interface\AddOns\ReforgeLite\ReforgeLite.lua:1326: in function `UpdateItems'
Interface\AddOns\ReforgeLite\ReforgeLite.lua:1712: in function <Interface\AddOns\ReforgeLite\ReforgeLite.lua:1701>
[C]: in function `TurnOrActionStop'
[string "TURNORACTION"]:4: in function <[string "TURNORACTION"]:1>
Locals: self = <unnamed> {
PrioToWeights = <function> defined @Interface\AddOns\ReforgeLite\TaskUI.lua:580
itemTable = <unnamed> {
}
CapUpdater = <function> defined @Interface\AddOns\ReforgeLite\TaskUI.lua:130
IsReforgeMatching = <function> defined @Interface\AddOns\ReforgeLite\ReforgeLite.lua:1521
InitPresets = <function> defined @Interface\AddOns\ReforgeLite\Presets.lua:539
MovePriorityItem = <function> defined @Interface\AddOns\ReforgeLite\TaskUI.lua:248
GetCapScore = <function> defined @Interface\AddOns\ReforgeLite\ReforgeLite.lua:394
CapAllows = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:352
UpdateTask = <function> defined @Interface\AddOns\ReforgeLite\TaskUI.lua:314
dbkey = "Elrigo - Azshara"
GetNeededSpellHit = <function> defined @Interface\AddOns\ReforgeLite\Presets.lua:41
UpgradeDB = <function> defined @Interface\AddOns\ReforgeLite\ReforgeLite.lua:128
methodReset = ReforgeLiteMethodResetButton {
}
WeightsToPrio = <function> defined @Interface\AddOns\ReforgeLite\TaskUI.lua:647
StrengthToParry = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:38
ComputeReforgeCore = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:1014
debugButton = ReforgeLiteDebugButton {
}
db = <table> {
}
OnTooltipSetItem = <function> defined @Interface\AddOns\ReforgeLite\ReforgeLite.lua:1669
presets = <table> {
}
deletePresetButton = ReforgeLiteDeletePresetButton {
}
statWeightsCategory = <unnamed> {
}
GetNeededMeleeHit = <function> defined @Interface\AddOns\ReforgeLite\Presets.lua:29
UpdateMethodCategory = <function> defined @Interface\AddOns\ReforgeLite\ReforgeLite.lua:1049
pawnButton = ReforgeLiteDeletePresetButton {
}
UpdateWindowSize = <function> defined @Interface\AddOns\ReforgeLite\ReforgeLite.lua:389
presetMenu = ReforgeLitePresetMenu {
}
UpdatePriorityItem = <function> defined @Interface\AddOns\ReforgeLite\TaskUI.lua:276
GetMethodScore = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:146
ChooseReforgeS2H = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:793
SetAnchor = <function> defined @Interface\AddOns\ReforgeLite\ReforgeLite.lua:580
IsItemLocked = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:363
deleteMethodPresetButton = ReforgeLiteDeleteMethodPresetButton {
}
pdb = <table> {
}
AddPriorityItem = <function> defined @Interface\AddOns\ReforgeLite\TaskUI.lua:170
itemSlots = <table> {
}
GetPlayerBuffs = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:115
STATS = <table> {
}
methodPresetDelMenu = ReforgeLiteMethodPresetDelMenu {
}
ParsePawnString = <function> defined @Interface\AddOns\ReforgeLite\ReforgeLite.lua:418
UpdateMethodStats = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:265
methodStats = <unnamed> {
}
SetStatWeights = <function> defined @Interface\AddOns\ReforgeLite\TaskUI.lua:341
scrollBarShown = false
InitReforgeTank = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:900
GetExpertiseBonus = <function> defined @Interface\AddOns\ReforgeLite\Presets.lua:22
MakeReforgeOption = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:373
settingsCategory = <unnamed> {
}
ChooseReforgeTank = <function> defined @Interface\AddOns\ReforgeLite\ReforgeEngine.lua:962
UpdateContentSize = <function> defined @Interface\AddOns\ReforgeLite\ReforgeLite.lua:1225
capPresets = <ta
Please help!
Thank u
This addon works perfectly on all of my toons besides my level 90 monk. The following is the LUA error.
Message: Interface\AddOns\ReforgeLite\ReforgeEngine.lua:215: attempt to perform arithmetic on field '?' (a nil value)
Time: 09/30/12 03:03:47
Count: 1
Stack: Interface\AddOns\ReforgeLite\ReforgeEngine.lua:215: in function `UpdateMethodStats'
Interface\AddOns\ReforgeLite\ReforgeLite.lua:1738: in function `RefreshMethodStats'
Interface\AddOns\ReforgeLite\ReforgeLite.lua:1965: in function `UpdateItems'
Interface\AddOns\ReforgeLite\ReforgeLite.lua:2345: in function <Interface\AddOns\ReforgeLite\ReforgeLite.lua:2337>
[C]: in function `TurnOrActionStop'
[string "TURNORACTION"]:4: in function <[string "TURNORACTION"]:1>
Locals:
Would I be suggest adding support for expertise counting towards spell hit for casters now.
As of Pandaland, if I hit calculate most of the time the game will hang have to be force closed. Sometimes it doesn't. Not sure what info you'd need so you can reproduce and debug.
very crazy addon atm. during my 5min telephone imba afkness the addon forged an item 50 times. i lost 2k gold..
I'm getting this lua error since I race changed to a Panda. I don't get any other errors from other races and they work fine. I tried wowreforge.com just to see and it also seems they can't bring up Pandas. Is this fixable?
Message: Interface\AddOns\ReforgeLite\ReforgeEngine.lua:215: attempt to perform arithmetic on field '?' (a nil value)
Time: 09/26/12 12:38:46
Count: 1
Stack: [C]: ?
Interface\AddOns\ReforgeLite\ReforgeEngine.lua:215: in function `UpdateMethodStats'
Interface\AddOns\ReforgeLite\ReforgeLite.lua:1738: in function `RefreshMethodStats'
Interface\AddOns\ReforgeLite\ReforgeLite.lua:1965: in function `UpdateItems'
Interface\AddOns\ReforgeLite\ReforgeLite.lua:2396: in function `OnCommand'
Interface\AddOns\ReforgeLite\ReforgeLite.lua:2387: in function `?'
Interface\FrameXML\ChatFrame.lua:4358: in function `ChatEdit_ParseText'
Interface\FrameXML\ChatFrame.lua:4052: in function `ChatEdit_SendText'
Interface\FrameXML\ChatFrame.lua:4091: in function <Interface\FrameXML\ChatFrame.lua:4087>
[C]: in function `ChatEdit_OnEnterPressed'
[string "*:OnEnterPressed"]:1: in function <[string "*:OnEnterPressed"]:1>
Locals:
Don't know why but it doesn't work on my Frost-DK.
I enabled it for ALL Chars + my dk. It works on all chars except the DK. What's wrong with that? I double-checked if it's aktivated. If I type /reforge nothing happens
Is this scaled for 90? I reforged at 86 (fury warrior) and it changed all my stuff to expertise (puting me at almost 15%).
Im trying to reforget for all crit but when i put in the at least or anything it doesn't do anything but remove the crit and put is all into haste and hit even tho it's NOT even what im asking for.
Reforge Lite is still tainting like crazy
Nice addon, but it always calculates wrong whenever there are any gems or enchants with +hit chance on the gear. Either hit or expertise cap are underrun in every calculation, no matter how i set the speed slider.
Hello love the addon... Has been a very big help to me on alll my toons. Everyone in my guild use it. Cant wait till u can update for mist. Plus it never cost any money for most of us , keep up the good work. Long live free stuff...
I have a serious issue with it. Sitting at reforge tonight to reforge my staff and funny enough i went from 3,899g to 1,289 gold, because it hung up. i hit the reforge went to grab phone come back and it wasdoing it over and over again. to a fairly new toon as myself that hurts. that needs to dealt with QUICKLY. as of now im telling all i have turned on to it to either watch it like a hawk, or just delete it to be safe
Hai there, I love the addon! I'm having a problem with hunter BM spec. I know you're working on the new presets, but I can't seem to force expertise to calculate into the mix. I am using "Expertise, soft cap expertise, at least" and it comes out to like 769 or so, but it refuses to add exp to the mix. Also, every time I try to calculate any class to be reforged, it comes up with different things every time I click it. Is that supposed to happen? Thanks! -Trish-
Hey there friend just wanna say great add-on been using it for a very long time now. I justw anna say however as of the patch/MoP A lot of stat priorites have changed, meaning some of the presets are using the same stat priorites as cata just upgraded with higher numbers...was wondering if the presets will be upgraded to accomodate the new changes in stat priories and such for many differnet classes they have switched IE Ret pallies now go for Haste>mstery>crit over Mastery Crit>=Haste, and SHadow priest now have a new mastery that has placed thier focus of Haste>Mastery>Crit to Mastery>Haste> Crit. These are just examples Hope to see the major updates..pretty sure manually changing the stats aroudn will help a bit but just informing you -)
sincerely,
Concerned Add-on user
I said multiple times that I will update presets as I get more data on what the new stat priorities are for different classes/specs. Currently there aren't any sources with definitive information on all of them.
Also, I'm looking to improve the interface to allow entering a stat priority instead of weights, hopefully that will be more intuitive for users that aren't satisfied with the presets.
Btw, I'm fairly sure haste is still the top stat for shadow priests. Whether mastery is better than crit or not is up to debate, but it clearly doesn't beat haste. Simply put, it only affects dots (not including SWP and DP initial damage), which isn't a huge fraction of our damage.
I'm having the exact same issue. I just spent 600 gold re-reforging all my gear. Hope this gets fixed soon.
Just manually set the expertise soft cap. You should be able to do with a drop down box just below the hit rating drop down box. Then you can save that as a new preset