Can bliss hire an ML engineer / data scientist already?

How does it find a solution to a problem that has no solution? As good as AI has become, it still has to abide by the logic of the universe it resides in. No matter how much money we throw at it, AI/ML isn’t going to find a way to turn the color red into not a color. And that’s kinda the problem we are working with here.

Some classes does not have the tools to deal with certain scenarios. How do you balance that without giving all the classes the same tools?

Lol I’m sorry bro but you should learn more about Ai before making statements like this.

Balancing the classes is not at all an impossible problem. It’s doable without ML/AI by someone who is smart and played the game long enough.

Literally they could use the simpler models (not even a neural net) and get better results than they are currently getting.

But to answer your question about balancing utility and such — that’s part of model design my dude. Look into composition models and hierarchical models. You would basically just train 1 model for utility and 1 model for damage and 1 model for healing and then have a higher order model which is used to integrate those 3 into a cohesive unit which is trained on Warcraft log data for survivability and such. Really not that hard

All of this is standard data science / ML engineering, it’s really not that extravagant, it’s really just applied statistics

Honestly, nobody wants balanced classes. Not to any level of 99%.

It’s just not important.

It’s not important to kill bosses. It’s not important in PvP (which will never be 1:1 balanced no matter what the DPS is). It not important to clearing trash.

It’s just not important.

The new Aug Lizard is an example.

We want the classes close, so that all can participate and contribute. The game doesn’t care which class tops of the meters, because whatever class tops the meters in one kind of content will tank in another kind of content.

I know I’m looking forward to our ML overlords patch notes “Destro Locks Incinerate buff 3.2% except for 4 targets where it’s been nerferd 1.2%, unless Havoc is on cooldown, then it’s buffed 1.1% for 4 targets.”

Nonsense.

1 Like

At least you have some form of understanding → this is what patch notes might look like lol

But you are missing other parts such as in my OP post I mentioned “Balancing parameters”

An example might be for the engineers to specify “FOTM” classes and then a % threshold say 5-10% and allow the model to produce variance between the classes.

This tool frees up their design time to be able to focus on good mechanics and let the ML model do the math and they can even specify how to make mage a little stronger than other classes

I wasn’t talking about utility, but damage profiles. How do you achieve balance a scenario in which class1 is able to attack 2 targets at once while class2 is not able to do so, without making both of those classes being able to attack both targets?

You can’t give class2 better single target damage because then they would just be better than the class1 in every patchwerk like boss.

Do you just never ever make council bosses or an encounter with adds again? Or do you go with wildely different class balance from boss to boss?

So how do you handle that situation is that you add a sufficient number of parameters to describe the fight characteristics and then add that to the model and it will calculate the results for you without you having to worry about it.

It could be as simple as number of targets but you would likely add additional parameters to describe their spawn rate and timing relative to class cooldowns to make the model more accurate.

Then you add control conditions such as:
If I cannot find a solution where the result is less than my balancing parameter (meaning if I can’t find a distribution of spell power coefficients that makes class A’s dps within X% of the others) then flag that. It could be as simple as adding an additional splash effect to one of the abilities or granting a new dot effect. However, I don’t anticipate this happening often because there are so many abilities that each class has that I foresee enough different knobs to turn in order to nearly always find a satisfiable solution. But in case it doesn’t, you get a new talent or effect basically. Pretty simple

There are 2 boss targets. They share and have equal health. Each of them have to be fought at the opposite side of the boss room. On some titan platform to power it up. Once it’s fully powered up, the bosses need to switch places through a tank swap. Happens roughly every 1 minute. They take 99% reduced damage if every brought within 30 yards of each other. No adds spawn.

Class 1 is a Destro Warlock. Has the ability to cleave both bosses at once.
Class 2 is a Fury Warrior. Cannot ever damage both bosses at once.

The only solution here is to give Fury Warriors ~40 yard range on their melee abilities so they can hit both bosses through Imp. Whirlwind. Or take away Warlocks ability to cleave with their single target spells.

Edit: Forgot to mention, but Blizzard have been dabbling in ML since at least 2018.

OP assumes that Blizzard’s developers are even interested in having balance in the game.

They’re far more interested in mugging for the cameras with streamers and shooting their mouths off on twitter.

If it were so simple, wouldn’t a company have already been using such tools?

