Animal Asset Reference
Animals in Unturned™ are NPC entities that roam the map, react to player presence, and provide resources when killed. Each animal species is defined by an animal asset -- a .dat file that specifies its health, damage, speed, AI behavior, attack ranges, sounds, animations, and drops. The animal asset system supports three AI behavior types (Defense, Offense, Ignore) that determine how the animal reacts to player proximity, and a comprehensive set of reward fields that control what the animal drops when killed.
This article is the 57 Studios™ complete reference for the animal asset type. It covers every .dat field in the animal asset, the three behavior AI modes, attack range configuration for both ground targets and vehicle-riding targets, the reward and drop system including deprecated legacy fields, animation variant counts, sound configuration, and localization.

The image above shows a Defense-behavior animal in its Idle state. The animal will flee when the player approaches within detection range, running at its configured Speed_Run value until it reaches a safe distance and returns to grazing.
Documentation source: The animal asset documentation in this article is drawn from the official Smartly Dressed Games modding documentation.
Who this article is for
This article is written for Unturned™ map authors and server operators who want to add custom animal NPCs or modify existing animal behaviors. Familiarity with .dat file syntax and the map editor's NPC placement tools is assumed.
What you will learn
- The complete set of animal asset
.datfields with types, defaults, and purposes - How the three behavior AI modes (Defense, Offense, Ignore) work
- How to configure attack ranges for ground and vehicle targets
- How the reward and drop system works, including deprecated legacy fields
- How to configure sound banks and animation variants
- How animal assets interact with the spawn table system
Animal asset validation at load time
When the server starts, every animal asset is validated against the expected field set. The validation checks that Type is Animal, that GUID and ID are present, and that all required fields have values. Missing required fields produce log warnings but do not prevent the server from starting -- the missing field uses its default value or zero, which may cause unexpected animal behavior.
The validation does not check for semantic errors such as unreachable attack ranges or zero damage on Offense-behavior animals. A wolf with Damage 0 will chase and attack players but deal no damage, which is a configuration error that the validation system does not catch.
Background: how animals work in Unturned
Animals are NPC entities that exist in the game world alongside zombies, players, and vehicles. They are managed by the animal manager system, which handles spawning, despawning, AI behavior, damage, and death. Animals are configured through spawn tables that determine which species appear on which map and at what density.
Each animal species has a single animal asset definition that applies to all instances of that species on the server. The asset defines the species' base properties -- health, damage, speed, behavior type -- and all animals of that species share those values. Individual animals may differ in their current health, position, and AI state, but their capabilities are determined by the asset.
Animals are placed on a map through the level editor's animal spawn system. The editor references animal assets by their ID or GUID, placing spawn points that the animal manager uses to determine where animals of that species appear.
Complete .dat field reference
Identity fields
| Field | Type | Required | Example | Purpose |
|---|---|---|---|---|
GUID | uint128 hex | Yes | a1b2c3d4e5f64a7b8c9d0e1f2a3b4c5d | 128-bit globally unique identifier |
Type | enum | Yes | Animal | Must be Animal for this asset type |
ID | uint16 | Yes | 5001 | Numeric identifier for spawn table references |
Name | string | Yes | CustomDeer | Internal name used for console commands and debug display |
Health and damage fields
| Field | Type | Default | Purpose |
|---|---|---|---|
Health | uint16 | None | Total health value of the animal. When health reaches zero, the animal dies and drops rewards. |
Regen | float | 10 | How often health should be regenerated, in seconds. After the specified amount of time passes, the animal regains 1 health. Defaults to 10 seconds. |
Damage | byte | None | Damage dealt to the player per attack. This is the base damage value before any modifiers. |
The Health field determines how much damage the animal can absorb before dying. A deer might have 50 health, while a bear might have 200 health. The Regen field determines how quickly the animal passively recovers health when not under attack. The Damage field determines how much health the player loses when the animal successfully lands an attack.
Behavior AI field
| Field | Type | Values | Purpose |
|---|---|---|---|
Behaviour | enum | Defense, Offense, Ignore | Determines how the animal reacts to player proximity. |
The Behaviour field is the most important behavioral field on the animal asset. It defines the animal's core AI response to player presence.
Defense behavior causes the animal to flee when alerted by a nearby player. The animal runs away at its configured Speed_Run value until it reaches a safe distance. Defense-behavior animals do not attack players. This is the appropriate behavior for prey animals such as deer, rabbits, and elk.
Offense behavior causes the animal to attack when alerted. The animal moves toward the player at its configured Speed_Run value and initiates an attack sequence when within Horizontal_Attack_Range. Offense-behavior animals attack until the player dies, the animal dies, or the player escapes beyond the animal's pursuit range. This is the appropriate behavior for predator animals such as bears, wolves, and cougars.
Ignore behavior causes the animal to continue its normal activity (walking, grazing) when a player approaches. The animal does not flee and does not attack unless the player attacks it first. When attacked, the animal flees. This behavior is appropriate for neutral animals that do not react to player presence but will defend themselves if provoked.
Speed fields
| Field | Type | Unit | Purpose |
|---|---|---|---|
Speed_Run | float | m/s | Running speed when the animal is fleeing or pursuing a player. Higher values make the animal harder to escape. |
Speed_Walk | float | m/s | Walking speed during normal unalerted activity. The animal uses this speed when grazing, roaming, or idling. |
The ratio between Speed_Run and Speed_Walk determines how dramatically the animal's speed changes when it transitions from calm to alerted. A deer with Speed_Walk 2 and Speed_Run 12 moves six times faster when fleeing. A bear with Speed_Walk 1.5 and Speed_Run 8 moves approximately five times faster when pursuing.
Attack range fields
| Field | Type | Default | Unit | Purpose |
|---|---|---|---|---|
Horizontal_Attack_Range | float | 2.25 | meters | Maximum attack range on the horizontal plane. The animal must be within this distance to land a successful attack. |
Horizontal_Vehicle_Attack_Range | float | 4.4 | meters squared | Maximum attack range on the horizontal plane when the target is inside a vehicle. The larger value compensates for the vehicle's movement and the player's protected position. |
Vertical_Attack_Range | float | 2.0 | meters | Maximum vertical attack range. Controls whether the animal can attack a player who is above or below the animal's elevation. |
Attack_Interval | float | 1.0 | seconds | Minimum seconds between attacks. If the attack duration is longer than the attack interval, the attack duration is used instead. |
The Horizontal_Vehicle_Attack_Range field is a balance mechanism. Players inside vehicles are harder for animals to reach, so the attack range against vehicle-riding targets is approximately double the range against on-foot targets. This prevents players from using vehicles as invincibility platforms while still giving aggressive animals a chance to attack.
Sound fields
| Field | Type | Unit | Purpose |
|---|---|---|---|
Roars | int | count | Total number of roar sounds in Unity. A roar sound is played when the animal attacks. |
Panics | int | count | Total number of panic sounds in Unity. A panic sound is played when the animal is startled. |
The roar and panic fields specify how many distinct sound clips the animal uses for each event. The engine randomly selects one of the available clips each time the event plays. More clips provide more variety and reduce the repetitiveness of the same sound playing every time.
Animation fields
| Field | Type | Default | Purpose |
|---|---|---|---|
Eat_Anim_Variants | int | 1 | Total number of eat animations in Unity. The engine selects randomly from available variants. |
Attack_Anim_Variants | int | 1 | Total number of attack animations in Unity. |
Glance_Anim_Variants | int | 2 | Total number of glance animations in Unity. |
Startle_Anim_Variants | int | 1 | Total number of startle animations in Unity. |
The animation variant fields control visual variety. An animal with multiple eat animations cycles through different grazing behaviors. An animal with multiple attack animations produces more varied combat encounters.
Animation behavior fields
| Field | Type | Default | Purpose |
|---|---|---|---|
Should_Prevent_Move_During_Startle | bool | false | If true, the animal will not start moving until the startle animation finishes playing. |
Should_Play_Anims_On_Dedicated_Server | bool | false | If true, animations play on the dedicated server. This is needed for animals with complicated triggers tied to their attack animations. |
The Should_Prevent_Move_During_Startle field creates a brief pause when the animal is startled, during which the startle animation plays. This pause makes the animal's reaction visible to players. The Should_Play_Anims_On_Dedicated_Server field is a performance toggle. Most animal animations are client-side only to reduce server CPU load. Animals with attack animations that trigger gameplay events (such as hit detection tied to specific animation frames) need server-side animation playback.
Reward and drop fields
| Field | Type | Purpose |
|---|---|---|
Reward_ID | uint16 | ID of the item spawn table to use for drops. This is the modern field for animal drops. |
Reward_XP | uint | Amount of experience to reward on kill. |
Reward_Min | byte | Minimum amount of item drops to reward. Defaults to 3. |
Reward_Max | byte | Maximum amount of item drops to reward. Defaults to 4. |
Meat | uint16 | ID of item to spawn when animal is killed. This is a deprecated field superseded by Reward_ID. |
Pelt | uint16 | ID of item to spawn when animal is killed. This is a deprecated field superseded by Reward_ID. |
The Reward_ID field references an item spawn table that determines what items the animal drops when killed. The Reward_XP field grants experience to the player who killed the animal. The Reward_Min and Reward_Max fields control how many item drops are generated per kill.
The Meat and Pelt fields are legacy fields from an earlier version of the animal system. They are still read by the engine for backward compatibility but are superseded by Reward_ID. New animal assets should use Reward_ID exclusively. If both Reward_ID and the legacy fields are present, Reward_ID takes priority.
Localization
| Field | Type | Purpose |
|---|---|---|
Name | string | Animal name displayed in user interfaces. This field is in the English.dat localization file, not in the main asset .dat. |
The animal's display name is loaded from the localization file (English.dat), not from the asset .dat. The asset .dat contains the internal Name field for identification purposes, but the user-facing name is the one in English.dat.
Worked example: custom wolf asset
The following example defines a custom wolf animal asset with aggressive behavior, moderate health, and a balanced drop table.
GUID b2c3d4e5f6084a7b8c9d0e1f2a3b4c5e
Type Animal
ID 5005
Name CustomWolf
Health 120
Regen 8
Damage 25
Behaviour Offense
Speed_Run 10
Speed_Walk 2
Horizontal_Attack_Range 2.5
Horizontal_Vehicle_Attack_Range 4.5
Vertical_Attack_Range 2.0
Attack_Interval 1.2
Roars 3
Panics 2
Eat_Anim_Variants 2
Attack_Anim_Variants 3
Glance_Anim_Variants 2
Startle_Anim_Variants 1
Should_Prevent_Move_During_Startle true
Should_Play_Anims_On_Dedicated_Server false
Reward_ID 5006
Reward_XP 15
Reward_Min 2
Reward_Max 4The wolf uses Behaviour Offense, Health 120, and Damage 25. It roars when attacking (3 variant sounds) and panics when startled (2 variant sounds). The reward system uses Reward_ID with a spawn table (ID 5006) rather than the deprecated Meat and Pelt fields.
Animal asset behavior reference by species type
| Species type | Behavior | Health | Damage | Typical Speed_Run | Typical role |
|---|---|---|---|---|---|
| Deer | Defense | 50-80 | 0 | 8-12 | Prey, aesthetic wildlife |
| Rabbit | Defense | 15-30 | 0 | 6-10 | Small prey, fast escape |
| Bear | Offense | 150-300 | 30-50 | 6-10 | Top predator, dangerous |
| Wolf | Offense | 80-150 | 20-35 | 8-12 | Pack predator, aggressive |
| Moose | Defense | 100-200 | 15-25 | 6-8 | Large prey, dangerous if provoked |
| Pig | Ignore | 60-100 | 5-10 | 4-6 | Neutral farm animal |
| Chicken | Ignore | 10-20 | 0 | 3-5 | Small farm animal, no attack |
Diagnostic table
| Symptom | Most likely cause | Resolution |
|---|---|---|
| Animal does not react to player | Behaviour is set to Ignore | Change to Defense or Offense based on intended behavior |
| Animal is too fast to escape | Speed_Run is too high | Reduce Speed_Run or increase the player's relative speed |
| Animal attacks through walls | Horizontal_Attack_Range is too large | Reduce the range to match the animal's visual size |
| No sound plays on attack | Roars is 0 or no audio clips exist in Unity | Set Roars to at least 1 and ensure audio clips are in the asset bundle |
| Animal never attacks while player is in a vehicle | Horizontal_Vehicle_Attack_Range is too low | Increase the range to make vehicle attacks possible |
| Meat or Pelt items do not drop | Using deprecated fields that Reward_ID overrides | Remove deprecated fields and use Reward_ID exclusively |
| Animal stands still after being startled | Should_Prevent_Move_During_Startle is true and the startle animation is long | Reduce the startle animation duration or set the field to false |
| Experience not granted on kill | Reward_XP is 0 or not set | Set Reward_XP to the desired experience amount |
| Animal has too few drops | Reward_Max is set to the same value as Reward_Min | Increase Reward_Max to create a range with possible variation |
Frequently asked questions
Can I make an animal that is neutral until attacked?
Set Behaviour to Ignore. The animal ignores players until the player attacks it. After being attacked, the animal flees. If you want the animal to fight back after being attacked, you would need custom AI behavior that a plugin implements -- the vanilla animal AI only supports flee-on-attack for Ignore behavior.
What happens if Health is set to 0?
An animal with 0 health dies immediately on spawn. The animal manager spawns the entity, the health check fails, and the animal dies and drops its rewards before the player can interact with it. This is not a useful configuration for normal gameplay.
Can two animal species share the same ID?
No. Each animal species must have a unique ID. If two animal assets share the same ID, the behavior is undefined and may cause spawn table references to resolve to the wrong species.
How do I add new animal sounds?
Animal sounds must be placed in the Unity asset bundle that contains the animal's prefab. The sound clips must be named according to the convention that the animation controller expects. The Roars and Panics fields must accurately reflect the number of clips in the bundle.
Can animals drop different items based on how they were killed?
No. The drop system is deterministic: every kill produces items from the same Reward_ID spawn table with the same Reward_Min and Reward_Max counts. There is no kill-method-based drop differentiation in the vanilla system.
How do I configure an animal that is always aggressive regardless of distance?
Set Behaviour Offense, set Horizontal_Attack_Range to the desired detection range, and ensure the animal's pursuit AI does not have a range limit. The animal will pursue any player it detects within the configured range.
Can animals damage vehicles?
Animals attack players inside vehicles but do not damage the vehicle itself. The Damage field applies only to player health. Vehicle damage from animals requires a plugin that intercepts the attack event and applies damage to the vehicle.
How do I create an animal that drops items only sometimes?
Use the Reward_Min and Reward_Max fields to create a variable drop count range. Set Reward_Min 0 and Reward_Max 4 to produce 0-4 drops per kill. The spawn table referenced by Reward_ID determines which items are selected from. For truly probabilistic drops (a 30% chance of a rare item), configure the spawn table with appropriate weights.
Does the animal asset affect the animal's spawn rate?
No. The spawn rate is controlled by spawn tables in the level asset, not by the animal asset. The animal asset defines the species' capabilities; the spawn table defines how many animals of that species exist on the map.
How do I make an animal that only appears at night?
The animal asset itself does not support time-of-day restrictions. Time-based spawning requires either configuration in the level's spawn tables (if the spawn table system supports time filtering) or a plugin that manages animal spawns based on the in-game time.
Can an animal have multiple attack types?
No. Each animal species has a single Damage value and a single attack animation set. There is no mechanism for light attacks, heavy attacks, or special attacks in the vanilla animal asset system.
What happens if Horizontal_Attack_Range is larger than the animal's visual model?
The animal can attack players who appear to be out of reach. This produces a visual disconnect where the player takes damage without seeing the animal's model make contact. Keep the attack range within the visual reach of the animal's model.
Can I make an animal that cannot be killed but can be scared away?
Set Health to a very high value (e.g., 65535, the uint16 maximum) and Behaviour to Defense. The animal will flee when approached and cannot reasonably be killed by standard weapons. This is useful for environmental set dressing animals that should persist across play sessions.
Animal AI state machine
The animal AI operates as a simple state machine with transitions triggered by player proximity, damage, and time.
States
Idle. The animal is calm and performing normal activities. It walks at Speed_Walk, occasionally plays eat or glance animations, and stays within its spawn area. The animal detects player proximity during this state.
Alerted. The animal has detected a player. The response depends on the Behaviour field: Defense animals enter the Fleeing state, Offense animals enter the Pursuing state, and Ignore animals remain Idle.
Fleeing. The animal runs away from the detected threat at Speed_Run. It continues fleeing until it reaches a safe distance, at which point it returns to Idle. The fleeing direction is away from the threat source.
Pursuing. The animal moves toward the detected threat at Speed_Run. When within Horizontal_Attack_Range, it initiates an attack. It continues pursuing until the threat is eliminated, the animal dies, or the threat escapes beyond the pursuit range.
Attacking. The animal plays an attack animation and deals Damage to the target. The attack cooldown is governed by Attack_Interval. After the cooldown, the animal returns to Pursuing or Idle depending on the threat state.
The state machine is evaluated on each AI tick. The tick interval is managed by the animal manager and is not configurable per species.
Animal asset file structure
An animal asset requires the following files in the Workshop content structure:
Workshop/Content/304930/<modID>/
└── Animals/
└── MyAnimal/
├── MyAnimal.dat ← main asset definition
└── English.dat ← display name localizationThe animal's Unity prefab (3D model, animations, audio) is packaged in a master bundle. The bundle and the prefab structure are beyond the scope of this article but are covered in the Master Bundle Export article.
Best practices
- Use
Behaviour Defensefor prey animals that should flee,Behaviour Offensefor predators that should attack, andBehaviour Ignorefor neutral animals that should not react until attacked. - Set
Horizontal_Vehicle_Attack_Rangeto approximately double theHorizontal_Attack_Rangefor predator animals to prevent vehicles from being invincibility platforms. - Use
Reward_IDfor all new animal assets and omit the deprecatedMeatandPeltfields. - Configure multiple roar and panic sound variants (at least 2-3 each) for animals that players encounter frequently.
- Set
Should_Play_Anims_On_Dedicated_Servertotrueonly if the animal's attack animation contains trigger events that affect gameplay. - Keep
Reward_MinandReward_Maxvalues balanced against the difficulty of killing the animal.
Appendix A: Quick reference table
| Field | Type | Required | Default |
|---|---|---|---|
GUID | uint128 | Yes | -- |
Type | enum | Yes | -- |
ID | uint16 | Yes | -- |
Health | uint16 | Yes | -- |
Regen | float | No | 10 |
Damage | byte | Yes | -- |
Behaviour | enum | Yes | Defense |
Speed_Run | float | Yes | -- |
Speed_Walk | float | Yes | -- |
Horizontal_Attack_Range | float | No | 2.25 |
Horizontal_Vehicle_Attack_Range | float | No | 4.4 |
Vertical_Attack_Range | float | No | 2.0 |
Attack_Interval | float | No | 1.0 |
Roars | int | No | 0 |
Panics | int | No | 0 |
Eat_Anim_Variants | int | No | 1 |
Attack_Anim_Variants | int | No | 1 |
Glance_Anim_Variants | int | No | 2 |
Startle_Anim_Variants | int | No | 1 |
Should_Prevent_Move_During_Startle | bool | No | false |
Should_Play_Anims_On_Dedicated_Server | bool | No | false |
Reward_ID | uint16 | No | 0 |
Reward_XP | uint | No | 0 |
Reward_Min | byte | No | 3 |
Reward_Max | byte | No | 4 |
Meat | uint16 | No | 0 (deprecated) |
Pelt | uint16 | No | 0 (deprecated) |
Appendix B: Animal asset behavior templates
Passive prey template (deer, rabbit)
Behaviour Defense
Health 60
Damage 0
Speed_Run 10
Speed_Walk 2
Horizontal_Attack_Range 0Defense behavior with zero damage produces a harmless fleeing animal.
Aggressive predator template (bear, wolf)
Behaviour Offense
Health 150
Damage 35
Speed_Run 10
Speed_Walk 2
Horizontal_Attack_Range 3.0
Attack_Interval 1.5Offense behavior with moderate damage produces a pursuit-type predator.
Neutral farm animal template (pig, cow)
Behaviour Ignore
Health 80
Damage 0
Speed_Run 5
Speed_Walk 1.5
Horizontal_Attack_Range 0Ignore behavior with zero damage produces a placid animal that does not react to players.
Appendix C: Common animal asset configuration mistakes
| Mistake | Symptom | Correction |
|---|---|---|
| Health too low for Behavior Offense | Animal dies in one hit before dealing damage | Increase Health to at least 100 for predators |
| Speed_Run equals Speed_Walk | No visible speed change when alerted | Set Speed_Run to 3-5x Speed_Walk |
| No Roars configured | Silent attacks | Set Roars to at least 1 |
| Reward_Min > Reward_Max | Inconsistent drop behavior | Ensure Reward_Min <= Reward_Max |
| Deprecated Meat field used instead of Reward_ID | Meat overrides not working correctly | Switch to Reward_ID with a spawn table |
Appendix D: External references
- Smartly Dressed Games modding documentation -- official reference for animal assets and all
.datfields. - Airdrop Asset Reference -- the previous article; covers airdrop asset configuration.
- Zombie Difficulty Asset Reference -- the next article; covers zombie difficulty assets.
- Spawn Tables -- the spawn table article; covers how animal spawns are configured on maps.
Document history
| Version | Date | Author | Notes |
|---|---|---|---|
| 1.0 | 2026-07-26 | 57 Studios | Initial publication. Complete animal asset .dat field reference, behavior AI documentation, attack range configuration, reward system, and worked example. |
Authoring checklist
- [ ] Animal GUID is unique and generated fresh
- [ ]
Type Animalis specified - [ ]
Behaviouris set to the intended AI mode (Defense, Offense, Ignore) - [ ]
HealthandDamageare balanced for the intended difficulty - [ ]
Speed_RunandSpeed_Walkprovide appropriate speed contrast - [ ] Attack ranges are configured for both ground and vehicle targets
- [ ] Sound and animation variant counts match the available assets in Unity
- [ ] Reward system uses
Reward_IDinstead of deprecated fields - [ ] Localization entry exists in
English.datfor the display name
Animal asset Unity prefab requirements
Each animal species requires a Unity prefab with an Animator component, a 3D mesh, and audio sources.
Animator requirements
The Animator must have states named according to the animation variant fields. If Eat_Anim_Variants 2, the Animator needs two eat animation states. If Attack_Anim_Variants 3, three attack animation states are needed. The state names must follow the convention expected by the animal manager.
Mesh requirements
The animal mesh should have a reasonable polygon count for the species' role. A deer or bear as a primary gameplay element may have 2000-5000 triangles. A chicken as background dressing may have 200-500 triangles. Use LOD groups for animals that can be viewed at multiple distances.
Cross-references
- Airdrop Asset Reference -- the previous article; covers airdrop asset configuration.
- Zombie Difficulty Asset Reference -- the next article; covers zombie difficulty scaling parameters.
- Spawn Tables -- covers animal spawn point configuration on maps.
- Custom NPCs, Dialogues, and Quests -- covers NPC configuration beyond animals.
- Smartly Dressed Games modding documentation -- official animal asset field reference.
- Unturned on Steam -- Unturned™ store page.
The animal asset system is one of the simpler NPC configuration systems in Unturned™. With approximately 20 configurable fields, three behavior modes, and a straightforward reward system, a custom animal species can be authored in 15-30 minutes by a modder familiar with the .dat format. The species then appears on any map that includes it in its spawn tables and interacts with players according to the configured behavior mode.
The balance between animal health, damage, speed, and behavior type determines the animal's role in the game world. Prey animals with Defense behavior and low health provide atmosphere and renewable resources. Predators with Offense behavior and high health create danger zones that players must navigate carefully.
The animal asset reference above covers every .dat field that defines an animal species. The behavior AI system, attack range configuration, reward system, and animation variant fields give map authors the tools needed to create wildlife that feels appropriate to their map's setting and difficulty. With the three behavior modes and variable stat ranges, the animal asset system supports everything from harmless ambient wildlife to deadly predators.
The animal asset field reference, behavior AI documentation, and worked examples in this article provide everything needed to author custom animal species. Whether creating passive wildlife for atmosphere or aggressive predators for gameplay challenge, the fields are the same -- only the values change. The animal asset system has remained stable across recent Unturned™ versions, and custom animal species created today will continue to work in future updates.
The three behavior modes -- Defense, Offense, and Ignore -- cover the full range of animal behaviors that the vanilla game supports. Map authors who need behaviors beyond these three modes must implement custom AI through the plugin system.

