Book Image

Unreal Engine 4 AI Programming Essentials

By : Jie Feng, Peter Newton
Book Image

Unreal Engine 4 AI Programming Essentials

By: Jie Feng, Peter Newton

Overview of this book

Unreal Engine is a powerful game development engine that provides rich functionalities to create 2D and 3D games. Developers have the opportunity to build cross-platform mobile and desktop games from scratch. This book will show you how to apply artificial intelligence (AI) techniques to your Unreal project using blueprints as your scripting language. You will start with an introduction to AI, and learn how it is applied to gaming. Then you'll jump right in and create a simple AI bot and apply basic behaviors to allow it to move randomly. As you progress, you'll find out how to implement randomness and probability traits. Using NavMesh, you will impart navigation components such as character movement, MoveTo nodes, settings, and world objects, and implement Behavior Trees. At the end of the book, you will troubleshoot any issues that might crop up while building the game.
Table of Contents (16 chapters)
Unreal Engine 4 AI Programming Essentials
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Preface
Index

Resetting the state


Now, this next part will allow us to use our ChaseTime Float variable in a Retriggerable Delay node. Basically, when they're in the line of sight, the Retriggerable Delay node will continue to be reset. Once we lose the line of sight, the other execution path will execute DoOnce, attempting to reset our AI's State variable. Once the Retriggerable Delay node finishes delaying by the designated Chase Time value, it will reset DoOnce, allowing our bot to reset its state. Perform the following steps:

  1. Now let's look at the Branch node we just created and pull from False and create a new DoOnce node. We can leave Start Closed as default.

  2. If we track back to True from the previous Branch node, we can pull from True then create a Sequence node.

  3. Pull from the first Then 0 exec pin and create a Retriggerable Delay node. Next, let's plug in our Chase Time variable into the Duration variable. Lastly, let's plug in Completed into the Reset input execution of the DoOnce node we created...