 |
11/02/10, 3:09 PM
|
#61
|
|
Piston Honda
|
Originally Posted by Galluf
That only holds true in situations where you are able to decide how much of each stat you want to reforge. Lets take the EP given in the 4.0.1 post for mutilate spec and say that you are 5 points from the spell hit cap. Lets also assume that you have a piece of gear with crit and expertise on it. The piece has 100 crit on it so you be able to reforge 40 points of that to another stat.
Using the method you mentioned that piece would be reforged to hit because the spell hit is the highest relative stat. This would give an EP value of 5*3.2+35*1.8 = 79
Now using the method that accounts for the EP values it would recommend reforging to haste. 40*2.2=88.
As you can see there is a gain of 9 EP by reforging to haste over hit.
|
I think you're missing what I was trying to say. The EP value of a stat doesn't matter if you're trying to find a general case solution. What does matter, however, is their relative order to one another. If you're right against a break point and you can only reforge in "chunks", of course you're not going to get the better value of the stat (spell hit) for the entire chunk. You'll get the higher value (spell hit) out of it until you hit the break point, and then you'll get the lower value out of it (white hit), but the point is that what those values are (3.2 and 1.8) is not relevant at all, the only relevant info as far as a general-case solution is concerned is that their relative ordering is: spell-hit > haste > white-hit. The results of some optimizing routine would be exactly the same if their EP values were 3.2 > 2.2 > 1.8 versus 300 > 200 > 100 (ignoring other stats for the moment of course).
|
|
|
|
|
11/02/10, 3:24 PM
|
#62
|
|
Piston Honda
Night Elf Rogue
Dragonblight
|
If mastery works in chunks (whole numbers like we used to think expertise did) does this tool also apply mastery in chunks or does it just give mastery whenever it thinks it's a valuable stat?
Also there is no minor armor debuff or hit debuff anymore.
|
|
|
|
11/02/10, 3:29 PM
|
#63
|
|
Von Kaiser
Troll Rogue
Black Dragonflight
|
Originally Posted by StoicRoivaS
I think you're missing what I was trying to say. The EP value of a stat doesn't matter if you're trying to find a general case solution. What does matter, however, is their relative order to one another. If you're right against a break point and you can only reforge in "chunks", of course you're not going to get the better value of the stat (spell hit) for the entire chunk. You'll get the higher value (spell hit) out of it until you hit the break point, and then you'll get the lower value out of it (white hit), but the point is that what those values are (3.2 and 1.8) is not relevant at all, the only relevant info as far as a general-case solution is concerned is that their relative ordering is: spell-hit > haste > white-hit. The results of some optimizing routine would be exactly the same if their EP values were 3.2 > 2.2 > 1.8 versus 300 > 200 > 100 (ignoring other stats for the moment of course).
|
In this case, you would still need to know the exact placement of the break point, as well as how close the values are to each other. Should one stat be higher than another for only 5 points, then lower for the remaining 35, you would assume the second stat is better off that information, but should the difference between the two past the cap be minor, this may not be the case.
Some form of quantification is needed, beyond merely an ordering. Which is better in an order has no relative value unless you know how much better it is. In the end, you still need some sort of numbers behind it, EP works as well as any other measurement.
For example, lets look at the values you posted. 3.2 -> 2.2 -> 1.8
If you are 5 points off of the hit cap, and reforge 15 points on a piece of gear:
Your method yields:
300 * 5 + 100 * 10 = 2500 for hit
200 * 15 = 3000 for haste
haste wins by a significant amount.
The EP method:
3.2*5+1.8*10= 16+18= 34 for hit
2.2*15 = 33 for haste.
hit barely wins.
Essentially, you can argue that your rating system should be scalable to their relative values to each other, but once you make that ratio of caparisons between stats, you have arrived to a system that is the same as EP with the exception of scale. All EP is is a quantifiable measurement of the difference in values between stats using AP as a scale.
I am also confused by your mention of a "general case" solution. Are you implying this priority simply for a quick gauge as to what stats you want on a piece of gear? If so, the logic still remains flawed as the proportional value of stats still needs to be taken into account, a higher amount of lesser stats can still outpace a higher stat, and I would certainly like to know how much better a specific item would be.
|
|
|
|
|
11/02/10, 3:30 PM
|
#64
|
|
Piston Honda
Night Elf Rogue
Dragonblight
|
Originally Posted by StoicRoivaS
I think you're missing what I was trying to say. The EP value of a stat doesn't matter if you're trying to find a general case solution. What does matter, however, is their relative order to one another. If you're right against a break point and you can only reforge in "chunks", of course you're not going to get the better value of the stat (spell hit) for the entire chunk. You'll get the higher value (spell hit) out of it until you hit the break point, and then you'll get the lower value out of it (white hit), but the point is that what those values are (3.2 and 1.8) is not relevant at all, the only relevant info as far as a general-case solution is concerned is that their relative ordering is: spell-hit > haste > white-hit. The results of some optimizing routine would be exactly the same if their EP values were 3.2 > 2.2 > 1.8 versus 300 > 200 > 100 (ignoring other stats for the moment of course).
|
I would agree that ep values don't matter, if a) we didn't have stats that capped, and b) we never acquired new gear
We use EP to compare new gear and current gear, and that's basically the only way to compare, however if we had no caps on stats we would just reforge stuff to the primary stat when the gear didn't have that, secondary when it had the primary, but not the secondary, and leave it alone if it had the 2 best stats. This is of course assuming 2 ratings per piece of gear.
|
|
|
|
11/02/10, 3:47 PM
|
#65
|
|
Glass Joe
Blood Elf Rogue
Steamwheedle Cartel (EU)
|
Mongoose and Berserking
This may be a stupid question please just yell at me if you think so but ive noticed that Mongoose and berserking are not on the list of ench and I was wondering if this is becuase they are based procs or if you just havent had time to put them on.
I am an epic failure when it comes to programing ^^
also if this is the wrong place to post the question please forgive me and point me to the right thread
|
|
|
|
|
11/02/10, 4:31 PM
|
#66
|
|
Von Kaiser
|
Actually, Berserking, Mongoose, and Black Magic are all in the list - but are currently valued as ~0 because (I suspect) as previously mentioned, procs are not currently modeled.
|
|
|
|
|
11/02/10, 5:36 PM
|
#67
|
|
Piston Honda
|
By general-case solution, I'm simply referring to solving the problem of how to best reforge, independent of the actual numbers that show up on our gear. I'm not trying to dismiss EP weights as a useful tool, I'm just focusing on the mathematical curiosity of how to best optimize the system. Of course, at the end of the day all we care about is the dps output, but solving this system doesn't really rest upon those weights. Imagine a web tool not much unlike the RogueThing reforge tool. In this tool you entered the EP value of hit below the special cap, hit below the poison cap, hit above the poison cap, haste, expertise below the dodge cap, expertise above the dodge cap (i.e. zero), crit, and mastery. In addition to those, you entered the precise points within hit and expertise that cause discontinuous changes in their values (i.e. the exp "cap" and the special and spell "caps" for hit). With these inputs (and your gear of course) the tool spits out your optimal reforging scheme.
Now, realize that the coder of the routine (me, you, whoever) did not have access to these EP weights or the player's gear or the break points of expertise and hit ahead of time, they were fed into the tool on the fly. I'm merely interested in the solution of such a system with arbitrary inputs.
And yes, I get that the real-world application of reforging within the game does not allow you to allot points integer by integer. When it comes down to it, you have a finite set of values that you can swap out of your various pieces, however it seems to me that if in a completely random sample set of gear (my personal gear) I was able to land exactly on the expertise cap and only 2 points over the spell cap, armed only with a pencil and paper, that a computer-backed algorithm would be able to do just as well if not better, as I implied.
|
|
|
|
|
11/03/10, 12:20 PM
|
#68
|
|
Von Kaiser
|
OK so I spent 30 minutes trying to figure out how to run the framework. I have no programming knowledge, and have no concept of gits / gemfiles / etc. Any chance someone could help me get this thing running? Or is that probably not going to be worthwhile given my lack of experience?
|
|
|
|
|
11/03/10, 12:37 PM
|
#69
|
|
Mike Tyson
Night Elf Rogue
Doomhammer
|
Depends on whether you're talking about the UI or the calculations engine. If you're talking the UI and you just want to play with it, I believe Antiarc is still hosting a version of it. If you're talking the calculations end of things, don't waste your time, because it doesn't actually do anything useful yet. It will start to become somewhat useful within a few more days, but it's still a few weeks out from being a viable tool. Which is okay, because its only set up to model Cataclysm right now, so we have a full month before its needed anyway.
|
|
|
|
|
11/03/10, 1:33 PM
|
#70
|
|
Glass Joe
Human Rogue
Bronzebeard (EU)
|
Do we need to sticky a "Why is Reforging hard?" post somewhere, because the same questions keep on coming up about it.
Basically, Reforging is an instance of the knapsack problem ( Knapsack problem - Wikipedia, the free encyclopedia). This is an NP-complete problem ( NP-complete - Wikipedia, the free encyclopedia). This means that if you come up with a fast way of solving it completely, you win. As of right now, noone has managed to win, so the only solution to get a guaranteed optimal Reforging is to generate all possible combinations of reforgings, then testing them. A back-of-an-envelope calculation gives over 1 trillion possible interesting Reforging combinations of a set of gear. This is not feasible to test for a WoW gear spreadsheet.
Instead of checking every possible combination, you can search for a local optimal solution, most likely using some sort of hill climbing algorithm. This involves looking at your current situation and working out which step you can take next that will put you higher up the hill than you were before ( higher EP value ). The problem with this is that you can't consider options that involve a temporary drop in EP during the process that will end up with a higher EP at the end. There are some modifications you can make to the algorithm to get you out of some situations where a better alternative is available, but you cannot ever know if you have the truely best result without carrying on to check every other possible combination. These changes also increase the number of combinations you check, and increase the memory usage of the app very quickly.
The result of this algorithm is entirely dependant on where you start from; the site probably just started in a different place to you, and you probably considered some intermediate EP drop that the tool didn't. Unless antiarc has a spare Blue Gene/L lying around to run shadowcraft on it will almost certainly be possible to say; "Hey, if I do X,Y,Z instead I get a better result" because of the nature of the problem. There may be improvements we can make to the starting point and exactly how the algorithm evaluates "up" to get closer to a global optimum, but it will likely never be perfect.
With regard to caps etc., the only change you need to make is that you need to reconsider which way "up" is during/ after each choice ( which Reforging gets you closest to the cap without going too far over, and which stat is best after you hit the cap).
Last edited by cjo20 : 11/03/10 at 1:52 PM.
|
|
|
|
|
11/03/10, 3:31 PM
|
#71
|
|
Glass Joe
|
Originally Posted by Shaithis
OK so I spent 30 minutes trying to figure out how to run the framework. I have no programming knowledge, and have no concept of gits / gemfiles / etc. Any chance someone could help me get this thing running? Or is that probably not going to be worthwhile given my lack of experience?
|
I'm not much of a linux guy, but I did manage to get it running under virtual box on Ubuntu 10.04LTS.
I basically just followed this guide:
Installing Ruby 1.9.2 and Rails 3 stable on Ubuntu / Neurons to bytes
And then I installed Aptana Studio 3.
MongoDB is way out of date on the official repos, but there's a handy page here.
Then I cloned the shadowcraft ui git from within aptana, and ran bundle install.
Did have to resolve a couple dependencies, xmllib-dev and xsltlib-dev I think it was, but that's easily done.
After that, just run the server (either from the Run menu, from the cogwheel icon on the left of the window next to the project name, or by typing "script/rails server" in the bottom terminal in aptana.) Then just point your browser at localhost:3000 and it should be up and running.
As for it being worth it or not, I have no idea. I've been wanting to learn some Ruby for a long time, so I think it's a great opportunity to have a poke. So far I've managed to break a lot of things, and not much else, but at least it's interesting.
I did look at installing on windows for about 15 minutes, but it just seems like way more work.
Besides, it's always nice just stuffing things like this on a virtual machine so you can mess around without anything actually breaking.
Last edited by amafi : 11/03/10 at 3:44 PM.
Reason: typo
|
|
|
|
|
11/03/10, 4:12 PM
|
#72
|
|
Glass Joe
|
Seems like no one mentioned the missing enchants in the Web UI.
Some of the engineering specific enchants are missing like Hyperspeed Accelerators and Nitro Boots.
Didnt check for other professions cause I'm in a hurry and was just briefly looking trough everything.
|
|
|
|
|
11/03/10, 6:39 PM
|
#73
|
|
Von Kaiser
Undead Rogue
Talnivarr (EU)
|
Originally Posted by Shaithis
OK so I spent 30 minutes trying to figure out how to run the framework. I have no programming knowledge, and have no concept of gits / gemfiles / etc. Any chance someone could help me get this thing running? Or is that probably not going to be worthwhile given my lack of experience?
|
Git for Windows - msysgit - Project Hosting on Google Code
I used Git-1.7.3.1-preview20101002.exe
RubyInstaller - RubyInstaller for Windows
I used Ruby 1.9.2-p0. Since some gems will need to be compiled locally you also need DevKit-4.5.0-20100819-1536-sfx.exe for Ruby 1.9.2p0, and follow those installation instructions: https://github.com/oneclick/rubyinst...evelopment-Kit .
MongoDb - MongoDB
Once you have those working start mongod and follow the instructions on Shadowcrafts git page. The last steps of initial data population failed for me, but I could start it up and import my charachter anyway.
I also installed Aptana studion 3 to try that out, as I'm used to Visual Studio. You'll still need working Git+Ruby installs for it to work as noted here: Aptana | Getting Started. Had to add 'Eclipse Java EE Developer Tools' (Help -> Install new software -> Eclipse helios update site) before I could directly clone an existing project. Working on getting the project to run from within Aptana. Paths are all setup as they should, but Aptana still can't start rails, so I guess I've missed a setting somewhere.
[add] Apparantly Aptana really want git portable(as the documentation says). Worked once I added the path to git/bin and git/cmd to my %path%. Somewhat annoying that Aptana complained about not finding rails even if it was the wrong git version.
Last edited by neg^ : 11/07/10 at 5:40 AM.
|
|
|
|
|
11/05/10, 6:15 PM
|
#74
|
|
Glass Joe
Night Elf Rogue
Darkspear
|
Any idea if you plan to interface with the www.Battle.net/wow/en/ armory? since it does show reforging and glyphs correctly.
|
|
|
|
|
11/06/10, 6:57 AM
|
#75
|
|
Bald Bull
Night Elf Rogue
Wrathbringer (EU)
|
Yeah, thing is the "new armory" doesn't support XML output or any API yet (see here).
Unless they add this, we're stuck with the old armory OR source code scraping, which really is a PITA and isn't viable for any publicly accessible project.
|
|
|
|
|