If you want to create your own custom AST you need to modify “ast_definitions.json” which is located in:

Black Ops 3 Root\share\raw\animtables

This file u can copy to your mod/map folder.
NOTE: U don’t have to add this into your .zone file. It will automatically recognize.

Mod/Map Root\animtables

You only need to add another JSON object at the bottom for example.

	"name": "_custom_move_speed",
	"parentColumn": null,
	"desired": false,
	"type": "enum",
	"possibleValues": [
	"outputColumn": false

In script you need to register the function or else it won’t work. Make sure it’s on a callback function when the AI is spawned. For example how they have it with the zombie dogs.

array::thread_all( level.dog_spawners,&spawner::add_spawn_function,&dog_init );

Add this to register the custom AST

//AST Name, Default Value, Getter Function

BB_REGISTER_ATTRIBUTE("_custom_move_speed", "walk", &custom_move_speed); //This registers the AST

self.custom_move_speed = "walk"; //With this u change the speed, can be (walk, run, sprint) just like the values in the JSON object.

//This is the getter function that returns the value that is set on the AI

function custom_move_speed()
	return self.custom_move_speed; //The value u have set

//You need to include these at the top of your script
#using scripts\shared\ai\systems\blackboard;
#insert scripts\shared\ai\systems\blackboard.gsh;

Now in the AI_AST file you need to add the new AST definition.


Now you are able to control which anim should be selected.