Differences between Upgrade List and Optimize.

Topics: Rawr.Base.Optimizer
Apr 6, 2009 at 3:41 AM
I noticed Build Upgrade List will suggest an item at the top that does not match the top item in Optimize. 

Is that because Build Upgrade List reports overall score and Optimize breaks it down to Overall, DPS, etc.? 

Is it because the model results stay in memory and multiple runs will potentially be different?

Is it because they have two different code bases?

If they are indeed the same code base, why keep them separate? (you could ask at the end of the run if you want to equip the top items).

TY!
Brian
Coordinator
Apr 6, 2009 at 4:24 AM
I don't understand what you're asking. Upgrade Lists and Optimizations are different things. Build Upgrade List uses the Optimizer (many many many times), and they do share common code. (Build Upgrade List is the same as Optimize, just run once for each potential upgrade)

Optimization is never guaranteed, results do vary sometimes, from one Optimization to the next. That's what the thoroughness slider is for. The higher the thoroughness, the harder it will look for better solutions. It's very likely to find the best solution, even at low thoroughness, and extremely likely at high thoroughness, but it's never guaranteed. 

Regardless of all that, there's no 'top' item in Optimization, so I don't know what you're comparing to.
Apr 6, 2009 at 11:55 AM
Edited Apr 6, 2009 at 12:05 PM

 - there's no 'top' item in Optimization, so I don't know what you're comparing to.

At the end Optimize asks ..."Would you like to equip the optimized gear?".  You answer yes and you get the "top", or "best" item equipped in each slot.
When you build an Upgrade List, you get multiple items for each slot sorted by Overall score.... the highest score for each slot is the "top", or "best" item in each slot.

Those "top" items don't always match... should they?

Build Upgrade List reports overall score... why doesn't it also report DPS, threat, mitigation, etc.?

I always run at the highest thoroughness, with about 5 to 10 items for each slot checked.

TY!
Brian
Developer
Apr 6, 2009 at 3:23 PM
No of course they won't.

The top individual item in each slot doesn't necessarily mean that if you take the top item in each slot you have the best gear. There would be zero need for the optimiser if that was the case. For instance. Lets say you are 20 points shy of the hit cap for your class. The top item in each slot might have extra 20 hit rating, however if you equipped them all you could be massively over the hit cap. So simply equipping the best item per slot won't give you the best gear.

This is the fundamental flaw of EP values. Getting a fixed EP value for each item is great and shows you how good items are relative to each other but it CANNOT show you how good the overall combination is. Rawr on the other hand CAN work out if you swap around lots of different pieces which combination of gear gives best results. This is why the best way of working with Rawr, is maintaining a set of gear then clicking to add a new item to the mix and have Rawr play around with the combinations to work out what works best trying to max out all the caps.
Apr 6, 2009 at 10:20 PM
Edited Apr 6, 2009 at 10:23 PM
Ok, so you're saying the build upgrade list does NOT use hit caps, etc., so it's only upgrading pieces individually with no consideration of other gear?  So Upgrade List is just a guide then, and the Optimizer does all the good stuff and shows you the ultimate combination of gear using items marked available.

My goodness... I can almost join Mensa, and I develop and sell software on the side, my day job is a Data Analyst, and for the life of me I can't understand the pieces of this product and how they fit together, and if I do finally understand it it's after days or weeks of back and forth and pouring over all these messages and responses. 

It means I'm either over-the-hill at 40 something, or you gals/guys have to do some serious work if you want Rawr to be accepted into the mainstream..  You need to simplify the client facing GUI, but leave the good technical stuff just under the hood to satisfy the hard core users.

