If you ever wanted to become a coder in the tech industry, then this article should interest you. Not only are the graphics and use functionalities important to coding a game these days, but the algorithms that go into the game to calculate the outcome of complex action-packed battles. One game for example that has some of the most complicated algorithms is League of Legends.
When a fight occurs in League of Legends the code in the background is hard at work. Not only is it giving players the incredible fast-paced action-packed gameplay, it is also calculating player progress. That is to say how much gold the player has collected, how much experience the player has gained, and at the same time, all three lanes in the game have Champions and Minions that the game has to calculate.
In League of Legends, in case you did not know, there are 5 players on each team each controlled by someone on the other end of a mouse and keyboard. This could be 5 friends playing on the same team in a duo battle or players that have come on to play and allow the software to choose their teammates.
The technology used to match these players is actually quite a straightforward concept. Every player has a rating and is placed into a pool of other players with the same rating. If there is a team of friends, then the aggregate score of their team is calculated and placed into a pool with other teams that have a similar aggregate rating. Players then search for a game and the system will pick players or teams from its pools in a matchmaking process that will bring 5 players versus 5 players.
Where Does the LOL Algorithm Start to Work?
The algorithm begins to get complicated once the game begins. This is where the real technology starts to kick in. There are so many variables in the game for the LOL algorithm to track. This is because the game is played on a huge map with 3 lanes and in between those lanes is the jungle area. Players wander from lane to lane with their mission being:
- Kill enemies (Players on the other team)
- Kill minions for gold and experience
- Push the lanes to take down the enemy turrets
Each player is controlling what is known as a Champion. Each of these Champions has their own skill set. This could be healing powers, magical resistance, magical damage, physical damage, hit speed, walking speed, and so on. On top of this, when an enemy or minion is killed, the players earn gold and experience. When a champion dies, gold is lost – but not experience.
You can imagine all this action is taking place over 3 lanes on a large map. The algorithm is tracking every Champion, how many minions the Champion has killed, how much gold has been earned by each player, and how much experience has bee gained.
The quicker a player can gain his or her Champion experience, the better more skills that player will gain, plus other aspects such as physical strength, magical damage or resistance, ability to heal and so will start to improve.
Furthermore, as players gain more gold for their Champion, they start to buy items. These can be healing items, armour, magical resistance items, stun items, and more. All the time these 10 players are roaming the LOL map, the algorithm is keeping track of the items and how each item improves each Champion.
Team Fights and Enemy Clashes
So far, we have seen how much activity the League of Legends algorithm must keep track of in a game. However, we have not even touched on the subject of player and team clashes. This is where the breath-taking technology of MOBA gaming really starts to take place.
To understand this, you will need to take in all the information above. The new items Champions have, the level of experience gained, which special skills the Champion has gained, how much physical damage or damage resistance a Champion has and an array of other variables.
Now imagine a team fight where there are 5 Champions versus 5 Champions. The algorithm must accurately calculate every hit, every skill used, every item/weapon used in the fight, heals used, player attributes such as resistance to magical or physical damage and much more. Now these battles occur within split seconds and there are multiple hits and skills used in any team fight – the algorithm always decides the outcome of these battles using millisecond processing.
On top of this, other factors such as items that give team mates aura to improve the speed of the whole team or healing abilities, area damage in a radius a certain skill was let off like a bomb or magical cloud, whether the players are standing on higher or lower ground.
At the end of all this, the League of Legends algorithm must take into consideration all these factors and get it right every time.
If you want to play League of Legends or get started, then why not firstly speak to some of the experts in the game and get a head start with your LOL account by boosting to a high level where you can play with decent players and learn the game quickly – more information.