Cuts xp farm lag by removing silverfish AI. Same spawns, same drops: for servers that want to stay vanilla.
FrozenSilverfish
Removes the AI from silverfish while keeping their physics. Made for armadillo farms with the Infested effect: same number of silverfish, much less lag.
Who it's for
Servers that want to stay as close to vanilla as possible and still let players build armadillo farms. No spawn caps, no mob limits, no farm nerfs: the farm produces the same silverfish and the same drops as in vanilla, the server just does less work for each one.
Why
Armadillo farms with Infested produce a lot of silverfish, and every one of them runs its AI every tick: looking for players, pathfinding, hiding in blocks, waking up other silverfish. With hundreds or thousands of them, TPS drops.
The usual fixes (limiting spawns, capping entities, killing mobs) change the game and break the farm. This plugin keeps the farm vanilla and makes each silverfish cheaper instead.
What it does
Every silverfish that enters a world gets its AI turned off (Mob#setAware(false)). A frozen silverfish no longer chases or attacks players, walks around, hides in blocks or wakes up other silverfish.
These keep working as before:
- gravity and being pushed by water streams
- knockback
- damage, including Sweeping Edge
- XP when a player kills it
So the farm works the same: silverfish still fall, still travel along the water and still die in the killing chamber. They just stop thinking.
Two things they can't do anymore are handled by the plugin:
- Drowning: frozen silverfish don't swim up, so drowning damage is cancelled for them.
- Campfires: frozen silverfish don't walk off a campfire, so the plugin gives them a small push towards an open side.
Only silverfish are touched. Armadillos and every other mob are left alone.
Performance
Measured on a test server with Paper's /mspt, compared with normal silverfish:
| Silverfish (on land) | AI on | AI off (default) | AI off, no collisions |
|---|---|---|---|
| 500 | ~5.0 ms | ~3.8 ms | ~3.2 ms |
| 1000 | ~9.7 ms | ~6.5 ms | ~5.4 ms |
| 2000 | ~22 ms | ~15.7 ms | ~10 ms |
Roughly 20–35% less with the default config, 35–57% less with collisions off too. On the server the plugin was made for, the biggest armadillo farm used to drop it to about 14 TPS. With the plugin it stays at 20 most of the time.
The full benchmark, with method and limits, is in the README on GitHub.
Configuration
plugins/FrozenSilverfish/config.yml, reload with /fsf reload:
enabled: true
disable-collisions: false # bigger saving, but nothing limits how many silverfish pile up
prevent-drowning: true
push-off-campfires: true
worlds: [] # empty = all worlds
The plugin freezes every silverfish in an active world, including strongholds and spawners. If your farm is in a separate world, list only that one.
Commands
Permission frozensilverfish.admin (ops by default).
/fsf reload: reloads the config and applies it to loaded silverfish/fsf status: shows the settings and how many silverfish are frozen
Uninstalling
The AI flag is saved on the entity, so removing the jar leaves silverfish frozen. To remove it cleanly, set enabled: false, run /fsf reload, leave the plugin installed for a while so unloaded chunks are restored too, then remove it.
Requirements
- Paper 26.2
- Java 25
- No other dependencies
Works well together with StackedArmadillos if you stack armadillos with WildStacker.
Source code, issues and full docs: github.com/ghiacciolodev/FrozenSilverfish
Information
Pinned Versions
- R26.2
Pages
Members
1Owner