How can we help each other?


#1

Hi All,

We are a small group of players from the Hammer of Wrath Paladin Discord server. We range from well respected members who are known to offer quality advice to Guide Writers and Moderators of the server. Some of us are still in early BoD progress and some of us are on Mythic Jaina. Some have been in the Paladin community even before Discord and others joined at various stages after the launch of Legion.

We have recently seen your new Class Guides, namely Retribution. There are some concerns that were raised by both your Guide and Blog-post that we would like to address. We absolutely agree that guides should offer players choice. That is why all of the guides that we recommend on our server include many choices. We highlight strengths and weaknesses that exists not just in terms of raw numbers, but as well as pointing out specific scenarios that an often overlooked Talent might excel in. This extends to gear choices such as Azerite and Trinkets as well.

Rotations are almost always the single largest point of improvement to be made by a player. In our experiences though it starts with a player asking a question similar to “Is this a good sim DPS for X item level?” or “I was looking at X log of the same item level and they do much more DPS than me. Is it my gear?” From that the conversation usually very quickly turns in helping provide them with the appropriate tools and resources that they can use identify potential shortcomings and what can be done to resolve them. Many people are focused heavily on their Gear/Talents/Stats when the appropriate path is analyze their own performance from logs.

There is no singular right way to play. Not only can Gear and Talents affect this but content that you chose to do such as Mythic+ or Raiding. In the same way there is no single source of information that is the “Best” Different sources of information such as Guides can all approach the same subject of ensuring a person is getting quality and accurate information but at the same time they approach it with a different angle. Different people have different methods of learning that works best for them. That is why in our Discord we recommend 3 different written guides as well as a YouTube/Video guide.

We also disagree on a few subjects. While there is valuable information that you can sometimes find in a top parse there is also information that if not understood properly can be a detriment. In all 3 Ret logs for example they did not switch to the adds on Grong. This approach might work for players in guilds that are very skilled overall or that have already cleared the fight on multiple occasions it might not work for the person whos guild is pulling Grong for the first time.

As ridiculous as it might sound coming from a group of people who constantly tell people to “sim yourself” there is a limit on how much you should focus on a sim. Like anything else it is a tool and that tool might not be the best tool for the job. In some cases it is the equivalent of using a sledgehammer to crack a nut. We prefer to use the sim as a baseline and if there are specific scenarios we can analyze and adjust as needed. For example, you run a Patchwerk sim and it suggests that you should have 2 passive trinkets and Inquisition. Let’s assume for a real world example that we are still in Uldir and are starting progression on Fetid and you get assigned to a small add. The small add lines up well with your Avenging Wrath and you absolutely need to make sure it dies before Fetid can consume it. To maximize that damage you would swap 1 of your passive trinkets to an on-use trinket. Now let’s say that you’re better at killing the small add but there are still plenty of times where it does not die in time. You swap from Inquisition, which overall provides a “smooth” damage output to Crusade which at the time might of been lower overall damage but greatly increases your burst damage allowing you to easily kill the add in time. Information like this can be found in our guides. As we progress through the raids we notice there are cases where you may have to play a build that is not “optimal”. These are also topics that can come up in our dedicated questions chat so we can explain to players why that may be the case if they have not seen our guides.

The group of us took some time today to discuss the above topics in more detail in the form of a stream. We have uploaded a copy of this stream to YouTube. It ended up being a very long discussion. In the video description I have included timestamps at the start of main topics.

The point of this is not to harass or point fingers. We genuinely want to be able to work with AMR to some extent. We prefer to be able to provide players with multiple sources of information so they can find something that works best for them. We gain nothing by turning people away from AMR. All it does is take up time and create confusion on why a common resource is not recommended. It would be much easier for us to let the players who use AMR know that the results they see are reasonably acceptable.

This is our attempt to reach out to see if we can come to some sort of agreement. In general we would love to know if you think something said by us is unfair or misrepresented in some way. Even better is if you do take the time to watch the video and want to engage with us directly. We want to be able to not turn players away from what could be a valuable resource or at the very least stop both sides from “attacking” each other. Any of us can be reached directly on Discord as the following:

