Patch Notes

Below are the changes and additions made in the V3 update:

Behavior Tasks:

  1. A new "Move Character Along Spline" task is smoother than the legacy "Find Pathpoint Forward" by utilizing the spline directly rather than pathpoints. It retains the procedural nature.

  2. V3 versions of all legacy pathfinding nodes now use actor tags instead of custom collision channels for faster setup and project-wide consistency.

  3. The "detect blocking object" is an object avoidance task. It traces the environment in front of the NPC and redirects them if an obstruction is detected. You can customize collision object channels with this task.

Controlling Behavior Trees:

  1. Behavior Tree Functions

    1. Pause Behavior: Use this function to pause behaviors, such as sitting on a bench.

    2. Resume Behavior: Use this function to resume a previously paused behavior tree.

    3. Restart Behavior: Use this function to restart a behavior tree from its first task.

    4. Stop Behavior: Use this function to stop a behavior tree altogether.

A New Pedestrian Path V3:

  1. The pedestrian path now includes a C++ class that supports blueprints for placing spawners and path points on your map

  2. The new pedestrian path can snap to other splines in your level for quick placement.

  3. You can adjust the distance between path points and spawners more easily in this new v3 spline.

A NPC Spawn Limiter:

  1. The new Procedural NPC Subsystem can be used to limit how many NPCs are spawned at any given time. You can combine this with day-night cycles or other gameplay features to control how many NPCs are spawned at once.

The NPC Character Optimizer:

  1. A new component has been added that automatically optimizes NPCs based on their distance from the player.

New Spawning and Removal of NPC framework:

  1. Previously, each spawner and pedestrian would tick on a timer for spawning or destruction, which caused significant performance loss in large worlds without world partition. Now, it only ticks on the player and can be handled in either C++ or Blueprints if networking is needed.

  2. Both spawning and destroying processes are now handled by a single component instead of two separate ones.

  3. Significant improvements in large environments, with an increase of over 200% in FPS in some cases.

Last updated