Getting Started
Overview
XAntiLag is an all-in-one server optimization addon for XCore. It bundles every common anti-lag tool into a single package — chunk limits, mob & item stackers, custom mob AI, villager throttling, redstone clock detection, anti-chunkloader, TNT throttling, lag machine detection, scheduled clearlag, a TPS/MSPT monitor, AFK detection, and a chunk profiler GUI.
Key highlights:
- Chunk limiter — Per-block, per-entity and per-tile-entity caps with full event coverage
- Mob & item stackers — Display tags carrying the mob or item name as a translatable component, so every player reads it in their own language; drop multiplication, slime split handling
- Lag machine detection — Dupers keep their entity count low and slip past the chunk limiter; their spawn rate does not
- Chunk load watcher — Paper caps how fast a player loads chunks but never says who; this names them and narrows their view distance alone
- Public API — Other plugins read the load state, or react to the moment it changes, and stand down on their own
- Custom mob AI — Distance-based pathfinding reduction with NMS pathfinder injection
- Performance monitor — TPS and MSPT, gradual optimization levels, 24h history and a sustained-degradation alert
- Diagnostics — the dashboard shows what the server is carrying, with history, charts and a chunk heatmap
- Per-world overrides — any setting, for one world only
- Discord — every notification body configurable in
lang/<code>.yml - Chunks GUI — Paginated view of every loaded chunk with full breakdown and click-to-teleport
- Folia-ready — Region-thread aware sampling so
getTileEntitiesnever crashes - Web dashboard — REST endpoints exposed through XCore's web panel
Requirements
- Paper 1.21.1+ (or Folia)
- Java 21+
- XCore 1.1+ installed as a plugin
- Optional: PlaceholderAPI for placeholders
Installation
- Install XCore in your server's
plugins/folder if you haven't already. - Place
XAntiLag.jarinplugins/XCore/addons/. - Start the server. XAntiLag generates its configuration files in
plugins/XCore/addons/XAntiLag/. - Edit
config.ymlto enable / disable each feature and tune their thresholds. - Use
/xantilag reloadto apply changes without a restart.
Every feature can be independently toggled in config.yml. If you only need stackers, disable the rest — XAntiLag won't register the listeners or schedulers it doesn't need.
Per-world Overrides
Every setting can be repeated under a world name and then applies to that world alone. A creative plot world, a farm world and a survival world no longer have to share one set of caps.
worlds:
creative:
chunk-limits:
enabled: false
item-stacker:
enabled: false
clearlag:
enabled: false
farm:
item-stacker:
max-stack-amount: 2048
mob-stacker:
max-stack-amount: 200
world_nether:
chunk-limits:
blocks:
HOPPER: 8
Anything not overridden falls back to the global value, so a world section only ever lists what differs.
Upgrading from 1.0.x
Three sections were renamed and three features removed in 1.1.0. Old keys are ignored, not migrated — XAntiLag lists the ones it finds at startup so you can delete them.
| Old | New |
|---|---|
anti-afk | afk — rewritten, see afk.machine and afk.kick-after-seconds |
custom-distance | distance |
tps-monitor | monitor — thresholds are now tps and mspt |
farmland-optimizer | removed — it traded visible crop growth for a negligible tick gain |
hopper-rate-limiter | removed — Paper's hopper.disable-move-event and ticks-per.hopper-transfer act at the right level |
entity-collision | removed — spigot.yml max-entity-collisions is per-world and finer |