Skeletor#0001

Rebdull#9648

Sholdice#4817

Stonethunder#7410


#2

Hey - thanks for stopping by, we always enjoy talking to other theorycrafters. I did the log comparisons, so I figured I’d talk about that with you.

First, I totally messed up some of those buffs when I simmed. Human error and thanks for catching that. I’ll get those fixed up.

You also had some questions as to why we have them on our guides. We compare to logs to find bugs and make sure the simulator is being realistic, just like you do with SimC. This is basically us showing our work. We’ve been sharing our log comparisons for two expansions now and our users really enjoy it, so we continue to do it. Hope that clears it up. I might also give another pass at the explanation for the log comparisons on the guide to double check that the intent is clear.

Also, if you have any questions about the boss script or want to test other scenarios or boss strats, or other log questions, hit me up. I handle most of those.

I sent the bug list to Swol so he’ll jump in here today and get back to you on that. Chat soon :slight_smile:


#3

Thanks for the taking the time to check out the simulator some. I have not seen that list of bugs you referenced in the video before. Looks like most of the issues were fixed at some point. In the future please don’t hesitate to just reach out to me directly on the forums or discord if you find a bug. I’m readily available and can usually fix issues right away for folks.

The outstanding bugs I saw on your list that were still an issue in the simulator were:
1.) Shield of Vengeance not being affected by Versatility. I updated that.
2.) Empyrean Power and Divine Purpose both getting consumed if they are both up. I updated that.
3.) Heed My Call spell damage was missing the correct spell id so it didn’t pick up the Nature spell school. I updated that.
4.) Zeal was missing the actual spell id for the damage, so it had the wrong spell school. I updated that.

(these updates will show up in an update today sometime)

All the other issues on the list had been previously fixed or are not bugs that affect the simulation results - they are display errors. I added detail on that at the bottom of this post if you are interested.

I also saw that you brought up a common point of misunderstanding when it comes to our simulator: We say that it is 100% free and open, but you don’t see it that way. I can try to explain:

The simulator itself is definitely free. Anyone who wants to can use the simulator for no cost. We have no premium feature that adds functionality to the simulator in any way. You can run as many simulations as you want. In your video you were referencing Best in Bags and the Upgrade Finder, which are premium features, but they are not the simulator. We use our free simulator to generate millions and millions of data points. We analyze that data and build a scoring function that can predict simulation results in a fraction of the time it takes to actually do simulations. Then we created an optimization algorithm that uses that scoring function to rank gear. We use that to power our Best in Bag and Upgrade Finder premium features. The simulator itself IS absolutely free. It is important to us that it always be free because we see it as a community resource.

Here is what we mean when we say the simulator is open: Everything that a theorycrafter needs to view and/or edit the implementation of a WoW spec’s mechanics is openly available. There is absolutely nothing in our private code base that you would need to edit/view to make a spec work in the simulator. The wiki is quite literally the “code” which the simulator runs on - it is equivalent to the class modules for simc. Our simulator engine compiles the wiki for a spec into executable code when you run a simulation. Think of it like another layer - the wiki is the programming language and the simulation engine is a compiler. When you write a program in c++, you don’t need to see or edit the code that makes the c++ compiler work, you only need to see the c++ code you are working on.

Whey did we do it like this? Because most people can’t write computer code. There is definitely a learning curve when it comes to understanding the wiki and how the spells work, but, we would argue that it is a smaller learning curve than learning to program in c++ for most people. I am happy to work with and help anyone who wants to understand the wiki better.

The “Affected By” list of references:
A number of the items on the list you were referencing had to do with the “affected by” section that you see at the bottom of each spell on the wiki. It was interesting watching you go through it - I understand why it was causing you to think there were lots of errors with buffs affecting/not affecting spells they should/should not. TLDR: This is a display issue in the wiki. The actual spells are working correctly in the simulator.

