 |
10/08/10, 5:28 PM
|
#1
|
|
Mike Tyson
Night Elf Rogue
Doomhammer
|
Spreadsheets: The Next Generation
With Cataclysm just around the corner and 3.x content winding down, we're rapidly approaching a time where the next generation of spreadsheets/simulators/modeling programs/etc. will need to be written - all the existing ones are sufficiently tied to 3.x mechanics that they will need - at the very least - major revisions to remain useful. Hence, I think this is a good time to discuss two major topics regarding these tools.
Note: I'm going to use the term "spreadsheet" hereafter, but this isn't designed to exclude projects like Rawr or iDPS; its simply a whole heckofalot shorter to type "spreadsheet" than to list "spreadsheet/calculator/simulator/modeling tool/etc." every time.
Before I being, I'd like to make a distinction. A typical spreadsheet actually has 3 major components: - Input - A means of entering your gear, gems, enchants, reforges, talents, buffs, and preferences into the sheet.
- Damage Calculator - A way of distilling the information in the first part down to a DPS estimate.
- Output - Something that takes the results of the damage calculator and presents them in a useful fashion. This usually takes the form of gear comparison (sometimes using EP, as in my spreadsheet; sometimes not, as, for instance, Rawr does), but could include other things as well (cycle comparisons, talent point valuations, etc.)
Now, usually, these are all baked into a single tool for a variety of reasons that I won't get into; but fundamentally, there's no real reason that has to be the case. You could theoretically take Mavanas's or Vulajin's sheet and attach the gear selection and recommendation page from my sheet onto it. It'd be a lot of work and you'd need to make some minor adjustments here and there - there are certainly reasons it hasn't been done - but I think it is useful to think about the problem this way. To see why, consider the problem of Rawr - it historically has really had no real rogue modeling in it (though that's started to change recently). Part 2 was missing - so it was useless. But that doesn't necessarily mean that parts 1 or 3 are bad, and hence we can look at them and see what we do and don't like about them, setting aside for the moment that the whole thing doesn't actually work.
Spreadsheet Design
With this in mind, lets discuss for a minute what we do and don't like about the various spreadsheets that have existed. We've seen quite a bit of diversity in spreadsheet design over the last couple of years - just off the top of my head, we've had:
Rawr
iDPS
My spreadsheets
Vulajin's spreadsheet
Mavanas's simulator
Simulationcraft
and possibly one or two others that I'm forgetting. And these exhibit a wide variety of designs and features - some of which are good, and some of which are not. Hence, the questions I'd like to consider - with particular consideration to pieces 1 and 3 above - are:
a) Which aspect(s) of these sheets do you particularly like?
b) Which aspect(s) of these sheets do you particularly dislike?
c) Are there any features you've seen in tools from other classes that you'd like to see included in rogue sheets?
That is: set aside which sheets are or aren't the most accurate for a moment and ask: assuming all gave perfect answers, which one(s) would you be using, and why? Which one does a good job of allowing you to enter gear? Which gives the most useful information in terms of answering the questions that brought you to the sheet in the first place? Do you prefer to be able to enter your cycle, or should the sheet calculate it for you? If you could change one thing about one of the sheets above, what would it be? Do people prefer spreadsheets, or standalone programs? What do people think of the notion of a webapp? How about an in-game mod?
Basically: we're probably going to be building some new tools completely from scratch over the coming weeks and months. This is your chance to request from the authors of those tools what features you'd like to see. Tell us what your ideal sheet would look like.
Spreadsheet Writing
The other point I'd like to talk a little bit about is the actual process of writing the stupid things, and in particular see if there is interest in developing some tools collaboratively. That is: my sense is that there are probably a number of you reading this who have thought at one time or another that it would be fun/interesting/whatever to work on a sheet, or looked at something one of the existing authors is doing and said "well *I* could do better than that". And here's your chance.
See, personally, my interest - and my strength - is in part 2. Oh, I write the other parts of the sheet because they're necessary, and I put a fair amount of time in them because I think they're important... but really, its not what I'm good at. And since my time to work on such projects is going to be limited in ways that it hasn't been in the past, what I've started to wonder is: would it make sense for me to work entirely on the modeling component, and let other people write the other pieces? And are there people out there that would be interested in doing so? And it occurs to me that I'm probably not the only person in this position. So it seems like it might be worth seeing how many people there are who might be working on part - but not necessarily all - of a spreadsheet (or modeling program of another sort - again, it doesn't need to be written in Excel), such that the people interesting in writing one part of a sheet can meet up with the people interesting in writing the other parts, hopefully resulting in us getting more better sheets faster.
So if you're interested in working on a sheet - seriously interested, and willing to put significant time in (this isn't something you can do on an hour a week) and really own a piece of it, and really feel like you'd be good at it, feel free to post in this thread and let us know what parts you're interested in working on, any restrictions on what you're willing to work on (i.e., if you're interested in doing a webapp but not a spreadsheet, or vice versa), and any other information you think might be helpful. And if you see someone interested in working on something that would complement what you're interested in working on, feel free to contact them to try to set something up. I'm not trying to force anyone to work with anyone they don't want to, I'm just interested in seeing if there are people interested in working together to try to get a couple of decent tools going, and seeing if we can do it a bit faster than we did at the start of Wrath.
|
|
|
|
|
10/08/10, 6:14 PM
|
#2
|
|
Bald Bull
Night Elf Rogue
Wrathbringer (EU)
|
This is maybe the right place to post my addition to Aldriana's sheet, which I've used to set up my "loot plan". A thing that that's really been missing since Vulajin's gear update macro in my opinion.
I haven't published it because it requires some user mumbo jumbo to work correctly which I never was really happy about, but it was an invaluable tool for me to check out the different loot options I have and to plan my gear.
(And I didn't really want to give support for it.)
The way it works is that it uses the "Gear" sheet of Aldriana's sheet to determine a loot rank for the different pieces of gear, much like WoWHead or Lootrank does, which however didn't have these information as concise as I needed them.
It's really just another way to present already present data (with some additions to where exactly a piece drops, which is mainly just a mindless task to enter),
Also it uses no macros and *should* also work on OO.
Maybe some of the spreadsheet (or whatever) writers can extract some ideas out of it.
As for real ideas, I don't know. Reforging would have to be added in some really intuitive way, maybe even with a recommendation if a piece should be reforgerd, and into what.
Also while I see the obvious advantages of a web based application, I have not yet seen any that has surpassed an excel sheet. Most times they're just too tedious to fill with data, to slow, or both. Also you cannot really reconstruct how they calculate their DPS, so bug fixing and model adaption is somewhat slower.
A combination of both would be ideal I assume, best of both worlds, but I cannot see this happen anytime soon.
Excel is too unflexible when it comes to database functions and simulations, and web applications aren't that sophisticated just yet.
|
|
|
|
10/08/10, 6:20 PM
|
#3
|
|
Piston Honda
|
Out of the various sheets I've used between my rogue and my druid, Aldriana's sheet and Rawr seem to have the best setups, though each has a few aspects that can occasionally be annoying. In Aldriana's sheet, the general setup seems to work well, and adding new gear is relatively simple, but with the rotations hardcoded in, as well as the poison setups, it makes it a bit difficult to check things like whether Rupture was worthwhile after they added the ability for it to crit, or what effect needing to switch to wound poison due to fight mechanics would have. Rawr I've only ever really used for my feral druid, but tools such as the optimizer are nice, as it let's you test multiple possibilities in terms of gear changes at once, the user interface is fairly simple to use, and the ability to define a custom rotation and compare it to a standard rotation is built in to the program. Changing the gemming of pieces is not as straightforward in Rawr as it is in Aldriana's sheet, however, and it tends to be much more resource intensive than the Excel-based spreadsheets, especially in the online version.
|
|
|
|
|
10/08/10, 6:24 PM
|
#4
|
|
Piston Honda
Goblin Rogue
Black Dragonflight
|
If I had to choose one "spreadsheet" to use, it'd probably be iDPS.
It's very simple to switch around gear & gems & enchants etc. Interface is very clean and simple as well, recommendations on a list with how much of an upgrade it is. Has different profiles so you don't need different copies of a spreadsheet just to test another spec/gearset/etc.
The one thing that isn't as good is in its ability to add/modify items, mechanics, etc. on your own as opposed to spreadsheets where you can easily modify them yourself.
As for simulations, I feel that they're too slow. Being a shaman in BC and having to do hours of simulation just to find if one piece was just a little bit better than another in a specific gearset was just too annoying even if I left it running while going to school/work.
So basically what I think would be the best tool would probably be iDPS with an easier way to add/change items/mechanics. Actually now that I think about it, that sounds almost like Rawr except the easier to use interface >_>. So if Rawr could somehow get caught up to speed with the current mechanics it would probably be most useful all-around.
|
|
|
|
|
10/08/10, 6:37 PM
|
#5
|
|
Von Kaiser
|
Given my druthers, here's some of the things I'd love to see:
Whatever tool is available, I'd prefer it to be available offline. I'm guessing that I'm not the only one who uses free time to do their modeling. An in-game option would also be dandy, but the offline version would be a requirement for me. Making it web-based would allow you to bypass issues with using Excel, OpenOffice, or installing specific programming applications to run the tool. It would add the requirement of testing across browser platforms (or unifying to specific browser(s)) to ensure that it would work with IE, Mozilla, Chrome, Opera, etc.
I'd strongly like to encourage the development of a modeling tool which allows for automatic import of gearsets (via armory or another source) into the tool. Additionally, a means of exporting current gearsets (to bridge version changes or link for analysis) would be handy.
For the data modeling component, I'm sure that the great minds will find a method to work through proper modeling methodology to implement into the framework developed. I'd say that accuracy (sometimes after bugfixes) has been pretty good with the different models. Some may be more refined than others, but all can be used to generically see if you're heading the right direction with DPS/rotations.
As for the rotation being defined by gear or being user specified, my vote would be to let the gear determine rotation. If it's easy to implement a drop-down box to select rotation---go for it! But I'll generally change my rotation (as my gear dictates) to optimize output. I feel that most of the people using these sheets are similarly trying to min/max within reason.
|
|
|
|
|
10/08/10, 6:43 PM
|
#6
|
|
Piston Honda
|
Things I feel must be in any of the "sheets":
Accessibility. The need for MS Excel or a similar program I would need to beg, borrow or steal to be able to use a spreadsheet is something that is counter-productive and excludes a fair amount of people. OpenOffice is the exception because anyone can get it.
User-friendly interface. While this is open to an individuals perspective, being able to add/edit/swap a piece of gear without an extensive knowledge of the program allows for much more freedom and less reliance on the author to update the sheet. As well as gem placement, enchants, and profession perks being easy to assign.
Plain language - Don't assume that everyone knows the difference between RS and RvS or the cap for expertise is 200. While spreadsheets have been the domain of the more knowledgeable players, the goal is to make all rogues better, so making things clear in the sheet (even some of the more obvious ones) will go a long way to improve the game of any rogue that has made the first step to be better and decided to pursue spreadsheets.
Wants but not essentials:
Stat stacking. Akin to how outfitter allows you to build a set with the maximum amount of a given stat by looking at your gear in your bags. This could also affect gem and enchant selection to point of pressing a button to see if stacking an amount of a stat would be beneficial without manually changing every single gem/enchant on your gear.
Notes. A simple area for notes, nothing fancy, but as a person who barely knows how to work with the program, having a spot to just mark a dps point before changing gear to see if 3 steps down the road it will be better would be nice instead of a piece of paper.
One sheet, 3 specs. Compiling the models for all three specs (or more) in one sheet where I could have a tab for each would be nice.
Wishlist, probably won't happen but that's why it's a wishlist
In-game spreadsheet. Something akin to pawn or drdamage but using the established values the spreadsheets we use outside the game use. I've tried to use our EP values this way in pawn but again my proficiency with the addon left me questioning the results. The new interface does have some basic theorycrafting built-in which leads me to wonder if some talented mod author will make this doable.
Opinions of current sheets
I started with Vulajin's sheet mostly because it was the easiest and most polished, I then went to Aldriana's because I started to notice a difference in my numbers and Vulajins findings, it also stemmed from the fact that Vulajin's sheet was more or less abandoned and hijacked by someone whom I have no idea is qualified or not to be doing any theorycrafting. Nothing personal mind you, just how I saw it. I've never figured out how Mavanas' sheet worked and it needed excel to function properly so I gave up on it. RAWR seems to be the jack of all trades solution, but you know what they say about the jack. It seems fine for casual use and close enough modeling, but for specific modeling I feel it's lacking. I feel the same for the simulation apps, it's a good starting place and for someone who doesn't want to look at a spreadsheet it's what I recommend but I feel it's not accurate enough.
If we move forward at the status quo I'd be fine with it. People seem to use what they like and if those continue on as they have then it's business as usual. The idea of a combined effort and the possible new talent that's out there is great, but I'm not looking for a change strictly for the sake of change.
My two cents anyway.
|
|
|
|
|
10/08/10, 7:00 PM
|
#7
|
|
Von Kaiser
Night Elf Rogue
Earthen Ring
|
I would definitely use iDPS for its interface. Dead simple to change gear and gems and enchants, while seeing on the same frame how much of a DPS change would actually occur. I dislike the inability to alter rotations, though.
I do like the additional features in RAWR to see how much of a DPS benefit specific talents, glyphs, items, etc are, but the program as a whole is far too bloated for regular use.
Aldriana's sheet is what I rely on for serious calculation, but changing gear around is a bit clunky and the recommended upgrades section is both too short and sometimes does not reflect actual changes in DPS. On the other hand, it's nice to actually see the stats of the items and gems that are equipped.
I don't really see any difference between spreadsheets and standalone or web apps, though the later generally can have better UI's for ease of use. A addon may be possible, but limited by LUA, and the only way I would ever run it is if it could run spreadsheet functions on demand, out of combat, and do nothing other than that. I don't want anything taking up any more memory or adding junk to tooltips.
Excellent features imho:
EP Values, even if the sheet calculates how much of a DPS change the gear is, the values are a great guideline.
Suggestion as to whether or not it's optimal to match socket bonuses or reforge. Probably unnessecary, but saves a bit of calculation.
Load from armory. Speeds up updating sheets when a new version comes out or when you upgrade your gear. Even if the sheet saves your gear, I use Load from Armory all the time on iDPS to give advice to other rogues or check them out.
Could we think of some way to better display DPS changes on gear with expertise? Perhaps, if we use iDPS as an example, we could calculate the actual DPS change as a solid bar, then calculate as if expertise cap did not exist and display the difference as a transparent bar? I say this because for the past couple months I've been juggling around the expertise cap and being able to see the base value of an item without swapping out another expertise would be fantastic. The ability to reforge could effect this too.
I had more, but I guess I didn't get my thoughts on paper in time. Go team ADD.
Would it be possible for the spreadsheet(/calculator/simulator/modeling tool/etc.) to have gear lists as a separate module? Potentially with an interface for adding items? One of the (small, I suppose) annoyances I've had with spreadsheets is either going in and inputting all the new items (while hoping you don't screw up any cell references) or waiting for a whole new release when a new tier of content comes out, and painstakingly reinputting your current gear set (which, of course, is made easier by armory loading).
I'm not sure how possible that would be, or what the call times would be, or if it's even worth the effort. Maybe if gear lists were modular, you could load and scan through the gear from only 'desired' instances? Dunno, just a thought.
Last edited by kindath : 10/08/10 at 7:06 PM.
|
|
|
|
|
10/08/10, 7:01 PM
|
#8
|
|
Von Kaiser
Troll Mage
Twisting Nether (EU)
|
I've most extensively used Ald's sheet, but I dabbled in Rawr on my mage, the Team Robot DK simulator, Landsoul's warrior sheet and (excuse me, I forget the name) whoever runs the main sheet over on the warlock forum.
It may be because I am most familiar with Ald's, but I do find it the easiest to work with. Rawr is fine, but I am just more comfortable dealing with the raw spreadsheet than a GUI. There are a number of improvements and things that I appreciate that come immediately to mind:
- Different pages for gear sets. I've never dabbled in Excel so I don't know how possible this is, but I've had a folder littered with files named 'Combat_4Tier_Rupture', 'Combat_2Tier_Rupture', 'Combat_4Tier_Eviscerate' and so on and so forth for various points in my gearing, usually with the dps value tacked on the end. It would be nice to deal with different gear sets and possibly talents/glyphs within a single sheet. It would also save my battered brain from having to remember a 6 digit DPS value while I'm shuffling gear around to see if it's an increase.
- Cycle selection. It's fair for the sheet to choose the optimal cycle (even helpful), but it'd be nice to have a drop down to compare. Also, it would be nice to be able to model an 'aoe heavy' fight, as the two fights that are of any concern right -now- are as such and I'm fairly sure hit and even haste lose value compared to a Saurfang style encounter.
- Gemming recommendations. I know we were (are) in a strange situation re: armour penetration, but whenever I checked the 'recommend expertise' box, it would recommend it in very unusual ways. Otherwise, I thought this was handled very well - showing the exact AEP value of each gem you had equipped every time you socketed a gem was fantastic. It really allowed you to focus on the exact inflection point of your gemming.
- The drop downs for items. Handled perfectly, I feel. With the loss of weapon specs this will work even better. Best items at the top, worst items at the bottom. Way better than doing it alphabetically.
- Armory import. Duh.
- Raid buff page. Seems fine. Click what you have, don't click what you don't - works for me.
Other than that, there will be some work to do on reforging, but all I can hope for there is some kind of recommendation based on the rest of your stats.
|
|
|
|
|
10/08/10, 7:53 PM
|
#9
|
|
Mike Tyson
Night Elf Rogue
Doomhammer
|
Just a couple of thoughts/factors to consider when discussing spreadsheets vs other modeling programs; fundamentally, there are a few things each are good at, so its a matter of tradeoffs.
Spreadsheets are nice in that they're fairly accessible - you can open it up and see all the intermediate calculations and values and so on, which is convenient for a) adding new items, b) making modeling tweaks, and/or c) figuring out why you're seeing what you're seeing - if, for instance, a set bonus or trinket proc is giving more damage than expected, its much easier to dig through the intermediate calculations and figure out where its coming from.
However, this comes at the expense of several major drawbacks: - UI. In particular, the ability to dynamically adjust lists and selections is lacking. On a webpage (or a desktop app, or whatever), you can do clever things with hiding and showing elements. For instance, when you select a piece of gear with sockets, you can at that point display the selection boxes for exactly what sockets are actually in the item - as opposed to my spreadsheet, which has to have in the initial display every single selection box that you will ever need on the main page. There's no way of creating a "short" gem selection list for the ones you're most likely to want and only display the full list if requested. Gear selection has to be from all zones, not just currently active ones. You can't do mouseover tooltips, or graphical icons, or whatever. Its very text-based and not at all flexible, which is somewhat limiting from a usability perspective.
- Gear recommendations. Spreadsheets pretty much have to do recommendations via EP, while a programmatic solution allows the tool to actually swap out items and make recommendations about which item is actually better, as opposed to which one looks like it should be better based on EP.
- Model Accuracy. For reasons I won't get into in detail, a modeling program can be significantly more accurate than a spreadsheet ever can be. So far this hasn't been a problem as the spreadsheets are "good enough" - but it is worth noting that a program can do better.
- Access to external data. Armory fetch is a hard problem in a spreadsheet - it takes macros, which makes you spreadsheet-program dependent, etc. But in a modeling program (Rawr, etc.)... this is an easy problem. Similarly, a spreadsheet has to have all gear manually entered, and thus needs to be updated whenever new items are added. A program could be written to scrub wowhead or the armory and automatically update the gear list. A program could scrub your achievements and figure out which instances you have access to. And so on. There's a lot of potential here that we've never really tapped, and I think that fact is worth considering.
But of course, a modeling program also requires you to understand a programming language to edit it; its harder to look at intermediate values; it's more work to write the UI, and so on - hence, its a question of which set of features and advantages you favor. I've been mostly working on spreadsheets because its easier, not because they're necessarily better. And I'm curious which people actually *do* like better.
|
|
|
|
|
10/08/10, 8:13 PM
|
#10
|
|
Von Kaiser
|
Originally Posted by Aldriana
But of course, a modeling program also requires you to understand a programming language to edit it; its harder to look at intermediate values; it's more work to write the UI, and so on - hence, its a question of which set of features and advantages you favor. I've been mostly working on spreadsheets because its easier, not because they're necessarily better. And I'm curious which people actually *do* like better.
|
The answer of course is to have the calculations in a spreadsheet, and sit a UI program/app over the top of it. There's nothing stopping a program from reading a spreadsheet with a fixed interface to gain it's values.
A program for which somebody wrote the UI, but you could slot in your spreadsheets (either mutilate or combat) or somebody elses. The actual calcs themselves could be totally different, but if a common interface sheet was decided upon anybody could "talk" to them.
It's never quite that easy, but separating out the UI from the calcs would be a decent step (And I'm the kind of programmer that's in the 1st category). I do appreciate being able to go into your sheets and hack up various things to see what happens. But yes, trying to do UI in spreadsheets sucks.
|
|
|
|
|
10/08/10, 8:13 PM
|
#11
|
|
Im***est.
|
One key other key advantage that spreadsheets have: They are, unless you start doing the sort of funk stuff with macros that comes with trying to be more than a spreadsheet, inherently crossplatform, and inherently very lightweight and fast.
This is my biggest problem with one of the two major program-based solutions (RAWR) - it runs terribly at best under OS X. It's also I think a large part of why iDPS became so popular so fast - not being cross platform necessarily, but being extremely responsive in a way that an excel spreadsheet isn't always, just because of the overhead of Excel (or for that matter, RAWR, which has quite a bit of overhead of it's own as I understand it.)
|
|
|
|
|
10/08/10, 8:25 PM
|
#12
|
|
Von Kaiser
|
Originally Posted by Aldriana
But of course, a modeling program also requires you to understand a programming language to edit it; its harder to look at intermediate values;
|
You should be able to alleviate most of this. Once you have your formulas/functions worked out, they really don't change that often. The coefficients might, so they shouldn't be embedded into the formulas but into a separate source of knowledge (database or some other parameter file).
Conversely, a program should be more than capable of logging what it's doing in a meaningful way.
|
|
|
|
|
10/08/10, 9:21 PM
|
#13
|
|
Von Kaiser
|
I'm wondering whether it would be possible to define the inputs and outputs of the calculation module such that multiple UIs could be built around it. What does the calculation module need?
1. Character state - buffs, stat numbers for each slot, item ids and enchant/gem choices
2. Config file for the coefficients Thaela mentions - the things that one might want to fiddle with in the calculations
3. A defined result - DPS, rating totals, EP values etc.
If these (and whatever else I've missed) could be well-defined anyone could write a UI that output the character state (and/or config file) and consumed the result. How the inputs and outputs were displayed in the UI could be completely isolated from the calculations.
|
|
|
|
|
10/08/10, 9:38 PM
|
#14
|
|
Mike Tyson
Night Elf Rogue
Doomhammer
|
Sure, it's possible. Particularly in a programming language (linking spreadsheets has some logistical issues). Though it would require standardizing on a programming language and some other such issues. Its simply that we haven't had enough models and UIs to date that it's been worth worrying about. If there's a lot of people interested in working on stuff, though, and we can agree on a language, it might very well make sense to define an interface.
|
|
|
|
|
10/08/10, 10:02 PM
|
#15
|
|
Von Kaiser
|
What you need to identify first is all the separate modules (logically separate, not necessarily physically separate) that need to be put in place to solve various problems.
For instance, one module might that take input X,Y,Z from the character module and give you the combat rotation model, while using another calculation module all the difference calcs like armour pen etc.
I think before worrying about language to solve it all in, you need to determine what work can be split up in to discrete packages. Very potentially, those can be discrete enough such that there needn't be one common language as long as they all talk the same "language".
I would suggest seeing if you can use an existing tool (like RAWR) and developing according to it's "language" (not programming language, but communication language). While you might not in the end use it, it lets you bootstrap development in the beginning.
Last edited by Thaela : 10/08/10 at 10:07 PM.
|
|
|
|
|
|