I want to know for my level of play and where I like to play, what's the best out there for each slot and where do I go to get it.  Once I obtain each piece I want to know how to enchant and gem it.  I have yet to hear clear acknowledgement that it's acceptable to use Rawr for this purpose (granted a developer has expressed something similar, so it's a step in the right direction:)... I keep getting told it's only useful for gear I already have, oh and don't ever select more that a few items in each slot... for what reason who can guess, but it's getting very vague and unsettling.

This Rawr developer community that I've been sending money too lately is doing good work.. good TECHNICAL work.. you need communication help on a major scale.. clear text listing the differences between the major reports... Comparison, Build Upgrade List, Optimizer, etc..  If there's a limit to how many items the Optimizer can handle before giving bad results... suck it up and tell us!

I set my filter to only show items in places I play... if I'm not supposed to use Optimizer on that list of gear then Rawr is not the tool for me, period.  I'll take 10 minutes or so and left-click each item, because the developers don't want to include a select all button.  Why is that?  Wouldn't it save users like myself time and frustration?  If there's a limit to how many items Rawr can handle then advertise that number and don't let the select all button go beyond that and put a warning up to the user.

Anyway, I'll relax and keep using the upgrade list to GENERALLY tell me what items to acquire.  When I get one, I'll run Optimizer on full thoroughness with just that item selected along with my equipped items and see if the Optimizer wants to equip it on me.  Out of all the scenarios I've thrown out there, maybe THAT's the way I can be using this program to do what I want?

Sorry for the tone, it's just frustration coming though... like I said I support this product and use it... I just want clarity on what it does.

Best to you,
Brian
Coordinator
Apr 6, 2009 at 10:54 PM
I have asked before, I'll ask again. Have you read http://rawr.codeplex.com/Wiki/View.aspx?title=GearOptimization ?

Build upgrade list uses all the same thing as optimizer, including hit caps etc. Upgrade value of an item as defined for upgrade list is as follows:

value of (best possible gear set constructed from available gear + a new item) - value of (best possible gear set constructed from available gear).

It basically means if you add that item to your available gear set how much you can improve your value. This also means that upgrade list will only consider adding one item to your available set at a time. It won't see that if you got 3 new items you might be able to get an improvement even if adding just any one of them would not. If what you want to do is find best in slot items out of all possible gear in game then do as the wiki says. Mark top few items in each slot as available and run optimizer to find best in slot items. Just understand that they are best in slot only when you have all of them, if you're missing one of them there might be other items that give better results.

There is no technical limit to selecting all items for optimization other than it would take days to get any result out of it. We don't think users want to wait that long.

Apr 6, 2009 at 11:12 PM
Edited Apr 6, 2009 at 11:13 PM
I understand bhersey's frustration as I share it as well.  There's also some overloaded terms, such as "Upgrade list."  Is this the "Build Upgrade List" button on the Optimize dialog, or the Direct Upgrades list on the menu?  I would guess that you mean the former, but then you talk about how it's the "best possible gear set constructed from available gear + a new item" but that's not what that button does when I run it.  Instead, it shows you what *combinations* of upgrades are an improvement.  So while it might say that swapping out your gloves would upgrade you X points, it means you'd also have to aquire chest A and wrist B (which Imay not have marked for optimization).
Apr 7, 2009 at 12:30 AM
Yes I've read it many times, and viewed the video a couple times as well. 

I don't understand why the Optimizer's Build Upgrade List has items that I didn't mark.

You said... "If what you want to do is find best in slot items out of all possible gear in game".  I've never said that... nobody is able to spell out how to get what I want. 

I realize Optimize finds the best set.. it finds it, then equips it.  Once again, I mark as available all items that I could aquire, given where I'm playing.  No problem with Optimizer.. I select my hundred+ items, select max thoroughness and then equip the results and save the file... that is the ultimate list to put together given where I fight and the filters I put in place. I can hang this on the wall and proudly say... "THIS IS MY ULTIMATE SET! April 2009".  Where I fight 2 months from now may change, so it's something to shoot for depending where and how I'm playing.

If I then run "Build Upgrade List" with the same item selections, it should tell me what items to generally go after that will upgrade my values UNTIL I get the ultimate set spelled out in the previous step.  If I aquire an item in the Build Upgrade List while fighting, I'll equip it and see if it improves my numbers... if not, and it's not an item from my Optimized list from the previous step, I'll get rid of it.  If the item DOES improve my numbers, I'll just equip it and keep going.
 
Can ANYONE ANYWHERE tell me if the last two paragraphs describe one valid scenario of using Rawr?  If it is NOT valid, instead of telling me to read something or explaining why I have it wrong, take a different approach please and tell me how Rawr can do what I want.

TY!
Brian
Coordinator
Apr 7, 2009 at 12:58 AM
The problem is that we don't really know what you want.

From what I can gather you want the following. You have your actual items that you have in game in bags and bank. Let's call this availability set A. You can call optimize on it and it will tell you how to gem/enchant it for best performance. Now you set as available top items in each slot. Let's call this availability set B. You can call optimize on it and it will give you best in slot items. Now you add these items on your shopping list. But while you're working towards that best in slot set you still don't want to miss items that are upgrade to you, but are not best in slot. For this you should use your availability set A and run build upgrade list. If an item shows on that list then it is an upgrade for you. To see how to use it you can either select Equip All from the upgrade list (the optimizer upgrade list, not direct upgrades, in general I would not suggest using direct upgrades) or add it to your availability set A and run optimize again.

Does this sound remotely what you want? If not please explain in more details what you want to achieve.
Apr 7, 2009 at 4:27 AM
Kavan, That's close enuff.. from your response and others I got privately, I can use Rawr to build my wish lists and optimize as I aquire them.  Just one difference from your response above...  I don't have gear items in my bags or bank... my availability set is built with filters based on how and where I'm currently playing.

TY and keep up the good work!
Brian 



Coordinator
Apr 7, 2009 at 5:08 AM
Edited Apr 7, 2009 at 6:15 AM
I'm absolutely sure that we can do a better job explaining what features do, but this really isn't Mensa level stuff.

Optimize is for what you DO have.
Optimize creates the best set of gear from what you already have available.

Upgrade Lists are for what you DON'T have.
Build Upgrade List creates a list of items that would be upgrades for you, and how much of an upgrade they would be. If you already have the optimal set from what you currently have available, an Upgrade List will not contain anything you already have.


I'm sure we could do a better job explaining when to use each feature, and if you have suggestions on how to do so, please do share.
Apr 7, 2009 at 5:50 AM
Brian does understand (now, at least). I think you're replying to something old or taking the wrong message out of what he had just said..

 "I can use Rawr to build my wish lists and optimize as I aquire them." would read more like "I can use Rawr to see my upgrade list, and as I acquire these items, I equip them, and optimize that newly equipped set to see if the upgrade list changes."

In a nutshell: he wanted to make a "dream set" as something to aspire to. He selected the items he has a possibility of getting for his dream set, and optimized that. He now has a Current Gear list of a "character who already has all the gear he might think he want in his bags" on hand for funsies.

Making dream sets is something a *lot* of people do, whether we like it or not. Hell, I do it with Ulduar gear. "What does a Prot Paladin with full hard mode tier 8 look like?" Is a fun part of this tool. I had to go through and select those ulduar items individually on top of my normal character, but it provided some neat information: how much health I can expect to have, my avoidance, my threat... 

It's even a testing tool. I know when I was doing some debugging, I had come across an error that would only appear on certain gear levels. How else can I easily say "Rawr, make me a character using best in slot gear from Heroics and Heroic Badges" and do that without merely selecting a bunch of stuff under a filter? Rawr also makes "smart sets" for this purpose.
Apr 7, 2009 at 5:51 AM
I replied to you in private... I'll no longer be a part of the discussions here.

Best to you Rawr developers!
Brian
Apr 7, 2009 at 6:33 AM
It looks like I have been doing things correctly, but the bug in the latest beta (the upgrade list taking multiple gear upgrades into account at once) looks like it will keep me from using it from the time being.  However, I'm glad to see I was taking the right approach.

And Astrylian:  I like your explanation -- the only thing I'd suggest is that you add an explanation of the usage of "Direct Upgrades."  I know you've put it as a explanation in that section, but what I'm thinking could improve things is having a section with use cases.  Basically, "Q: how do I do X"  -- "A: Use <this option>"
Coordinator
Apr 7, 2009 at 6:39 AM
Direct Upgrades are for what you DON'T have, when you don't want to change any of your gear, apart from swapping in the new item.
Direct Upgrades is just a comparison chart of all items, filtered to only items which are valued higher than your currently equipped item. Nothing more complex. It's a 'dumb' chart, basically.
Coordinator
Apr 7, 2009 at 7:33 AM
Also, because it's important that everyone understand, it's worth repeating:
v2.2.0b6's Build Upgrade List feature is bugged. It is not returning correct results. Please do not be confused by the odd results from b6. If you want to use the Build Upgrade List feature, please revert to v2.2.0b5.
Coordinator
Apr 7, 2009 at 8:38 AM
BHershey, and others in a similar situation, does this help explain the purposes of each feature?

Apr 7, 2009 at 9:52 AM
Astrylian, your mock up seems pretty clear to me. I think the main reason for BHershey's frustration is that he tried to use the green diamond as a "custom filter" feature.

Also regarding what you wrote above:

Optimize is for what you DO have.
Optimize creates the best set of gear from what you already have available.

Upgrade Lists are for what you DON'T have.
Build Upgrade List creates a list of items that would be upgrades for you, and how much of an upgrade they would be. If you already have the optimal set from what you currently have available, an Upgrade List will not contain anything you already have.

Direct Upgrades are for what you DON'T have, when you don't want to change any of your gear, apart from swapping in the new item.
Direct Upgrades is just a comparison chart of all items, filtered to only items which are valued higher than your currently equipped item. Nothing more complex. It's a 'dumb' chart, basically.

From this description, the difference between upgrade lists and direct upgrades is not clear to me.

My previous understanding is that direct upgrades is an upgrade list for one slot only. Is that correct? It may not, because then, I'm not sure why it's an item on the contextual menu.


Coordinator
Apr 7, 2009 at 10:45 AM
Direct upgrades is the same as normal comparison charts, it just shows all slots in one place and doesn't show items below your currently equipped item. It just swaps that item in that slot in currently equipped gear to get upgrade value.

There's two things that are different with build upgrade list. First it takes into account all gear marked as available, not just what you have currently equipped. Second it considers reenchanting and gemming combinations that direct upgrades does not.
Apr 7, 2009 at 12:58 PM
I think this is very close.  However, I would like to suggest some slight clarificiations (examples in italics below):

Upgrade Lists are for what you DON'T have.
Build Upgrade List creates a list of items that would be upgrades for you, and how much of an upgrade they would be. If you already have the optimal set from what you currently have available, an Upgrade List will not contain anything you already have.  Rawr may swap in other gear that you already have in order to optimize the set for the new item.

Direct Upgrades are for what you DON'T have, when you don't want to change any of your gear, apart from swapping in the new item.
Direct Upgrades is just a comparison chart of all items, filtered to only items which are valued higher than your currently equipped item. Nothing more complex. It's a 'dumb' chart, basically, which simply swaps in new items one at a time and displays the results.

BTW, guys -- I really appreciate your efforts to make this clearer.  You guys have worked with these concepts so much that I'm sure it's hard to view it from a newbie point of view. :)


