LagAssist ⚡ Advanced Performance Solution ⚡ 1.8 - 1.20.2 COMPATIBLE icon

LagAssist ⚡ Advanced Performance Solution ⚡ 1.8 - 1.20.2 COMPATIBLE -----

Anti-Lag, Anti-Crasher, Chunk Hoppers, Mob Stacker, Custom View-Distance & more in a single package




Added 1.20 support to the plugin. It should also handle future versions better.
----------, Jun 30, 2023

[​IMG]
Mob Stacker Improvements
Resolved issue causing "ALL" catch-all spawn reason to make killing mobs multiply stacks.
----------, Aug 8, 2022

[​IMG]
Improved 1.19 Support
Resolved issue causing constant spamming in console due to tps checking.
----------, Jun 19, 2022

[​IMG]
Improved backend for benchmarking tool
The backend tool used by the benchmarking tool had some additional fixes to hopefully make it more reliable.

Stable Release
After years of LagAssist development, the plugin has 99% of the features it was supposed to, works well, and has little to no reported bugs. This version is production-ready.
----------, Jun 3, 2022

[​IMG]
Changed benchmarking tool system
The benchmarking tool now uses a LagAssist server to work in the cloud, which should improve results and make benchmarking easier.
----------, Jan 2, 2022

[​IMG]

(!) THIS IS A BETA VERSION

1.18 Support
1.18 comes with a larger world height, improved world generation, and more, and lagassist is ready to provide support for that!
----------, Dec 13, 2021

[​IMG]


Benchmark Improvement
  • The benchmark was updated to use Cloudflare's innovative speed test, with nodes all over the world. This should ensure a more accurate speed result for both upload and download speeds.

Design Changes
The colors the plugin uses were adapted to the EntryRise logo. This is a visual change, but shows our re-started work on modernizing the plugin to ensure quality.
----------, Sep 29, 2021

[​IMG]


Mob-Stacker Changes
  • Added minimum stack size feature.
  • Added stack reasons check to allow limiting stacking to only specific spawn reasons.

(!) Due to the additional features that were added, the stacker may now be heavier performance-wise. If you see the stacker having unusually high usage in timings, please let me know.
----------, Sep 21, 2021

[​IMG]
Client-side optimizer fixes
I've looked and found a potential solution to making the client-side optimizer work with the last changes in paper without detrimentially affecting performance

Work in progress for improved status verification
We will implement a integration with the new system at Entryrise to provide you with live information about your performance, optimization requirements, etc.
----------, Sep 11, 2021

[​IMG]
Added configurable limiter option
You can now configure if you want the mob to ignore named mobs. This is a good solution for preventing removing pets, etc.

Fixed several issues in config
Fixed message in config saying that the mob stacker uses a blacklist when it actually uses a whitelist.
----------, Aug 6, 2021

[​IMG]

(!) THIS IS A BETA VERSION

1.17 Support
1.17 is one of the most complex Minecraft updates over the years, and LagAssist is now supporting it. We've worked on migrating our NMS API to the new mappings provided by Mojang, and now used by spigot. While this is a BETA version, we hope we will soon manage to release a full-blown and valid release!
----------, Jun 21, 2021

[​IMG]

Farm Stacker
For some servers, the late adoption of chunk hoppers, or a player base unwilling to use them may lead to extreme lag due to many item entities. This update comes to solve that, by stacking growable items internally before "dropping" them.
This solution was developed for Original. gg, a Romanian server suffering from large lag due to huge cactus farms players were using. With lagassist, they managed to reduce server usage from items by x50 times, increasing their tps from 14 to 19.9.
----------, Apr 18, 2021

[​IMG]

Public Source
I've decided to post the source publically to make it easier for servers to modify LagAssist for their own desire. This also comes with an included personal use license that is available while I am busy with exams.

Minor Bug Fixes
A few bug fixes that solve minor issues were made.
----------, Jan 4, 2021

[​IMG]
Redstone Culler Improvements
Until now, the Redstone culler directly relied on the probabilistic chance of Redstone causing lag. While this provided a direct solution to Redstone lag, it often affected harmless yet frequently used blocks, such as pressure plates. With the current update, the Redstone culler uses a whitelist system that allows making exceptions to that rule. This should solve most issues with lagassist clearing what it shouldn't.


Fixes
I've gone over and fixed many of the issues that were reported on the EntryRise discord, from debug messages still left out to errors.


(!) As with all updates, I urge you to take care. It's best to delay updating until people start testing and make sure this version has no underlying bugs i haven't been able to find during testing. If it hurts waiting, make sure to try on a test server first, and then use in production.
----------, Oct 25, 2020

[​IMG]

