Jump to content


Photo

OptiGear - BiS warlock gear optimiser (alpha)


  • Please log in to reply
160 replies to this topic

#1 VenomByte

VenomByte

    Von Kaiser

  • Members
  • 68 posts

Posted 01 July 2009 - 11:39 AM

Some weeks ago I developed a BiS optimising app for warlocks. It's time to give it some public testing, since I have had a fair bit of interest in this previously.

Download here

How it works
Unlike other gear optimisation efforts, this app (assuming the algorithm is now bug-free) gives a 100% guaranteed best gear set for a given set of items & stat weights, since it performs an efficiently pruned exhaustive search rather than a typical hill climbing or evolutionary approach. You set the weights & hit total you wish to calculate for, exclude or lock any particular items you want or don't want, and calculate the gear set. The time taken varies a lot depending on the exact weight & options chosen, but typically will be around 10-20 seconds on the default settings on a reasonably modern PC.

Limitations
Accuracy of this app depends entirely on the accuracy of the stat weights and item values it is fed with. It is populated with an item set taken from all relevant ilvl200+ items on wowhead (as of a few weeks ago). Trinkets, meta bonuses, tier bonuses and so forth are estimated, and can be manually configured. These may not be 100% accurate (particularly the meta gems), and part of the reason for this testing is to get some feedback to tune these to more realistic values.

Only rare gems are used at present.

If you choose the 'get gear from wowhead' option, it will update all items except for trinkets and item enhancements.

Using the app
1) Extract the app & xml files anywhere you like, but ensure they're kept in the same folder or you'll crash it.
2) Run the exe to load the app.
3) Select the default affliction/destro weights (the only ones I've entered so far) or enter your own manually
4) Right click on any gear slot to lock/unlock it
5) Use the excluded items tab to exclude any items you don't want to consider (e.g, hard mode items you don't expect to ever see)
6) Click 'Calculate gearset' to return the optimal set.

The returned gearset will include the necessary gems to activate your meta. It will display the 'hit' and 'weight' score of the chosen set at the top of the screen. Items are shown as links to wowhead, with gems included and hit rating shown on the left for a quick reference. Certain item enhancements (feet, gloves, etc) where there is no single obvious 'best' enhancement are also included in the calculation.

Items can be easily edited in their respective xml files.

In theory you should be able to use this to find the best gear set for any warlock spec, with any target hit rating, including or excluding any particular items you choose.

Any feedback is welcomed. Especially if you find any bugs!

Version History
v0.69 - 18/8/09
- added T9 triumph tier set bonuses
- updated gems list
- updated gear list
- adjusted pruning process to speed up app

v0.64 - 3/7/09
- adjusted default profile weights to match simcraft
- fixed meta requirement overgemming bug

v0.63 - 2/7/09
- Fixed bug where gems assigned to locked items would not be displayed
- Compacted layout slightly
- Prevented crash when clicking on an link with no item assigned
- Added labels to the left of items so you can more clearly see what slot it is for
- Prevented app becoming disabled when invalid weight data was input

v0.62 - 2/7/09
- Fixed socket hit bonus for items not being included (note: socket hit bonus may not currently show up, but is included)
- Fixed pruning error in initial gemming process
- Added ability to include/exclude all items

v0.61 - 1/7/09
Initial public release

#2 Ke11ett

Ke11ett

    Glass Joe

  • Members
  • 4 posts

Posted 01 July 2009 - 12:22 PM

I had a quick play to see if i could find you any bugs and found a couple

At 1024x768 resolution i cant see the whole of the application.

If i click on any of the links (I.E. Head, Meta, etc) it gives me an error: "Object reference not set to an instance of an object."

If i enter invalid data into a weight field and click "Calculate Gearset" it disabled the button, I get a label telling me i have supplied an invalid value but doesn't re-enable to "Calculate Gearset" button so i have to close the application and start again.

