Let's talk about good software development and balance in specs

Because clearly the discussions happening are not enough. So at its core WOW is software. With data being transmitted back and forth from client to server. All of this data would for certain be logged someplace in one of the server databases and could easily. Assuming they are using a relational database for their storage let’s put this out there

Substitute table and column and db names as needed please

Select (match_length) from (sever_table) where (match_length) < .5. Assuming we are looking for 5 second matches

Now this is the simplest of queries that even a first year IS student would be running with no previous knowledge of relational database or really anything. And one would have to assume that we could do this for all pvp matches for a weeks time and the result set SHOULD be pretty small. But that would be if things were actually balanced properly. My gut tellsme that we would have a decent set of results.from this query and from those matches we could easily join I to the match_players table to see who was in that match. As could then hit the player_details table to determine what class and specs were in that match. With very VERY simple sql commands.

From this record set we could also add a count to the killing_blow column and connect that to the spec that did the killing blow and have a very nice dataset that we could even then pass to our BI teams to have this visualized in graph form for the decision makers to quickly see what class and specs are clearly not tuned or balanced properly. This creating stories in your boards to address the problems and hot fix as soon as possible because it’s not a player problem it’s a development problem. We can’t blame a customer for poor code QA.

Now this is of a software company at it’s core…so now I wonder if they have not done such a simple query yet to find the definitive proof of what actually NEEDS to be fix. And I know that sometimes there are customers or project leaders that really have a gut feeling and are loud enough to get attention and sometimes those stories get prioritized in sprints…but that is a problem that is a problem that can easily be corrected with producing the data.

Now before I have the other players with development backgrounds jump in and question such a simple query, we could also include in the where clause a join to determine all plates ilevels to make sure we would restricting out result set down to just those fully geared. But the joins would be minimal and we could probably accomplish this with maybe 5 tables joined.

Easy peasy stuff for entry level interns to do and the visualization in any of the standard industry tools could be done in a few hours max.

So…how are we this far into a competitive player season built by a million or billion dollar software company, still have specs kill players in an arena in a matter of seconds after the match starts?

If you don’t have the resources to gather the data, I would be happy to volunteer my 20 plus years of software development to assist in making sure that decisions made are based on data and not feelings. But something has to be done. Because you provide a.peoduct to a customer and there are clear quality concerns with the product. Yet you don’t address them? You are also publicly traded and need to show value to your share holders…but the more you ignore the customers concerns, the more revenue you risk. Because people will stop. People who played and were loyal for a long time will stop coming for your product. And the shareholders aren’t going to care at that point because you can not provide them the value they need. It may take years but it will happen. This is not a complex astro physics problem. It’s business 101 and software development 101 and agile 101.

I get all business are tight right now and IT had been hit really hard over the past 8 months. But that was because of COVID and the need for better remote systems for employees. You are building a game. And the developers out there looking for jobs are plentiful. Spend the extra money for a few more to make sure you deliver the best product possible to your customers! It’s good business!

1 Like

love the hustle my friend. Very very creative way of asking for a job

1 Like

I know it’s easy to just write in a conversational tone, where as writing less takes more time and effort…but please, be concise with your thoughts.

If you have worked in IT for 20 years, surely you’ve had to deal with blood sucking middle and upper management who don’t care for a good product and simply care for the largest P/L gains.

While your suggestion may ( and I emphasise may) give developers a better handle at actually assessing what needs buffs and nerfs, what should change in the game etc…I’m sure very few people at Blizzard actually care about the game. It’s just a job them. Accept it friendo.

Big oof on this thread and the reply above me.

Awkward undertones of this thread aside, looking at killing blows isn’t a good way to balance the game. If you’re looking for classes that have too high of burst, also look at dps throughout the fight. You could argue if you’re specifically targeting classes with too much burst look at short fight duration with high damage. But it’s never that simple, what about uptime? CC? Utility? Healing? How about pve performance?

You could probably find multiple ways to analyze the data, but they’re all going to be flawed in some way. You need to look at the data from various perspectives and actually play or watch the game at various levels.

Not sure if Blizzard has this or not, but to fix any problems you need a team dedicated to analyzing and resolving balance issues first.

Does your method account for human error?

As pointed out above just KBS isn’t a good measure. This type of thing would lead to less not more balance for the amount of things it leaves out.

Killing blows wasn’t the main thing we are trying to get at. But in the event that a player was killed within a few seconds of the match start we could see what class did the killing blow. This would be for them to check and see what happened. Granted user error will always be a potential but if we can show the data that it was not user error this would be a good place to start. I think the whole idea of the post was that there are some very simple ways that they could watch things and make sure they make the right changes. But I feel like they aren’t for one reason or another

Doesn’t matter.

Specs can be overpowered in lots of areas that have nothing to do with killing blows.

Control
Sustained
Defensives / Mitigation
Peak Burst
Sustained Burst
Support (Like how Augment buffs)
etc.

You can’t really balance simply around data. As you buff or nerf one class, another will take its place. The entire meta can shift if one healer gets buffs. The entire meta can shift if one dps gets nerfed.

Also, what’s strong at 1600 might be useless at 2200. What’s good at 2400 might be impossible to play at 1200.

Enhance takes someone from 100% to 1% in 1.5 seconds and priest finished him off with dot tick or death. Guess priest damage is nerfed after the next sprint!

No. The killing blow in the first few seconds is just the flag to investigate more. Once you dug into the match you would see what really happened

It’s certainly a bit of a cheeseball spec right now.

Not gonna lie, I’ve only seen this happen with WW so far this season. And Boomkin, but that was kinda nerfed so its not quite so egregious now.

Who is actually dying in the first 5 seconds of a match? And what’s this talk about killing blows?

MM is still doing it somehow. Sub may not be 5 but it’s close

You have to push buttons when the hunter pushes buttons so you don’t die in 5 seconds at the start of the match

I don’t think blizzard tracks all this data for pvp.

Cc. Knowing hunter is lining up. Pop trinket but now free cc to rapid fire and aim shot and repeat and dead. It’s actually pretty common to just cc a player when they know they have to trinket to avoid it and then cc them again. This is what rogues live by

Anyone dying in the first 5 seconds of the game isn’t reacting properly.