NoLagg

Version: 1.90.4 | CB 1.7.2
Quote from lenis0012:NoLagg has not been updated since 1.7.10, for more info, check BKCommonLib
Description
NoLagg is made out of multiple completely separate components which you can enable and disable freely. Together they offer:
- Send chunks more gracefully with lowered network stress and reduced processing spikes Read more...
- Remove entities, resend chunks in case of chunk holes and clean up server memory Read more...
- Examine server tick rate performance with deep view into per-tick processes of the server Read more...
- Stop a large amount of items from spawning and spawn at a later time to avoid frozen clients Read more...
- Stack items with a configurable per-world radius Read more...
- Fix lighting errors that cause clients to recalculate lighting (and thus lag) Read more...
- Keep track of server performance such as entities, tick rate, memory and more Read more...
- Fix various bugs the server has (Patches component)
- Schedule autosaves and force data to be written to disk to prevent data loss on server crash (Saving component)
- Limit the amount of entities allowed to spawn per world or globally Read more...
- Watch events closely to warn when plugins execute main-thread methods from another thread Read more...
- Show a detailed message explaining the cause for a server freeze (lock) [read more]
- New TNT execution algortithm that is not only more efficient, but also avoids server freezes Read more...
Important
When first installing NoLagg, open up config.yml and disable components you do not need. This is very important, as some components may conflict with other plugins you use, or may not function on the type of demand you have. If you get a warning message [Severe] followed up with a stack trace in the log, this has to do with the main thread not having responded within 10 seconds. The warning is NOT an error and is no bug, and not a bug related to NoLagg. To disable this feature, disable 'threadlocknotifier' in the config.yml. This feature is mainly intended to notify you what plugin is causing the server to freeze, may it ever happen. It is used to debug plugins in general, as they may get stuck for whatever reason. If NoLagg DOES show up in there, it is a bug you should report.
FAQ
Separating into jar files
NoLagg consists of multiple components you can individually enable and disable. Reasons for not publishing it as a separate jar file for every component can be read here. Please don't ask to separate the components, I will just link you to here.
Spigot server
Not all components are needed when you use the Spigot server. The ItemStacker, ItemBuffer, Spawn Limiter, Thread Checker and Thread Lock Notifier components are not needed, since Spigot has it's own implementations to deal with that. If you still wish to use one of these components, you can, but it's best to disable the Spigot alternative then.
The other components (such as TNT, Chunks, Lighting, Common, etc.) are not implemented in Spigot (yet?) and offer additional functionality.
PTweaks
Since people keep asking about this, I went ahead and compared the two plugins. I am not going to discuss which is better in functionality, I'm just going to state which features overlap and which do not. Both plugins offer a TNT-lag solving solution, feel free to choose which solution you like better. (the solutions are different) Both plugins also offer a way to change when and how chunks are saved, NoLagg adds to this that you can configure when the server writes data to disk. PTweaks offers a way of showing used memory, NoLagg Monitor too with a bit more information. Again, preference. Chunk Persistence is something PTweaks offers and NoLagg does not. Reason I excluded it from NoLagg is that the implementation used up more processing power than that it solved (I did have this for a while). If you want to give it a try, PTweaks is your answer. Monster Limiter is incorporated in NoLagg as well but then for all entities, and more options. ChunkEdits is a tricky one: NoLagg chunks does something similar, with the difference being that it also changes at what rate chunks are sent, which is the main feature NoLagg chunks offers. In addition, the ability to increase the amount of threads running to process chunk packets and the re-using of packet raw data offers some benefits PTweaks does not offer.
Then there are a lot of other features NoLagg has and PTweaks does not, such as examining server tick rate, item stacker, item buffer, fixing lighting, cleaning up server memory, resending chunks, removing entities on command and others (see description).
In short: Both plugins offer some overlapping features, and you need to pay close attention to the configuration of PTweaks and NoLagg and disable things that conflict. Having two TNT explosion altering plugins is going to have strange results, for example. Compare the functionality, decide, and enable in NoLagg what you do not want in PTweaks, and vice versa.
NoLagg showing up in error stack traces
The examine component inserts various hooks into the server to gather measurements. Specifically, you will find that the following lines show up now and then. These hook classes do absolutely nothing when not examining and can not be the cause for any issues, unless the stack trace ends there (first line after the exception shows this stack trace)
- org.timedbukkit.craftbukkit.*
- com.bergerkiller.bukkit.common.internal.ChunkProviderServerHook
Video
Here is a video by BlueDevonMovies (lenis0012):
Metrics
This plugin sends server count statistics to MCStats.org. You can (globally) opt out in the PluginMetrics/config.yml file.







