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 Aug 1, 2013Do you have a development build available?
-
View User Profile
-
Send Message
Posted Aug 1, 2013@Wizel603 Yeah both methods work equally well
-
View User Profile
-
Send Message
Posted Aug 1, 2013Just a small question about a comment in the config.yml. It says, "To disable, remove all chunk: view nodes", but wouldn't one just use the "useDynamicView: [Boolean]" right above? I assume "view nodes" are the lines starting with dashes. I'm just starting to get familiar with yml, so I don't have all the terminology down yet.
-
View User Profile
-
Send Message
Posted Jul 31, 2013@MineloadDE Check your server log for any errors related to BKCommonLib or NoLagg and use pastebin.com to post them here.
-
View User Profile
-
Send Message
Posted Jul 30, 2013Okay, thanks. But i have a new Problem. The Plugin is Red marked by /plugins and i don't can use a command. Can you help me again pls?
-
View User Profile
-
Send Message
Posted Jul 27, 2013@MineloadDE Are you using Orebfuscator? Is ProtocolLib installed? In all cases:
-
View User Profile
-
Send Message
Posted Jul 27, 2013Hello, i have an Problem. When i reload this Server (NoLagg installed) There no Chunks Loaded. Can you help me? Sorry, for my bad english...
-
View User Profile
-
Send Message
Posted Jul 26, 2013@sadris1986 Hmn allright...that's a bit of an issue though since I'm already working on 1.6.2, and as I've read Forge doesn't plan on updating for 1.6.2. (is this true?)
Anyway, the only item-related thing BKCommonLib <does> do is fire entity add and remove events when entities spawn or despawn. To do this, it has a listening hook class...and it could very well me FML is conflicting in this area somewhere.
But still...I'm not sure how to go about throwing a 1.52 build back into the loop. I will probably have to make an exception here and use a new version format. (such as v1.52-revisited) It will not end up on the build server either then...
At least I'm aware of it now, but not sure how I'll be able to fix it all up without causing a lot of people to end up confused about the download list.
-
View User Profile
-
Send Message
Posted Jul 26, 2013@bergerkiller
Turns out it is BKCommonLib, not NoLagg. I created a ticket here: http://dev.bukkit.org/bukkit-plugins/bkcommonlib/tickets/32-fml-will-complain-about-item-discrepancies/
-
View User Profile
-
Send Message
Posted Jul 26, 2013@zekigames Development builds above my comment. Please do report any issues you have with it.
-
View User Profile
-
Send Message
Posted Jul 26, 20131.6.2 please :(
-
View User Profile
-
Send Message
Posted Jul 26, 2013@sadris1986 All that I'm thinking of is that NoLagg removed an item and that resulted in 'the error'. Now I need to know why it was removed. First, try just disabling the itembuffer/itemstacker components. If that fixes it, see which of the two cause it.
My believe is that the itemstacker is to blame, simply because it stacks item A onto item B and removes item A. If itemA is not meant to be removed, then yeah, bad things will happen.
One option I have is to ignore all entities that have a non-default class. The risk with this (however) is that custom entities that spawn 'regularly' will no longer be seen as such, and this may result in the entity limiter not working properly. I am probably restricted to adding ignore lists on a per-plugin basis.
-
View User Profile
-
Send Message
Posted Jul 26, 2013If you want, I can provide you my entire server (mods/plugins/seed). Otherwise I will provide a trimmed down version to reproduce the issue this weekend.
(re: "FML will complain about item discrepancies")
-
View User Profile
-
Send Message
Posted Jul 26, 2013For everyone having issues with NoLagg and Orebfuscator, try updating to the 1.54-SNAPSHOT #238 development build of BKCommonLib. The next version of ProtocolLib fixes that issue too.
@Q2Lummox Try deactivating it to see if it helps. If not, let me know.
@CHANDLERxD Nothing to configure, just use /lag clear [entity names]. If you want to clear items nearby, use /lag clear [entity names] [radius], for example /lag clear items 20
@sadris1986 Looks like yet another entity type the item limiter/buffer should ignore. Try disabling the item stacker, item buffer and removing any item limits. What plugin is 'minefantasy.item.ItemProspectTool'? What do I need to do or spawn to reproduce the error/warning? (after installing MCPC+ and MineFantasy)
-
View User Profile
-
Send Message
Posted Jul 26, 2013So I have to activate or deactivate the saved component? (And yes, Im use the latest dev version in each test).
Greetings ;)
-
View User Profile
-
Send Message
Posted Jul 25, 2013Can nolag clear the item on the ground? and if it does can someone past their config so I can see how to do it right lol (I got it but idk how to edit it right lol)
-
View User Profile
-
Send Message
Posted Jul 25, 2013Encountered a very strange issue. Using mcpc-plus-1.5.2-R1.1-forge738-B616.jar and NoLagg-1.90.0.jar. You need to have MineFantasy installed. The world will load the first time, but subsequent loads, FML will complain about item discrepancies. This could also be a BKCommonLib issue.
This also prevents clients from connecting.
-
View User Profile
-
Send Message
Posted Jul 25, 2013@Q2Lummox Hmn JUST in case it has to do with the saving component...do you have the saving component enabled? If yes, try if the development build fixes it. It did have an issue where it closed RegionFile streams without removing the RegionFile from the cache, causing the exact error you had.
If this is on the latest development build, then I am not sure what the cause is...
-
View User Profile
-
Send Message
Posted Jul 25, 2013@bergerkiller
That's not true.
If you look is exactly the same error as reported earlier. This error is from nolagg, and I can say that the previous test was only two plugins installed "nolagg and bkcommon".
I can disable all other plugins again and again let alone installed "nolagg" that running "/ nolagg fixall" will fail again.
Also, look at the time elapsed between the load of textures message, and error message. ... 20 minutes. But again, if I only install "nolagg and bkcommon" I have the same error.
-
View User Profile
-
Send Message
Posted Jul 25, 2013@sadris1986 Can you post a link to a pastebin.com paste containing the errors in question? Can't evaluate it like this and I don't precisely know what TickThreading in MCPC is. Considering a lot of logic relies on a main thread executing everything, it might be best to disable TickThreading if possible.