Apr 7, 2009 at 3:55 PM
So let me see if I understand this: If I want to see the BiS gear available in the game then I can select the top items in each slot and run the optimizer, correct? But that doesn't necessarily mean that if I acquire one of the items I should equip it right away since the optimizer is only showing me the best COMBINATION of gear. If I want to outline an upgrade path to that BiS theoretical gear than I should use the Build Upgrade List feature making sure to only select items I own as available, correct?
Coordinator
Apr 7, 2009 at 5:32 PM
Edited Apr 7, 2009 at 5:34 PM
That's correct, Alcapwnd.

And dfscott, thanks very much. I'll see about where we can get that info into the app.
Developer
Apr 7, 2009 at 7:57 PM

Honestly, I think we can do a bit better still, but I think dfscott's changes are definitely useful.

Nowhere in Rawr is there a checkbox that says "I have this," or "I don't have this."  Instead, there are little green boxes with occasional red dots (feedback: colored shapes + random dots = usability 101 failure at work) which represent items "Available for Optimizer."

If "I have this" is equivalent to "Item is available for optimizer" then that needs to be made clear.  You can't switch lingo when trying to explain things to folks, it's just confusing, particularly when what you are trying to explain is confusing enough.  I'm not even a fan of the word optimize honestly.  We use it in CS often enough to talk about finding a minimal or maximal set of stuff, but honestly, it's a scary word.

