Learn Advanced AI for Games with Behaviour Trees

Create your own Behaviour Tree API in C# and apply it in the Unity Game Engine

4.63 (267 reviews)
Udemy
platform
English
language
Game Development
category
instructor
Learn Advanced AI for Games with Behaviour Trees
4,793
students
7 hours
content
May 2022
last update
$84.99
regular price

What you will learn

Students will learn the theory of behaviour tree design.

Students will learn how to develop a behaviour tree API in C#

Students will learn how to use behaviour trees to define the actions of non-player characters.

Why take this course?

Behaviour Trees (BTs) are an A.I. architecture that provide game characters with the ability to select behaviours and carry them out, through a tree-like architecture that defines simple but powerful logic operations.  It can be used across a wide range of game genres from first-person shooters to real-time strategies and developing intelligent characters capable of making smart decisions.   The codebase is deceptively simple and yet logical, reusable and extremely powerful.  The library is written in C# and implemented in Unity 2020, however will easily port to other applications.

In this course, Penny demystifies the advanced A.I. technique of BTs used for creating believable and intelligent game characters in games, using her internationally acclaimed teaching style and knowledge from almost 30 years working with games, graphics, and having written two award-winning books on games AI. Throughout, you will follow along with hands-on workshops designed to take you through every step of putting together your own BT API.  You will build the entire BT library from the ground up, while building an art gallery simulation scenario in parallel, to test the API as you go.

Learn how to program and work with:

  • A Behaviour Tree Library and API that's reusable across a wide range of game projects.

  • Tree architectures, nodes, leaves, sequences, and selectors that define the behaviour of individual non-player characters (NPCs).

  • Navigation Meshes and Agents that provide advanced path planning and navigation capabilities for characters.

  • A Blackboard System that acts as a global inventory for world states and allows characters to communicate with each other.

Contents and Overview

Throughout the course, you will follow along while a BT library and API are constructed from the ground up, to allow you intimate knowledge of the codebase.  Alongside this, a simple art gallery simulation will be constructed to test out the functionality of the library as it is put together.  The simulation will also rely on Unity's NavMesh System for navigation and path planning.

The course begins with an overview of Behaviour Trees and covers all the fundamental elements (including trees, nodes, leaves, sequences, selectors, and other logical constructs). Code will be developed to navigate the Behaviour Tree and used to drive non-player characters in the art gallery including a robber, cop, visitors and workers. Throughout this, students will gain a solid knowledge of how Behaviour Trees are constructed and can be traversed, to apply actions to game characters.

At the completion of this course, students will have a fully-fledged BT library and API that they can reuse in their own game projects, to provide game characters with complex intelligent behaviours.

What students are saying about Penny's courses:

  • Turns out, the hardest part of this course for me is finding the words to describe how glad I am to have enrolled in it.

  • I honestly love Hollistic's teaching approach and I've never learned so much within a few hours about coding effectively with such detailed explanations!

  • Penny is an excellent instructor and she does a great job of breaking down complex concepts into smaller, easy-to-understand topics.

Screenshots

Learn Advanced AI for Games with Behaviour Trees - Screenshot_01Learn Advanced AI for Games with Behaviour Trees - Screenshot_02Learn Advanced AI for Games with Behaviour Trees - Screenshot_03Learn Advanced AI for Games with Behaviour Trees - Screenshot_04

Reviews

