Arma 3 Scripting

Function in Ambient

BIS_fnc_animalSiteSpawn

Also available as Markdown and JSON, or read the original wiki page.

Description

Create an area that spawns animals. The animals will be created or deleted if a player is inside or outside the area's radius.

Syntax

[animalSite, classnamesToSpawn, radius] call BIS_fnc_animalSiteSpawn

Parameters:

Returns: Script Handle

Examples

Example 1

[player, ["rabbit_f", "turtle_f", "hen_random_f"], 200] call BIS_fnc_animalSiteSpawn;

See also

Arma 3: CfgVehicles Animals

Community notes

DreadedEntity

The only way to stop the animals from spawning is to delete the object. When using this function, I recommend creating a non-solid object (almost anything from the "Objects (Helpers)" list in the editor, and using hideObjectGlobal on it. Using setVariable you can add the animal site to a reference object to find it easily when you want to delete it.

private _obj = createVehicle ["Sign_Sphere10cm_F", getPos player, [], 0, "CAN_COLLIDE"];
hideObjectGlobal _obj;
player setVariable ["animalSite", _obj];
_obj = nil;

There are two hidden variables, "animalCount" and "radius". Use setVariable on the object to change these.

animalCount is supposed to limit the amount of animals that can spawn. In the code, the algorithm for this is hard to understand.

radius refers to how far away from the object the animals can spawn.

Both are numbers.

The "area" is imaginary. It is not a tangible area defined by trigger or marker radius, the area is only saved as an integer within the function.