Debugmode
The lagassist debugmode is a tool that can help both us and you track issues or analyze why configuration doesn't work. It currently has 3 levels (0, 1, 2), with 0 not printing anything, 1 printing minimal but useful details, and 2 printing stack traces (detailed).
While this feature doesn't seem big, it will help us loads to debug and find solutions to your issues faster. It'll also remove the problem with debug messages surviving releases.

Dynamic view distance
Dynamic view distance is now finally compatible with newer versions and old versions too! This means no more pesky paper "per-player view distance needs more understanding ...." message!
----------, Aug 24, 2020

[​IMG]
(!) This is a snapshot and is not fully tested in production.
Growable farm optimizer
Over the years, lagassist has become a complete toolset to handle lag situations. From being able to replace laggy behavior with more performance efficient and player-friendly alternatives to providing the "hammer" option when everything else fails, lagassist has got you covered.
This new feature is intended for factions servers (predominantly on 1.8) that have piston pumpkin/sugarcane farms. Because of the lack of observers on 1.8, harvesting one single crop often causes extreme amounts of lag.

LagAssist can automagically break the crops when they are grown near to a piston that can harvest them, reducing the performance footprint in such situations by up to 90%


Stats API
The stats API allows you to send bytes via your server icon to specific server IPs. This allows monitoring from your bungeecord server via ping and is currently used in the EntryRise' toolset as a way to find if your Minecraft servers are available and running well.
----------, Aug 6, 2020

[​IMG]

This version removes a forgotten debug message from the code. No more spam in console.
----------, May 9, 2020

[​IMG]
Preamble
LagAssist was built as a comprehensive toolset to allow developers and server owners to solve lag issues caused by gameplay, glitches, etc. For almost 2 years, LagAssist has gathered more and more happy clients and large networks enjoying its feature set. The plugin is now used by over 2300 servers sustaining a total of over 10.000 people. That's excluding large networks that decide to hide from stats.

Aggresive Actions -> Analysis -> Prevention
Lagassist has been initially created to implement features that plugins like React shied away from due to them being able to do cause havoc when improperly configured. Such features are the Redstone culler (with its aggressive check), the spawner optimizer, the physics check, and more. These features provided a way to solve performance issues instantly to prevent more long-term damage, just like pulling a band-aid quickly helps more than slowly pulling it.
After a while, I've noticed the lack of tools to help analyze the reasons lag happens. Timings help but aren't that descriptive of the issues, and in-game profilers like Spark (Great addition along with LagAssist) weren't a thing. The lag map along with the stats bar provided a great way to feel the way your server worked and find lag issues easier along with timings.
The chunkanalyser feature became a need-to-have feature for manual performance analysis and debugging lag, and the benchmark tool helped provide a quick approximation of how many players you could handle.
Lagassist then passed through the latest stage of development (still going now), focusing on preventing lag from happening in the first place. This meant the chunk limiter, chunk hoppers (and now sellhoppers!) became great ways to reduce lag on the most intensive factions servers. The limiter prevented too much from happening in a single chunk and forced players to run efficient machines, while the chunkhoppers provided them with a way and reason to switch anyway, replacing old plugins with a footprint 30x larger (then further optimized in an update to ~600x) than lagassist (tested on OxiusPvP w 300+ players, before & after, the same amount of chunkhoppers).
The latest form of prevention has arrived and consists of Sell Hoppers.

Introducing Sell Hoppers
Sell hoppers are a great monetizer and an amazing replacement to sell chest plugins available on the market. Unlike other implementations of auto-sell, lagassist's sell hopper implementation is exact, efficient, and straight-forward. It comes with amazing configurability potential and toggleable functionality:
  • Shift+Left Click to enable/disable sell hopper (requires permission)
  • Shift+Right click to set the filter of items (used with sell hoppers)
Not only that, but lagassist allows you to sell multipliers that can be given per player using permissions!
  • lagassist.sellhopper.<MULTIPLIER%>
I've also changed permissions for modifying filters:
  • lagassist.hoppers.togglesell
  • lagassist.hoppers.customfilter


Enhanced Chunk Limiter
The chunk limiter was enhanced to now work on a soft - hard limit system. This allows preventing people from moving entities from one chunk to the other to bypass the limiter while not affecting normal behavior.
LagAssist will now no longer allow spawning over the soft limit, and automatically kill mobs going over the hard limit.
For example, if you have 16 armor stands in a chunk with a soft limit of 10 and a hard limit of 20, nothing will happen, but bring 50 other armor stands to the chunk and you'll not go over 20.
This is amazing for creative servers where people spam minecarts/armor stands to crash the server.
----------, Apr 25, 2020

[​IMG]

This version solves a critical issue with a memory leak being caused by the stacker system storing entities for a large amount of time. This fix solves that.
Older versions are unsafe with the stacker when the server is running for a large period. You are highly advised to switch to 2.20.3
----------, Mar 29, 2020

[​IMG]