Disclaimer: I am certainly not an expert in this as these are features I do not use.  (I use the optimizer, but not the upgrade lists).  This is my understanding, and please correct me if I'm wrong:

1. Optimize.  I pick a bunch of items with green or blue diamonds with optional red dots (this needs to be changed, honestly).  These are things that "I have" or I feel are within my reach.  I run the optimizer and it tells me, given that set of items, which ones to use.  This much I know and I use this part of Rawr all the time.

2. Build upgrade list.  Same as in #1, I pick a bunch of items that I either have or thing that I can get easily enough.  Now Rawr will go through the list of all the items (including those I have not selected), and, one by one, pretend I have it and then run optimize with my selected gear.  Basically it goes through all the gear and says "Well, if you did have this, and considering all the other gear in your inventory, this is the best you could do with this piece."  Then that list of items sorted by the best potential incremental score they could provide.

If my understanding of #1 and #2 is correct, I'm still baffled why nobody plainly answered Brian's question:

> I don't understand why the Optimizer's Build Upgrade List has items that I didn't mark.

Because that's exactly what the feature does.  It assumes you already have everything you've marked and tries to tell you what gear you should go after next.  Rawr assumes you've got your ultimate set already and shows you how to make it better still.  It also tells you if you could do a better job with the gear you currently have.

As for the features themselves & my opinions:

I do use the optimizer regularly and am glad it's there, but...

That being said, my frustration using the optimizer and the upgrade list is that I never know what the heck it did.  I run the optimizer and it tells me it found 100 more points for me.  I'm thrilled.  Now I have to go through the guessing game to see what changed.  I think it needs to tell you "I replaced the gems in slot x and added an enchant in slot y and swapped out the gear in slot z."

