Reduce lag. Sleep distant mobs. Boost FPS. No config needed.
OptimizeMod is a lightweight Fabric optimization mod designed for large modpacks and heavily modded servers. It intelligently reduces CPU and GPU load by throttling entities and AI that no player is watching — because why waste resources on mobs nobody can see?
Entities far from players don't need to run at full speed. OptimizeMod automatically slows down their processing based on distance:
| Distance from player | Tick rate |
|---|---|
| 0 – 48 blocks | Normal (20/s) |
| 48 – 96 blocks | Reduced (10/s) |
| 96+ blocks | Minimal (5/s) |
Pathfinding and combat AI are among the most expensive operations on a server. Mobs that no player is near simply stop thinking — they stand still until someone gets close again.
| Distance from player | AI behavior |
|---|---|
| 0 – 32 blocks | Full AI |
| 32 – 48 blocks | AI updated every 2 ticks |
| 48+ blocks | AI fully suspended |
Large modpacks often add dozens of new particle effects. OptimizeMod caps active particles at 4,000 simultaneously, preventing sudden FPS drops from particle-heavy mods.
The more entities and mods you have, the bigger the gain. On a server with 300+ mobs spread across the world, you can expect:
OptimizeMod is designed to complement other optimization mods, not replace them:
| Mod | Compatibility |
|---|---|
| ✅ Sodium | Full |
| ✅ Lithium | Full |
| ✅ Krypton | Full |
| ✅ FerriteCore | Full |
| ✅ Most content mods | Full |
⚠️ Mobs at long distances will stand still (intentional — this is the source of the performance gain). Hostile mobs still despawn normally per vanilla rules.
OptimizeMod uses three Fabric Mixins that intercept core Minecraft methods at runtime:
LivingEntity.tickMovement()@Inject at HEAD with cancellable = trueServerWorld.getClosestPlayer() every tick to find the nearest playerworld.getTime() % 4)world.getTime() % 2)PlayerEntity) are always excluded from throttlingLivingEntity.tickNewAi()@Inject at HEAD with cancellable = truedespawnCounter to 0 via @Shadow to prevent unintended despawning of passive mobsParticleManager.addParticle()@Inject at HEAD with cancellable = trueParticleManager instancenullAll three mixins operate purely through method injection with no reflection, no ASM bytecode manipulation beyond what Mixin provides, and no thread-unsafe operations.
OptimizeMod.jar into your mods/ folderMade with ❤️ for the modded Minecraft community. Small mod, big difference.