NeoPerformance is a performance management utility. Tools such as cluster detection (find large groups of entities), as well as sorting chunks by entities allows server administrators to find, fix and prevent lag sources. Additionally, it is able to prevent lag machines, as well as prevent fatal server crashes.
PREFACE:
FEATURES:
OPTIONAL REQUIREMENTS:
COMMANDS AND PERMISSIONS:
LAG PREVENTION:
CRASH PREVENTION:
If the plugin fails to prevent lag, the server will enable halt mode and stop the following activities until the server was reached a stable tps:
IMAGES:
YML FILE
CONTACT ME:
[email protected]
or on the discord server: https://discord.com/invite/PCsEQm7yKw (Fixed)
This plugin was primarily designed for my server: neomechanical.com
PREFACE:
- This plugin isn't designed as an 'anti-lag plugin'—there's no magic solution for that. NeoPerformance empowers administrators by providing tools such as server halting and entity locating to optimize server performance. However, it's crucial to note that if your server uses suboptimal hardware, NeoPerformance's impact may be limited. Hardware limitations are beyond the plugin's control.
FEATURES:
- Prevent server lag by preventing many forms of lag machines and optimizing standard gameplay.
- Shows recommendations for server configuration and automatically applies recommendation within game.
- Prevent server crashes by halting the server at set TPS.
- SmartClear - Remove large clusters of entities, this is better than the standard entity removal method that most lag prevention plugins use.
- Chunks - This shows the top chunks that have the most entities.
- SmartNotify - Notifies admins when there are too many entities that are causing lag.
- Send emails when the server is lagging.
- Highly customizable (Check YML file at the bottom of the page)
- Automatically finds the source of lag and performs a server cleanup.
OPTIONAL REQUIREMENTS:
- Spark - If you have spark installed on your server, NeoPerformance will hook into it and add extra metrics. Download it here
- DiscordSRV - If DiscordSRV is installed and configured, NeoPerformance will notify your channel if the server is halted. Download it here
COMMANDS AND PERMISSIONS:
- /Neoperformance or /np (neoperformance.admin) - Shows server status for admins
- /np help (neoperformance.help) - Shows all the commands their use
- /np halt (neoperformance.halt) - Manually halt the server
- /np chunks <world> (neoperformance.chunks) - Show the chunks with the most entities. Type /np chunks to show the top 10 for all worlds and /np chunks <world> for the top ten of the specified world.
- /np reload (neoperformance.reload) - Reload the plugins config file
- /np bypass <player> (neoperformance.bypass or use neoperformance.bypass.auto) - Bypass server halt
- /np smartclear <flags> <neoperformance.smartclear> Destroy entity clusters
- For SmartNotify, an integrated notify system with chunks and clusters, either have op or neoperformance.smartnotify
- /np config (neoperformance.config) - Open the in-game config editor
- /np report (neoperformance.report) - Generate a report of your severs overall performance.
- /np insight (neoperformance.insight) - Show recommendations for server configuration, and automatically apply the recommendation to enhance server performance.
- /np insight fix (neoperformance.insight.fix) [category] [elementName] - Apply recommendation for specified
- /np insight fix all (neoperformance.insight) - Apply recommendation for all.
- /np insight sources (neoperformance.insight.sources) - Show sources used to determine recommended values
LAG PREVENTION:
- Prevents too many explosions
- Prevents too many mob spawns
- Prevents lag machines, such as too many minecarts.
CRASH PREVENTION:
If the plugin fails to prevent lag, the server will enable halt mode and stop the following activities until the server was reached a stable tps:
- Teleportation
- Players moving too fast (speed hacks, etc)
- Entity explosions
- Redstone (Redstone activity is cached and then restored once the server reaches a stable tps, meaning redstone contraptions won't break)
- Chunk loading
- Entity spawn events (and items from being dropped)
- Command blocks executing commands
- Block being broken (because items can't be dropped)
- Projectiles
- Entity targetting
- Block physics
- Players from joining (extreme lag can be caused by too many players, the plugin stops players from joining until the server is at a playable state). Again, all of these are optional, this one is off by default.
IMAGES:
YML FILE
Spoiler: performanceConfig.yml
###########################################################################
# STANDARD SETTINGS #
###########################################################################
performance_tweak_settings :
# Server activity will be throttled when the tps is below or at this value (use -1 to disable)
tpsHaltAt : 15
# This will notify oped users when the tps is below or at this value
notifyAdmin : true
# Broadcast that the server is under load and is halting
broadcastHalt : false
# Sends a discord message to your channel if DiscordSRV is installed
notifyDiscord : true
# The maximum number of entities that can exist in a small radius (use -1 to disable)
mobCap : 50
# Define the small radius for map (The larger the radius, the more stress on the server, don't make it too large)
mobCapRadius : 10
# The maximum number of explosions that can exist in a small radius (use -1 to disable)
explosionCap : 50
# Heart beat rate is how often NeoPerformance updates the tps, checks if the server has been halted and
# Restores the server if it has been halted. Going above 20 is usually a bad idea and might actually
# ruin user experience (in ticks)
heartBeatRate : 20
# [halt_settings] These settings only apply when the server is halted
halt_settings :
# Should players be allowed to join while the server is halted (users with 'neoperformance.bypass' will still be able to join)?
allowJoinWhileHalted : true
haltTeleportation : false
# [maxSpeed] 3.92000381462276 m/s is the terminal velocity of a player in minecraft (use -1 to disable)
maxSpeed : -1
haltExplosions : true
haltRedstone : false
haltMobSpawning : true
haltInventoryMovement : true #Does not affect players, only hoppers and chests
haltCommandBlock : true
haltItemDrops : true
haltBlockBreaking : true
# [haltPlayerInteraction] This will also prevent block placement as that is also a player interaction
haltPlayerInteractions : false
haltProjectiles : true
haltEntityInteractions : true
# [haltEntityTargeting] Some lag machines may stop working if this is set to true
haltEntityTargeting : true
haltVehicleCollisions : true
haltBlockPhysics : true
# Restart server if the server is halted for more than this amount of time in seconds (s) (use -1 to disable)
haltTimeout : -1
#Lag notifier runs SmartClear and Chunks automatically and notifies admins of significant results
lag_notifier :
#How often should Lag Notifier check for lag in seconds (s), going below 60 may cause lag (use -1 to disable)
runInterval : 60
#How many entities in a chunk until Lag Notifier tells you about it (use -1 to disable)
entitiesInChunkNotify : 500
#How large does an entity cluster need to be until it tells you about it (use -1 to disable)
clusterSizeNotify : 200
#Current halt actions are: smartclear
#Remove all actions and leave one with name 'null' to disable
halt_actions :
- smartclear
commands :
#SmartClear
#Define cluster size for smartClear, using anything below 10 can be dangerous and
#too high of a value might not do anything
defaultClusterSize : 15
#What entities should SmartClear ignore? (underscore or space don't matter, just correct spelling)
smartClearExcludeEntities :
- item_frame
- painting
- armor_stand
###########################################################################
# ADVANCED (DON'T TOUCH UNLESS YOU KNOW WHAT YOU ARE DOING) #
###########################################################################
#If you have a mail server set up, you can use the following settings to send a mail to admins when the server halts. (can be a bit spammy)
#SSL is enabled by default
email_notifications :
# If you want to use a mail server, set this to true, otherwise it won't work
use_mail_server : false
# The mail server hostname
mail_server_host : smtp.gmail.com
# The mail server port
mail_server_port : 587
# The mail server email address that will be used to send the mail
mail_server_username : [email protected]
# The mail server password
mail_server_password : password
# The recipients
recipients :
- "[email protected]"
- "[email protected]"
visual:
language : en-US
# See 'Is Plugin Up To Date' in '/np'
showPluginUpdateInMain : true
Code (YAML):
###########################################################################
# STANDARD SETTINGS #
###########################################################################
performance_tweak_settings :
# Server activity will be throttled when the tps is below or at this value (use -1 to disable)
tpsHaltAt : 15
# This will notify oped users when the tps is below or at this value
notifyAdmin : true
# Broadcast that the server is under load and is halting
broadcastHalt : false
# Sends a discord message to your channel if DiscordSRV is installed
notifyDiscord : true
# The maximum number of entities that can exist in a small radius (use -1 to disable)
mobCap : 50
# Define the small radius for map (The larger the radius, the more stress on the server, don't make it too large)
mobCapRadius : 10
# The maximum number of explosions that can exist in a small radius (use -1 to disable)
explosionCap : 50
# Heart beat rate is how often NeoPerformance updates the tps, checks if the server has been halted and
# Restores the server if it has been halted. Going above 20 is usually a bad idea and might actually
# ruin user experience (in ticks)
heartBeatRate : 20
# [halt_settings] These settings only apply when the server is halted
halt_settings :
# Should players be allowed to join while the server is halted (users with 'neoperformance.bypass' will still be able to join)?
allowJoinWhileHalted : true
haltTeleportation : false
# [maxSpeed] 3.92000381462276 m/s is the terminal velocity of a player in minecraft (use -1 to disable)
maxSpeed : -1
haltExplosions : true
haltRedstone : false
haltMobSpawning : true
haltInventoryMovement : true #Does not affect players, only hoppers and chests
haltCommandBlock : true
haltItemDrops : true
haltBlockBreaking : true
# [haltPlayerInteraction] This will also prevent block placement as that is also a player interaction
haltPlayerInteractions : false
haltProjectiles : true
haltEntityInteractions : true
# [haltEntityTargeting] Some lag machines may stop working if this is set to true
haltEntityTargeting : true
haltVehicleCollisions : true
haltBlockPhysics : true
# Restart server if the server is halted for more than this amount of time in seconds (s) (use -1 to disable)
haltTimeout : -1
#Lag notifier runs SmartClear and Chunks automatically and notifies admins of significant results
lag_notifier :
#How often should Lag Notifier check for lag in seconds (s), going below 60 may cause lag (use -1 to disable)
runInterval : 60
#How many entities in a chunk until Lag Notifier tells you about it (use -1 to disable)
entitiesInChunkNotify : 500
#How large does an entity cluster need to be until it tells you about it (use -1 to disable)
clusterSizeNotify : 200
#Current halt actions are: smartclear
#Remove all actions and leave one with name 'null' to disable
halt_actions :
- smartclear
commands :
#SmartClear
#Define cluster size for smartClear, using anything below 10 can be dangerous and
#too high of a value might not do anything
defaultClusterSize : 15
#What entities should SmartClear ignore? (underscore or space don't matter, just correct spelling)
smartClearExcludeEntities :
- item_frame
- painting
- armor_stand
###########################################################################
# ADVANCED (DON'T TOUCH UNLESS YOU KNOW WHAT YOU ARE DOING) #
###########################################################################
#If you have a mail server set up, you can use the following settings to send a mail to admins when the server halts. (can be a bit spammy)
#SSL is enabled by default
email_notifications :
# If you want to use a mail server, set this to true, otherwise it won't work
use_mail_server : false
# The mail server hostname
mail_server_host : smtp.gmail.com
# The mail server port
mail_server_port : 587
# The mail server email address that will be used to send the mail
mail_server_username : [email protected]
# The mail server password
mail_server_password : password
# The recipients
recipients :
- "[email protected]"
- "[email protected]"
visual:
language : en-US
# See 'Is Plugin Up To Date' in '/np'
showPluginUpdateInMain : true
CONTACT ME:
[email protected]
or on the discord server: https://discord.com/invite/PCsEQm7yKw (Fixed)
This plugin was primarily designed for my server: neomechanical.com
Quick facts
- Edition: Minecraft Java
- File type: .jar
- Minecraft versions listed: 1.8, 1.9, 1.10
- How to install: Install the matching mod loader (Forge, Fabric or NeoForge) for your Minecraft version. → Download the .jar. → Put it in the .minecraft/mods folder and launch that loader profile.
- Where to get it: Opens on Spigot — not every file is mirrored on our own servers.
Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.
NeoPerformance is a free Minecraft Java mod. Compatible with Minecraft 1.8, 1.9, 1.10, 1.11 and newer. Downloaded 11,915 times (via Spigot). Download it and open it directly in the game.