Similarly, the "Build Upgrade List" is somewhat confusing.  I just imported my character from the armory (using b4 since b6 is supposed to be busted), and just for kicks I marked one enchant that I know to be better than mine as available...  And every piece of my gear shows up as a potential upgrade.  Only by looking at them one by one do I figure out just what combination of gems & enchants it chose and how they are different than my current setup.  And for the newbie user, if you don't set the optimization thoroughness to maximum, each one of those slots shows up with a different score.  Honestly, I think we would have lost people way before then, but if we didn't, this would be the straw that breaks the camel's back.  If you try to discuss genetic algorithms to explain why it is happening, then you may as well go have a conversation with a napkin.  Many people don't know and don't care.

So if I had to summarize:

1. Green diamonds, blue diamonds and red dots do not a friendly UI make.
2. You can't tell people that the build upgrade lists takes into consideration gear you have when I cannot see any option in Rawr to say "I have this."  "Available for Optimizer" is not "I have this."  (I realize technically they are the same, but the words are different and don't equate).
3. Optimizer finds a good set for you, but you have to guess what's good about it.  It equips it without telling you what it changed.
4. Same thing for build upgrade list.
5. Be clear:  Build upgrade list assumes you have things that you've marked and tries to find you other things you should get.  These may include things that you've marked if there is a more efficient way to use them (e.g. regemming, reenchanting, or just swapping out gear), but it will also include items that you did not mark.  They are the items you should consider saving your DKP for (or farming for, having crafted, whatever).  If you want to control what items show up in the upgrade list, do it through filters, not through diamonds.  The diamonds are there to tell it what pieces it gets to play with as it evaluates each new item as a potential upgrade.
6. As for upgrade list of low thoroughness showing your current gear with different scores...  I'm at a loss here.  I think that will be hard to explain to people.

Char

Apr 7, 2009 at 8:26 PM
Edited Apr 7, 2009 at 8:27 PM
"That being said, my frustration using the optimizer and the upgrade list is that I never know what the heck it did.  I run the optimizer and it tells me it found 100 more points for me.  I'm thrilled.  Now I have to go through the guessing game to see what changed.  I think it needs to tell you "I replaced the gems in slot x and added an enchant in slot y and swapped out the gear in slot z.""

This would be awesome. Something like a diff listing of all the changes the optimizer is proposing to your currently equipped gear. If the gear in a particular slot changes then list that change. If the gear in a slot didn't change but the gem or enchant changed then list that. Add something to the Optimizer results pop-up window like:

1. Changed Gear in Head Slot from "Spiked Titansteel Helm" to "Obsidian Greathelm". Check the new item for it's optimized gems and enchants.
2. Changed the gem in Chest Slot gear "Valorous Redemption Chestpiece" for Blue Slot 1 from "Bold Scarlet Ruby" to "Sovereign Twilight Opal".
3. Changed enchant in Main Weapon Slot for gear "Betrayer of Humanity" from "Massacre" to "Berserking"
Coordinator
Apr 7, 2009 at 10:49 PM
1. Green diamonds, blue diamonds and red dots do not a friendly UI make.
2. You can't tell people that the build upgrade lists takes into consideration gear you have when I cannot see any option in Rawr to say "I have this."  "Available for Optimizer" is not "I have this."  (I realize technically they are the same, but the words are different and don't equate).
Absolutely agree. Lets change it to something more usable. Lets just go completely clear, and change the whole "available" thing to... what? "I have this"? That doesn't sound too bad, but perhaps there's a better wording. Any suggestions? For UI, how about just a checkbox instead of the green diamond, with a column header of "I have this" or whatever? But what about the 'specific gemming/enchanting' though? Not sure how to best handle the UI for that.


3. Optimizer finds a good set for you, but you have to guess what's good about it.  It equips it without telling you what it changed.
I'd definitely like to have a summary screen at the end of the Optimizer, showing what it changed, and the resulting improvements, etc. Just haven't gotten to this yet.

4. Same thing for build upgrade list.
This is a little simpler for the Upgrade Lists. It already shows the complete list of the gear set for each item. I imagine it wouldn't be too difficult to just highlight the differences from your current gearset, in that tooltip.

5. Be clear:  Build upgrade list assumes you have things that you've marked and tries to find you other things you should get.  These may include things that you've marked if there is a more efficient way to use them (e.g. regemming, reenchanting, or just swapping out gear), but it will also include items that you did not mark.  They are the items you should consider saving your DKP for (or farming for, having crafted, whatever).  If you want to control what items show up in the upgrade list, do it through filters, not through diamonds.  The diamonds are there to tell it what pieces it gets to play with as it evaluates each new item as a potential upgrade.
Is this already covered by the "available"->"I have this" change, combined with the added descriptions (see screenshot linked above)?