This version comes with several minor bug fixes & config changes. It has several changes done to the mob stacker to improve its performance and get rid of the issues that have been bugging it.

I'm also planning on making a configurator to help configure the plugin based on what your server does. Lagassist's config has always been a barrier for people, and I'm planning to reduce it.
----------, Mar 20, 2020

[​IMG]

LagMap
LagMap throughout 1.8-1.15 was hard to implement without breaking support to the newer versions. We've found a solution for that and managed to solve issues with the lag map once and for all!

Persistent StatsBar
Keep your stats bar on even if you leave your server. The new stats bar system should remove the bother from having to re-activate the stats bar each time you leave and re-join.
The info is not persistent after restarts.

Mob Stacker XP
Stacked mobs would previously not drop XP when killed by an entity, which has now been solved.
----------, Dec 17, 2019

[​IMG]

1.15 Minecraft Support
I've solved some version conflicts that caused ChunkHoppers to work improperly on 1.15. The version should now be mostly supported. Note that support is still in beta and is not fully tested.
----------, Dec 12, 2019

[​IMG]

The stacking feature of lagassist stayed in beta for a long time, but luckily, I've been able to spend over 10 hours improving the system. It should no longer throw errors related to async access and should also provide some extra features for you to use.

New Features
  • StackChunk limits
  • Better Chunk Split detection & handling
  • Slightly improved performance for stacking
  • Made stack comparers configurable

Bug Fixes
  • ConcurrentModificationException caused by accessing stacked mobs async.
  • Issue with ChunkHoppers not working on 1.8.8
----------, Oct 26, 2019

[​IMG]

StatsBar
Optimized the statsbar to only run when you open it. This should drastically improve lagassist's performance on 1.13+

Cpu Benchmark
LagAssist relies on PassMark CPU benchmark data to be able to analyze your server. They recently changed their website content which broke lagassist's system used to "read" CPU benchmark results.
It has now been fixed.

StackMob For 1.8
Stackmob had issues starting up on 1.8 due to some of the features used by lagassist not existing in 1.8. Luckily, it's no longer an issue now, as new features are separated from old ones.

Maps, oh Maps!
The world storage system changed drastically from 1.12 to 1.13. While spigot has tried to maintain backward compatibility, there have been some things that didn't work as well between versions. This should now be fixed.
----------, Oct 5, 2019

[​IMG]

Pregenning for 1.14.4
Solved world pre-generation for 1.14.4. The plugin should now be able to efficiently pre-gen for 1.14.4
----------, Sep 20, 2019

[​IMG]

Analyzing the Issue
Due to the worse performance found in new Minecraft versions, many enterprise servers decide not to update, so they can sustain more players without breaking the bank. They then use plugins like ViaVersion to allow players with newer versions to play.
One of the main cons of older versions is security. Hacked clients can be used to crash servers using modified packets, often using hard to parse packets such as packets with written books. Sadly, most of these issues can't be solved by simply limiting packets per second, but require a more advanced detection system to take more factors into account.

Introducing the LagAssist anti-crasher
Luckily, LagAssist already had the functionality to analyze packets efficiently. With a few tweaks to make the system more efficient (and also protect the server from packets lagging ProtocolLib plugins), it was ready to go.
I've implemented a system to analyze the packet based on its contents, size, and count per second to detect almost any generic crash packet by default.
It also provides a debugging system (to understand how hacks crash the server) and an easy configuration system which means you can add anti-crasher modules as you see fit, without having to learn Java.

(!) NOTE:
The default configuration may still have false positives. It was tested on production on a minigame server at Gamster. A key aspect that may currently cause false drops is large meta items such as tools.
----------, Sep 1, 2019

[​IMG]
Changes
  • Solved multiple issues with the Mob Stacking. Note that it's still in beta and not ready for production.
  • Tile entity detection now uses block state instead of Materials. This means better detection and a better performing check.
    Additionally, limits are cached which should improve performance significantly in normal use-cases.
----------, Jul 29, 2019

[​IMG]

Update Message Issue Fixed
Fixed an issue where an exception would show when the plugin would look for updates. That is solved now and shouldn't cause any more issues.
----------, Jul 14, 2019

[​IMG]

(!) UNSAFE

Stacking Damage Handling
Stacking damage is handled in a really efficient & loyal to vanilla way. It should detect damage types that should stack and deal with them accordingly!

Improved Stacking detection
Stacking detection was improved, and now detects mobs better and more efficiently.
----------, Jul 12, 2019

[​IMG]

Optimized Plugin
Solved multiple lag causes that made lagassist consume 5% of the server's performance. That should no longer be the case. Sorry for the inconvenience

Minor error Fixes

Some errors that occurred randomly were solved by this version of lagassist.
----------, Jul 6, 2019

[​IMG]

Async StatsBar
Solved an issue causing lagassist to use too much performance when sending messages via the status bar.