Some other things that might be worth looking into:
Display the data in a grid rather just a large white space. I think you should at least stick a label at the side of each piece of gear so i can at a glance see if its a head/neck/etc piece.

I also think that the gem should be click-able as well rather than just "gear + gem" just linking to the gear.

#3 FalseMyrmidon

FalseMyrmidon

    Don Flamenco

  • Members
  • 452 posts

Posted 01 July 2009 - 12:40 PM

  • It would be nice to be able to save a custom weight.
  • It's not 100% clear what the function of the "Force Hit Rating" checkbox is.
  • Right above the 1h weapon entry I have an entry called "N/A". Clicking it brings up a .net error.
  • Being able to disable loot from certain bosses would be nice although I understand that might not be possible since Wowhead doesn't have the source for every item.
  • On the exclude screen a field to type in the name of the item as a search/filter would be nice. You can currently type a letter to go to the first item that begins with that letter but after that you have to scroll/look manually.


#4 VenomByte

VenomByte

    Von Kaiser

  • Members
  • 68 posts

Posted 01 July 2009 - 12:52 PM

Force hit rating forces the hit rating to be at least what you specify, e.g 289 or 368. It has the same effect as setting the 'lost hit weight' (the amount of 'weight' value to subtract from a gear set per point it falls short of the hit target) to a very high number.

The entry above 1h weapon is likely 2h weapon. It will be N/A if your set comes up with a 1h weapon, and vice versa if it has a 2h weapon, since you'll only have one or the other. You also won't get an offhand if you have a 2h.

Other feedback noted; I'll be compiling a list of fixes/improvements to incorporate in the next version.

#5 Abominatus_DMF

Abominatus_DMF

    Von Kaiser

  • Members
  • 28 posts

Posted 01 July 2009 - 01:14 PM

It might, from a convenience standpoint, be nice to be able to exclude an item from the primary tab, rather than switching over to the secondary tab to do so. A right-click context menu comes to mind as a possible implementation.

Cosmetically, making the form fixed-single rather than sizable would be nice, although first prize would be sizable with scaling.

#6 Ritzy

Ritzy

    Von Kaiser

  • Allied Members
  • 26 posts

Posted 01 July 2009 - 01:47 PM

A nice feature on the excluded tab would be to exclude all items. This would give me the ability to easily add the items I currently have back into the "included Gear" to determine what combiniation is best for me.

#7 Charming

Charming

    Glass Joe

  • Members
  • 2 posts

Posted 01 July 2009 - 05:14 PM

I suggest adding the item slot names, e.g. head, chest, trinket, to make it immediately obvious which piece of gear is assigned to which slot. Best scenario would be to model the WoW character profile's equipment slots.

Additionally it would be convenient to have a way to export gear sets perhaps to xml or xls.

edit: When you lock a piece of gear what gems and enchants does the app decide to use? There is no display for this information.

#8 Iamnotiangibson

Iamnotiangibson

    Glass Joe

  • Members
  • 2 posts

Posted 01 July 2009 - 07:34 PM

Wow, this is a pretty cool program.

The only trouble I've had with it is whenever I click on the "GetGearFromWowhead" button I get an error report and it closes.

I'd like to see the gear categorized (Heroics, 10-mans, Uld25 Hard modes) so it would be easier to know your best upgrades as you go along.

#9 VenomByte

VenomByte

    Von Kaiser

  • Members
  • 68 posts

Posted 01 July 2009 - 08:38 PM

edit: When you lock a piece of gear what gems and enchants does the app decide to use? There is no display for this information.


When you lock a piece of gear you lock just that - a piece of gear. The app will still assume all gems slots and enchants, including those applying to that piece of gear, are free to be recalculated. You can lock any enchantments you wish, but you cannot lock any gem other than the meta.

#10 supplicium

supplicium

    Don Flamenco

  • Members
  • 294 posts

Posted 01 July 2009 - 09:15 PM