6. As for upgrade list of low thoroughness showing your current gear with different scores...  I'm at a loss here.  I think that will be hard to explain to people.
Available items will show up in build upgrade lists when your current gearset isn't optimal. The calculation technically is [(value of the optimal set with that item equipped) - (value of the current set)]. If your current set isn't optimal, items in your current set will show up as upgrades. I'm not sure if we should change that. Kavan, should we perhaps change that to [(value of the optimal set with that item equipped) - (value of the current optimal set)]? Would only mean one more optimization to run, and I think it may produce more meaningful values (?). At least, could we not include upgrades which produce less of an upgrade than just optimizing the current available items?
Developer
Apr 7, 2009 at 11:37 PM

1. Green diamonds, blue diamonds and red dots do not a friendly UI make.

2. You can't tell people that the build upgrade lists takes into consideration gear you have when I cannot see any option in Rawr to say "I have this."  "Available for Optimizer" is not "I have this."  (I realize technically they are the same, but the words are different and don't equate).
> Absolutely agree. Lets change it to something more usable. Lets just go completely clear, and change the whole "available" thing to... what? "I have this"? That doesn't sound too bad, but perhaps there's a better wording. Any suggestions? For UI, how about just a checkbox instead of the green diamond, with a column header of "I have this" or whatever? But what about the 'specific gemming/enchanting' though? Not sure how to best handle the UI for that.

Yeah, let's think about this.  There's a balance between making it more usable and dumbing it too far down to be condascending.  On the other hand, let me say this:  World of Warcraft is a game.  Rawr, in a way, is an extension of that experience.  There's nothing wrong with it being a little fun and even a bit whimsical as long as it still maintains its usefulness.  Why not a dropdown with icons that make sense?  Imagine a no smoking sign (circle with line across + cigarette in the middle) but with the word "gem" instead of a cigarette.  That means don't mess with my gems.  Similar could be used for enchantments.  In fact, it could be two little checkboxes / dropdowns that are active only once you click on the "I have this item" box.
On the subject of fun, wouldn't it be cool to see a character decked in all that gear...?  (I know, I know...)  But still...  You could use Rawr to make uber kick ass gear set, or to pick the most attractive pimp outfit.  Shame there doesn't appear a way to get at the hair / color / markings of a character.  Even CharacterProfiler, that exports everything under the sun, doesn't include that.
3. Optimizer finds a good set for you, but you have to guess what's good about it.  It equips it without telling you what it changed.
> I'd definitely like to have a summary screen at the end of the Optimizer, showing what it changed, and the resulting improvements, etc. Just haven't gotten to this yet.

Well, while you're thinking about it, let me just offer one more suggestion.  It's really useful to have "before" and "after" visible somehow.  If I had to choose one feature, it would be "show me what changed."  If I could choose two, it would be "Show me what changed, from what to what."

4. Same thing for build upgrade list.
> This is a little simpler for the Upgrade Lists. It already shows the complete list of the gear set for each item. I imagine it wouldn't be too difficult to just highlight the differences from your current gearset, in that tooltip.

/agree, but same as #3.  One nitpick about the upgrade list is that the order of items rearrange because they exclude the item indicated as an upgrade.

5. Be clear:  Build upgrade list assumes you have things that you've marked and tries to find you other things you should get.  These may include things that you've marked if there is a more efficient way to use them (e.g. regemming, reenchanting, or just swapping out gear), but it will also include items that you did not mark.  They are the items you should consider saving your DKP for (or farming for, having crafted, whatever).  If you want to control what items show up in the upgrade list, do it through filters, not through diamonds.  The diamonds are there to tell it what pieces it gets to play with as it evaluates each new item as a potential upgrade.
> Is this already covered by the "available"->"I have this" change, combined with the added descriptions (see screenshot linked above)

It's definitely a vast improement over what we have now.  My criticism about that screen shot is that it's getting a bit busy and there's a whole lot to read.    I just hope that isn't too scary.  As a more general comment, some of Rawr's most powerful features (specifically the optimizer & batch tools) are hidden in menus and are not first class citizens.  I only joined up after both features were already in Rawr, but I'll go out on a limb and guess that they came out after the initial version of Rawr and were tacked on.  How about an extra tab for optimizer options (THAT CAN BE SAVED WITH YOUR CHARACTER FILE!!!), and actually put the optimize button & upgrade list right on the main screen?  After all, here I am presented with a list of gear choices, why not have a button to help me make the best decision?  Tooltips can go a long way to clarifying stuff without bombarding a user with volumes text on a single screen.

6. As for upgrade list of low thoroughness showing your current gear with different scores...  I'm at a loss here.  I think that will be hard to explain to people.
Available items will show up in build upgrade lists when your current gearset isn't optimal. The calculation technically is [(value of the optimal set with that item equipped) - (value of the current set)]. If your current set isn't optimal, items in your current set will show up as upgrades. I'm not sure if we should change that. Kavan, should we perhaps change that to [(value of the optimal set with that item equipped) - (value of the current optimal set)]? Would only mean one more optimization to run, and I think it may produce more meaningful values (?). At least, could we not include upgrades which produce less of an upgrade than just optimizing the current available items?