More detail as to why that is happening: Those references are picked up from other wiki pages. Our goal is to make it easy to figure out what affects what in the simulator. The AbilityDamage formula in the simulator references TotalAttackPower. Both AbilityDamage and TotalAttackPower reference TotalMastery because those functions are also shared with tanking specs. This is why anything that is based on AbilityDamage/AttackPower is snagging Mastery buffs in that “affected by” list. On the other side of that, Judgment only references TotalSpellPower, and never has a direct reference to TotalMastery, so mastery buffs don’t show up in the Affected By list. But, if you go down to the bottom you will see that it is Referenced By the actual Mastery: Hand of Light spell, and is included in the white list there. That is how you know that Judgment is in fact buffed by Mastery. We will see if we can put in some more code to tighten up that Affected By display.

Most spells in the game use multiple spell ids to get all the information you need. One example you pointed out in your video is Light’s Decree. The spell id 286229 in the spell data and is a physical school spell that has the actual average damage budget on it. But, the damage effect when it hits in-game is spell id 286232, which is a holy school effect. The simulator will only buff the damage effect, so the school of spell 286229 doesn’t matter - it is what it is in the spell data. The “affected by” list is pulling in mystic touch because of that 286229 spell, though. Once again, this is purely a display issue that we’ll try to tighten up. The actual simulator is working correctly and only looking at the holy damage effect when running the simulations.

We want that “affected by” section to be helpful to people looking at the wiki, not a source of confusion. I’m glad you brought that up so we can improve it. I’m not sure we’ll be able to get it 100% perfect, but we can definitely make it work better.


#4

Hi everyone, thanks for taking the time to respond to us, I know it’s a lot of information.

Before I get into the meat of this just so we’re all on the same page my day job is as a software engineer. I code every day so we don’t need to worry about the weird anolgies we programmers sometimes come up with to explain things.

What I, personally, wanted to get across in the vid and I’m not sure I did a good job of it over the stream was this:

The main criticism of the open source comment is specifically what you’ve highlighted in your post. From our perspective as not even TCers but people who like to look into things when we or others find problems, we want to be able to go look at why things aren’t the way we expect. So many bugs in simc are found this way and it’s hard to countenance a tool that we can’t even see if it’s calculating things right. The example of the buffs being effected by things is just an example of how hard it is to understand any of it and to know whether that is a bug or just us reading the wiki wrong. And since the source for the simulation engine is not open (not a criticism of this btw, if I were trying to market something like this I’d want to keep it closed also), we can’t go and suss out all of the reasons why or explain to people who come to us why things are the way they are. That’s the reason we take umbridge with it being called open. How do we, from the outside, read this giant list of connected spells without being able to follow that trail down even more.

This is exactly like importing a DLL into my project with the headers. In this case the wiki is the headers and the engine is the DLL. I know virtually nothing about how the DLL actually works. This is the problem that I have with calling AMR open source.

The other really big issue that we all wanted to address was the attitudes being expressed on both sides of the table. I’m sure everyone at AMR has been exposed to a decent amount of vitriol over the years and that’s not fair. Conversely some of the things we’ve seen come from AMR are things that quite frankly sound like they belong on r/conspiracy. This isn’t good for anyone involved and we really wanted to extend the proverbial olive branch and come to a common ground of understanding. Those of us in the community use the tools that are available to us and we find it easier to use and justify the use of other resources. We have no stake in “influence” or anything remotely close to it. Most of us just started being a part of the community and if that community moves it’s likely we will too. If AMR were the best community for this sort of thing, that’s where we’d be most likely.

I know there’s a bit of a contradiction in not criticizing you for being closed source but also not being ok with recommending places we can’t look at ourselves. I’ll acknowledge that I’m not sure of a good solution to this problem and would love to hear how you folks weigh in on this.

