A Fabric mod for Minecraft 1.20.1, 1.21.1 and 1.21.11 that gives certain mobs a chance to fixate on and destroy nearby light sources, creating dangerous dark zones and rewarding players who pay attention.
Some mobs will occasionally lock onto nearby torches, lanterns, and campfires and attempt to destroy them. A fixated mob glows and emits soul fire particles, giving an observant player a chance to react before their lighting is gone. Once the mob reaches the light source it breaks it, playing a distinctive sound and returning to normal behavior in the newly created darkness.
Phantoms may occasionally destroy exposed torches during their swooping attacks, making open-air lighting somewhat vulnerable at night — but their erratic flight means covered lighting remains relatively safe.
Everything is highly configurable.
By default, the following mobs are eligible for the light fixation goal:
| Mob | Default eligibility chance |
|---|---|
| Zombie | 5% |
| Husk | 5% |
| Zombie Villager | 5% |
| Zombified Piglin | 5% |
| Phantom | 75% |
The following blocks are targeted by default:
The config file is generated at config/mobs-love-darkness.json5 on first launch. All fields include descriptions and valid ranges directly in the file.
| Config | Default | Description |
|---|---|---|
LightSourceSearchRadius |
16 | Block radius to search for light sources. Range: 1–128 |
LightSourceSearchRadiusVertical |
4 | Vertical block radius to search for light sources. Range: 1–128 |
LightSourceBreakTimeTicks |
20 | Ticks to break a light source (20 ticks = 1 second). Range: 1–1200 |
LightFixationChance |
0.05 | Chance per second that an eligible mob fixates on a nearby light source. Range: 0.0–1.0 |
LightFixationSpeedMultiplier |
0.85 | Movement speed multiplier while fixating (1.0 = normal speed). Range: 0.1–10.0 |
LightFixationCooldownTicks |
200 | Ticks before a mob can fixate again after destroying a light source. Range: 0–72000 |
LightFixationMaxGoalTicks |
600 | Maximum ticks spent on a single fixation attempt before giving up. Range: 100–72000 |
LightFixationGoalPriority |
3 | Goal priority (lower = higher priority, vanilla zombie attack = 2). Range: 1–10 |
EnableParticles |
true | Soul fire particle trail on fixated mobs |
EnableSounds |
true | Sounds on fixation start and light source destruction |
EnableLightFixationGlowEffect |
true | Glowing outline on fixated mobs |
TargetableLightSources |
see above | List of block IDs to target, including modded blocks |
LightFixationEligibilityChancePerMobType |
see above | Per-mob-type chance to receive the goal on spawn |
Search cost scales cubically with radius — a radius of 128 checks ~500x more blocks than a radius of 16. Balance search radius against mob eligibility:
| Search radius | Recommended max eligible mobs |
|---|---|
| 16 (default) | ~50 |
| 32 | ~20 |
| 64 | ~5 |
| 128 | ~1-2 |
LightSourceSearchRadiusVertical (default: 4) also contributes to search cost. Increasing it significantly will reduce performance — keep it low unless your use case specifically requires searching underground.
These are rough guidelines. Actual impact depends on hardware and other mods.
Any valid block or entity registry ID works in the config lists:
"LightFixationEligibilityChancePerMobType": {
"minecraft:zombie": 0.05,
"minecraft:phantom": 0.75,
"alexsmobs:warped_mosco": 0.10
},
"TargetableLightSources": [
"minecraft:torch",
"minecraft:wall_torch",
"supplementaries:oil_lamp"
]
Game rules
Works with:
Does not affect:
Potential conflicts:
LightFixationGoalPriority in config (vanilla zombie attack goal is priority 2)Block protection mods (GriefPrevention, FTB Chunks, etc.) — protected blocks are detected after a break attempt and blacklisted, preventing repeated attempts. Note: FTB Chunks mob griefing protection on Fabric only covers Endermen by default and will not prevent this mod's block breaking — use the mobGriefing game rule for global protection instead.
https://github.com/AndartaMC/mobs-love-darkness
MIT — feel free to include this mod in modpacks.