Dave
October 21, 2023
I was a little disappointed how much of the course was "watch me write C# code", compared to actually discussing the ideas of behavior trees. The naming conventions for nodes vs delegates vs trees were confusing, and would be very hard for me to follow if I were trying to read the code from scratch. Frequently, the presenter talked about "we'll add a global", when they meant "member variable". BehaviorTree IS-A Node? Not really sure why that was decided upon when it could have been HAS-A, or, even better, no BehaviorTree class at all, just hold on to a root Node. I felt like the dependency on Unity, on Unity's NavMesh system was a little unfortunate - granted, a lot of new programmers will be using Unity as a way to get started, but a lot of time was spent in the course dealing with quirks and misfeatures of Unity's system, rather than focusing on BehaviorTree concepts. The DepSequence node felt like it was a specific workaround for the NavMesh system controlling our agents, rather than agents being in control themselves. This wasn't all bad, but could have been better if the pattern was pointed out that sometimes there are external systems that you need to work with, rather than it been swept under the carpet. Not a bad course, but not a lot of information that I didn't already get off shorter YouTube videos.
Felipe
September 24, 2023
Section 2 is great. the rest is kind of bad. Lots of things getting hard-coded. and lots of time wasted in hardcoded code that has nothing to teach in terms of behaviour tree. feels like in section 3 . it was forgotten what the tutorial is about.
Ronaldo
September 20, 2023
I loving the cours, not just by the concepts of Behavior Tree but also by the good concepts of working with Unity
Kankles
September 17, 2023
Excellent course. The course is great if you're looking for a course to explain and implement the core elements of a behavior tree. I like course like this one, because it give me a tool that I can use in future projects. This course was exactly what I was looking for and I look forward to taking the GOAP course in the future. Only reason I didn't give it 5 stars is because I posted a question 3 days ago and still haven't received a response. Not a big deal though, as the course was taught well and I figured out a working solution.
Octavio
September 4, 2023
Penny does a great job at teaching the base Behaviour Tree concepts, plus the implementations are really fun and interesting! Unfortunately I feel like its missing quite a lot in the quality of the API & the code in general, there's a lot of power in this to make a way more reusable system, for example using Scriptable Objects and maybe an editor window for easy design and debugging. Otherwise, it is a really good course!
Aniket
August 9, 2023
probably the coolest course .. its a nice thing that we are building our own API i think that makes us understand the concept more in depth... A lot of other courses use prebuild API's such as OPSIVE etc..
Kasun
May 29, 2023
This course is the best to study and theoretically understand behaviour trees. The instructor (Dr. Penny) explains the theories and the coding very well.
Robert
April 18, 2023
I seem to be doing just fine doing this course and it is well paced, very interesting story/game is kindof evolving when we solve problems through building and restructuring the behaviour tree that we use for programming AI. Challenges help to focus and check own progress.
Kostiantyn
April 13, 2023
A great course even for intermediate Unity Programmers. I like details and some more complex C# methodics to extend and easify my game creation ;) Thanks for an amazing course.
CHRISTOS
April 1, 2023
No abstraction at all on the code, useless for any game except if you want to build a mini-game, you can't learn properly the behavior tree theory from this course. Is only good to watch it with coffee to pass your time. Anarchy code without comments at all and without coding standards for c#.
Jimothy
January 31, 2023
Fantastic course. I'm very appreciative of Penny for covering intermediate topics like behaviour trees to this extent. The code could be cleaner and a git repo or something more than the occasional script/project snapshot would have been nice but it doesn't detract significantly from the course. I particularly enjoyed the fact that the course doesn't just introduce you to behaviour trees, implement them and then leave you to figure out the practicalities yourself. It actually spends a good amount of time over the last few sections manipulating and debugging the behaviour trees so you leave the course with what feels like practical experience and not just theoretical knowledge.
Xoazya
November 20, 2022
I don't get much of why the Node class is designed that way. Perhaps if there is a intro of how behaviour trees invented, this course will be more friendly to us. But all the other contents here are very useful, and I do appreciate this course.
Oleg
September 23, 2022
Very informative. Now I know how to change all these terrible AIcontrollers with a huge number of conditions if/else to a slender behaviour tree. The behavior of the characters can be made much more natural.
Guilherme
August 22, 2022
Excellent course. Dr. Penny really knows how to get the content across to her students. I particularly take practically all of her courses. I highly recommend your courses.
Murray
August 12, 2022
Quite a well structured course, working with Behaviour Trees. I found this one more logical and a bit better constructed than the GOAP course. It would have been nice to include the creation of some kind of simple Behaviour Tree visual/node editor as part of the course, ideally.

Charts

Price

Learn Advanced AI for Games with Behaviour Trees - Price chart

Rating

Learn Advanced AI for Games with Behaviour Trees - Ratings chart

Enrollment distribution

Learn Advanced AI for Games with Behaviour Trees - Distribution chart
4173476
udemy ID
7/9/2021
course created date
7/20/2021
course indexed date
Bot
course submited by