Tutorials

Applying the Signal-Slot Mechanism to Implement Efficient AI Conditions

This article continues a series of tutorials which focuses on designing and implementing the AI for a simple simulation. In the last tutorial, you learned how to design a behavior tree for a virtual dog that responds to clicks. A good way to do this is by using AI conditions that suspend themselves […]

Building Event-Driven Conditions for an Asynchronous Sensory System

This article continues a series of tutorials building simple dog behaviors for a simulation game. Last time, you learned how to use polling to build tasks that monitor conditions in the world, for example to keep the growling behavior running while another dog is nearby.
In practice, there’s also another way to implement these kinds […]

Monitoring Assumptions for Behaviors Using Polling Conditions

In last week’s tutorial, you learned how instantaneous conditions can check information from the world to affect how decisions are made in a behavior tree. However, using this approach, once a decision is made the behavior will run until it terminates on its own — which reduces the responsiveness of the AI.
This article shows […]

How to Affect Behavior Choices Dynamically Using Instant Conditional Checks

Sensory systems have many different roles, as discussed in the last article. However, the best place to start is to implement a single condition that checks information from the world, and affects the decisions in a static behavior tree. For example, picking a fixed growling reaction to another dog when it’s nearby.
This tutorial […]

Using Conditions as the Building Blocks of a Sensory System

Wednesdays on AiGameDev.com is dedicated to tutorials. This article continues the long-running series which focuses on building simple dog behaviors for a simulation game.
At this stage, the decision making process is in place, but it’s based on random decisions instead of taking into account any information from the world. This, in effect, is […]

Tutorial Series Summary and Game::AI++

Wednesdays on AiGameDev.com is dedicated to tutorials that show you how to implement AI into your games. Over the last few weeks, following the designs of readers, I’ve been creating simple behaviors for dogs in a simulation game.
I’m currently on a business trip (the unexpected kind) as well as in the process of […]

Beyond AI Pseudo-code and Towards Sensory Systems

Over the last few weeks, this tutorial series designed and implemented simple dog behaviors using random decisions structured within behavior trees. This article shows you the C++ source code of the game’s AI logic as it is today.
Also, it’s time for you to put your thinking hats on; you need to decide what […]

A Lazy Approach to Designing Consistent AI Behaviors

When logic is built from multiple modular behaviors, you must make sure they work together consistently. Typically, to do that, your AI stores a variety of information shared by the behaviors to make sure there aren’t any clashes. Of course, this takes a lot of time and effort, but luckily there’s a lazier […]

On the Effectiveness of Random Decisions in Structured Behaviors

This tutorial on AiGameDev.com continues the series which builds simple AI logic for a simulation game. The previous article established a first design. This time, you’ll see how it can be implemented at the low-level.
It’s surprising how effective random decisions can be when they are structured together into a tree of sequential behaviors. […]

The Backbone of AI Behaviors: Movement and Animation

This article continues a series building the AI for a simulation game from the ground up. Last week, you found out what assets and libraries this project uses, and you helped figure out a first design to show off some simple but useful behaviors.
The best place to start implementing game AI is with movement […]

Building AI for a Simulation Game from the Ground Up

Do you ever ponder about the best way to create artificial intelligence for games? Well, me too! After years of industry experience and research, it still fascinates me. But one thing is certain, it requires lots of practice…
This article launches a series of tutorials, every Wednesday on AiGameDev.com, building game AI […]

Game AI Character