It may appear that artificial intelligence is a fairly recent innovation in video games, however, it has been a developing resource for decades now. During the 1940s and 1950s, scientists from different fields, ranging from mathematics, engineering, economics, political science and psychology, began to investigate the possibility of creating an artificial brain.
It was in 1951 that two of the first computer programs in history were written by Christopher Strachey (a program for game controllers) and Dietrich Prinz (a program for chess) using the Ferranti Mark 1 machine. University of Manchester. However, it was a ladies’ program developed by an American pioneer in computer games and AI, Arthur Samuel, in the mid-1950s and early 1960s that was ultimately able to challenge a respectable amateur player. Since those early days, AI in games has reached an incredible level of success.
AI IN game development
Artificial intelligence (AI) in games is the “intelligence” displayed by non-playable characters (NPCs). In a game, the various characters you see other than the player-controlled character are all driven by some form of artificial intelligence.
– Advertising –
These characters you meet can be good, bad, or neutral, whether they are enemies shooting on sight, a crowd of people on the roads, or a friend fighting alongside you, the AI dictates the behavior of all these characters.
The most important aspect of AI for these non-playable characters is that their behavior should be realistic. If the characters are modeled in the real world, the need for them to be believable increases even more. For example, in the game Crackdown 3, developed by Sumo Digital, enemy NPCs are present all over the city. The city also has civilians who roam the streets and do various activities and talk to each other. If the player sets off a shootout near these civilians, it would seem odd for the NPCs to continue to casually talk to each other in the middle of a firefight. The AI must react in a predictable way to various events and situations in the game.
The heart of all AI is decision making. In mainstream games, these decisions can be: when to continue to behave inactive and when to flee, when to attack a player and when to take cover… The AI makes these decisions based on parameters such as the threat level in the game. the environment, the ammunition available and the distance to be covered. a target, etc. Techniques such as state machines and decision and behavior trees are popular for guiding AI decision making.
Animating the actions performed by the AI also plays an important role in making the AI character look real and interesting. For enemy AI, the variety of behaviors and types make the game more interesting, and a player must use a different strategy to defeat them. In Crackdown 3, there are different factions and types of ground AI, flying drones that can attack the player, and bosses that are special enemies related to the game’s narrative.
Navigation is an integral part of AI. To reach a target location, various algorithms to find the optimal path and avoid obstacles, etc. are used. A player can easily do these things because they can see the gaming environment, but the AI cannot see the same way. The representation of the environment is therefore provided internally to the AI as input and calculations are carried out to know the path to take to reach a target.
The opponent’s AI must be designed in such a way that it can be beaten. When faced with a difficult opponent, the player may get frustrated and find it not fun to play the game. Additionally, if the AI is perfect and precise, it can appear robotic. Thus, the AI is deliberately made to make mistakes as a human player would, for example in a shooter the AI knows the exact location of the opponent but sometimes gets the wrong aim. In racing games, the car’s AI knows all the optimal routes, but they can be tricked out of the route to allow the player to win.
Game designers are responsible for writing documents that describe the behavior of AI, and once the AI is coded, they have many parameters to adjust to make it balanced. The design ensures that the AI is not too hard or too easy for different difficulty levels and that various parameters are adjusted, such as how fast the AI characters move and how long they take to recover suddenly, etc. Once this adjustment is complete and a large part of the game is finished, user tests are organized for groups of people who have never played the game and are preferably part of the target audience of the game. how well the players are performing, how hard or easy they find the game to be, what areas are confusing or difficult for them and whether they like to play the game etc. are noted. Based on the data and feedback, all necessary changes are made.
AI is something that has to go through a lot of iterations to be successful. It has many parts and must handle a combination of many different use cases and scenarios. There are many different people behind the creation of AI in games, including character artists, animators, programmers, designers, production, QA, and even end users.
Machine learning has been identified as a tool that can result in AI characters having emerging and human-like behavior, for example, an AI learning from its mistakes and adapting to dynamic scenarios . However, this may not always be the right fit for a game, as it can lead to unpredictability and make it difficult to debug and cause the AI to behave as required. Machine learning can also be used to aid in game development. It can reduce the manpower required in large and complex games by automating pipelines such as game test games and it can be used in procedural world and content creation. Machine learning in games is not widespread, but with future technological advancements and new research it has the potential to become a mainstream tool in game development.
Regardless of the tools and methods used, the ultimate goal is to bring the non-playable characters in the game to life through AI and give the player an opponent, companion or adversary they will remember.
By Ganesh Chaudhari, Technical Manager at Sumo Digital