1.8.8 Support
Supporting 1.8.8 is beginning to be a way more tedious task, but I'm still trying to keep it supported. This version fixes some issues with 1.8.8.

(!) Please note that 1.8.8 support is nearing its end. While I'll keep making it work with it, many new features will stop being developed with 1.8.8 in mind.
----------, Jun 26, 2019

[​IMG]

Async access error fix.
I've taken some steps to avoid issues being caused by the stacker system running async.
----------, Jun 4, 2019

[​IMG]

(!) This is a development build and is not recommended for production yet.

(!) UNSAFE VERSION

Efficient Entity Stacking
Entity stacking has always been used as a way to prevent the server from having too many entities. Sadly, many past attempts at stacking didn't focus on the performance side of stacking, leaving many stacking plugins in an unfinished and not-ready-for-production state.
LagAssist seeks to change that by implementing an entity stacker that focuses on performance:
  • Can stack thousands of entities almost instantly.
  • Uses the chunk grid for better performance optimization, instead of relying on searching mobs around an entity (which is a performance intensive process).
  • Can distinguish between most different mob traits.
Not only that!:
  • Extremely fast migration from old mob stackers.
  • Compatible with paper's more efficient PreSpawn event (instead of mobSpawnEvent) which makes it really efficient with spawners,

[​IMG]
[​IMG]
[​IMG]
[​IMG]
----------, Jun 2, 2019

[​IMG]

Client-Side Optimizer Fixes
I've done several fixes on the client-optimizer for 1.13 and 1.14 to prevent the world from being accessible from the netty thread. This should fix errors that occurred with the client-side optimizer on.
----------, May 14, 2019

[​IMG]

1.14 Support Improvements
I've solved many of the issues that didn't work on the initial 1.14 lagassist development version. These patches include:
- GUI was solved ( ✅)
- Lagassist Benchmark solved ( ✅)
- ChunkHoppers (✅)


(!) This version is not complete. It works, but many of the features lagassist has failed in this update for 1.14 servers. It is just an initial release for people needing some of lagassist's features now.

Known Bugs (WIP):
- Chunk Limiter causes crash due to async chunks (???)
----------, Apr 28, 2019

[​IMG]

Chunk hoppers disappearing
ChunkHoppers had an issue where when broken, they would still virtually work for some ticks and suck in the hopper item they were supposed to drop. This is due to the lagassist chunk hopper cache system that makes it way more efficient than other plugins that also offer chunk hopper functionality. LagAssist now resets the respective chunk cache if a chunk hopper is broken, mitigating the issue without causing lag.
----------, Apr 25, 2019

[​IMG]

1.14 Support
Spigot 1.14 is just around the corner and I've started working on support for 1.14. This version doesn't fully support 1.14, but partially allows some of the LagAssist features to work.

(!) This version is not complete. It works, but many of the features lagassist has failed in this update for 1.14 servers. It is just an initial release for people needing some of lagassist's features now.
----------, Apr 25, 2019

[​IMG]
Empty Filter Functionality
  • Until now, empty filter chunk hoppers didn't have any special use-case which meant they became normal hoppers. From now on, they can suck in all types of items. This is really useful if somebody has many farms in a single chunk or wants to (for example) mine with TNT.
----------, Apr 9, 2019

[​IMG]
Mob Hoppers
  • Mob Hoppers now allow you to turn your 1.13 server mob spawns into drops, by instantly getting their loots and placing them in chunk hoppers.
    This feature only works if you have both chunkhoppers and mob-hoppers enabled, and is really useful if your server is full of auto-grinders that cause lag (either due to the item drops or to the entities).
----------, Apr 4, 2019

[​IMG]
[​IMG]

This version adds the experimental SafetyManager system, which avoids faults like corrupted chunks & playerdata when the server is out of memory. It does so by safely shutting down the server and not allowing it to start up until the disk is empty enough for your server to function.
It is not set up by default, so it shouldn't cause issues if you don't want it to run.

Also, I've fixed a major issue where players weren't allowed to spawn in (log in) in chunks full of entities (in case the entity spawning was disabled via the chunk limiter). They wouldn't be able to chat/sleep/ or even be seen.

Thanks to the 2 people who found the bug out and managed to pinpoint the system that caused it:
@FixTheAdmin
@Ashinos
----------, Mar 2, 2019

