In Control Mod — Guide
Conditions Reference
Conditions are tests that must be true for a rule to execute. Most conditions can be used across all JSON files.
Common Conditions
| Condition | Type | Description |
|---|---|---|
mob |
String/List | The registry name of the mob (e.g., minecraft:zombie). |
hostile |
Boolean | Matches all hostile mobs if true. |
passive |
Boolean | Matches all passive mobs if true. |
dimension |
String/List | The dimension ID (e.g., minecraft:overworld). |
biome |
String/List | The biome registry name (e.g., minecraft:plains). |
biometags |
String/List | Matches biomes based on tags (e.g., minecraft:is_forest). |
time |
Range | Time of day in ticks (0-24000). |
mindaycount |
Integer | Minimum number of days passed in the world. |
minlight |
Integer | Minimum light level at the spawn position (0-15). |
minheight |
Integer | Minimum Y-level for the spawn. |
seesky |
Boolean | True if the position has a direct view of the sky. |
onblock |
String | The block the mob is spawning on. |
weather |
String | Current weather: clear, rain, or thunder. |
difficulty |
String | Current difficulty: easy, normal, hard. |
random |
Float | A random chance between 0.0 and 1.0. |
area |
String | Matches if the spawn is within a named area from areas.json. |
phase |
String | Matches if a specific phase from phases.json is active. |
Actions Reference
Actions define what happens when all conditions in a rule are met.
Spawn Actions (spawn.json)
| Action | Description |
|---|---|
result |
The outcome: deny (block), allow (force), default (vanilla check), or deny_with_actions. |
healthmultiply |
Multiplies the mob's base health. |
healthadd |
Adds a flat value to the mob's health. |
speedmultiply |
Multiplies the mob's movement speed. |
damagemultiply |
Multiplies the mob's attack damage. |
potion |
Applies a potion effect (Format: effect,duration,amplifier). |
helditem |
Gives the mob an item to hold (Format: itemstack). |
armorhelmet |
Equips the mob with a specific helmet. |
customname |
Sets a custom display name for the mob. |
nbt |
Adds custom NBT data to the entity. |
nodespawn |
If true, the mob will never naturally despawn. |
setphase |
Activates a specific phase. |
Spawn Control (spawn.json)
The spawn.json file is used to restrict or modify mobs that are already attempting to spawn. Rules are evaluated from top to bottom, and the first matching rule is applied.
Note: spawn.json cannot add new spawns; it can only filter or modify existing ones.
Example: Blocking Creepers in the Overworld
[
{
"dimension": "minecraft:overworld",
"mob": "minecraft:creeper",
"result": "deny"
}
]
Example: Buffing Zombies at Night
[
{
"mob": "minecraft:zombie",
"time": "13000-24000",
"healthmultiply": 2.0,
"damagemultiply": 1.5,
"result": "default"
}
]
Adding Spawns (spawner.json)
Introduced in 1.16+, spawner.json allows you to add entirely new spawn rules to the world. Unlike spawn.json, all matching rules in this file are executed.
Spawner Keywords
mobs: A list of mob objects to spawn.persecond: How often the spawner attempts to run (e.g., 0.5 means every 2 seconds).attempts: Number of attempts per cycle.amount: Number of mobs to spawn per successful attempt.conditions: The conditions required for this spawner to run.
Example: Spawning Blazes in Deserts
[
{
"mobs": [
{
"mob": "minecraft:blaze",
"weight": 10,
"groupcountmin": 1,
"groupcountmax": 2
}
],
"persecond": 0.1,
"attempts": 20,
"amount": {
"minimum": 1,
"maximum": 3
},
"conditions": {
"dimension": "minecraft:overworld",
"biome": "minecraft:desert"
}
}
]
Loot and Experience
Loot Control (loot.json)
This file allows you to add or remove items from a mob's drop table. You can use conditions like playerhelditem to make specific items drop only when killed with a certain tool.
| Action | Description |
|---|---|
item |
The item to add to the drops. |
remove |
A list of items to remove from the default drops. |
removeall |
If true, removes all vanilla drops. |
Experience Control (experience.json)
Controls the amount of XP dropped by a mob.
| Action | Description |
|---|---|
result |
Set to deny to prevent any XP from dropping. |
setxp |
Sets the XP to a fixed value. |
multxp |
Multiplies the default XP value. |