Farm Asset Reference
A farm asset in Unturned™ defines a placeable seed or plant that, when placed on suitable terrain, grows over time into a harvestable crop. Farm assets - also referred to as plants or crops - are defined by the ItemFarmAsset class, which inherits from BarricadeAsset. When a seed is planted, it progresses through its growth cycle over a configured duration, can be accelerated by rainfall or fertilizer, and ultimately yields one or more harvestable items before the plant is consumed. The farm asset system is Unturned™'s survival-crafting agriculture mechanic: players plant seeds, tend the growing crop, and harvest the mature plant for food, crafting materials, or trade goods.
This article is the 57 Studios™ canonical reference for the farm asset type. It covers every .dat field specific to the ItemFarmAsset subclass, the growth mechanics that govern plant progression, the harvest system that controls yield, the interaction between soil type restrictions and placement rules, the rainfall and fertilizer acceleration systems, the Harvest_Rewards system for NPC-style reward lists, and the multi-harvest calculation that uses the inherited Health field to determine how many times a plant can be harvested before it is exhausted.

Documentation source: This article references the official Smartly Dressed Games modding documentation for field definitions and game behavior. Community-validated notes are marked where the official documentation is silent on a detail.
Who this article is for
This article is written for Unturned™ mod authors who have already completed at least one barricade mod and are familiar with the master bundle pipeline and .dat authoring workflow. If you are new to Unturned™ modding, start with Project Folder Structure and GUIDs and How to Install Notepad++ before returning here. An understanding of the barricade system (placement, health, ownership) is assumed; the Objects, Structures, and Barricades Asset Guide covers that prerequisite ground.
What you'll learn
- The full
.datfield set for farm assets, including inherited barricade fields - How the growth system works: the
Growthtimer, rainfall acceleration, and fertilizer mechanics - How the harvest system determines yield:
Grow,Grow_SpawnTableGUID,Harvest_Reward_Experience, andHarvest_Rewards - The multi-harvest mechanic: how the inherited
Healthfield enables multiple harvests from a single plant - How
Affected_By_Agriculture_Skillmodifies harvest yield based on the player's skill level - How
Ignore_Soil_Restrictionsand the soil material system control where plants can be placed - The
Allow_FertilizerandRain_Affects_Growthtoggles - Worked examples covering single-harvest, multi-harvest, and spawn-table-crop configurations
- The interaction between farm assets and the existing melee and resource systems
Background: how the farm system works
The Unturned™ farm system models a complete crop lifecycle. A seed item is placed by the player onto terrain or soil-like surfaces. The seed germinates and grows over a period defined by the Growth field, measured in seconds. During this growth period, the plant progresses through visual stages (seedling, maturing, mature). The growth can be accelerated by two independent mechanisms: rainfall (if Rain_Affects_Growth is true) and fertilizer (if Allow_Fertilizer is true). Rainfall instantly completes the growth of any rain-exposed plant when the weather system transitions to rain. Fertilizer instantly completes growth when applied by the player.
Once the plant is fully grown, the player can harvest it. Harvesting deals 2 damage to the plant (this is hardcoded in the engine, not configurable through .dat fields). The number of times a plant can be harvested before destruction is determined by Health / 2. A plant with Health 10 can be harvested 5 times; a plant with Health 4 can be harvested 2 times; a plant with Health 1 can be harvested once and is consumed on that single harvest.
As shown in the state diagram above, the farm asset cycles through a grow-harvest loop until the plant's health is exhausted.
The rainfall acceleration mechanism
When Rain_Affects_Growth is true, the engine checks the weather state periodically. If the weather transitions to rain on the current map (an environmental event that occurs on maps with weather enabled), any plant that is exposed to the sky and is still in its growing state instantly becomes mature. The rainfall check is not continuous - it fires at weather-state transitions. A plant placed on a non-rain map or in an enclosed structure with a roof will not be accelerated by rainfall, even if the field is true.
The fertilizer instant-grow mechanism
When Allow_Fertilizer is true, the player can use a consumable fertilizer item on the growing plant to instantly mature it. The fertilizer item is a separate asset type in Unturned™'s item system. The cohort recommendation is to make fertilizer available as a mid-game crafting item so that players can accelerate their crop cycles without relying on weather.
File and folder structure
A complete farm mod requires the following files:
Workshop/Content/304930/<modID>/
├── Bundles/
│ └── <BundleName>.unity3d ← master bundle containing the prefab
└── Items/
└── MyCrop/
├── Asset.dat ← farm configuration
└── English.dat ← display name and descriptionThe folder name, the .dat filename stem, and the internal Name field should all match for consistency, though the engine does not enforce this equality.
Complete .dat field reference
Identity and barricade inheritance fields
Farm assets inherit all barricade identity fields from BarricadeAsset. The fields below are the minimum identity block for any farm item.
| Field | Type | Example | Required | Purpose |
|---|---|---|---|---|
ID | uint16 | 4020 | Yes | Numeric item ID. Must be unique across all loaded mods. Use IDs in the 50000+ range to avoid collision with vanilla and established community mods. |
GUID | uint128 hex | a1b2c3d4e5f64a7b8c9d0e1f2a3b4c5d | Yes | 128-bit globally unique identifier. Generate a new GUID for every new item. Never reuse GUIDs. |
Type | enum | Farm | Yes | Must be Farm for farm items. |
Useable | enum | Barricade | Yes | Must be Barricade - farm items are a barricade subtype. |
Build | enum | Farm | Yes | Must be Farm - this is the build type that drives the placement logic. |
Name | string | MyCrop | Yes | Internal name. Used in console commands and cross-reference in other .dat files. |
Rarity | enum | Common | No | Controls the inventory highlight color. Values: Common, Uncommon, Rare, Epic, Legendary, Mythical. Defaults to Common. |
Slot | enum | None | No | Farm items are placed in the world, not equipped into a player hand slot. |
Size_X | uint8 | 1 | Yes | Width in inventory grid cells. Seeds are typically 1 wide. |
Size_Y | uint8 | 1 | Yes | Height in inventory grid cells. Seeds are typically 1 tall. |
Growth and harvest fields
The fields below are unique to the ItemFarmAsset class and control the growth cycle and harvest mechanics.
| Field | Type | Required | Default | Example | Purpose |
|---|---|---|---|---|---|
Growth | uint | No | engine-defined | 300 | The growth duration in seconds before a planted seed becomes harvestable. A value of 300 means 5 minutes. This timer runs in real time, not in-game time. |
Grow | ushort | No | 0 | 4021 | Legacy numeric ID of the item to spawn when the crop is harvested. Use Grow_SpawnTableGUID for modern mods. This field is the older, single-item yield method; the spawn table method supports weighted random drops. |
Grow_SpawnTableGUID | GUID | No | not set | b9c3d4e5f6a74a8b9c0d1e2f3a4b5c6e | GUID of the spawn table to use when determining which item to spawn on harvest. Preferred over Grow for mods that need varied drops or weighted random selection. If both Grow and Grow_SpawnTableGUID are present, Grow_SpawnTableGUID takes precedence in modern Unturned versions. |
Harvest_Reward_Experience | uint | No | 1 | 10 | The amount of experience the player gains upon harvesting the crop. This is a flat value per harvest action, not per item yielded. |
Harvest_Rewards | NPC reward list | No | not set | Advanced | An NPC-style reward list granted when harvesting the grown plant. This field supports the full reward system syntax (items, experience, quest flags, teleports). See the official SDG rewards documentation for the complete syntax. |
Growth modifier fields
| Field | Type | Required | Default | Purpose |
|---|---|---|---|---|
Affected_By_Agriculture_Skill | bool | No | true | If true, the amount of crops acquired when harvesting the plant is affected by the Agriculture skill level. Higher skill levels produce more yield per harvest. |
Allow_Fertilizer | bool | No | true | If true, allows the player to use a consumable fertilizer item on the plant to instantly complete its growth cycle. |
Rain_Affects_Growth | bool | No | true | If true, the plant will instantly finish growing after rainy weather begins. Only applies on maps with weather enabled and to plants exposed to open sky. |
Ignore_Soil_Restrictions | bool | No | false | If false, the plant can only be placed on terrain materials categorized as soil. If true, the plant can be placed on any terrain material type. |
Health and multi-harvest mechanics
Farm assets inherit the Health field from ItemAsset. In standard items, Health is the maximum hit points of the placed entity. For farm assets specifically, the engine repurposes Health to determine the number of times a mature plant can be harvested before it is consumed.
The core formula is:
Harvests possible = floor(Health / 2)Each harvest action deals exactly 2 damage to the plant. When Health reaches 0, the plant is removed from the world on the next harvest. This is hardcoded - the 2 damage per harvest is not configurable through any .dat field.
| Health value | Harvests possible | Effect |
|---|---|---|
| 1 | 1 | Plant is consumed in one harvest. No regrowth. |
| 2 | 1 | Plant is consumed in one harvest (2 damage equals the Health). |
| 4 | 2 | Two harvests before the plant is exhausted. |
| 6 | 3 | Three harvests. |
| 10 | 5 | Five harvests. |
| 20 | 10 | Ten harvests. Useful for high-yield farming. |
Multi-harvest plant design
A plant with Health 10 is the sweet spot for most farming scenarios: five harvests per seed gives the player a meaningful return on the planting investment without making the crop indestructible. For a high-yield, rare crop (a coffee plant, a magical herb), consider Health 20 (10 harvests) with a longer Growth timer to balance the extended yield window.
Growth timer and skill interaction
The Growth timer runs continuously while the plant is in the world, regardless of whether any player is near the plant. The timer does not require player proximity or server tick activity - it uses the server's real-time clock. A plant with Growth 3600 (1 hour) will become harvestable exactly 3,600 seconds after placement, even if the player who placed it has logged off and returned later.
Agriculture skill effect on harvest yield
When Affected_By_Agriculture_Skill is true, the player's Agriculture skill level increases the item yield from each harvest. The engine applies a skill-based multiplier to the base yield of Grow or to the spawn table's output quantity. Higher skill levels produce more items per harvest action. The exact multiplier formula is defined by the engine and is not configurable through the farm asset .dat. The skill interaction is one-directional - it only increases yield; it never decreases the base yield below the default.
Soil restrictions and placement validation
The Ignore_Soil_Restrictions field controls whether the plant validates the terrain material before allowing placement. When false (the default), the engine checks whether the terrain material at the placement point is categorized as soil. Soil materials in Unturned™ include the vanilla grass, dirt, and farmland material types. If the material is not soil, the placement fails silently - the plant simply does not appear and the seed item is returned to the player's inventory.
When true, the soil check is bypassed entirely. The plant can be placed on any terrain material (sand, stone, asphalt, metal grating, building floors). This allows indoor farming on non-soil surfaces but also permits plants on inappropriate surfaces that would look out of place in the game world.
Complete .dat example: single-harvest tomato plant
A fast-growing single-harvest food crop. The plant matures in 2 minutes, yields a single tomato item, and is consumed on harvest.
ID 50410
GUID a1b2c3d4e5f64a7b8c9d0e1f2a3b4c5d
Type Farm
Useable Barricade
Build Farm
Name TomatoPlant
Rarity Common
Slot None
Size_X 1
Size_Y 1
Growth 120
Grow 50411
Harvest_Reward_Experience 5
Health 1Companion English.dat:
Name Tomato Seeds
Description Fast-growing tomato seeds. Matures in 2 minutes. Single harvest.Complete .dat example: multi-harvest wheat crop
A medium-growth multi-harvest crop that can be harvested three times before exhaustion. Uses a spawn table for varied drops (wheat stalks, straw, seeds).
ID 50412
GUID b2c3d4e5f6a74a8b9c0d1e2f3a4b5c6e
Type Farm
Useable Barricade
Build Farm
Name WheatCrop
Rarity Common
Slot None
Size_X 1
Size_Y 1
Growth 600
Grow_SpawnTableGUID c3d4e5f6a7b84a9c0d1e2f3a4b5c6d7e
Harvest_Reward_Experience 10
Health 6
Affected_By_Agriculture_Skill true
Allow_Fertilizer true
Rain_Affects_Growth true
Ignore_Soil_Restrictions falseCompanion English.dat:
Name Wheat Seeds
Description Medium-growth wheat crop. 10 minutes to mature. Yields 3 harvests per seed. Requires soil. Affected by Agriculture skill.Complete .dat example: indoor herb garden
A high-yield multi-harvest crop designed for indoor farming with soil restrictions bypassed. Fast growth and shallow roots allow placement on any surface.
ID 50414
ID c3d4e5f6a7b84a9c0d1e2f3a4b5c6d7e
Type Farm
Useable Barricade
Build Farm
Name HerbGarden
Rarity Uncommon
Slot None
Size_X 1
Size_Y 1
Growth 180
Harvest_Reward_Experience 3
Health 10
Affected_By_Agriculture_Skill false
Allow_Fertilizer true
Rain_Affects_Growth false
Ignore_Soil_Restrictions trueCompanion English.dat:
Name Herb Garden Seeds
Description Fast-growing aromatic herbs for indoor farming. 3 minutes to mature. Up to 5 harvests. Does not require soil.Complete .dat example: rare magical mushroom
A slow-growing, high-value multi-harvest crop with experience rewards tuned for mid-game PvE progression. Uses Harvest_Rewards for NPC-style reward list distribution.
ID 50416
GUID d3e4f5a6b7c94a0d1e2f3a4b5c6d7e8f
Type Farm
Useable Barricade
Build Farm
Name ManaShroom
Rarity Rare
Slot None
Size_X 1
Size_Y 1
Growth 3600
Harvest_Reward_Experience 50
Health 4
Affected_By_Agriculture_Skill true
Allow_Fertilizer false
Rain_Affects_Growth false
Ignore_Soil_Restrictions trueCompanion English.dat:
Name Mana Shroom Spores
Description Slow-growing magical mushroom. 1 hour to mature. 2 harvests per seed. High experience reward. Not affected by fertilizer or rain.Growth and harvest lifecycle
The complete lifecycle from planting to exhaustion follows a predictable sequence. Understanding each phase helps modders tune the Growth, Health, and yield fields to produce the intended gameplay experience.
As shown in the flowchart above, the plant cycles through growth acceleration checks (rain and fertilizer) before reaching maturity, then enters a harvest loop until health is exhausted.
Growth optimization strategies
The three growth acceleration mechanisms - time, rainfall, and fertilizer - form an optimization triangle that players can leverage for efficient farming.
| Strategy | Mechanism | Player effort | Risk |
|---|---|---|---|
| Passive growth | Wait for Growth timer | None | Slow; no player involvement needed |
| Weather-dependent | Rain_Affects_Growth true | None (if map supports rain) | Unpredictable; maps without weather never trigger rain |
| Fertilizer rush | Allow_Fertilizer true | Must craft or find fertilizer | Consumes fertilizer item; costs resources |
| Combined | All three active | Minimal | Most reliable path; multiple safety nets |
For survival servers, the cohort recommendation is to set all three acceleration paths to true so that players have multiple ways to speed up their farming cycle. For quest-specific plants where the growth speed should be fixed, disable both Rain_Affects_Growth and Allow_Fertilizer and set Growth to the intended duration.
Harvest yield and the spawn table system
The Grow_SpawnTableGUID field connects the farm asset to the spawn table asset system. The spawn table defines weighted entries that determine which items are yielded on each harvest. Using a spawn table instead of the legacy Grow field gives modders several advantages:
- Multiple item types per harvest (e.g., wheat + straw + seeds)
- Weighted random selection for varied outcomes
- Quantity variation through the spawn table's count fields
- Connection to the broader spawn table economy for consistency
The legacy Grow field accepts a single uint16 item ID and always yields exactly one of that item per harvest. For modern mods, the cohort recommendation is to use Grow_SpawnTableGUID with a spawn table that contains the primary harvest item at high weight and occasional bonus items at lower weight.
Harvest_Reward_Experience vs Harvest_Rewards
Two separate fields control experience and item rewards on harvest.
Harvest_Reward_Experience is a simple uint value. Every harvest action grants this many experience points to the player. The value is flat - it does not scale with skill, luck, or any other factor. A plant with Harvest_Reward_Experience 10 grants exactly 10 XP per harvest, regardless of the plant's Health or how many harvests remain.
Harvest_Rewards is an NPC-style reward list that supports the full Unturned™ reward system syntax. This field can grant items, experience, quest flags, teleport effects, and other complex reward behaviors. The Harvest_Rewards system is documented in the official SDG rewards documentation and is the same system used by NPC quest completion rewards. For most farm assets, Harvest_Reward_Experience is sufficient; use Harvest_Rewards only when you need complex reward logic (conditional rewards, multiple item types with different quantities, or non-item rewards like teleportation).
Crop visual stages
The prefab for a farm asset should provide visual differentiation between the planted and mature states. Unlike other barricade types, farm assets ideally show a visual progression as the plant grows. The engine supports multiple visual stages through the prefab hierarchy. The cohort-validated approach is to include two sub-meshes in the prefab: a seedling sub-mesh (visible during the growth phase) and a mature sub-mesh (visible after the growth timer completes or an acceleration event triggers).
MyCropPrefab (root, with InteractableFarm script)
├── Seedling (MeshRenderer + MeshFilter - small plant, visible during growth)
└── Mature (MeshRenderer + MeshFilter - full-size plant, visible when harvestable)The InteractableFarm script handles the state transition between seedling and mature states. The script checks the growth status at regular intervals and switches visibility between the two sub-meshes. For a minimal implementation without visual stages, a single static mesh can be used for both states.
Prefab visual requirements
| Requirement | Details |
|---|---|
| Polygon budget | 200-1000 tris total (plants are small, low-poly items) |
| Seedling mesh | 200-400 tris, compact form factor |
| Mature mesh | 400-1000 tris, full plant form |
| Scale | Real-world plant scale; a tomato plant is approximately 30-50 cm tall |
| Pivot origin | At the base of the plant, aligned with the terrain surface |
| Collider | A simple box or sphere collider covering the mature plant's volume |
Soil material compatibility table
The following table documents which vanilla terrain materials are considered soil materials by the engine. This list is from the vanilla material configuration and may be extended by mods that add custom terrain materials.
| Material | Soil? | Notes |
|---|---|---|
| Grass | Yes | Standard soil material |
| Dirt | Yes | Tilled farmland |
| Farmland | Yes | Pre-tilled soil material |
| Sand | No | Beach and desert surfaces |
| Stone | No | Rocky surfaces |
| Asphalt | No | Paved surfaces |
| Metal | No | Floor plates, industrial surfaces |
| Carpet | No | Interior floor surfaces |
| Wood | No | Wooden floors and decks |
| Gravel | No | Path and road surfaces |
When Ignore_Soil_Restrictions is false, the plant can only be placed on the three soil materials in the table above. When true, all materials accept placement.
Diagnostic table
| Symptom | Most likely cause | Resolution |
|---|---|---|
| Seed cannot be placed on terrain | Ignore_Soil_Restrictions is false and terrain material is not soil | Change terrain to a soil material or set Ignore_Soil_Restrictions true |
| Seed placed but never matures | Growth set too high or acceleration mechanics disabled and no rain occurs | Reduce Growth or enable Rain_Affects_Growth or Allow_Fertilizer |
| Plant visually present but cannot be harvested | Prefab missing InteractableFarm script | Attach InteractableFarm to prefab root, rebuild bundle |
| Harvest produces no items | Grow set to 0 and Grow_SpawnTableGUID not configured | Set Grow to a valid item ID or configure Grow_SpawnTableGUID |
| Harvest produces wrong item | Grow or Grow_SpawnTableGUID points to incorrect item or spawn table | Verify the ID or GUID matches the intended item or spawn table |
Plant consumed after one harvest despite high Health | Health set to 1 or 2 (consumed on first harvest) | Increase Health to 4 or higher for multi-harvest behavior |
Plant not consumed despite low Health | Odd Health values produce floor calculations - verify Health / 2 rounds correctly | Set Health to an even number for predictable multi-harvest counts |
| Fertilizer does not work on plant | Allow_Fertilizer is false | Set Allow_Fertilizer true in .dat |
| Rain does not accelerate growth | Rain_Affects_Growth is false or map does not support weather | Set Rain_Affects_Growth true; verify the map has weather enabled |
| Growth timer seems inconsistent | Timer runs in real time, not game time; server load can affect timing | Inform players that growth is based on real-world clock, not in-game day cycles |
Harvest_Reward_Experience not granted | Field not set or set to 0 | Set a positive integer value (e.g., 10) |
| Agriculture skill does not affect yield | Affected_By_Agriculture_Skill is false | Set Affected_By_Agriculture_Skill true |
Grow_SpawnTableGUID set but plant yields nothing from harvest | GUID is incorrect or spawn table has no valid entries | Verify the GUID and confirm the spawn table contains configured item entries |
| Plant appears at wrong scale in world | Non-unit scale on the prefab root in Unity | Set prefab root scale to 1,1,1 and adjust mesh scale in Blender instead |
| Plant can be picked up instead of harvested | Prefab script type not set to Farm | Confirm Type field is Farm in .dat |
| Plant health depletes faster than calculated | Another player or entity is damaging the plant | Plant can be damaged by non-harvest sources (zombie attacks, explosions, other players) |
| Plant disappears after server restart | Growth state is not persisted for plants that have not yet matured | Notify server operators that immature plants will need replanting after a restart |
Harvest_Rewards configured but has no effect | Syntax error in the NPC reward list format | Consult the SDG rewards documentation for the correct Harvest_Rewards syntax |
Best practices
- Set
Healthto an even number for predictable multi-harvest counts. An oddHealthvalue like5producesfloor(5 / 2)= 2 harvests (the third harvest would apply 2 damage reducing Health to 1, but the formula counts only full 2-damage increments). - Use
Grow_SpawnTableGUIDinstead of the legacyGrowfield for new farm mods to support weighted random drops and varied yields. - Keep
Growthat or below 3,600 seconds (1 hour) for standard crops. Longer growth timers produce player frustration in typical survival gameplay. - Set all three growth acceleration paths (
Rain_Affects_Growth,Allow_Fertilizer, and passive time) totruefor survival-oriented crops. - Disable rainfall and fertilizer for quest-specific plants where the growth timeline must be fixed and predictable.
- Set
Affected_By_Agriculture_Skill truefor food crops (players invested in Agriculture should feel rewarded) andfalsefor decorative or quest plants (where yield consistency matters). - Author
Harvest_Reward_Experienceproportional to the difficulty of getting the plant to maturity: a fast-growing 2-minute crop should grant 3-5 XP; a slow-growing 1-hour crop should grant 30-50 XP. - Provide seedling and mature sub-meshes in the prefab so players can visually distinguish between growing and harvestable plants.
- Test the multi-harvest interaction in single-player before publishing: spawn the seed, place it, wait for growth, harvest multiple times, and verify the plant is consumed after the expected number of harvests.
- Document the plant's growth time, harvest count, and yield type in the
English.datdescription so players know what to expect before planting.
Frequently asked questions
How does the Agriculture skill interact with spawn table drops?
When Affected_By_Agriculture_Skill is true and the plant uses Grow_SpawnTableGUID for its yield, the Agriculture skill level multiplies the quantity of items produced by the spawn table. The exact multiplier is engine-defined and applies to the spawn table's output count. The base quantity (the count before the skill multiplier) is defined in the spawn table entry. Higher skill levels increase the multiplier, meaning an experienced farmer gets more crop per harvest than a novice.
Can I make a plant that grows only indoors?
Yes. Set Ignore_Soil_Restrictions true and Rain_Affects_Growth false. The plant can be placed on any surface (including building floors) and will not be accelerated by rainfall, which would not reach it indoors anyway. The growth is purely timer-driven unless the player uses fertilizer.
Can I make a plant that regrows after harvest?
Unturned™ farm assets do not natively support regrowth - once the plant's Health reaches 0, the plant is removed and the seed is consumed. However, a plant with high Health (e.g., 20 or higher) can sustain many harvests, effectively behaving like a regrowing plant for a large number of cycles. For true regrowth behavior (a plant that regrows its harvestable state without being replanted), a server plugin would be needed.
What happens to a growing plant if the server crashes?
Growing plant state is not persisted across server restarts. A plant that was in the growth phase before a server restart will need to start its growth cycle again after the server comes back online. Mature plants (those already in harvestable state) persist, but their state is not guaranteed. This is the same persistence behavior as other barricade items.
Can I make a plant that requires a specific tool to harvest?
No. The harvest action is a player interaction, not a tool-based action. Any player within interaction range of a mature plant can harvest it by pressing the interact key. If your mod scenario requires tool-restricted harvesting (e.g., only a sickle can harvest wheat), that restriction must be enforced through a server plugin.
Can a plant be damaged by zombies or explosions?
Yes. Farm assets are barricade-type items and inherit the standard barricade damage behavior. Zombies can damage plants by walking over them (if the zombie's navmesh path crosses the plant's collider) and explosions can destroy plants within their blast radius. Plants placed in high-traffic zombie areas may be destroyed before they reach maturity. The cohort recommendation is to encourage players to plant within fenced or defended areas.
What is the minimum Growth value?
The Growth field is an unsigned integer. The theoretical minimum is 1 (1 second). A plant with Growth 1 matures in one second after placement. This is a valid configuration for testing, creative mode, or decorative plants that should be immediately harvestable. For normal gameplay, the cohort recommendation is 60-3600 seconds depending on the crop's intended role.
Does the Growth timer run while the chunk is unloaded?
Yes. The growth timer runs on the server's real-time clock, independent of player proximity or chunk loading state. A plant placed on a remote part of the map matures at the same rate as a plant placed in the player's base. The timer pauses only when the server is offline.
Can I have a plant that grants zero experience?
Set Harvest_Reward_Experience to 0 or omit the field. The default is 1, so you must explicitly set it to 0 to produce an experience-free crop. The plant will still yield items from Grow or Grow_SpawnTableGUID.
How do I make a decorative plant that cannot be harvested?
Set Grow 0, omit Grow_SpawnTableGUID, and set Health 0. The plant grows to maturity (if it has a Growth value) but produces nothing on interaction and is not consumed. Alternatively, set the plant's Useable field to a different barricade subtype to prevent the farm interaction entirely, though this moves the plant outside the farm asset system.
What is the maximum practical Health for a multi-harvest plant?
The Health field is a uint16, supporting values up to 65535. For multi-harvest purposes, Health 100 produces 50 harvests per plant, which is already more than any player would need from a single seed. Values above 100 are technically valid but produce diminishing gameplay returns - the player will stop harvesting long before the plant is exhausted. The cohort recommendation is Health 4 through Health 20 for standard farming gameplay.
Can I use both Grow and Grow_SpawnTableGUID?
Yes, both fields can be present in the same .dat. In modern Unturned versions, Grow_SpawnTableGUID takes precedence and Grow is ignored if both are set. For backward compatibility with older Unturned versions, some mods include both fields, but this is not recommended for new mods - use Grow_SpawnTableGUID exclusively.
Appendix A: Farm asset .dat field quick reference
| Field | Type | Required | Default |
|---|---|---|---|
ID | uint16 | Yes | , |
GUID | uint128 | Yes | , |
Type | enum (Farm) | Yes | , |
Useable | enum (Barricade) | Yes | , |
Build | enum (Farm) | Yes | , |
Name | string | Yes | , |
Rarity | enum | No | Common |
Slot | enum | No | None |
Size_X | uint8 | Yes | , |
Size_Y | uint8 | Yes | , |
Health | uint16 | No | Barricade default |
Growth | uint | No | engine-defined |
Grow | ushort | No | 0 |
Grow_SpawnTableGUID | GUID | No | not set |
Harvest_Reward_Experience | uint | No | 1 |
Harvest_Rewards | reward list | No | not set |
Affected_By_Agriculture_Skill | bool | No | true |
Allow_Fertilizer | bool | No | true |
Rain_Affects_Growth | bool | No | true |
Ignore_Soil_Restrictions | bool | No | false |
Appendix B: Crop type classification table
The table below provides cohort-validated balance categories for farm assets.
| Crop type | Growth (sec) | Health | Yield per harvest | XP per harvest | Soil required |
|---|---|---|---|---|---|
| Fast food crop | 60-300 | 1-4 | 1-2 items | 3-5 | Yes |
| Standard staple | 300-1800 | 4-10 | 1-3 items | 5-15 | Yes |
| Slow cash crop | 1800-7200 | 4-10 | 1-2 high-value items | 15-30 | Yes |
| Indoor herb | 60-600 | 4-10 | 1-2 items | 2-5 | No |
| Exotic mushroom | 1800-7200 | 2-6 | 1 rare item | 25-50 | No |
| Decorative | 60-3600 | 0 | 0 | 0 | Optional |
| Quest-specific | 3600-21600 | 1 | 1 quest item | 0 | Optional |
Appendix C: External references
- Smartly Dressed Games official modding documentation - Farm assets - the authoritative field reference for farm assets.
- Unturned on Steam - the Unturned™ store page and community hub.
- Objects, Structures, and Barricades Asset Guide - covers the barricade inheritance chain that farm assets rely on.
- Item Asset Anatomy - shared item identity fields.
- Spawn Table Asset Reference - the spawn table configuration used by
Grow_SpawnTableGUID. - Project Folder Structure and GUIDs - GUID generation and folder layout.
- Master Bundle Export - Unity bundling workflow.
Advanced considerations
Farming and the server economy
Farm assets interact directly with the server economy. A crop that produces a valuable item (meds, crafting components, rare food) with a short growth window and high multi-harvest count can flood the economy with that item, devaluing it. The cohort recommendation is to balance yield per hour against item rarity: a crop that produces 10 healing salves per hour should be tuned so that the salves do not replace loot-table drops as the primary source. Server operators should monitor farm yield volume as part of their ongoing economy balance.
Cross-tool interaction: melee, resource, and farm
Farm assets interact with the resource and melee systems through the barricade damage chain. A melee weapon with high Damage_Structure or Damage_Barricade can destroy a farm plant faster than harvesting it. This means combat-oriented players can sabotage enemy farms by damaging plants with weapons, not just by destroying the barricade. Server operators who want to protect farm plants from weapon damage should consider a plugin that reduces or eliminates weapon damage against farm-type barricades.
Plant damage from environmental sources
Farm assets inherit barricade damage behavior, which means they can be damaged by:
- Zombie melee attacks
- Explosions (from grenades, rockets, explosive barrels)
- Vehicle collisions
- Falling damage (if the plant is on a destructible structure that collapses)
- Fire damage (if the plant is within a fire zone)
Environmental damage can reduce the plant's Health below the expected harvest count, causing the plant to die before its intended multi-harvest count is reached. The cohort recommendation for server configuration is to set barricade damage from environmental sources to a reduced rate on PvE servers where farming is a primary activity.
Water farming and aquatic crops
Unturned™ does not have native water-based farming mechanics. A plant with Ignore_Soil_Restrictions true can be placed on water terrain materials, but the plant's growth behavior is identical to land-based placement. The engine does not distinguish between water and land for farm asset purposes beyond the material compatibility check. If your mod requires aquatic crop behavior (faster growth in water, slower growth out of water), that customization must be implemented through a server plugin.
Appendix D: Farm asset growth optimization graph
The graph shows the three acceleration paths a crop can take from seed to maturity. The presence or absence of each path is controlled by the Rain_Affects_Growth and Allow_Fertilizer boolean fields.
Appendix E: Multi-harvest calculation reference
| Health | Harvests | Total items (base) | Yield efficiency |
|---|---|---|---|
| 1 | 1 | 1× base | 100% per seed |
| 2 | 1 | 1× base | 100% per seed |
| 4 | 2 | 2× base | 200% per seed |
| 6 | 3 | 3× base | 300% per seed |
| 8 | 4 | 4× base | 400% per seed |
| 10 | 5 | 5× base | 500% per seed |
| 12 | 6 | 6× base | 600% per seed |
| 20 | 10 | 10× base | 1000% per seed |
Yield efficiency is calculated as harvests multiplied by base yield per harvest, divided by the cost of one seed. Multi-harvest crops provide exponentially better return on seed investment than single-harvest crops and should be balanced through longer Growth timers, higher rarity, or lower base yield per harvest.
Authoring checklist
Before publishing a farm item to the Steam Workshop, confirm the following:
- [ ] GUID is unique - generated fresh, not copied from another asset
- [ ] ID is in the 50000+ range
- [ ]
Type Farm,Useable Barricade,Build Farmare all present and correctly spelled - [ ]
Growthis set to the intended duration in seconds - [ ]
Grow_SpawnTableGUIDorGrowreferences a valid spawn table or item ID - [ ]
Healthis set to the intended multi-harvest count (even number recommended) - [ ]
Harvest_Reward_Experienceis set to a positive integer (or0for no XP) - [ ]
Affected_By_Agriculture_Skill,Allow_Fertilizer,Rain_Affects_Growth, andIgnore_Soil_Restrictionsare explicitly set according to the intended crop design - [ ] Prefab has seedling and mature sub-meshes with correct visibility logic
- [ ] Prefab has
InteractableFarmscript attached to root - [ ] Prefab collider covers the mature plant volume
- [ ] Master bundle is built and copied to the mod's
Bundles/folder - [ ]
English.datis authored with descriptiveNameandDescriptionfields - [ ] Tested in single-player: seed placed, growth timer verified, acceleration mechanisms tested, harvest yields expected items, multi-harvest count verified
- [ ] Workshop description documents the crop's growth time, harvest count, and yield type
Document history
| Version | Date | Author | Notes |
|---|---|---|---|
| 1.0 | 2026-07-26 | 57 Studios | Initial publication. Full farm asset .dat field reference, growth mechanics, harvest system, multi-harvest calculation, worked examples, FAQ, appendices. |
Cross-references
- Beacon Asset Reference - the previous article; covers the beacon asset type, which also inherits from
BarricadeAsset. - Generator Asset Reference - the next article; covers the generator asset type.
- Objects, Structures, and Barricades Asset Guide - covers the barricade inheritance chain.
- Item Asset Anatomy - shared item identity fields.
- Spawn Table Asset Reference - the spawn table configuration used by
Grow_SpawnTableGUID. - Project Folder Structure and GUIDs - GUID authoring workflow.
- Master Bundle Export - Unity bundling pipeline.
- Melee Asset - covers the melee weapon side of the farming interaction chain.
- Resource Asset - resource node configuration, relevant for crop yield modeling.
- Smartly Dressed Games modding documentation - official field reference.
- Unturned on Steam - game page and community.