For the love of god, a white list would be lovely vs a blacklist. I'd much rather pick through a HUGE list and select the items I want than go through and eliminate 100's of items.

Also add a setting for alliance hitcap/vs horde (10/13% vs 11/14%)

Oh 1 last edit, Working just great in win7.

The character linked in your profile appears to be below level 10. This may account for your poor Patchwerk DPS.


#11 Cohren

Cohren

    Von Kaiser

  • Members
  • 98 posts

Posted 01 July 2009 - 11:18 PM

I think something that needs to be added would be something for professions. Being a Jewelcrafter would affect the results. I also think there needs to be a way to filter gems because at BiS gear levels gemming for hit is not a good thing.

Another thing I noticed was when I put in 342 hit rating even if I checked off force hit rating, it still calculated the gear with 350 hit.

Overall I like the functionality and the ease to use it. I look forward to tracking the development.

#12 supplicium

supplicium

    Don Flamenco

  • Members
  • 294 posts

Posted 02 July 2009 - 01:12 AM

I think something that needs to be added would be something for professions. Being a Jewelcrafter would affect the results. I also think there needs to be a way to filter gems because at BiS gear levels gemming for hit is not a good thing.

Another thing I noticed was when I put in 342 hit rating even if I checked off force hit rating, it still calculated the gear with 350 hit.

Overall I like the functionality and the ease to use it. I look forward to tracking the development.


The idea that gemming for hit is a BAD idea gets to be a worse and worse idea the better your gear gets. The penalty for switching a single gem can be far less than switching a piece of gear.

Like a is often the best gem to use for your shoulders (t8.5). While using a 100% hit gem is often flawed, partial hit gems aren't always bad. Though the idea of using anything outside of these gems is a bad idea.




The character linked in your profile appears to be below level 10. This may account for your poor Patchwerk DPS.


#13 FalseMyrmidon

FalseMyrmidon

    Don Flamenco

  • Members
  • 452 posts

Posted 02 July 2009 - 02:30 AM

Couple of bugs:
It doesn't seem to be taking hit from socket bonuses into consideration. Also, I have a gear configuration where it slotted a Veiled Monarch Topaz and I don't know why since the gear profile is over the hit target even without it.

Screenshot of said gear profile:
http://xs141.xs.to/x...optigear750.jpg

That screenshot also shows it not recognizing the +4 hit from the shoulders.

#14 VenomByte

VenomByte

    Von Kaiser

  • Members
  • 68 posts

Posted 02 July 2009 - 08:48 AM

Okay, I've now uploaded a new version. Two bug fixes and one added feature

v0.62
- Fixed socket hit bonus for items not being included (note: socket hit bonus may not currently show up, but is included)
- Fixed pruning error in initial gemming process
- Added ability to include/exclude all items

#15 mecho

mecho

    Glass Joe

  • Members
  • 1 posts

Posted 02 July 2009 - 09:00 AM

Good job VenomByte, thanks.
Is it possible to link items to some wow item database (tooltips) and sort them by slots (head, neck, etc.)?
Then I think, it would be perfect.

#16 VenomByte

VenomByte

    Von Kaiser

  • Members
  • 68 posts

Posted 02 July 2009 - 09:03 AM

I think something that needs to be added would be something for professions. Being a Jewelcrafter would affect the results. I also think there needs to be a way to filter gems because at BiS gear levels gemming for hit is not a good thing.

Another thing I noticed was when I put in 342 hit rating even if I checked off force hit rating, it still calculated the gear with 350 hit.

Overall I like the functionality and the ease to use it. I look forward to tracking the development.


Something for professions is on my 'to do' list. Blacksmithing is trivial, but Jewelcrafting is another matter. Having up to three prismatic gems adds a large amount of complexity to the algorithm. I am not sure whether there is much value in doing this when JC gems will lose their prismatic advantages in the next patch anyway. Professions aren't high up the priority list just yet for this reason.

