Let's Chat About Defender AI - Current state, behind the scenes, upcoming changes
MCOC Team
Administrator, Admin [en] Administrator › Posts: 599
Hello Summoners,
There’s been a lot of discussion in the community about our AI recently, so we wanted to take this opportunity to shed some light on how our AI system works and what we’ve been working on behind the scenes. We hope this post will provide transparency, insight and an understanding of the situation and how our team is handling AI issues.
There’s some advantages to this system - you don’t want a fighting game to be perfectly predictable after all. However, it also means that the AI can sometimes be frustrating to play against when the RNG ends up working against you. Our goal has always been to maintain a fair and challenging AI system.
One of the things we discovered while digging into the input issues and standing up our fight replay tech was that some of the replays we were getting back weren’t always consistent. Digging into this more, we found that some of the AI randomness was occurring in the game engine layer, in code we didn’t write, can’t change, and doesn’t yield the same results every time.
Our first step is moving the randomness that’s currently happening on the engine layer over to our own code, so we can get 100% consistent fight replays. The goal here is that the game should play the same as it does now, but we’ll be able to more consistently reproduce player reported issues. From there we’ll be able to better investigate the things that are frustrating Summoners and make fixes where we deem necessary. Ultimately, this will give us more control over our systems and will allow us to help improve the Summoner experience moving forward.
Making changes to the AI can be a precarious process; Summoners have grown accustomed to elements of the AI and rely on strategies to counter them. We are trying to avoid invalidating existing Summoner strategies by making small incremental changes.
To reiterate, the goal at this stage is for you all to experience no discernible changes. By transitioning over to this new system, we will have more thorough control in identifying, replicating and triaging potential bugs in the AI system.
How confident are we? We enabled the new AI system on the CCP Beta Server for a week before telling them. Sneaky, sneaky. The intention was to see if there were any noticeable or noteworthy changes they encountered - essentially, did it feel any different? After discussions with the CCP, we are confident that we are ready to implement this system game-wide.
There’s been a lot of discussion in the community about our AI recently, so we wanted to take this opportunity to shed some light on how our AI system works and what we’ve been working on behind the scenes. We hope this post will provide transparency, insight and an understanding of the situation and how our team is handling AI issues.
Current State of AI
Our AI works on a years-old system of randomly weighted actions. The AI looks at its current state, looks at all the actions it could perform, and then randomly rolls to decide which action it will take. This is not a learning AI, it is simply rolling dice.There’s some advantages to this system - you don’t want a fighting game to be perfectly predictable after all. However, it also means that the AI can sometimes be frustrating to play against when the RNG ends up working against you. Our goal has always been to maintain a fair and challenging AI system.
Why does it feel different now?
To be clear, we haven’t been actively changing the game’s AI code; we are not using it as a tool to annoy Summoners or to drive item usage. However, the Contest also isn’t the same game it was years ago either. Our game is a complicated web of interactions. The increasing complexity of Champion kits, Nodes, a number of engine upgrades, etc. all add up but result in us operating without a clear history of “AI changes” we can look into when Summoners raise frustrations about the AI.Tech Improvements Incoming
The engineering team has been working behind the scenes to address these concerns for a long time.One of the things we discovered while digging into the input issues and standing up our fight replay tech was that some of the replays we were getting back weren’t always consistent. Digging into this more, we found that some of the AI randomness was occurring in the game engine layer, in code we didn’t write, can’t change, and doesn’t yield the same results every time.
Our first step is moving the randomness that’s currently happening on the engine layer over to our own code, so we can get 100% consistent fight replays. The goal here is that the game should play the same as it does now, but we’ll be able to more consistently reproduce player reported issues. From there we’ll be able to better investigate the things that are frustrating Summoners and make fixes where we deem necessary. Ultimately, this will give us more control over our systems and will allow us to help improve the Summoner experience moving forward.
Making changes to the AI can be a precarious process; Summoners have grown accustomed to elements of the AI and rely on strategies to counter them. We are trying to avoid invalidating existing Summoner strategies by making small incremental changes.
Intentions, Timeline and Expectations
You will encounter our new AI system in November. We are confident that we have successfully recreated the current system and that this transition will be relatively seamless.To reiterate, the goal at this stage is for you all to experience no discernible changes. By transitioning over to this new system, we will have more thorough control in identifying, replicating and triaging potential bugs in the AI system.
How confident are we? We enabled the new AI system on the CCP Beta Server for a week before telling them. Sneaky, sneaky. The intention was to see if there were any noticeable or noteworthy changes they encountered - essentially, did it feel any different? After discussions with the CCP, we are confident that we are ready to implement this system game-wide.
90
Comments
Nonetheless, many thanks for the transparency! Will there be somekind of a feedback thread?
I think It Will take a while to get used to the new AI still but It Will be better than the current one
Cant wait for the posts about It in november
Hopefully there is a good time in between AW, AQ, BG, and other "seasons" so that there is at least a few days evaluation before anything "that matters".
Like doing this say right as Necropolis releases, and then having issues (either making things unreliable, or too easy) would create some turmoil for those who either got socked hard / stuck / had to spend or... snuck through in "easy mode" before it was fixed. Same thing could be said about AW season being a joke.
I think opening a "public beta"... maybe also including 8.4 beta, or something else to entice players... would be appropriate for something as big as this. You will get more data points, and more buy in.
Thank you!
Can you guys confirm if it's true or not?
Also some nodes and movements seems to "break" the AI. For example when hitting into a falter, in lots of cases the defender does absolutely nothing other than following you with the idle walking.
Or since the last month, the defender keeps agressively blocking while you can do anything. Literally you can drop your imputs and they will keep blocking for like 3-4 seconds, even in higher content. That's why we think there are AI changes behind the back. These "dicerolls" are like rigged and always ending up on sixes
If it didn't, then at the beginning of every fight... the AI would do exactly the same thing. It wouldn't sometimes attack, sometimes block, sometimes just sit there, etc.
and if there was no RNG, then how would the AI know when to throw a special. NN seconds after filling a bar (wouldn't it be nice if it were that simple when trying to bait).
And its also very clear that champs like Mysterio are programmed to heavy more as well as have nodes such as "the defender more likely to throw a level 2 special" . To do a "more", it would have to be turn based more (e.g. every 5 actions heavy instead of every 7 action heavy... which wouldn't be RNG, but have this effect) or... its taking a random number... and applying a different multiplier on top of it.
The AI has showcased a RECENT ability to do the following
- Parry attacks consistently
- Chain combos into specials
- Light intercept
None of these should be the result of “random noise” in the distribution because all these things have existed since the game’s conception but have only just become a problem. These are improvements to the decision making process of the AI. What accounts for their INCREASED precision and consistency?
For anyone unfamiliar with what randomness looks like look up sampling from a gaussian distribution. The key point is that (centered around some mean) the values jump around peaks and valleys. It doesn’t plateau. The AI has peaked, REMAINED at this high and plateaued there for at least a year. If what you mean by “random” is massive weight given to certain actions/patterns with some nonzero probability of throwing specials at random increments then this presentation is dubious at best and a purposeful skirting of the actual question at hand at worse. Why has the randomness evolved into CLEVERNESS. The AI reacts BETTER than it used to
AFTER the animation to hit AI is completed (and I’m missing hits during which AI throws a special or manages to throw their heavies). This used to never happen before (a year back).
AI skips received damage and instead hits me back even though my hits should’ve landed. Just because i dashed forward and even hit animation is complete, how can AI hit me, mid-combo or even before combo could start?
As for your poor math example. You can take into the account the people who rarely feel like the AI is busted (valleys), people who sometimes feel like the AI is off (mean), and the people constantly complaining something is wrong (peak) it's ever shifting and not always at those points per player