OptimizeMod

Quick rating

OptimizeMod

No reviews yet

Reduces server lag by throttling distant entity ticks, suspending mob AI, and limiting particles.

No Theme
No Genre
QoL & Tweaks
Bug Fixes
Performance & Optimization
Mod Loaders
Forge
Fabric
Minecraft

Community voices

Reviews

Versions
Loading versions…
Match includes

Click once to include, again to exclude, again to clear

Rating Any
Any 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
Min
Max
Play Status
Reviews
Time Played
hrs+
Verified developers only
Has developer response
List view
Grid view
Compact view
Sort by
Date
Rating
Helpful
Unhelpful
Edited
Sort ascending
Delete this review?

This removes your review from the project. You can write a new review after.

Review submitted for moderation

Your review has been sent to moderators, who will check that it meets our guidelines before it appears publicly.

No reviews yet. Be the first to review this project!

Get it on

Available Platforms

Compatibility

Supported Environments

Dev Environment
Client Optional
Server Optional

About

Project Details

Type
Mod
License
All Rights Reserved
Latest Version
OptimizeModForge
Authors
CurseForge
Modrinth

For authors

Embed Badge

If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.

Custom banner text
ModDex rating badge preview

Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.

Identifiers

Platform IDs

CurseForge ID
Modrinth ID

Resources

External Links

Source Issues Wiki Discord

About

Description

⚡ OptimizeMod

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?


🚀 What does it do?

🧠 Smart Entity Tick Reduction

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)

💤 Mob AI Sleep

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

✨ Particle Limiter (Client-side)

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.


📈 Performance Impact

The more entities and mods you have, the bigger the gain. On a server with 300+ mobs spread across the world, you can expect:

  • 30–60% reduction in entity-related CPU usage
  • Smoother TPS on heavily loaded servers
  • Fewer FPS drops on the client from particles

🔧 Compatibility

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.


🔬 How It Works (Technical)

OptimizeMod uses three Fabric Mixins that intercept core Minecraft methods at runtime:

EntityTickMixin

  • Target: LivingEntity.tickMovement()
  • Injection: @Inject at HEAD with cancellable = true
  • Calls ServerWorld.getClosestPlayer() every tick to find the nearest player
  • If no player is within 96 blocks → cancels the tick 3 out of every 4 calls (world.getTime() % 4)
  • If player is between 48–96 blocks → cancels every second tick (world.getTime() % 2)
  • Players (PlayerEntity) are always excluded from throttling

MobEntityAIMixin

  • Target: LivingEntity.tickNewAi()
  • Injection: @Inject at HEAD with cancellable = true
  • Same distance check as above
  • If no player is within 48 blocks → AI goal update is fully cancelled (no pathfinding, no combat calculations)
  • Between 32–48 blocks → AI cancelled every other tick
  • Also resets despawnCounter to 0 via @Shadow to prevent unintended despawning of passive mobs

ParticleManagerMixin

  • Target: ParticleManager.addParticle()
  • Injection: @Inject at HEAD with cancellable = true
  • Maintains an internal counter per ParticleManager instance
  • Cancels particle creation once the counter exceeds 4,000, returning null
  • Counter resets automatically to prevent permanent particle blocking

All three mixins operate purely through method injection with no reflection, no ASM bytecode manipulation beyond what Mixin provides, and no thread-unsafe operations.


📦 Installation

  1. Install Fabric Loader for Minecraft 1.21.1
  2. Install Fabric API
  3. Drop OptimizeMod.jar into your mods/ folder
  4. Launch and enjoy the extra performance!

📋 Requirements

  • Minecraft 1.21.1
  • Fabric Loader 0.16+
  • Fabric API
  • Java 21+

Made with ❤️ for the modded Minecraft community. Small mod, big difference.

OptimizeMod

Keep distant simulation quiet so active gameplay gets more CPU time.

OptimizeMod is a lightweight Fabric optimization mod for Minecraft 1.21.1. Its goal is simple: reduce work on entities and effects that players are not actively interacting with.

What OptimizeMod changes

1. Distance-based movement tick throttling (EntityTickMixin)

Hook: LivingEntity.tickMovement()

  • Players are excluded.
  • If no player is found within sleep distance (96 blocks by default), non-player living entities skip movement ticks (ENTITY_TICK_SKIP = 4 by default).
  • If a player is present but farther than reduce distance (48 blocks), movement updates are throttled (roughly every other tick).

2. Distance-based AI throttling (MobEntityAIMixin)

Hook: LivingEntity.tickNewAi() (for MobEntity)

  • If no player is found within reduce distance (48 blocks), AI updates are cancelled for that tick.
  • In mid-distance ranges, AI updates are partially throttled (every other tick).
  • While throttled/cancelled, despawnCounter is reset to avoid unwanted despawn side effects.

3. Particle throughput cap (ParticleManagerMixin, client)

Hook: ParticleManager.addParticle(...)

  • Particle creation is capped with a local counter (MAX_PARTICLES_LIMIT = 4000).
  • Excess particle spawn requests are dropped when the cap is exceeded.
  • Intended to reduce client stutter from extreme particle bursts.

Important accuracy notes

  • OptimizeMod does not guarantee fixed FPS/TPS/MSPT improvements.
  • Real impact depends on mob density, player spread, chunk activity, modpack composition, JVM/runtime settings, and test scenario.
  • Behavior changes for distant mobs/entities are intentional by design.

Reproducible evaluation (recommended)

To validate impact on your setup, compare baseline vs. OptimizeMod with identical conditions:

  1. Same Java version, JVM args, mod list, seed, and config.
  2. Same scenario and duration (recommended: 20-30 minutes per run).
  3. At least 3 baseline runs + 3 OptimizeMod runs.
  4. Collect comparable metrics:
  • p50/p95 MSPT (spark or equivalent)
  • CPU usage (process/system)
  • FPS/frame-time (client tests)
  1. Compare distributions (median/p95), not one-off spikes.

Installation

  1. Install Fabric Loader for Minecraft 1.21.1
  2. Install Fabric API
  3. Place the OptimizeMod jar in mods/

Compatibility

  • Designed to complement other optimization mods.
  • As with any mixin-based mod, test your exact modpack before production deployment.

Screenshots

Gallery

  • Report Spark Without Mod
    Report Spark Without Mod Report Spark Without Mod
  • Report Spark With Mod
    Report Spark With Mod Report Spark With Mod
  • With Mod
    With Mod Report Spark With OptimizeMod
  • Without Mod
    Without Mod Report Spark Without OptimizeMod

Versions

Files

Relations

Project Relations

More like this

Similar Mods

Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.

On ModDex

Community snapshot

0
Ratings
0
Followers
0
In stacks

By the numbers

Statistics

~9,000
Total Downloads
CurseForge
~6,000
Modrinth
~3,000
Last Updated
CurseForge
Modrinth
Created
CurseForge
Modrinth
Last synced
When ModDex last fetched this project from CurseForge or Modrinth. Every project is re-checked on a schedule, and any project that ships a new file is synced automatically within hours of the release.
New file updates sync automatically
How syncing works