Skip to content

Farming Modifiers

Overview

Farming modifiers define environmental conditions that accelerate or enable plant and animal growth. Each modifier specifies a growth-rate multiplier and the conditions under which it applies. The system supports three modifier types: Water (proximity to fluids or rain weather), Fertilizer (applied via items), and LightLevel (ambient or artificial light thresholds). When multiple modifiers are active simultaneously, their multipliers stack to determine the final growth rate.

File Location

Assets/Server/Farming/Modifiers/

One JSON file per modifier:

Assets/Server/Farming/Modifiers/
Darkness.json
Fertilizer.json
LightLevel.json
Water.json

Schema

Common fields

FieldTypeRequiredDefaultDescription
Type"Water" | "LightLevel" | "Fertilizer"YesModifier category. Determines which additional fields are relevant.
ModifiernumberYesGrowth-rate multiplier applied when the modifier’s conditions are met. Values greater than 1 accelerate growth; a value of 2 doubles the rate, 2.5 multiplies by 2.5x, etc.

Water-specific fields

FieldTypeRequiredDefaultDescription
Fluidsstring[]NoBlock IDs of fluid sources that satisfy the water condition when adjacent (e.g. "Water_Source", "Water").
Weathersstring[]NoWeather IDs that satisfy the water condition globally (e.g. "Zone1_Rain", "Zone1_Storm").

LightLevel-specific fields

FieldTypeRequiredDefaultDescription
ArtificialLightLightChannelRangeNoAcceptable range for artificial (placed) light sources, defined per RGB channel.
SunlightRangeNoAcceptable range for sunlight intensity.
RequireBothbooleanNofalseIf true, both ArtificialLight and Sunlight conditions must be met simultaneously. If false, either one is sufficient.

LightChannelRange

FieldTypeRequiredDefaultDescription
RedRangeYesAcceptable range for the red light channel.
GreenRangeYesAcceptable range for the green light channel.
BlueRangeYesAcceptable range for the blue light channel.

Range

FieldTypeRequiredDefaultDescription
MinnumberYesMinimum acceptable value (inclusive).
MaxnumberYesMaximum acceptable value (inclusive).

Examples

Water modifier (Assets/Server/Farming/Modifiers/Water.json):

{
"Type": "Water",
"Modifier": 2.5,
"Fluids": [
"Water_Source",
"Water"
],
"Weathers": [
"Zone1_Rain",
"Zone1_Rain_Light",
"Zone1_Storm",
"Zone3_Rain"
]
}

Crops adjacent to water blocks or exposed to rain weather grow at 2.5x the base rate.

Light level modifier (Assets/Server/Farming/Modifiers/LightLevel.json):

{
"Type": "LightLevel",
"Modifier": 2,
"ArtificialLight": {
"Red": { "Min": 5, "Max": 127 },
"Green": { "Min": 5, "Max": 127 },
"Blue": { "Min": 5, "Max": 127 }
},
"Sunlight": {
"Min": 5.0,
"Max": 15.0
},
"RequireBoth": false
}

Plants receiving sufficient sunlight OR artificial light grow at 2x the base rate.

Darkness modifier (Assets/Server/Farming/Modifiers/Darkness.json):

{
"Type": "LightLevel",
"Modifier": 2,
"ArtificialLight": {
"Red": { "Min": 0, "Max": 4 },
"Green": { "Min": 0, "Max": 4 },
"Blue": { "Min": 0, "Max": 4 }
},
"Sunlight": {
"Min": 0,
"Max": 5
},
"RequireBoth": true
}

Certain shade-loving plants thrive in darkness. Both artificial light AND sunlight must be within the low ranges for this modifier to apply.

Fertilizer modifier (Assets/Server/Farming/Modifiers/Fertilizer.json):

{
"Type": "Fertilizer",
"Modifier": 2
}

When fertilizer is applied to a plot, growth rate doubles. The fertilizer type has no additional conditions beyond being applied.

  • Farming & Coops — coop definitions and produce drops that work alongside growth modifiers
  • Drop Tables — produce drop tables referenced by farming coops