-
View User Profile
-
Send Message
Posted Mar 16, 2013@lenis0012
thate build isn't working on mij server ay use bkcommonlib BKCommonLib-1.51-SNAPSHOT and 1.5 dev build https://dl.dropbox.com/u/67122021/plugins/NoLagg/NoLagg.jar
16.03 08:36:04 [Server] Startup Done (2.734s)! For help, type "help" or "?" 16.03 08:36:04 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:457) 16.03 08:36:04 [Server] INFO at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:217) 16.03 08:36:04 [Server] INFO at com.bergerkiller.bukkit.common.PluginBase.onEnable(PluginBase.java:609) 16.03 08:36:04 [Server] INFO at com.bergerkiller.bukkit.nolagg.NoLagg.permissions(NoLagg.java:34) 16.03 08:36:04 [Server] INFO at com.bergerkiller.bukkit.common.PluginBase.loadPermissions(PluginBase.java:245) 16.03 08:36:04 [Server] INFO at com.bergerkiller.bukkit.common.PluginBase.loadPermission(PluginBase.java:256) 16.03 08:36:04 [Server] INFO at com.bergerkiller.bukkit.common.PluginBase.loadPermission(PluginBase.java:288) 16.03 08:36:04 [Server] INFO at com.bergerkiller.bukkit.common.PluginBase.loadPermission(PluginBase.java:301) 16.03 08:36:04 [Server] INFO at com.bergerkiller.bukkit.common.config.ConfigurationNode.get(ConfigurationNode.java:506) 16.03 08:36:04 [Server] INFO at com.bergerkiller.bukkit.common.config.ConfigurationNode.get(ConfigurationNode.java:518) 16.03 08:36:04 [Server] INFO at com.bergerkiller.bukkit.common.utils.ParseUtil.convert(ParseUtil.java:542) 16.03 08:36:04 [Server] INFO java.lang.NoClassDefFoundError: Could not initialize class com.bergerkiller.bukkit.common.conversion.Conversion 16.03 08:36:04 [Server] SEVERE Error occurred while enabling NoLagg v1.89.8 (Is it up to date?)
-
View User Profile
-
Send Message
Posted Mar 15, 2013@geor196
1.5 dev build:
https://dl.dropbox.com/u/67122021/plugins/NoLagg/NoLagg.jar
This is a bleeding0edge dev build.
It has not been tested very well yet
Use it at your own risk.
File not approved by BukkitDev.
BKCommonLib dev-link posted on BKCommonLib dev page
-
View User Profile
-
Send Message
Posted Mar 15, 2013In 1.5 i get 'Unkonwn Subcommand'
-
View User Profile
-
Send Message
Posted Mar 15, 2013@netherfoam Just sync, async don't show up as they can't be monitored accurately.
-
View User Profile
-
Send Message
Posted Mar 15, 2013On /lag examine...
Are these tasks that are showing up in the exam file reader ASync + Sync, or just Sync tasks?
-
View User Profile
-
Send Message
Posted Mar 14, 2013@LORDMORGOTH88
NoLagg has soe iddues with /reload
We recomment not using it and restarting te server then you want to reload any changes
-
View User Profile
-
Send Message
Posted Mar 14, 2013@LORDMORGOTH88 I suspect NoLagg chunks to cause this, but I'm not sure why. Chunk sending is the same as used internally, so I can not explain why mobs glitch. It could be a timing issue of sorts.
-
View User Profile
-
Send Message
Posted Mar 13, 2013Hi, i have a big issue with the latest version of nolagg, i am running with the 1.89.8 and some chunks take too much to load and sometimes a mob get stuck, it's un-touchable and you can't puck up items... if i remove nolagg it's everything fine... can you help me fix this or suggesting what i have to disable from config files? Thanks
-
View User Profile
-
Send Message
Posted Mar 13, 2013@deathnote1029 It is most likely an issue in bPermissions. In BKCommonLib, and thus also in NoLagg, it uses Bukkit superperms by default, and if Vault is detected, it uses Vault for permissions. There is little more that I can do to add support.
-
View User Profile
-
Send Message
Posted Mar 12, 2013@bergerkiller
I have disabled bpermissions and it now works, I do remember at one point the two worked together very well (in earlier versions) Perhaps code was changed on either side that caused this conflict?
Is the plugins permissions compatible for superperms?
Hopefully a fix can be found for this :)
EDIT: Found a fix! instead of putting in each individual permissions, i had to do nolagg.* to make it work, i can now do any that i wish, unfortunately this will not be helpful for anyone wishing to limit what moderators can use
Thanks Deathnote1029
-
View User Profile
-
Send Message
Posted Mar 12, 2013@deathnote1029 I can only ask this: does it work WITHOUT Bpermissions? The permission system I use in BKCommonLib is so simplistic it is impossible to be a bug in that plugin, be it only because it works just fine for most other people. My only conclusion is that bPermissions has a bug, or needs to be fixed in some way...
-
View User Profile
-
Send Message
Posted Mar 11, 2013@bergerkiller
I have vault installed, but still nothing works, i believe someone else had the same problem on this page: http://dev.bukkit.org/server-mods/nolagg/pages/commands-nolagg/
thanks for any help!
-
View User Profile
-
Send Message
Posted Mar 11, 2013@deathnote1029 I really do not know...maybe try installing Vault? BKCommonLib does use that for permissions next to Bukkit permissions, it might work out.
@DanishBaconMinecraft Looks like your NoLagg.jar file is corrupted. First try re-downloading it from dev-bukkit (latest download). The plugin.yml definitely is in a correct format...
-
View User Profile
-
Send Message
Posted Mar 11, 2013Greetings there,
I'm getting a few errors, and I have no idea, what is causing them. First of all - the errors causes NoLagg not to function at all. I hope you can give me some advice how to fix this :) Thanks alot!
The error:
2013-03-11 23:15:55 [SEVERE] Could not load 'plugins/NoLagg-1.89.8.jar' in folder 'plugins' org.bukkit.plugin.InvalidDescriptionException: Invalid plugin.yml at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:255) at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:132) at org.bukkit.craftbukkit.v1_4_R1.CraftServer.loadPlugins(CraftServer.java:239) at org.bukkit.craftbukkit.v1_4_R1.CraftServer.<init>(CraftServer.java:217) at net.minecraft.server.v1_4_R1.PlayerList.<init>(PlayerList.java:55) at net.minecraft.server.v1_4_R1.DedicatedPlayerList.<init>(SourceFile:11) at net.minecraft.server.v1_4_R1.DedicatedServer.init(DedicatedServer.java:104) at net.minecraft.server.v1_4_R1.MinecraftServer.run(MinecraftServer.java:399) at net.minecraft.server.v1_4_R1.ThreadServerApplication.run(SourceFile:849) Caused by: java.util.zip.ZipException: error in opening zip file at java.util.zip.ZipFile.open(Native Method) at java.util.zip.ZipFile.<init>(ZipFile.java:131) at java.util.jar.JarFile.<init>(JarFile.java:150) at java.util.jar.JarFile.<init>(JarFile.java:114) at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:243) ... 8 more
-
View User Profile
-
Send Message
Posted Mar 11, 2013@bergerkiller
I have tried to use /nolagg log and any other ones i can try i have deleted the permissiondefaults.yml file and let it reload, but nothing worked, i have given myself the permission nolagg.log and made myself OP just to test it further. I am still unable to use the command,
Is there anything else you can think of or any further information i can give to help you find the problem?
thanks deathnote1029
-
View User Profile
-
Send Message
Posted Mar 11, 2013@deathnote1029 What command are we talking about? Could be some command permissions have the permission default 'false' forcing it to be only used by the server console. First try deleting the PermissionDefaults.yml file from the NoLagg folder and restarting, could be something is wrong in there.
-
View User Profile
-
Send Message
Posted Mar 11, 2013Hey bergerkiller i seem to have a problem with running any commands with nolagg 1.89.8 and bkcommonlib 1.50 i am using craftbukkit 2624 when ever i use a command it says i do not have permissions, i am an op and i have given myself permissions using bpermissions
Is there anything i am doing wrong? thanks for any help!
-
View User Profile
-
Send Message
Posted Mar 11, 2013@ritipinheiro I can say yes, but then md_5 will hunt me down and kill me. All jokes aside, Spigot is actually implementing some of the same things that were in NoLagg, in many locations this happened. Item stacking and the changed chunk loading - all initiated by me. However, I do not consider NoLagg to be eternal - at some point server implementations (like Spigot) should become better or at least the same.
For example, once Mojang gets their shit together and fixes the lighting, NoLagg lighting might become obsolete. Once CraftBukkit integrates an advanced tick monitoring system, then examine becomes obsolete. Once chunks are properly sent at a moderate rate and in a proper order, chunks become obsolete. All of these things still haven't happened.
Also, it is not an or-or situation, you can use both NoLagg AND Spigot.
@UnDrac Poor internet connections are already dealt with by NoLagg chunks. It actually keeps track of the player packet buffer and adjusts the sending rate to keep this buffer size near 0. There is no need to lower the view distance - this limiting already reduces the rate at which chunks are sent. When such a player moves a lot, the max view distance will never be achieved.
-
View User Profile
-
Send Message
Posted Mar 11, 2013Hello ... I was wondering if something like a Custom view distance configurable for Each individual User could be implemented ... Example:
Server view distance is set at 5 so all players on the server receive a 11x11 area of chunkls around them.
Some players have poor internet connection and it takes them a long time to download all those chunks, so they set their own view distance to 2 or even 1 (any lower and it wouldn't be practical as you still need chunks nearby to walk on)
Example of View Distance set to 5, 2 and 1 respectively
[--][--][--][--][--][--][--][--][--][--][--] [--][--][--][--][--] [--][--][--]
[--][--][--][--][--][--][--][--][--][--][--] [--][--][--][--][--] [--][1 ][--]
[--][--][--][--][--][--][--][--][--][--][--] [--][--][2 ][--][--] [--][--][--]
[--][--][--][--][--][--][--][--][--][--][--] [--][--][--][--][--]
[--][--][--][--][--][--][--][--][--][--][--] [--][--][--][--][--]
[--][--][--][--][--][5 ][--][--][--][--][--]
[--][--][--][--][--][--][--][--][--][--][--]
[--][--][--][--][--][--][--][--][--][--][--]
[--][--][--][--][--][--][--][--][--][--][--]
[--][--][--][--][--][--][--][--][--][--][--]
[--][--][--][--][--][--][--][--][--][--][--]
I need some way that makes it possible for certain users to configure this for themselves only, to receive a smaller radius than the others, I'm asking this cause some people don't have the internet connection to play properly and I wouldn't want to reduce server view distance for the entire server just so those few players can enjoy the game.
Also since some other players may have a better connection and an overall better PC would like to see a huge area in their Client (people that use Shaders and so on) and want to make some fantastic screenshots of Landscapes.
So I'm asking in short: Is it possible to Change the Number of Chunks certain players can receive and are forced to download from the server without impacting gameplay of other players and if it can be configurable.
Please let me know if something like this is even possible or if it has been done already or even if it isn't worth doing at all.
-
View User Profile
-
Send Message
Posted Mar 11, 2013Is this better than use spigot?