WoW isn’t the only competitive game out there with balancing issues

3 Likes

It is simple but people don’t realize that yet because there is a social learning curve with every technology. The social learning curve about AI is only just recently starting to proliferate corporations.

The value that an ML engineer can bring is insane. Can you name a value to arbitrarily balancing the game? It’s enormous.

There are not many ML engineers (although it’s exploding right now so that might change very soon) and they are able to charge a hefty price.

The industry trend is changing rapidly though. Just a few years ago you needed to know a lot of the low level implementation details as well as having an incredible rig to train the model on, but nowadays there are so many open source ML tools or professional suites to make ML workflows alongside dynamic cloud resource provisioning that there is no excuse nowadays. The barrier to entry has almost been entirely removed to ML engineering

If I can recall correctly the devs didn’t need AI to begin with. They were perfectly okay without it. Relying on AI to do everything for them doesn’t help. The devs just need to use their brains more.

To answer your question, it boils down to good class design and good encounter design.

Good class design entails that there is a set of talents for each class that is most ideal for the fight type at hand. So let’s assume the warrior picks the best ST dps talents (forgoing AoE) and the Lock chooses the best 2 target cleave talents (forgoing ST dps).

To use really basic math, let’s say 20% of the fight the warrior has access to Execute which boosts his ST damage by 30%. Havoc has a maximum uptime of 40%. Let U be the warriors ST dps and V Be the warlock’s. Based on our description of the talents chosen for the fight, U > V.

We have some equation like:
0.8U + 0.2(1.3U) = 0.6V + 0.4(1.6V)
This reads: 80% of the time the warrior does normal damage and 20% of the fight he does 30% increased damage because of execute. This needs to equal 60% of the fight where the lock can’t cleave plus 40% of the fight where he has Havoc active.

1.06U = 1.24V
U = 1.17V

This means that the warrior just needs to be tuned to do 17% more ST damage with its best ST build than the havoc can do ST damage in its best 2 target cleave build and both will be roughly equivalent.

For napkin example this really isn’t that unreasonable either given the war is sacrificing all of his AoE talents for ST.

But the suggestion is simply that internally Blizzard doesn’t have things like simulations and what not already, just like we do. And, either they run them, and the results are “within spec”, or they don’t run them so what makes you think they’d run the ML system on this instead?

Or, simply, it’s far, far more efficient to let the player base “simulate results in a real world environment” and then come back and clean them up later.

The criteria is that even with some kind of advance ML system, we already know that, sometimes, the “classes just don’t work”. They’re just broken, and the tweaks would be to ham fisted to make them balanced, so they just let them sit, “broken”, “nerfed”, until they can get back around to updating the talents and skills in order to join their perception of “class fantasy” and how the class works in the “real world”, and an ML system wouldn’t really help with that either.

1 Like

After some consideration. I think you might be right. But possibly going about it in the wrong way. Rather than creating very complex talent trees that could possibly end up changing every week. And thus making it impossible for casuals to keep up.

I think a better solution would be to change encounters on a spec by spec basis. So to use the Warlock/Warrior example i mentioned in my previous post. In this encounter the Destro Warlocks would be targeted by mechanics slightly more often than normal. While Melee specs that cannot cleave would be proportially target less.

Of course. This isn’t an be all and end all solution. Other solutions like talents, gear, and even buffs could be used to close the gap.

1 Like

blizzard puts out % buffs that don’t alter rotation priorities and you really think they are incapable of doing the math of 80*x = 100

The game legit wouldn’t be fun if they just kept everyone the same sum output, different fights, different cooldown windows and different utility is the fun part of wow… during progression, if you’re chasing parses in farm you’re at the tip of the iceberg… same level as trying to see how many uber strike stacks you can get on the dummy.

Balance achieved!

…AI isn’t some magic spell you can throw at problems and auto-magically solve. If you don’t see how AI modeling doesn’t work in the context of WoW you don’t know what you’re talking about.

1 Like

Can you maybe explain why you think Ai doesn’t work in this context?

Because it’s a ‘objective’ learning model, that you’re wanting to solve for a ‘subjective’ problem.

You can train a model to track the progress of corn growth rate, but you can’t train it to say a painting is good.

Yea bro you have no clue what you are talking about whatsoever lol