If you feel these criticisms are unjustified or want to open a dialogue with some of us than we’re more than happy to talk, that’s why we did this in the first place. If you want to come ask us questions about ret things or even other classes or specs you may not have a great relationship with we can at least try and help. All we want is to stop the shit flinging on both sides and make everyone’s lives better in what ways we can.

-Sholdice


#5

I posted an update that addresses some of those display issues with the “affected by” list on spells in the wiki. If you notice anything else that needs improving on that front, let me know. For something like Judgment, you will see that it is “affected by” the spell Mastery: Hand of Light. If you click through to that spell, you will now see a list of other spells that might modify your mastery. At some point I might try to “flatten” it so you see the mastery spells right on Judgment, but I think this will do the trick for now.

I can talk a little about this whole “open source” discussion some more – Swol, Zoopercat and I designed the simulator together, but I do most of our programming and wrote the simulator engine itself, and created the whole “theorycraft wiki” system for editing spells, rotations, etc.

Firstly, I think that part of the disconnect is semantic, so let’s just get that out of the way: I think that we have used the terms “open,” “open source,” and “transparency” to more or less mean the same thing at various points. To avoid any confusion, let’s just go with “transparency” from now on – that’s the real design goal of our simulator. I personally don’t find a simulator being “open source” in the traditional sense nearly as interesting or useful as being transparent about how it is doing things.

Now to my personal opinion as a computer programmer and theorycrafter: I find the AMR simulator to be more transparent than simulationcraft. It is easier to verify exactly what the simulator is doing, find exactly what is affecting every spell, how each thing is implemented, what spell coefficients are being used, and so on. This is of course a biased opinion – I designed a system that I find easier to understand. Just like one programmer might find C++ code easier to understand than Haskell code, someone else could be completely opposite. Similarly, I’m sure there are people who find simc’s C++ code easier to understand than our theorycraft wiki, and vice versa. It’s just a different approach.

That said, if you really want to understand what either simulator is doing, there is a learning curve. simc requires C++ knowledge, and some special knowledge about how the code is written and structured, knowledge of the custom rotation syntax, etc. Our simulator requires learning the “vocabulary” that we use to define spells on the theorycraft wiki, our system for scripting rotations, etc. I would contend that the learning curve on our simulator is not as steep as simc (because it doesn’t have the baggage of a programming language like C++), but there is certainly still a curve. (We are happy to help out anyone who wants to learn more about how it works, btw – just ask. I’m sure simc is in a similar boat, just gotta find the right person to ask.)

Once you learn how our system works, you’ll find that the theorycraft wiki quite literally has all of the information for any given spell. There is no custom code for each spec or spell anywhere in the simulator, at all. Swol’s compiler analogy wasn’t really an analogy… the simulator engine takes the data on the wiki and dynamically compiles it into code that is then executed. This enables some really cool things – like someone can clone the wiki, modify a spell, and run it – all without having to download or edit code or rebuild the entire simulator. (It looks like someone did this in your video, solid! But the display issue with the spell reference lists threw some confusion into the mix, sorry about that.)

I’m wondering if the best approach at this point would be to get into some specifics. What specifically do you find yourself wanting to see some source code to figure out? Maybe something is missing from the wiki that we overlooked. Doing this might be an easier way to demonstrate the depth of the simulator’s transparency rather than just asserting it to be true again.


#6

If you want to address this issue, we’ll gladly accept the olive branch. A long discussion about past vitriol, perceived or otherwise, probably won’t be particularly productive. My inclination is to take a practical approach. Forget about what may have been said in the past and move forward acting differently.

We are both groups of people who do theorycraft and share that theorycraft with WoW players so we can help them improve. Our goals are the same. People use your resources and benefit. People use our resources and benefit. Both of those statements are true. I don’t think that it is necessary for us to come to a consensus on what we recommend to players.

That being said, discussion on points where our recommendations are different could lead to productive results for both of our audiences if we agreed to do so in a positive manner. I’d be willing to try it.


#7

I think this would be a good idea. Zooper has reached out to another person listed in the first post and I hope some sort of meeting can come from not. I am always available to message directly as well.