Elitist Jerks
Register
Blogs
Forums


Go Back   Elitist Jerks » Class Mechanics » Rogues

Reply
 
LinkBack Thread Tools
Old 01/29/11, 10:45 AM   #16
Naganuina
Glass Joe
 
Night Elf Rogue
 
Icecrown
java.lang.RuntimeException: Random enchant item found. These items are not yet supported.
	at net.wsnetwork.reforger.Reforger.runReforging(Reforger.java:153)
	at net.wsnetwork.reforger.ReforgerApplet$ReforgerRunnable.run(ReforgerApplet.java:99)
	at java.lang.Thread.run(Unknown Source)
It seems to have issues with Swordguard Embroidery as well.

Offline
Reply With Quote
Old 01/30/11, 12:22 PM   #17
Stet
Glass Joe
 
Blood Elf Rogue
 
Boulderfist
I've noticed that this tool reforges hit to get as close as possible to 1332 regardless of how many points a rogue has in Precision. Is there any way to have an option to specify Precision points so that it instead stops reforging for hit at 1127?

Edit - Whoops, nevermind, I just downloaded your source and compiled a 1127 version myself. Would still be useful, though.

Last edited by Stet : 01/30/11 at 1:12 PM.

Offline
Reply With Quote
Old 01/31/11, 3:06 PM   #18
Maconi
Glass Joe
 
Maconi's Avatar
 
Goblin Rogue
 
Kul Tiras
I downloaded the source and have a few questions.

First of all I'd like to try to always stay above HIT and EXP cap (using it normally it keeps putting me below EXP cap). I found this in the code, is there any way to alter it to force it to always hit EXP cap?

        int exp = statValues[Stat.exp.getIndex()];
        if (exp > EXP_CAP) {
            result += EP_AT_EXP_CAP;
        } else {
            result += exp * EXP_COEFFICIENT;
        }
While I was at it I also edited the EP values for the Combat profile for 4.0.6 values. However when I try to compile it with javac (javac *.java) I get the following errors:

Reforger.java:26: package net.wsnetwork.reforger.rogue does not exist
import net.wsnetwork.reforger.rogue.CombatSpecModel;
                                   ^
Reforger.java:27: package net.wsnetwork.reforger.rogue does not exist
import net.wsnetwork.reforger.rogue.MutiltateSpecModel;
                                   ^
Reforger.java:124: cannot find symbol
symbol  : class CombatSpecModel
location: class net.wsnetwork.reforger.Reforger
            model = new CombatSpecModel();
                        ^
Reforger.java:127: cannot find symbol
symbol  : class MutiltateSpecModel
location: class net.wsnetwork.reforger.Reforger
            model = new MutiltateSpecModel();
                        ^
4 errors
Any tips on what I'm doing wrong? I'm assuming it has something to do with the CLASSPATH but since I'm new to Java I'm a bit lost lol.

Offline
Reply With Quote
Old 02/01/11, 5:18 AM   #19
skabe
Glass Joe
 
Night Elf Rogue
 
Emerald Dream (EU)
Great tool but I think it is using melee hit calculations instead of spell hit. The tool reforged me to 17% melee hit which is 18.89% spell hit and we need to be at the spell hit cap to be optimal.

Last edited by skabe : 02/01/11 at 5:19 AM. Reason: Typo

Offline
Reply With Quote
Old 02/01/11, 7:38 AM   #20
Vaelaris
Von Kaiser
 
Night Elf Rogue
 
Steamwheedle Cartel
Getting error when trying to import, using both Chrome and IE8:

Reforger version 1.4.
Loading character info:
java.lang.RuntimeException: Unable to load items from Armory URL: us.battle.net/wow/en/character/steamwheedle-cartel/vaelaris/advanced
at net.wsnetwork.reforger.Character.<init>(Character.java:97)
at net.wsnetwork.reforger.Reforger.runReforging(Reforger.java:120)
at net.wsnetwork.reforger.ReforgerApplet$ReforgerRunnable.run(ReforgerApplet.java:99)
at java.lang.Thread.run(Unknown Source)
Caused by: java.net.MalformedURLException: no protocol: us.battle.net/wow/en/character/steamwheedle-cartel/vaelaris/advanced
at java.net.URL.<init>(Unknown Source)
at java.net.URL.<init>(Unknown Source)
at java.net.URL.<init>(Unknown Source)
at net.wsnetwork.reforger.Character.<init>(Character.java:70)
... 3 more

Offline
Reply With Quote
Old 02/01/11, 7:58 AM   #21
meneldor
Glass Joe
 
Worgen Rogue
 
Darkspear (EU)
A suggestion: Why not implement so you can enter the EP-values and the cap values?
A set of textboxes with the suggested values with the option of changing them? That way you can enter the EP-values for your particular talent-spec and gear level. That would also increase understanding as to what values are actually used in the reforging calculations.