As for filtering ordinary gems, I see no real value in this. Gems are cheap and readily available. If you believe the ones the program is telling you to use are not optimal and could be better replaced by different gear selections, then you should raise the issue and I will investigate whether there is a bug in the system. The program should be returning you the most efficient way to reach the hit cap, regardless of what part of that comes from gear and what part from gems.

EDIT:
Further on gems, I wonder if it might be worth challenging the assumption that
* [Runed Scarlet Ruby]
* [Reckless Monarch Topaz]
* [Veiled Monarch Topaz]
* [Purified Twilight Opal]
are the only worthwhile gems.

If you run the app with the default affliction settings, with head slot locked to 'Enamored Cowl', you will see it gemmed with a Shining Forest Emerald - Item - World of Warcraft. This fills 1 blue gem towards the meta requirement, as well as completing the +9sp yellow socket bonus and giving the last few hit points needed to get over the cap. I cannot be 100% sure the calculation was bug free, but logically I can't fault the decision to put a green gem there. This is admittedly a rare situation, but one worth considering.

Thoughts?

#17 VenomByte

VenomByte

    Von Kaiser

  • Members
  • 68 posts

Posted 02 July 2009 - 09:57 AM

A few more fixes:

v0.63 - 2/7/09
- Fixed bug where gems assigned to locked items would not be displayed
- Compacted layout slightly
- Prevented crash when clicking on an link with no item assigned
- Added labels to the left of items so you can more clearly see what slot it is for
- Prevented app becoming disabled when invalid weight data was input

#18 Troffel

Troffel

    Von Kaiser

  • Members
  • 53 posts

Posted 02 July 2009 - 11:20 AM

Stone me to death, but I have to say, that the method of gear optimisation is wrong.

Even if it became widely accepted: You can not use linear weights to value the items and use this linear function as a objective function for BiS-items.

If you take the dps of a tank'n'spank fight over 3 minutes as the objective function, the function is neither linear nor multilinear.

Even if all other stats are fixed, the change of one stat is only linear for spell power.

The reason that the objective function is not linear, if the other stats are fixed:

hit rating: The cap
crit rating: The cap and mechanics: pyroclasm
haste rating: The gcd cap and spell cooldowns.

The cooldowns of chaos bolt and conflagrate make the objective function looks like a "step function".

After this criticism I want to indicate a method how to get a proper best equipment set:

  • Choose a concrete talent spec, number of T-items and type of fight
  • Generate a statistical model
  • Estimate the parameters of the model
  • Verify that the resulting concrete model is proper. If not, go back to step 2
  • Derive the objective function
  • Use as the search space all possible item combinations of gear and do a brute force search over the whole space to maximise the objective function

Beware: If you change something of step 1, you have to do the whole method again.

#19 khel

khel

    Piston Honda

  • Members
  • 220 posts

Posted 02 July 2009 - 11:24 AM

Wouldn't it be fairly easy to make this applicable to any class? With decent estimates for set bonus dps values, and allowing the user to enter in stat values themselves, I would love to use this for my moonkin, but the tier gear messes it up right now.

#20 Rakzul

Rakzul

    Glass Joe

  • Members
  • 1 posts

Posted 02 July 2009 - 11:46 AM

There seems to be a bug in the process of gemming to match the meta requirement. In screenshot 1 below you can see that the application chose to gem 3 Purified Twilight Opal's, and specifically one into a red socket in the head piece. Gemming a Runed Scarlet Ruby into this slot would yield more DPS with the given weights, since the meta is still activated by the two other blue gems. Locking the "No Meta Gem" option for the head piece correctly converts the Purified Twilight Opal into a Runed Scarlet Ruby as can be seen in screenshot 2.

(1): http://img525.images.../5918/opti1.jpg
(2): http://img20.imagesh.../6641/opti2.jpg




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users