Releases: Rothes/ESU
0.13.0
🎉 ESU 0.13.0 is out now!
A new AfkEfficiency feature is added to NetworkThrottle module. This feature is designed for afk farm, which saves a lot bandwidth if you have players created a large mob farm. For normal random afk players, the bandwidth reduction is relatively limited.
ESU-bukkit
- [NetworkThrottle] New feature: AfkEfficiency
- [ChunkDataThrottle] Optimizes map
- [ChunkDataThrottle] Improve concurrent
- [ChunkDataThrottle] Improve thresholdToResentWholeChunk
- [ChunkDataThrottle] Fix blocks not updating
- [ChunkDataThrottle] Optimize detectSameStateUpdate
- Fix improved PalettedContainerReader on Paper 1.21.3+
Full Changelog: 0.12.5...0.13.0
0.12.5
🎉 ESU 0.12.5 is out now!
!!! Please download ESU-bukkit 0.12.6-dev-4 for a severe bug fix. !!!
This version brings Minecraft 1.21.11 support, and a huge improvement on ChunkDataThrottle.
Previously, ChunkDataThrottle feature allocates two bytearray to store each block in a chunk and player, up to 164KB. Now, it uses same bytearrays for each player. This should reduce memory usage and Jvm GC a lot. And we optimized occlude test for NMS BlockState types.
Core
ESU-bukkit
- Migrate to ResourceKey, 1.21.11 Support
- [ChunkDataThrottle] Cache blocksView value for BlockState type
- [ChunkDataThrottle] Cache shared temp array
- [ChunkDataThrottle] Fix detectSameStateUpdate
- [ChatAntiSpam] Fix mute multiplier
ESU-velocity
Full Changelog: 0.12.4...0.12.5
0.12.4
🎉 ESU 0.12.4 is out now!
This version brings many optimization to EntityCulling again, and introduces many changes.
A new CoreModule is added to bukkit plugin, for internal usages.
Configration schema for PrefixedMessageModifierin EsuChatModule has been changed. It's suggested to backup that config before upgrade.
Core
- [Configuration] Support replacing lang resource to existing default lang
- [Unsafe] Reliable override offset getter
This should support various JVM software. - [Unsafe] Delay internalOffset init
This is to make ESU loads on CloudNet system.
ESU-bukkit
- [EsuChatModule] PrefixedMessageModifier: Remove head/foot, in favor of format
Configurations will not be upgraded automatically. Backup the configuration before upgrade. - [EssentialCommands] Add NoFall command
- [EssentialCommands] Add Invulnerable(God) command
- [EssentialCommands] Ensure tick thread for heal/feed command
- [ChatAntiSpam] Add multiplierMax option
- [ChatAntiSpam] Add afkMultiplier
- [ChatAntiSpam] Similarity uses char based size
Now each ascii/latin letters counts as 1 char, others counts as 2 chars. - [EntityCulling] Only calculate AABB center for small bounding-box entities
- [EntityCulling] Force to skip culling players
- [EntityCulling] Improve synchronized usages
- [ChunkDataThrottle] Migrate to nms registry, vanilla blockstate occlude cache
This introduces CraftEngine blocks support, and a more accurate block occluding detect. - [SpawnProtectModule] Full hot-disable support
- [EntityCulling] Optimize locks on update tick, full hot-disable support
- [EsuChat] Fix wrong placeholder for spy/whisper receivers
- [NewsModule] Fix check button not using player locale
- [NetworkThrottle]Fix HighLatencyAdjust is always enabled
- [ChunkDataThrottle] Fix sendChunk error
- Fix player kick, support spigot
ESU-velocity
- [TrafficMonitor] Simulate network frame for more accurate overhead bytes
This new algorithm outputs the most accurate real network upload usage. - [TrafficMonitor] Fix onDisconnect not synchronized
Full Changelog: 0.12.3...0.12.4
0.12.3
🎉 ESU 0.12.3 is out now!
This version brings many optimization to EntityCulling, and NetworkThrottleModule on velocity.
UtilCommandsModule is now deleted, in favor of the new EssentialCommandsModule. New commands added: /heal, /feed, /[walk|fly]speed[Get], /spectate, /dimensionTravel, /suicide.
Common
ESU-bukkit
- Migrate UtilCommandsModule to EssentialCommandsModule
- [EntityCulling] Fix occlude detect on some shaped blocks
- [EntityCulling] Reflect to showEntity not same thread, save memory
- [EntityCulling] Add single thread benchmark
- [EntityCulling] Respect entity type track range
- [EntityCulling] Players are visible by default
- [VaultUnlocking] Fix recording already rewarded player
ESU-velocity
- [NetworkThrottle] Improve performance, not to copy network data
- [NetworkThrottle] Fix analyser filter for player/server
Full Changelog: 0.12.2...0.12.3
0.12.2
🎉 ESU 0.12.2 is out now!
This is a quick hot fix comes with last update.
ESU-bukkit
Full Changelog: 0.12.1...0.12.2
0.12.1
🎉 ESU 0.12.1 is out now!
We did many optimization to EntityCulling feature. Now it's considered the fastest way and reliable on common servers(paper, regular folia).
Added AutoBroadcastModule for both bukkit and velocity, AutoRestartModule for velocity.
Common
- Add AutoBroadcastModule
- Load all users before enabling modules
- Make AutoReloadExtensionPluginsModule last loaded
ESU-bukkit
- [NetworkThrottleModule] Add EntityUpdateInterval control
- [EntityCulling] Add entityCulledByDefault option
- [EntityCulling] Add cullThreshold option
- [EntityCulling] Support 3D-DDA
- [EntityCulling] Fix benchmark always use 4 threads
- [ChatAntiSpam] Rework cache storage: Holder for same SpamData instance, synchronized
- [ChatAntiSpam] Fix database deadlock warning while muted by both checks and score
- [ChatAntiSpam] Fix loadSpamData ignoring stored lastAccess
ESU-velocity
Full Changelog: 0.12.0...0.12.1
0.12.0
🎉 ESU 0.12.0 is out now!
We reworked on many internal architecture in this update. This ensures that while having increasingly larger modules, we can still easily maintain and add new features.
For users: If you have changed module-enabled in module config, /esu reload will now enable/disable the module for you.
We said we are using bundled packetevents since 0.11.1, but we no longer do it any more so you still need it installed in your server.
Core
- Unregister all esu commands on disable
- Not to use our own packetevents
- Shutdown coroutine Dispatchers onDisable
- Remove kotlinx-io-core in jar, we loaded it on runtime
ESU-bukkit
- [NetworkThrottleModule] Add EntityCulling
EXPERIMENTAL: This feature can hide entities behind the walls to save your bandwidth - or you can use as anti-esp.
We need user reports, for the performance and stability of this feature.
Based on measurements, performance shouldn't be an issue, but we can't estimate its stability on Folia. - [AutoReloadExtensionPlugins] Delete tmp file on exit
- [AutoReloadExtensionPlugins] Add updateCommands command
- Fix remap for non-obf classes on 1.16.5
- Custom EsuBukkitCommandManager
We handle root command updates in our own, so hot-loading won't create issues on paper servers.
Full Changelog: 0.11.2...0.12.0
0.11.2
🎉 ESU 0.11.2 is out now!
This update includes some minor updates and fixes.
If you are upgrading from 0.11.0 below, please read previous changelog.
Core
- Support hot-reload for bundled packetevents
- Compute ColorScheme on load
* This is for thread-safe after a hot reload - Downgrade H2 database driver
* This is to address datetime column creation error
ESU-bukkit
- [ChatAntiSpamModule] Keep death message on screen
- [SocialFilterModule] Add normalizeText
- Fix NewsTable
Full Changelog: 0.11.1...0.11.2
ESU v0.11.1
🎉 ESU 0.11.1 is out now!
In this update, we fixed some severe bugs. And now packetevents is bundled (we need to do that so we can use relocated adventure lib, which is faster).
If you are upgrading from 0.11.0 below, please read previous changelog.
Core
- Bundled packetevents, Improve maven dependencies resolve (~5s faster)
- Improve MavenResolver config io
- Fix saveRepoConfiguration
- Fix default table version
Full Changelog: 0.11.0...0.11.1
ESU v0.11.0
🎉 ESU 0.11.0 is out now!
In this update, we have made many major changes to ensure subsequent stable development and updates.
We have changed the license from GPL v3 to LGPL v3, dependencies stuffs,
and changed our database schema, to ensure the uniformity of every database software.
The database upgrade sql statements are designed for MariaDB only, you may wish to reset all database on other database software(If you are using NewsModule, make sure to backup news data!).
If you need help migrating, please join our Discord server.
Core
ESU-bukkit
- Load nbtapi, bstats on runtime
- Add SocialFilterModule
- [NewsModule] Allow multiple pages for each news
- [NewsModule] Support Edit again at preview page
- [NewsModule] No longer automatically add a new line between pages
- [BlockedCommandsModule] Fix setting isCancelled to false
- Support minimessage papi
- Download missing fastutil lib on 1.16.5
Full Changelog: 0.10.2...0.11.0