Sweden Offline
Reply With Quote
Old 02/01/11, 10:21 AM   #22
grooken
Glass Joe
 
Night Elf Rogue
 
Chamber of Aspects (EU)
Originally Posted by meneldor View Post
A suggestion: Why not implement so you can enter the EP-values and the cap values?
A set of textboxes with the suggested values with the option of changing them? That way you can enter the EP-values for your particular talent-spec and gear level. That would also increase understanding as to what values are actually used in the reforging calculations.
That's actually the only thing that i want from Java app. It's much faster than korner version and i can use it after i get any item.

Java Reforger should also say if some items should not have any reforge at all. There's no such information in current version.

Last edited by grooken : 02/01/11 at 10:28 AM.

Offline
Reply With Quote
Old 02/01/11, 12:27 PM   #23
Maconi
Glass Joe
 
Maconi's Avatar
 
Goblin Rogue
 
Kul Tiras
Originally Posted by Maconi View Post
I downloaded the source and have a few questions.

First of all I'd like to try to always stay above HIT and EXP cap (using it normally it keeps putting me below EXP cap). I found this in the code, is there any way to alter it to force it to always hit EXP cap?

        int exp = statValues[Stat.exp.getIndex()];
        if (exp > EXP_CAP) {
            result += EP_AT_EXP_CAP;
        } else {
            result += exp * EXP_COEFFICIENT;
        }
While I was at it I also edited the EP values for the Combat profile for 4.0.6 values. However when I try to compile it with javac (javac *.java) I get the following errors:

Reforger.java:26: package net.wsnetwork.reforger.rogue does not exist
import net.wsnetwork.reforger.rogue.CombatSpecModel;
                                   ^
Reforger.java:27: package net.wsnetwork.reforger.rogue does not exist
import net.wsnetwork.reforger.rogue.MutiltateSpecModel;
                                   ^
Reforger.java:124: cannot find symbol
symbol  : class CombatSpecModel
location: class net.wsnetwork.reforger.Reforger
            model = new CombatSpecModel();
                        ^
Reforger.java:127: cannot find symbol
symbol  : class MutiltateSpecModel
location: class net.wsnetwork.reforger.Reforger
            model = new MutiltateSpecModel();
                        ^