I think you misunderstood me here.  I understand fully what is happening and why, but I have no idea how to explain that to someone who does not "belong to mensa."  And unfortuately, Kavan will tell you that there's no such thing as an optimal set :(  Just repeat my experiment -- open up a character from the armory, select one enhancement (e.g. a better enchant), and build upgrade list with max thoroughness.  Even in that case the scores are not identical.  They're pretty close, but not exactly the same.  If you do it with medium optimization settings, then they are all over the place.

If you want to see this in action, just pull my character up (Charinna @ Shadowsong), wait till you're done laughing at my meager gear, switch to weapon enchants, green diamond berserking, and the build upgrade lists with maximum thoroughness.  I would expect all of my items to show up with the exact same score, but they don't.  This is tricky to explain to people.  Now if you reduce the thoroughness to the mid-level (which is Rawr's default), the point spread becomes even bigger.

I'm not proposing we change it, but it's just a sad inconsistency that I'm guessing will confuse some people sometime if we do a good job of explaining these features to folks.

Char
p.s. Also, on the subject of usability, please please make "File->Open" work with batch files!  Instead you get an error that is wrong.
Coordinator
Apr 7, 2009 at 11:50 PM
Meaning of diamonds is not "I have this". The correct meaning is "Available for Optimizer". "I have this" is one possible interpretation for it, but it is not the only valid one.
Developer
Apr 8, 2009 at 12:11 AM
Of course, and I think we all know this.  But "Available for Optimizer," despite its meaning, is probably meaningless to many people

This is exactly the problem.

Char
Developer
Apr 8, 2009 at 12:36 AM
This is a REALLY helpful discussion I must say I've learnt a lot about the design intent of Rawr from reading this one thread.

When I started as a Rawr.Enhance developer I was working blind, struggling to work out how it all hung together, Astrylian was very helpful on MSN to clear up some things, and I learnt by picking apart how other models tackled stuff. However many aspects just looked daunting and it wasn't at all clear what they were or how to use them. The Optimiser and the Batch tools, I now appreciate are core tools in Rawr design, I genuinely had no real clue as to what they were and how to use them properly until I saw the video. It is perhaps unsurprising therefore that so many other users share this lack of knowledge.

I would recommend that we include a few more videos to explain various Rawr features and that the program has a few extra buttons/links at relevant places that launch the videos in your browser. It might be an idea to have a "new user" flag with helpful video links, so if you are flagged as a new user for the first time you use a feature you could get a popup saying "Would you like to view a video on how to use this feature?". You basically have a list of new features and associated videos and flag them as seen, or ticking a don't tell me about this again box.

On trying out the current code with the optimiser one thing that struck me was that after I said yes to accept the new list of gear, Rawr at that point has _character & BestCharacter variables with two sets of gear and just overwrites the _character with the best gear. This is fine and works but it would be useful if it was possible to get a list of what was actually changed. At present you have to mouse over everthing and try to recall what exactly was there before. In the end I resorted to saving the two files and comparing them that way.

I feel it would be a useful addition to have a popup form once you accept the change that showed what was changed. I'm not exactly sure from the code but would FormUpgradeComparison be compatible with this desire for an output form? Please understand I'm not suggesting I code anything at this stage as I'm still not comfortable I understand how this works so I plan to leave well alone.

I do however note that the main model uses a Genetic Algorithm, something I know only a little about however my best mate is a lecturer in Computing whose specialist subject is Genetic Algorithms, he has written a book on the subject and several academic papers that he has had accepted to international conferences on GA programming. He does play WoW with myself on a regular basis and could be persuaded to have a look at the code if there is any specific issues that would be interesting to investigate. His interest was piqued when I mentioned that Rawr used a GA.
Coordinator
Apr 8, 2009 at 1:58 AM
If only we could explain things this well to all users, concisely... 

We'd need a new form to display the before vs after and changes of the Optimizer. I'd love to do it, I just don't have time at the moment.

I don't know about a 'new user flag', but just a flag of whether they've visited each feature before, and offering a video when they first visit a feature could be good. 

I'll try to make more videos, they just take time from both of us, which neither of us have at the moment. Won't be before 3.1, for certain.


I'm kinda torn about "Available" vs "I have"... "I have" is the meaning we want it to have for most users. I think the more advanced users will understand that they can 'pretend' they have stuff. If we want to be more verbose, how about "Character Has This"?


Perhaps instead of a checkbox, we could just have a small dropdown, of "Character has this (any gemming/enchanting)", "Character has this gemming", "Character has this enchanting", "Character has this enchanting/gemming"? Seems really verbose, but perhaps something down that path?
Coordinator
Apr 8, 2009 at 2:06 AM
I think "Character has this" is a good compromise. The main concern I have with "I have this" is that it will confuse users that want to use optimizer for best in slot sets and from my experience it seems a lot of users want to do that.
Coordinator
Apr 8, 2009 at 2:12 AM
Perhaps we need a 3rd action in the Optimizer window... "Find Best-In-Slot Set", which would find the best set of all items not currently filtered out?
Coordinator
Apr 8, 2009 at 2:17 AM
That is not a bad idea. It would also help all users that are trying to mark everything as available by doing it the right way.
Coordinator
Apr 8, 2009 at 2:19 AM
Yeah, it pretty much removes the reason that people perceive have for doing it the wrong way.
Developer
Apr 8, 2009 at 3:54 AM
Also, as far as "I have," it doesn't literally need to read that.

However the checkbox reads, it should be clear the relationship between those items selected, the optimizer, and the upgrade list.

Char
Developer
Apr 8, 2009 at 9:39 AM
At the point where Rawr's optimiser indicates its finished and offers to equip the new set, it has both old and new sets as complete item lists. Writing a small loop to create a difference set would be relatively easy and something I'd be happy to put in time with. What I'm not sure about is whether this needs a new form to display the changes? Whether this form could simply be a report style? Whether the existing FormUpgradeComparison could be used by just supplying it with an ItemInstance array of changed items?

I was thinking that the simplest would be generating a webpage style report with a list of changes. eg: two columns old and new. To tart it up it could use wowhead.com style mouseovers as is used in lots and lots of sites (its a bit of Javascript that could just sit as a file in the Rawr resources directory or similar location). My skills lie in the creation of the data for the form and upto basic functionality of displaying it and adding the wowhead mouseover functionality. Making it look cool is a design issue and needs someone who understands colours and layout. I'm happy to do the coding for the report though if that would be helpful.

If so I'd propose that I create a new FormWebReport (so it could be used generically for any other reports we might want at a later date) and simply populate it with the html layout of the changed data as described above.
Coordinator
Apr 8, 2009 at 12:45 PM
Err... No? Heh, no. Nothing should be web-based or html-based. :)