[​IMG]
Bug Fixes:
  • The spawner feature ignored the world blacklist, modifying spawners in worlds where it shouldn't have. This fix addresses the issue. You'll still have to tweak the spawner optimizer temporarily to change the functionality back to default (or manually replace the spawners if they aren't many). Extremely sorry for the inconvenience.
----------, Feb 22, 2019

[​IMG]
various new data samples such as the cpu type used by your servers, amount of entities, etc.

This will get me more data to use to analyse what most clients would want and improve on those features.
----------, Feb 9, 2019

[​IMG]
I've added bstats support in order to allow me to see which features are used more, track how the plugin goes if it's used; etc. This is to provide me with enough info to properly focus on new features / existing features.

While this update doesn't improve performance by itself, it helps me improve the plugin more without using more of my time up. Efficiency is a key thing in development, and it allows me to sustain the plugin better.

Note: You can opt-out really easily via the bstats config. The data is anonymized so you don't have to worry about people tracking your server using it.
----------, Feb 6, 2019

[​IMG]
Bug Fixes:
  • Fixed Client-Side GUI
----------, Feb 5, 2019

[​IMG]

Chunk Hopper Filtering
LagAssist has always strived to improve performance by using smart alternatives to vanilla features. The chunk-hopper system has seen large usage by enterprise networks and has been improved even more with the new hopper-filter system. Let players choose what they want their chunk-hoppers to take in, create auto-smelters for mining, etc.

[​IMG]
----------, Feb 5, 2019

[​IMG]
Bug Fixes:
  • Fixed benchmarking issue.
  • Fixed problem with lagassist's clientside GUI.
----------, Jan 16, 2019

[​IMG]
Changes
  • Drastically improved perfomance of the chunk hopper system by caching the tiles for 40 ticks. This means an almost-invisible change that actually improves performance by at least 30 times. (by running the expensive check 40 times less often).

Again, lots of thanks to @rikyriky232, who sponsored the idea.
----------, Jan 13, 2019

[​IMG]
This update comes with some amazing new features along with way more testing put into it.
  • You can now configure so that only hoppers named a certain way can become chunk hoppers. Getting items by renaming the item is impossible as an "unbreakable" tag is present and required for the placement of custom chunk hoppers.
  • Additional fixes to the sorting system that hoppers use to account for double imprecision.

This version's changes were tested and requested by a high volume server owner, @rikyriky232. He even sponsored the development of the plugin by paying for extra features.
----------, Jan 5, 2019

[​IMG]

This feature is great for Factions servers currently having to rely on "CropHoppers" & custom hopper plugins to fix their issues with lag. LagAssist now implements a simple yet effective way to deal with item lag: ChunkHoppers that suck items from the whole chunk! They are extremely configurable and easy to use

This is a list that includes every change done:
  • Added the ChunkHopper System
  • Fixed some minor bugs
----------, Dec 29, 2018

[​IMG]
This update comes with various bug-fixes to LagAssist, especially to address issues that were caused by the last update.
This is a list of bugfixes:
  • Fixed the lag clearing task being ran too often (presumably each tick)
----------, Dec 10, 2018

Bug Fixes
  • Fixed /lagassist changelog not showing up in help
  • Fixed reloading lagassist creating multiple messages because the listeners would get duplicated.

UNSAFE
----------, Dec 5, 2018

Changes
  • I've made the GUI name for the client-side optimization system configurable to offer better customizability.
----------, Nov 15, 2018

Changes:
  • The client side optimizer language is completely configurable and you can set how each of the items there are named.

Thanks to @NoHoPeLess for suggesting this ^_^
----------, Nov 4, 2018

Changes:
  • Improved the code.
  • Fixed some NullPointerException dropped when entities became null out of nowhere.

Sorry for the broken download. Mistakenly uploaded another project i have.
----------, Oct 31, 2018

Better Reflection caching.
Improved the caching to be using enums instead of a map. This should highly improve performance when working with NMS (net.minecraft.server)


Async Update Checker
Even though this wasn't the largest of issues, the auto-updater now works asynchronously on LagAssist. This should improve performance whenever the server checks for updates.
----------, Oct 24, 2018

(!) This is a critical fix and means i've messed up. Please update to this version in order to prevent damage to your network.

(*) All past versions with the updater enabled have been noted as "UNSAFE" in order to prevent the updater from suggesting them!


Fixes:

  • LagAssist wasn't taking into account if an area was protected when working with the chunk limiter. This means that it basically broke all protection systems that were functioning on the "Lowest" priority system.
    Issues shouldn't have been present on Low+ priority levels which are checked after the Lower priority.

Fix Test Scenario:
  • Skyblock server using ASkyBlock 3.0.9.4
  • LagAssist (Using 2.7.1 and the new 2.7.2 Version)
  • Issue was present on 2.7.1 but not on 2.7.2.


Thanks to @AlbertBlue for finding this issue.

----------, Oct 20, 2018

Changes:
  • Fixed an issue in 2.7.0 where reloading would reset the config


Updater info (!)
UNSAFE
----------, Oct 16, 2018

Changes
Added an amazingly advanced Update Reminder, which you can configure to detect the version most fit for you: from bleeding edge to very-stable; you can set it up so it selects the safest version for you.
[​IMG]


Updater info (!)
UNSAFE
----------, Oct 15, 2018

I've improved the benchmarking accuracy on the 1.13 version to more properly show the expected amount of players.


The following data is for testing purposes for the next update that will add an Update Announcer. Please ignore it or if you are curious and want more info just ask me on discord.
This data may not be actually true for now so take that in mind. (it's automatically processed by the plugin).

FIXED: BENCHMARK, CHUNKANALYSE
UNSAFE
----------, Oct 7, 2018

Removed some misleading old comments saying that the client-side system only works on 1.12.2; which is not true anymore. This is because a client recently complained of that feature being abandoned.
----------, Oct 4, 2018

Limiter system changes
During the time I've been working with lagassist, I've noticed that by making the per-limit system actually replace the total-limit altogether, better anti-lag rules could be made. This update reflects the changes and should help fix the issues with items not spawning if the chunk limiter is limiting it (as long as the dropped_item) entity has a separate per-entity rule. This is now a default but it may be missing in older versions.
----------, Oct 1, 2018

Changes
  • Fixed chunk generation for 1.13.1 clients.
  • Improved the mob limiter system to now prioritize per-entity rules and use the global rule as a fallback.
  • The new configuration system helps improve code quality and as such helps me keep the updates coming.
----------, Sep 27, 2018

Changes
  • Slightly improved the benchmarking system messages to be self-explanatory.
----------, Sep 20, 2018

Bug Fixes
The 2.5.0 version of lagassist only worked on paper spigot. This was now fixed.


Note: The update is not necessary for paper users
----------, Sep 10, 2018

Pregeneration System
The new pre-generation system now uses a spiraling system in order for regeneration to get progressively better as time passes; instead of a full generation being necessary to feel the effects.

Not only that, but it now uses a better system for detecting already existent chunks; so it will go blazingly fast over chunks that have been already generated.


Bug Fixes

Fixed an issue where paper detection wasn't done properly, basically rendering all paper-only features broken.
----------, Sep 9, 2018

Chunk Limiter
The chunk limiter allows you to limit the number of entities and tile entities allowed per chunk. It is highly configurable and is recommended with creative servers.
----------, Sep 5, 2018

Changes
  • Used a dynamic material chooser to allow me to support both 1.13 and 1.12.
  • Changed the map (for 1.13) to use the new system added in the latest version.
----------, Aug 25, 2018

Bug Fixes
  • Fixed an error occurring when disabling the plugin (i wrote server by mistake in update log)
----------, Aug 24, 2018

Fixes
  • Fixed an issue where a bad enable order made client-side optimizations not work.
  • I've improved my code quality for Reflection & Packets
----------, Aug 22, 2018

Fixes
  • Made it so you can completely disable client-side optimizations in order to get rid of thread locking when tacospigot calls "isProtocolSupport()".
  • Switched "paper only" class to "com.destroystokyo.paper" from "com.aikar.timings". This should be more exact and help with new paper versions.
----------, Aug 20, 2018

Fixes:
  • Fixed some minor issues with reflection not working properly.
  • Improved the code quality
----------, Aug 18, 2018

Piston Client-Side Optimization
Feel your FPS increasing while using the PistonOptimizer, which works by intercepting, analyzing and null-routing the piston animation packets!
[​IMG]
----------, Aug 5, 2018

Fixes
  • Fixed the ping system for non-paperspigot servers.
----------, Aug 5, 2018

Fixes
  • Fixed the 1.13 reflection errors.
  • Added the client-side optimizations to 1.13 too. it should now be possible to use the client-side optimizations on all versions shown as supported on the spigot page.
----------, Aug 1, 2018

Fixes
  • Fixed the 1.8 client-side optimizations.
  • Made the client-side defaults work even before the initialisation of the GUI.
----------, Jul 30, 2018

Fixes
  • Fixed 1.8 crashing because the client-side optimizations don't currently support it.
  • Fixed issue with RedstoneCuller having an issue on 1.8 if you spam it.
----------, Jul 30, 2018

Client Optimizer (NEW):
The client optimizer allows players to have higher FPS during some high-load activities like cannoning, stacking sand, etc. It uses packet interception in order to hide laggy features for players, and thus allows them to have higher FPS without altering the gameplay too much. I've seen large improvements with Client-side lag. Not only that, but players can even configure what they want enabled and what not using a very nice & easy GUI; using a custom command that can be configured by you.
[​IMG]
----------, Jul 29, 2018

Bug Fixes
  • Fixed LagMap breaking when removing the world on which the map was stored.
  • Fixed division by 0 when the player count was 0 with the chunk-manager.
  • Partially fixed 1.13 support.
----------, Jul 23, 2018

ChunkManager Fixes
Fixed issue where view-distance only changed server-side due to me not properly understanding how paper's setViewDistance system works. You have to set your minimum view-distance in your spigot.yml and paper.yml and NOT as the maximum ones. The maximum view distance must then be set in lagassist's configuration file.


Note:

People that have used the 1.14.0 version will have to add the next in the config. Alternatively, they can delete their configs and let it regenerate.


Code (Text):
chunk-manager:
  max-view: 12
----------, Jul 22, 2018

Dynamic View Distance (Requires PaperSpigot)
The dynamic view distance improves server performance by dynamically setting view distance in order for the loaded chunks to be close to a static number, while players fluctuate. It does this by calculating the max view distance necessary to maintain the loaded chunks at the configured value.

Not only does this optimize the server when the player count increases, but it also allows your players to have a greater view distance on your server when your player count is low.
----------, Jul 22, 2018

Changes
Made the code more modular to allow the addition-removal of classes easier and the code nicer to look at. I'm now working on improving the code to be able to add more features, faster.


Have any suggestions or is your server lagging?
I implement my ideas very fast, and clients usually don't complain of lag, so I start getting out of ideas.

Didn't purchase yet?
Contact me and send me a TimingsV2 report and I will personally help improve your server's performance, and even add some new features to lagassist to help improve the way your own server works.
----------, Jul 20, 2018

I've added experimental support for the 1.13 pre-release that was recently released.

This version shouldn't have any issues with 1.12- versions, but I'm currently highly alert to any issues you might have. Please notify me for any error you get.

Thanks,
Stefan Deleanu
----------, Jul 16, 2018

Thanks to @EvilSlime for suggesting this change

NEW GUI!

The new GUI is much more descriptive, easy to use and has a new and nice look. It is much less clunky and basic and it actually looks good.

Performance Gains
I've done some changes to the code infrastructure that should provide more performance in the long term.
----------, Jul 12, 2018

Revamped the map system and also added a data file which will be used in the future for temporary data.
----------, Jul 11, 2018

Changes
Fixed a rare issue with lagassist getmap that caused it not to work. This version is not tested on the server that had the map issue, so it is not fully stable.
----------, Jul 2, 2018

Spawner-Check
The new spawner check allows you to optimize AND/OR remove spawners with a set chance. It is very useful in cases where spawners cause a lot of LAG and can highly increase TPS in some cases. You can configure most settings and along with that, LagAssist should be compatible with any plugin modifying spawners (like EpicSpawners & SilkSpawners).
----------, Jun 27, 2018

Changes
You can now reserve a data value for your map so you can use it in spawn as a monitor for everybody or even sell lag-maps for ingame money.
----------, Jun 21, 2018

You can now tab-complete /lagassist chunkanalyse this

This should be very helpful if people don't know about the command.


If you have any good idea, please contact me. Thanks :)
----------, Jun 11, 2018

Changes
People with both paperspigot 1.9+ and lagassist's better mob armor stand setting will now see a more efficient implementation of this feature.

Thanks to @Tiippex for suggesting the improvement and pointing me the way.
----------, Jun 8, 2018

ChunkAnalyser
Added "current chunk" analyzer functionality for people to be able to analyze the current chunk. This feature is not that different from the chunkanalyzer, but it might help some people analyze separate chunks.

To access this current feature, please run /lagassist chunkanalyse this
[​IMG]
----------, Jun 8, 2018

Why?
The past LagMap system was based on custom id generation. The issue with this is that it had to edit the config to set the MAP-ID value, which in turn removed all the comments (due to how the configuration system that spigot uses works). Due to the map setting process running on first start, it basically removed all the comments before you could even open the config file. Until now, i've had to resort to a temporary fix: Get a new map for every new time the plugin restarts. The issue is that there are only ~32k possible map ids you can use, and they would run out eventually.

The Fix
I've decided to set the map to function using the ID NR 0 and make it render normally if certain conditions making sure you should be able to see the map are met.
It detects when you change slots in your inventory and adds or removes you to the list depending on what item you are holding.

It's not as simple as before, but it's a good way of fixing the issue, and from my tests it is also lightweight.
----------, Jun 7, 2018

MobManager
  • No-Gravity Armor stands - More efficient armor stands for creative servers, where mechanics like gravity don't need to affect this kind of mobs.
  • Simple Slimes - Don't split slimes, instead of giving an approximate amount of how much loot the normal mechanics would give.
----------, Jun 4, 2018

Changes
Removed some unused methods from the speed test system.


Do you have any suggestion? PM me here or on Discord, and i'll try to implement it. Thanks :)
----------, Jun 2, 2018

RedstoneCuller
Changed the system so you can now configure0 how much time the Redstone will get culled when running the redstoneculler (default and same as before: 60 ticks).
Also, now /lagassist redstoneculler resets the time before Redstone stops getting culled instead of just ignoring it if it is already running.


Reload System
The reload should now restart most of the cached config values that have been used for bonus efficiency.
----------, May 30, 2018

Whitelist/Blacklist mode
Thanks to @JorgeProGames for the suggestion.

You can now choose if you want the lagassist mobculler only not cull some mobs in the list. This is very useful if you only want some special mobs remaining alive, while the others are removed.

Do you have any suggestion? PM me here or on Discord, and i'll try to implement it. Thanks :)
----------, May 30, 2018

ChunkAanalyser
It now shows what region file the chunk is located in. It might help with TimingsV2 to compare between readings. Thanks to @Tiippex for the suggestion.

TPS

No longer visible to players without the lagassist.use permission.
----------, May 27, 2018

ChunkAnalyser
I improved the ChunkAnalyser system to show information when you hover over the message. It is now much easier to see why the chunk was signaled as a laggy one and react accordingly.
[​IMG]
https://sfy.cx/ss/u/3bba.png



StatsBar
Made it stop calculating the message if there is no one using it. This should greatly optimize that system.
----------, May 26, 2018

Fixes
  • Fixed a minor tipo in /tps where the overview would show GB instead of MB.

Do you have any suggestions? Make sure to PM me, so i can add them.
----------, May 26, 2018

Ping Benchmark
You can now see a ping benchmark showing the ping for online players. It shows the lowest, highest and average ping.
[​IMG]

Configurable StatsBar
The stats-bar can now be fully configured, from how often to update, how much ticks to average in order to get the tps to how the message looks.


New Design
Changed design for many features, like the ChunkAnalyser, StatsBar and more. This is a little presentation of the changes.
[​IMG]
[​IMG]
Thanks to _ShadowXD for creating the second design.
----------, May 25, 2018

Changes
  • /LagAssist chunkanalyse can now be ran from console.
Thanks to @Solder for the suggestion.
----------, May 22, 2018

LogCleaner
The log-cleaner is a system that removes old log files. It can be configured to clean logs from anything: crash logs, plugin logs, etc; and is very useful for keeping the server nice and clean.
You can set it so it detects when the


Fixes
Removed debug message showing the speedtest when using /lagassist getmap.
----------, May 19, 2018

Note:
This is a documented release. There were previous unannounced updates that ran here. Please make sure you actually have this latest version if you are finding issues.
I'm really sorry that there were so many bugs in 1.8, and thanks to all the clients that reported the bug:
@artfcl_intlgnce
@jorishdpvp

Fixes

  • Fixed issue with 1.8 unable to get ChatComponent messages correctly.
  • Changed the staff lagannounce message to be nicer, instead of looking like a bug.
  • Fixed a issue where /lagassist tpchunk would also show the help page.
----------, May 19, 2018

Changes
  • Fixed an issue with /lagassist Benchmark not executing a command.
  • Changed the /lagassist Benchmark bandwidth test to show MiB too (which is the default & deceiving way that bandwidth is advertised, which is x8 what you would see in MB).
  • Added Plugin /version description, along with some other changes to the plugin.yml file.
----------, May 18, 2018

SpeedTest
  • Simple & easy to use, for both download and upload speed.
  • Efficient, not dependant on your File I/O speed. (writing/reading files to disk), by null-routing the downloaded files, and generating the upload files arbitrarily.
  • Configurable FTP server to download and upload the benchmark test-files from and the ability to change the uploaded file size
  • Default FTP server is barely dependant on area, being hosted in multiple areas around the world.

Benchmark Improved
  • Much better memory analysis system, that should now give a more accurate answer.
  • Now Includes the SpeedTest system.
  • Added benchmark tab-complete system.
----------, May 18, 2018

Benchmark
LagAssist benchmark uses metrics from CpuBenchmark, memory information, along with some calculations to approximate the number of players your server will keep without lagging. It is still in development, but it still should work fine with most Linux & Windows OS-es.

[​IMG]


(!) Your server needs to have access to connect to PassMark's Cpu Benchmark website. Also, please note that some hosts might not allow checking what CPU they are using (which is necessary for a quick benchmark lookup). If you have any questions, make sure to ask me.
----------, May 17, 2018

Command-System
  • Commands can now be tab-completed! It will make running them much simpler now, as you don't need to worry to search the help every time.
  • The help command (or unknown command) message was changed a lot! It now shows a simpler and easy-to-read version. Hovering over commands will show you what they do, and some tips related to it.

Looks
  • The help command looks much better, and is partially-documented ingame!
[​IMG]
----------, May 16, 2018

LagOverview
LagOverview is a simple yet detailed look into system information. It can help to find out what may be causing lag spikes on the hardware-level; help monitor how much shared hosts oversell, and more.

[​IMG]
----------, May 15, 2018

Resource Information
Author:
----------
Total Downloads: 2,694
First Release: May 13, 2018
Last Update: Jun 30, 2023
Category: ---------------
All-Time Rating:
111 ratings
Find more info at www.entryrise.com...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings