Animal Behavior Kit support thread

Change log

Update 1.1

  • Changed all internal tags to start with “abk_.” This makes it easier to integrate with other MP assets that also use tags by reducing “tag collision”

  • Created a Tag Reference that lists all internal tags used by ABK

  • New Custom Events

  • All companion commands

  • Breeding events

  • Taking damage

  • Animal Spawner - now has new options to despawn animals when the Player ends the overlap on the trigger. This allows you to spawn and despawn animals at runtime easily

  • Fixed several reported bugs

  • UPDATE FILES: All.

Update 1.2

  • [NEW] Decay System now fully tested and replicated
  • Natural Death is now compatible with Population Control
  • Predictive System now does a check before moving the animal based on a tag. Automatically avoids water
  • Added option to “Stop Movement” while attacking for additional flexibility
  • Food Spawner can now spawn food limited to a volume
  • Population Control - New Cull Options added. Now you can kill animals by age, engagement or even inactivity!
  • Population Control - Added support for multiple actors in the scene, each controlling their own populations. This makes it easy to control population in different “biomes” in your game
  • Behavior Defend got several enhancements and is now more consistent with Attack
  • New Custom Events added - Animal is Hiding, AI Director Reached Target, Day Cycle events, Movement Obstruction
  • DayNight Cycle - you can now pause all systems while the animal rests (like aging for example) (optional)
  • DayNight Cycle - you can now hide the mesh of ground animals while resting
  • Added option to stop movement when the Engage Animation plays, giving more flexibility
  • Animation Improvements - Added “CurrentAnimation” struct that lets you know which animation is currently playing, as well as other useful information. You can use this to add custom code per animation. Example - each attack animation does a different amount of damage
  • Animation Improvements - New animation type “Specific” allows you to add your own logic and pass the animation index to the BP. This effectively lets you control which animation plays based on game play logic! Example - Only play a certain animation if the animal is close to death
  • [NEW] Auto Group Manager - this new BP scans your scene and automatically creates groups for your animals based on species and specific parameters! This works in concert with Population Control to now allow your spawned animals to automatically form groups!
  • Separated the POIs for prey and predators, effectively letting your prey go to certain POIs, while predators go to another (no shared POIs)
  • [NEW] Obstacle Avoidance System added to ground animals. Now animals will modify their collision if they get stuck. Eventually they will teleport to their initial location if they get stuck for a long time. This prevents “kiting” exploits to your AI!
  • Over a dozen bug fixes and small enhancements!
  • UPDATE FILES: All.

Update 1.2.1

  • BTT_Rest -> Add Valid check for HomeBase - this prevents an invalid reference
  • Add Home Base assignment per species on Population Spawner!
  • Improved Comp_DayCycle
  • Improved Comp_LookForMate
  • UPDATE FILES: BTT_Rest, BP_PopulationControl, BP_Comp_DayCycle, BP_Comp_LookForMate

Update 1.2.2

  • Population Control - Added a check for no Home Bases. Now the BP won’t try to assign it if empty (fixing a warning)
  • UPDATE FILES:** BP_PopulationControl**

Update 1.2.3

  • Renamed BP_Struct_AnimalBase_AnimalDetail and BP_Struct_Population_SpeciesDetail to fix 2 packaging errors that were preventing a successful package
  • BP_AI_Director -> Added a check to make sure no warnings are displayed if the animal arrays are empty
  • UPDATE FILES: BP_Struct_AnimalBase_AnimalDetail, BP_Struct_Population_SpeciesDetail, BP_AI_Director

Update 1.3

  • Animals now more accurately attack prey by stopping on overlap and matching the prey’s speed
  • Animals do a trace prior to moving to a new location to make sure they can go there. This eliminates the need for water blocking volumes
  • Added new way to modify the Engage Behavior of animals via a function
  • [NEW] Activation Manager System - The Proximity Trace is moved to the Player for a much more efficient system made to work for open worlds
  • Animal Spawner - Animal spawner triggers can now auto-populate nearby spawners. Spawners also more efficiently despawn animals once Player is out of the trigger area. Several improvements to support open world games
  • Improvements to allow animals to more accurately attack a much larger prey / target. These changes allow animals to spread out among a large surface area (instead of clustering)
  • Taming System - Converted to the Advanced Taming System. It contains general code improvements to make system more portable. Added ability to tame more than 1 pet. Added Pet Summon / Dismiss with save functionality. Added New Custom Pet Command (Example: “Fetch”). Added ability to control Pet
  • Added a LootTable to the SpawnLoot component. This allows the developer to add as many items as they want with their corresponding percent chance to spawn. The loot now spawns at a random vector near the animal
  • Proximity System - - There are now more options to customize your inactive animals with big improvements in performance (more than twice the FPS on local tests!)
  • Added ability for animals in a group to be affected by other systems and then return to the group. Example - animal can now break from the group to go eat and then return to its original group
  • Player Character BP - Moved a lot of the custom code to the components allowing for a much easier migration process
  • Added a First person character BP
  • Population Control - added ability for Population Control to detect Players nearby a spawner and not spawn animals there if that is the case. You can now specify a male to female ratio per species. There is also a new Blutility that populates all your spawners automatically based on species
  • Animals now use a random idle time from a range each time they stop, instead of a static value each time. This allows for more randomness among the same animal types!
  • Added support for turn animations! You can easily configure your animation blueprint with a 2D Blendspace to use walking turn animations. Simply enable the option and grab a Yaw value to drive your blendspace!
  • Breeding System - added change where you can now specify the range where offspring will spawn around the mother
  • Day Night Cycle - BP now modifies the Skylight intensity following a curve based on the time of day. This results in darker nights and gradual intensity increase until it reaches noon
  • Added Random Appearance to the animals - now your animals can choose a random scale and material to add more variety to your scene
  • Improvements to the Need System - You can now add specific IDs to the food and water to allow animals to search for specific food / water actors in your scene!
  • [Experimental] Advanced Engage Method - it allows you to specify an Engage Behavior per tag. This gives you much more flexibility in the way animals react to each other in the scene. For example: You could have the Spider attack the deer, but flee the bears.
  • Added a TroubleShooter BP to help you debug issues with ABK. I also created a more detailed written guide to help with commonly found issues
  • Tons of small improvements to the core systems and several bug fixes and quality of life changes
  • UPDATE FILES: All - Follow Migration Guide

Update 1.3.1

  • Animal Spawner - Added a small random delay before spawning the animal to prevent all spawners in the level from activating at the exact same time. This provides smoother performance when spawning many animals at the same time
  • Added new Inactive Option “Disable All Components (Aggressive)” and “Disable AI Controller” - with these new options your animals are even more performant while inactive!
  • Added new debug options to the Need System component - allowing you to easily debug the search for nearby water and food
  • Ground Animals - Added improvement to support dead enemies that do not despawn from the level (keep the corpse visible)
  • Bug / Warning Fixes: Fixed several bugs found since the 1.3 release that were causing warnings in the editor

Update 1.3.2

  • Fixed a small issue with multiplayer that caused clients to have a null reference when using the Activation Manager
  • Added batch spawning to Population Control - this smooths out the frame rate if there are many animals that need to spawn at a time
  • Performance Improvement - Added automatic disabling of the camera components to all ground animals and only activate them when they are possessed (controlling a companion)
  • Fixed an issue when sometimes the AI dies but still appears to follow its target while dead.
  • Added a new Dog Companion - it comes with all necessary animations and a 2D blendspace showing how to set this up in ABK to support turn animations!
  • UPDATE FILES: Comp_Animal_ActivationManager, BP_PopulationControl, BP_BTS_SetAIState, BP_GroundAnimalBase, BP_MainPlayerController