Yes, it needs to be a new form, FormUpgradeComparison will not work.

I'd say for now (until I or another winforms dev can design the form), just enhance the messagebox that's there.

"The Optimizer has found a gearset with a score of {0}.
Your currently equipped gearset has a score of {1}.

This involves the following changes:
{Slot}: Changed {OldItem} with {OldGem1}+{OldGem2}+{OldGem3}+{OldEnchant}
 to {NewItem} with {NewGem1}+{NewGem2}+{NewGem3}+{NewEnchant}
{Slot}: Changed {OldItem} with {OldGem1}+{OldGem2}+{OldGem3}+{OldEnchant}
 to {NewItem} with {NewGem1}+{NewGem2}+{NewGem3}+{NewEnchant}
{Slot}: Changed {OldItem} with {OldGem1}+{OldGem2}+{OldGem3}+{OldEnchant}
 to {NewItem} with {NewGem1}+{NewGem2}+{NewGem3}+{NewEnchant}

Would you like to equip the new gearset?"

Sure, it's ugly, but it gets the data across, and when we have time we'll build a snazzy form for it with icons and tooltips and such.
Developer
Apr 8, 2009 at 2:10 PM
Edited Apr 8, 2009 at 3:46 PM
Ah ok, if its not to be HTML based then I cannot assist. Not really the best person to be building a win form. Shame as with HTML you can of course be very very creative far beyond what's possible on a winform, hence the worldwide move to web based apps. I'm not really sure where your objection to html is, however I respect you have a reason for it. I'm sure someone might take it up at some point in the future, it's just not at all my skill set, so unfortunately it won't be me.

I suppose I could commit the text comparison stuff though.
Developer
Apr 8, 2009 at 3:45 PM
Changes committed. The OptimizerResults class at present contains one method to output a string with the results formatted as you described. Obviously this could be extended to return specific differences or item lists or however the results form (to be implemented) needs the data.
Apr 8, 2009 at 4:06 PM
I think just a simple checkbox with the vernacular "Character Has This Item", and the new optimizer mode to find BIS gear set will be the best for our users. To support ability to select only a certain gemming/enchanting we can use the right click drop down we have now for selecting enchants, but add gemming options to it.

I might be able to make the better comparison form, I'll give a shot at it soon and see how it goes.