Hey, I’m Darcy “Riot DashiJador” Ludington, and I’m the technical product lead for League of Legends Bots! I’m a now washed-up Plat player, but you’ll most often find me in the rotating game modes and soon, in our Co-op vs. AI modes! Joining me in this blog is the Bots Team’s current tech lead, Emmett “Riot Sentanel” Coakley, a late-night ARAM main. We are so excited to be talking to y’all about bots!
Bots have been in League since the beginning, with light updates to the champions available up until 2014 when we rewrote all of our existing bots. Even with this rewrite, we still only supported the bots we had, which made up a small subset of champions available at that time. Plus, we had two champions in top lane and no jungle—a generally bad representation of the team makeup you would experience nowadays.
Over the past few months we’ve re-invigorated our investment in bots. While we were never uninvested, we needed to figure out the right approach for both the League of today and the League of tomorrow.
When looking at player feedback and pain points, we could see that many players were wanting a low-stakes, League-like experience that’s less stressful to practice and get better overall, especially with friends who are new to the game.
This resonates a lot with me—when I started in 2010, ‘getting gud’ was difficult. My friends wanted to play with me, and I wanted to play with them, but PvP was really hard for us to play in. I played against bots for my first 17 levels and thought I was good to go, but once I entered the PvP arena, I realized how different bots were compared to players. I wanted an area to grow and learn with my friends who were much better than me.
And we know that this is not just a ‘me’ experience. Our data shows that regardless of how many co-op vs. AI games a new player played prior to entering a PvP queue, these games would not improve the new player’s chances of winning. So we want to give players an area to enjoy the strategy and team aspects of League, in a less stressful environment with more varied levels of skill.
Outside of creating new bots, we’re viewing updating bots as a way to build out League’s capabilities, give our designers a new suite of tools, and help players level up their skills in a learning environment (because you probably won’t play against Darius and Amumu top lane very often in PvP games).
With the growing desire of both devs and players, our team was formed to help create a new scalable system for bots that would enable players to learn and grow in League, while also offering our designers a tool suite to build out new content for those players… Neat!
We have a few main goals for this project, including:
Provide an upgraded bot experience that better mirrors the common League gameplay experience.
Provide a better way to learn and improve in League that is less stressful than PvP.
Build our bot tech to be scalable, maintainable, and extendable so designers have fun levers to pull to delight players.
We won’t get too technical, but let’s talk a little bit about our approach. One of the main challenges of our bots infrastructure is determining how we build a bot solution that is sustainable and extendable for the long term. How do we want to handle creating bots logic to support the full roster of champions (which includes 163 champions, as of Milio)? And on top of that, how do we support these champions in modes other than Summoner’s Rift? Do we need 163 more customizations for ARAM bots? Another 163 for URF? What about Ultimate Spellbook? Or future modes?
Our current approach is to develop a new Behavior Tree system for the Bot Decision Making logic. Think of a Behavior Tree as the decision making process for evaluating what action should be taken at the current time, with the highest priority actions being evaluated first. These actions are typically grouped into subtrees, so in the case of LoL Behavior Trees, there are subtrees for fighting, escaping, moving, jungling, buying items, leveling up spells, etc.
Beyond the short term, we are also building our Behavior Tree tech to pave the way for future opportunity spaces that were once unachievable. Bots that can train players? Machine Learning (ML) Bots that can help you grow to your next skill rank? Bots that can be coded quickly for PvE experiences? All are much more possible through this groundwork!
But we don’t want to build out these starter bots without considering you all. So let’s talk about what we want to do for 2023!
Well firstly, we want to make sure we get good feedback from y’all on our direction! These bots will be pretty simple at first, and might not be very impressive from a skilled player perspective, but that is why we are aiming for the PBE at the moment. We want to make it easier to get into League so please invite your friends who have never tried League!
Our beta bots will be on PBE for two weeks in the latter half of this year, so please test them out and give us feedback over on Reddit!
We are also doing a ton of work on the backend to support our goals, so we want to understand aspects of the bots you like and where you think we can improve to make sure we properly build these bots to support our players as well as our devs!
If you can’t play when they come out this time around, do not worry! We hope to get a few rounds of feedback prior to launch so that we can continue to iterate and refine our bots to provide an even better player experience.
Long term, we are building this tech to be extendable and reusable by a variety of teams and engineers so they can also provide new experiences to all of our lovely players.
We see a lot of opportunities being available once we complete the infrastructure and tooling, so if you have cool ideas for how we can leverage our bots, please let us know!
See you over in the PBE later this year, thanks for everything, and all your bots are belong to us!
See you on the Rift!