Why Use AI to Play Games? - Falmouth-Games-Academy/comp250-wiki GitHub Wiki

Overview

To strive above all,
For victory over death,
Why do we teach this?

There are several different reasons as to why you would want to create AI to play games but the 3 main reasons are:

Creating AI to act as a opponent or an NPC

Creating AI agents that act as an opponent or a NPC in a game, these AI agents don't need to be complex and most of the time aren't but they bring important gameplay value often rendering a game world feeling more "alive" by populating a world with NPCs.

Creating AI to win a game

Creating an AI agent that plays a game and finishes the game as fast as possible with the highest performance and efficiency as possible.

examples of AI agents that player games to win:

  • AlphaZero - A chess bot that competes against master chess players
  • AlphaStar - A deepmind AI that plays StarCraft

Creating AI to generate the environment

At a basic level, procedural content, such as terrain, can be generated using simple techniques such as Perlin noise. In fact, this is what Minecraft initially did in its early stages [3]. However, much like AI, terrain generation can employ decision-making techniques to give land certain features. For example, areas in Minecraft are randomly but deliberately divided into "biomes" which each exhibit different patterns of terrain and fauna, and integrated seamlessly into the environment [4]. In addition, Ordinary Trees (not to be confused with Behaviour Trees) are generated with particular shapes that would satisfy different algorithms.

Whether this AI is truly "playing the game" could be debated. On a technicality, a game environment may exist in order to challenge, interact with, and influence the player. For example, a bottomless chasm might be generated; in which case this chasm is an opponent to the player, and may similarly follow certain constraints in order to make it more fun rather than just challenging.

References