4 errors
Any tips on what I'm doing wrong? I'm assuming it has something to do with the CLASSPATH but since I'm new to Java I'm a bit lost lol.
Actually I take back what I said about the EXP part. The code looks fine, I'm probably ending up under EXP cap just because the java applet isn't able to reforge a few stats that I do have reforged. This is what the java app is set to reforge:

    @Override public Map<Stat, Set<Stat>> getPossibleReforgings() {
        HashMap<Stat, Set<Stat>> result = new HashMap<Stat, Set<Stat>>();
        Set<Stat> stats = new HashSet<Stat>();
        stats.add(Stat.exp);
        stats.add(Stat.hst);
        result.put(Stat.hit, stats);

        stats = new HashSet<Stat>();
        stats.add(Stat.hst);
        stats.add(Stat.exp);
        result.put(Stat.mst, stats);

        stats = new HashSet<Stat>();
        stats.add(Stat.exp);
        stats.add(Stat.hit);
        result.put(Stat.hst, stats);

        stats = new HashSet<Stat>();
        stats.add(Stat.hit);
        stats.add(Stat.mst);
        stats.add(Stat.hst);
        result.put(Stat.exp, stats);

        stats = new HashSet<Stat>();
        stats.add(Stat.exp);
        stats.add(Stat.hit);
        stats.add(Stat.mst);
        stats.add(Stat.hst);
        result.put(Stat.cri, stats);
If the code was altered to this:

    @Override public Map<Stat, Set<Stat>> getPossibleReforgings() {
        HashMap<Stat, Set<Stat>> result = new HashMap<Stat, Set<Stat>>();
        Set<Stat> stats = new HashSet<Stat>();
        stats.add(Stat.exp);
        stats.add(Stat.hst);
        result.put(Stat.hit, stats);

        stats = new HashSet<Stat>();
        stats.add(Stat.hit);
        stats.add(Stat.hst);
        stats.add(Stat.exp);
        result.put(Stat.mst, stats);

        stats = new HashSet<Stat>();
        stats.add(Stat.exp);
        stats.add(Stat.hit);
        result.put(Stat.hst, stats);

        stats = new HashSet<Stat>();
        stats.add(Stat.hit);
        stats.add(Stat.mst);
        stats.add(Stat.hst);
        result.put(Stat.exp, stats);

        stats = new HashSet<Stat>();
        stats.add(Stat.exp);
        stats.add(Stat.hit);
        stats.add(Stat.hst);
        result.put(Stat.cri, stats);
(Taking MST out of CRI and adding HIT to MST)

Would the time change at all? If not I think that should result in much better reforges (HIT/EXP/HST on every possible stat). MST could be added to a few if it wouldn't increase reforge times too much, but I suspect it would.

*All of the above is referring to the COMBAT profile, although similar changes could probably be made to the Assassination profile*

Offline
Reply With Quote
Old 02/01/11, 12:29 PM   #24
Firnas
Glass Joe
 
Human Rogue
 
Draka
Originally Posted by grooken View Post
That's actually the only thing that i want from Java app. It's much faster than korner version and i can use it after i get any item.

Java Reforger should also say if some items should not have any reforge at all. There's no such information in current version.
For what it's worth I am playing around with bsofts code to be more versatile for both rogues and any other class. We briefly touched base and he said he doesn't have the time to go all the way with his reforging tool. When I come up with something I'll be sending it to him for his review.

United States Offline
Reply With Quote
Old 02/01/11, 12:38 PM   #25
Crosshairs
Von Kaiser
 
Goblin Rogue
 
Burning Legion
Originally Posted by Firnas View Post
For what it's worth I am playing around with bsofts code to be more versatile for both rogues and any other class. We briefly touched base and he said he doesn't have the time to go all the way with his reforging tool. When I come up with something I'll be sending it to him for his review.
I started doing the same thing. I wanted to get a working copy that worked before I reached out to him. I'd be more then happy to review what you have done if you need another set of eyes.

United States Offline
Reply With Quote
Old 02/02/11, 12:39 AM   #26
DerIdiot
Glass Joe
 
Orc Rogue
 
Thrall
Hey guys, I don't know what to say here. I've been running the tool and I believe it's great really. But -every single time- I run it and reforge according to what it wants, I come up missing 70-80 hit short of what it wants. I am using the advanced armory page, and no I don't have any T4W loot... What am I missing here? This is really frustrating.

Offline
Reply With Quote
Old 02/02/11, 3:31 PM   #27
Piltch
Glass Joe
 
Gnome Rogue
 
Stormrage
Reforge on a non reforgable item recommended

using the jar

Recommended reforgings:
["Blackscale Wraps" 37 Mastery to Expertise]
["Portal-Sealer's Breastplate" 62 Crit to Expertise]
["Calder's Coated Carrion Carver" 33 Crit to Expertise]
["Swiftflight Leggings" 67 Crit to Expertise]
["Signet of Bloody Sands" 34 Hit to Expertise]
["Helm of Secret Knowledge" 46 Crit to Expertise]
["Quel'Dormir Signet Ring" 23 Crit to Expertise]
["Clandestine Spaulders" 56 Crit to Expertise]
["Winged Axe" 19 Hit to Haste]
["Mindsear Shanker" 28 Hit to Expertise]
["Mirror-Polished Boots" 44 Mastery to Haste]
["Skardyn's Grace" 504 Mastery to Haste] ["Pendant of Victorious Fury" 36 Mastery to Expertise]
["Cloak of Beasts" 30 Mastery to Haste]
Stats with no reforgings (EP = 4143.6):
Hit: 477
Mastery: 400
Haste: 1175
Expertise: 340
Crit: 725
Stats with current reforgings (EP = 4206.2):
Hit: 623
Mastery: 462
Haste: 1175
Expertise: 340
Crit: 517
Stats with recommended reforgings (EP = 4742.3):
Hit: 396
Mastery: -251
Haste: 1772
Expertise: 762
Crit: 438
Improvement over current reforgings: 536.2
Calculation time: 2.2K seconds (checked 12M possibilities per second)

Offline
Reply With Quote
Old 02/02/11, 7:30 PM   #28
Firnas
Glass Joe
 
Human Rogue
 
Draka
Originally Posted by Piltch View Post
using the jar

Recommended reforgings:
["Blackscale Wraps" 37 Mastery to Expertise]
["Portal-Sealer's Breastplate" 62 Crit to Expertise]
["Calder's Coated Carrion Carver" 33 Crit to Expertise]
["Swiftflight Leggings" 67 Crit to Expertise]
["Signet of Bloody Sands" 34 Hit to Expertise]
["Helm of Secret Knowledge" 46 Crit to Expertise]
["Quel'Dormir Signet Ring" 23 Crit to Expertise]
["Clandestine Spaulders" 56 Crit to Expertise]
["Winged Axe" 19 Hit to Haste]
["Mindsear Shanker" 28 Hit to Expertise]
["Mirror-Polished Boots" 44 Mastery to Haste]
["Skardyn's Grace" 504 Mastery to Haste] ["Pendant of Victorious Fury" 36 Mastery to Expertise]
["Cloak of Beasts" 30 Mastery to Haste]
Stats with no reforgings (EP = 4143.6):
Hit: 477
Mastery: 400
Haste: 1175
Expertise: 340
Crit: 725
Stats with current reforgings (EP = 4206.2):
Hit: 623
Mastery: 462
Haste: 1175
Expertise: 340
Crit: 517
Stats with recommended reforgings (EP = 4742.3):
Hit: 396
Mastery: -251
Haste: 1772
Expertise: 762
Crit: 438
Improvement over current reforgings: 536.2
Calculation time: 2.2K seconds (checked 12M possibilities per second)
Looks like on the Use of Skardyn's Grace it adds it to the general stats overall. Looking into why this is.


Edit:

The xml scheme on wowhead for items with Use: characteristic throws the periodic stat increase with the same pattern as any other secondary stat thats an Equip characteristic.

Very cheap fix at the moment. Replace the entire public StatVector(String wowheadData) constructor with the following in StatVector.java.

public StatVector(String wowheadData) {
        data = new int[Stat.possibleStats.length];
        for (Stat stat : Stat.possibleStats) {
            Pattern pattern = Pattern.compile("\"" + stat.getWowheadName() + "\":(\\d+)");
            Pattern useItemPattern = Pattern.compile("Use:");
            Matcher useItemMatcher = useItemPattern.matcher(wowheadData);
            Matcher matcher = pattern.matcher(wowheadData);
            if (matcher.find() && !useItemMatcher.find()) {
                data[stat.getIndex()] = Integer.parseInt(matcher.group(1));
            } else {
                data[stat.getIndex()] = 0;
            }
        }
    }

Last edited by Firnas : 02/02/11 at 7:48 PM.

United States Offline
Reply With Quote
Old 02/03/11, 3:45 AM   #29
Lycania
Glass Joe
 
Night Elf Rogue
 
Arthas (EU)
I think I found an calculation error for the combat ratings (might apply similarly to the assasination values)

    // EP value of spell hit and yellow hit at the hit cap
    private static final double EP_AT_SPELL_CAP =
        EP_AT_YELLOW_CAP + SPELL_HIT_COEFFICIENT * SPELL_HIT_CAP;
this would in numbers mean: 241 * 1.9 + 1127 * 1.4
I think that is wrong, because you are actually counting the yellow cap ratings twice. Once for 1.9 ep and once for 1.4 ep

So I guess, that right calculation would be 241 * 1.9 + (1127 - 241) * 1.4,.

This actually changes the results for combat alot (read as: 241 * 1.4ep too much).

It only happens for stat vectors assuming hit rating above the spell cap.
As long as the calculated hit ratings are below the spell hit cap, your formulas are correct, as EP_AT_YELLOW_CAP is not used in the else if.

Regards,
White

// Edit:
Also a little suggestion: For combat, there is no case where reforging into MST or CRT will happen at all. There is always an option to reforge those values into something differnt (reason beeing, that even white hit rating is superior to those two).
Removing all StatVectors for those values could reduce calculation times for combat ratings to a good amount.

Last edited by Lycania : 02/03/11 at 3:54 AM.

Offline
Reply With Quote
Old 02/03/11, 3:53 AM   #30
lovingbenji
Glass Joe
 
lovingbenji's Avatar
 
Worgen Hunter
 
Cho'gall (EU)
Originally Posted by Lycania View Post
I think I found an calculation error for the combat ratings (might apply similarly to the assasination values)

    // EP value of spell hit and yellow hit at the hit cap
    private static final double EP_AT_SPELL_CAP =
        EP_AT_YELLOW_CAP + SPELL_HIT_COEFFICIENT * SPELL_HIT_CAP;
this would in numbers mean: 241 * 1.9 + 1127 * 1.4
I think that is wrong, because you are actually counting the yellow cap ratings twice. Once for 1.9 ep and once for 1.4 ep

So I guess, that right calculation would be 241 * 1.9 + (1127 - 241) * 1.4,.

This actually changes the results for combat alot (read as: 241 * 1.4ep too much).

It only happens for stat vectors assuming hit rating above the spell cap.
As long as the calculated hit ratings are below the spell hit cap, your formulas are correct, as EP_AT_YELLOW_CAP is not used in the else if.

Regards,
White
I also found an error while using the java based tool that could be a consequence of the above statement.

On my combat rogue (almost full 359), the tool advises me to convert haste from my wind dancer tunic to hit and to leave fluid death unchanged ; which is obviously a non-sense

Offline
Reply With Quote
Reply

Go Back   Elitist Jerks » Class Mechanics » Rogues

Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Optimal Reforger Calculator Reeshet Public Discussion 59 07/15/11 7:34 PM
Java App Modelling Rogue DPS (Updated for 3.3.3) Chack Rogues 294 09/30/10 8:15 AM
[Rogue] Hit, crit or ap discussion based on your own experiences. laforce The Dung Heap 4 05/24/07 6:07 PM