How it works
When TNT explodes normally, every single one does all of its work in the same instant. When hundreds go off together, the server tries to process hundreds of full explosions in a single tick, and that is the freeze you feel.
TNT Fixer intercepts the explosion before the server starts that work and runs it through its own engine instead. The engine is a faithful rebuild of Minecraft's real explosion logic, using the same ray pattern, the same block resistance, the same damage and knockback math. The difference is that it does the work once per group of TNT instead of once per TNT, reuses calculations instead of repeating them, and spreads the load so the server never chokes. The outcome is identical to vanilla, calculated for a fraction of the cost.
What it does
TNT merging. Large stacks of primed TNT, the kind you get from dupe carpets, cannons and lag machines, get combined into a single entity that still explodes with the full power of the entire stack. Five hundred TNT crushing your server becomes one entity doing the same job.
Sand and falling block merging. Collapsing sand or gravel from an explosion gets merged the same way. The column lands exactly where it should without spawning dozens of separate falling entities. Normal digging is untouched. This only activates during mass events.
Raytraced explosion engine. A vanilla accurate simulation that caches its work as it goes. Craters, water, blast resistance, chain priming TNT and entity damage all behave the way players expect, with none of the repeated cost.
Adaptive performance. The engine watches your server's tick load and only uses spare performance. On an empty server it clears everything instantly. When players are on and the server is busy, it automatically slows itself down so explosions never push your TPS lower. It balances itself, you do not have to tune anything.
Lag machine protection. Built in limits quietly shut down grief and lag machines, even ones built from millions of TNT, without ever deleting legitimate explosions. Overflow is absorbed, not thrown away, so real builds keep working.
Packet optimization. Optional, using the free PacketEvents plugin. The real reason clients freeze near a big blast is the flood of update packets sent to nearby players. TNT Fixer throttles packets from far away entities so the game stays smooth even right next to a huge explosion.
Protection and plugin safety. Cannons fire the same distance, crater shapes match vanilla, and drops are kept. It fires proper explosion events, so WorldGuard, Towny, GriefPrevention and similar plugins keep protecting regions exactly as they did before. Combat explosions like creepers and end crystals are left fully vanilla by default.
Folia support. Works out of the box on Paper, Purpur, Pufferfish and Folia.
Live monitor and panic button
Run /tntfixer gui to open a control panel that updates every second. It shows live numbers for explosion batches, blocks destroyed, TNT merged, entities affected, packets saved and more, so you can actually watch the optimization working.
The same menu has a one click STOP ALL TNT button. It instantly cancels every pending explosion and defuses all primed TNT across the whole server. Whenever someone decides to build the lag machine they always eventually build, it is one click to shut it down. You can also toggle the engine, reload, and reset the stats from the menu.
Customisation
config.yml controls every optimization. The defaults are tuned to work well on their own, so you never have to open it unless you want to.
gui.yml lets you fully redesign the monitor menu. Change the title, items, slots and colours, including full hex colour support, and set custom click sounds per button.
messages.yml holds every message the plugin sends, so you can rewrite or translate all of it.
Commands
/tntfixer gui opens the live monitor.
/tntfixer stop instantly stops and defuses all TNT.
/tntfixer stats shows live performance numbers.
/tntfixer toggle turns the engine on or off live.
/tntfixer tune gives advice based on your server config.
/tntfixer reload reloads the config files.
/tntfixer test spawns test TNT so you can see it work.
Everything is behind the single permission tntfixer.admin.
Requirements
Paper 1.21.3 or newer, or Purpur, Pufferfish or Folia. Java 21.
You can deal with TNT lag after it happens, once the spike hits and the complaints start, or you can install one jar now and stop worrying about it. TNT Fixer installs in seconds, needs no configuration, and lets players blow up whatever they want without taking the server down with it.
