The old adage that video games are a colossal waste of time and resources has long been thrown out of the window. The world of video games is now a multi-billion dollar enterprise, both for playing and developing the aforementioned. Don’t believe us? Look up Bugha on Google and you’ll find news about Kyle Giersdorf, a 16-year-old, who won USD 3 million while playing Fortnite. That’s right, a video game.
Sure, playing video games is all about having fun, but what about development? What actually powers the characters of the games that we fall in love with? In this piece, we look at how machine learning, one of the up and coming technologies of recent times, powers and helps create immersive experiences in gaming.
Non-player characters, or bots
Machine learning and artificial intelligence, in layman language, make computers imitate human action. When playing video games which are of the role-playing types, players come across many characters which aren’t controlled by a human but resemble those that are controlled. These are called non-player characters, and artificial intelligence and ML make up a huge part of how these NPCs are programmed.
NPCs, or bots, can be easily implemented using machine learning. Using algorithms and learning techniques, programmers can make NPCs react in a certain manner to user input, and then build on it to create a complete set of reactions based on all possible user actions.
A special type of machine learning, reinforcement learning is based on the concept of rewards and penalties. If for a certain action, the program (henceforth referred to as an agent) receives a reward, it learns that the action was correct. If the agent receives a penalty, it learns that the action was incorrect, and refrains from performing said action in the future.
Reinforcement learning can hence be used to power games which have a human v/s AI style. Fighting games such as Mortal Kombat or Street Fighter can make effective use of reinforcement learning. When coupled with Neural Networks, the set of inputs can be taken as the buttons that a human player would usually press, which are all coupled to a certain action.
By using these inputs to interact with the environment, the AI can observe and learn from the rewards and penalties granted to it (rewards being the lowering of the opponent’s health, and penalties being the lowering of its own health). The Neural Network can then use this knowledge to figure out the correct sequence of actions to win the game, in due course.
Another application of Neural Networks in video games is in Fortnite, which uses the aforementioned technology to host its competitive tournament information.
Are there any restrictions on game development with AI & Machine Learning?
As much as we hate to admit it, there are a few shortcomings.
A major problem revolves around the collection of data and building a hypothesis to test. Now, some game developers provide this information to the general public for their games, but if you are looking to build your own model based on such data, you’d have to be lucky. For instance, Valve, the company that owns Steam and other big names in the gaming world, provides this information for one of their games, DOTA.
If not, you will have to use your own data extraction tool, which can involve thousands upon thousands of parameters, values, and whatnot. A tricky task, nonetheless. For simpler games, having a video of the gameplay can work, where you only need to study the main parameters by deconstructing the images. For complex games, this becomes difficult, too.
Machine learning, artificial intelligence, reinforcement learning and neural networks- these are no longer buzzwords. Employed in each and every imaginable sector of technology, these concepts have also found their way into video games, as explained. For all the budding game developers out there – machine learning and videogames present a great topic for your own research and creativity! Try and see if you can overcome the problems that we mentioned earlier!
To read a similar article, click here.