Skip to content

Latest commit

 

History

History
1058 lines (841 loc) · 55.2 KB

CHANGELOG.md

File metadata and controls

1058 lines (841 loc) · 55.2 KB

Changelog

Contributors:

All notable changes to this project will be documented in this file.

[2025.1.1 LTS BUILD 2] - 2025-Januray-14

  • fix: Knockback fixes for MobStacker by Xefreh

[2025.1.1 LTS BUILD 1] - 2025-Januray-4

  • chore: Improved eat and drop fixes
  • fix: Fixed ping spike on loading chunks

[2024.11.1 LTS BUILD 4] - 2024-December-21

  • feat: Added PlayerTrackEntityEvent and PlayerUntrackEntityEvent
  • fix: Fixed the way packet being queued

[2024.11.1 LTS BUILD 3] - 2024-December-14

  • fix: Proper fix for Citizens

[2024.11.1 LTS BUILD 2] - 2024-December-9

  • chore: Fixed get time overhead in tick chunks
  • chore: Reduce get time overhead in World
  • fix: Make sure user is still connected each flush
  • fix: Check null before calling PlayerChunkUnloadEvent event
  • fix: queuePacket should ignore null packets

[2024.11.1 LTS BUILD 1] - 2024-November-14

  • feat: Added disableNaturalMobSpawning world option
  • feat: Player Chunk Load/Unload Events
  • chore: Massively improved network flushing control
  • chore: Added packet queue for entity tracking
  • fix: Fixed ProtocolLib's hacky way to listen packets

[2024.10.1 BUILD 4] - 2024-November-11

  • chore: Changed the way PlayerChunkMap update distances
  • fix: Fixed extreme amount of mob spawning on weird lighting situation

[2024.10.1 BUILD 3] - 2024-November-7

  • fix: Force update on enchanting items
  • fix: Exclude com.sun:tools dependency

[2024.10.1 BUILD 2] - 2024-October-20

  • fix: Fixed non-async-explosion doesn't break blocks

[2024.10.1 BUILD 1] - 2024-October-16

(New Release)

  • feat: Added EntityFactory to reduce reflection load on natural mob spawning
  • feat: Added canOneShot option to mobStacker - Xefreh
  • feat: Added displayName option to mobStacker - Xefreh
  • chore: Cleanup ChunkCache after used
  • chore: Ensure not null before remove from PlayerMap list
  • chore: Reduce block check in Explosion
  • fix: entity was not killed if stack <= 1 - Xefreh
  • fix: enderman client animation teleport is no longer sent - Xefreh
  • fix: Fixed mob stacking doesn't work when an event is registered
  • fix: Fixed AsyncFastLight making the end not spawning any mobs
  • fix: Redesigned how async-explosion addition works

[2024.9.1 LTS BUILD 4] - 2024-September-10

  • fix: Fixed an startup error in Java 8 environment

[2024.9.1 LTS BUILD 3] - 2024-September-8

  • fix: Fixed unable to launch the spigot in certain platforms
  • fix: Replaced deprecated Guava method
  • fix: Fixed dont read NBT in window click cause window click always mismatch

[2024.9.1 LTS BUILD 2] - 2024-September-7

  • Reverted jar-relocator update for error on some users

[2024.9.1 LTS BUILD 1] - 2024-September-6

(New Release)

Features

  • feat: Added smoothPotionSplashing option
  • feat: implemented an option to disable processing packets while sleeping thanks to Cyramek. - Xefreh
  • feat: Added world option shouldSaveTrackerBandwidth
  • feat: Added world option disableTracking
  • feat: Added indirectSelfBoosting to knockback hitBase behaviour

Changes

  • chore: Changed the way set motion works
    • Fixes an issue with ArenaPvP bot knockback issue
  • chore: Constant time on main task queue size()
  • chore: Reduce memory overhead with some BlockPosition

Fixed

  • fix: Reduce explosion chunk lookup
  • fix: Mouse delay fix shouldn't apply to non-throwable potion
  • fix: Removed unused creature counter in SpawnerCreature

Removed

  • removed: Removed ServerSideHitDetection

[2024.7.1 LTS BUILD 1] - 2024-July-19

(New Release)

Chore

  • chore: Added option shouldApplyFishVelocityToPlayer
  • chore: Avoid double lookup in ActivationRange
  • chore: Improved random tick chunk iteration
  • chore: Improved mouseDelayFix overall

Fixed

  • fix: Fixed incorrect casting
  • fix: Fixed ghost bucket
  • fix: Applied RegionFileCache fix by Xefreh

[2024.6.1 BUILD 5] - 2024-June-11

  • fix: Fixed asyncFastLight calling main thread update light randomly

[2024.6.1 BUILD 4] - 2024-June-10

  • fix: Fixed mouseDelayFix, only rotation will desync, and fix a slight delay that dupes item
  • fix: Fixed some race condition in ChunkSaveIOThread

[2024.6.1 BUILD 3] - 2024-June-6

  • Added option mouseDelayFix
  • Added option interactEventFix

[2024.6.1 BUILD 2] - 2024-June-3

  • Fixed SlimeWorldManager compatbility

[2024.6.1 BUILD 1] - 2024-June-1

(New Release)

Added

  • Async Chunk IO Unload
    • Brand new feature that moves chunk unload encoding into a separate thread, massive improvement to chunk unload performance.
  • Added doChunkAutosave world option

Fixed

  • Fixed incorrect casting in monster knockback

[2024.3.1 LTS BUILD 4] - 2024-April-2

  • Fixed tick-next-tick-list-cap not being considered when ticking next tick list. - LeeGod

[2024.3.1 LTS BUILD 3] - 2024-March-26

  • Added option signStripFormatting to world config. - LeeGod
  • Added option maxSignLineLength to world config. - LeeGod
  • Fixed NPE in pandawire redstone - LeeGod

[2024.3.1 LTS BUILD 2] - 2024-March-24

  • Added imanity configuration support into spark report. - LeeGod

[2024.3.1 LTS BUILD 1] - 2024-March-19

(New Release)

Changed

  • Prevent async teleportation from happening using AsyncCatcher. - LeeGod
    • Use sync callback redirect when compatibilityMode is on
    • Solved #218
  • Added async catcher status to crash log. - LeeGod

[2024.1.1 BUILD 1] - 2024-Januray-1

(New Release)

Added:

  • Added disableFallingBlocksPhysics world option. - LeeGod
    • Thanks to @Xefreh for the patch.

Fixed:

  • Fixed NullPointerException from shutting down ghost patcher. - LeeGod

Changed

  • Updated outdated links and time. - LeeGod

[2023.10.1 LTS BUILD 2] - 2023-October-28

Fixed

  • Fixed NPE in lighting - LeeGod

[2023.10.1 LTS BUILD 1] - 2023-October-26

Added

  • Added TNTPrimeEvent - LeeGod
  • Addd non-mutative getCrossProduct method to bukkit Vector - LeeGod

Changed

  • Reload world configurations when /imanity reload - LeeGod
  • Make sure lighting update not sharing the same cache - LeeGod
  • Use weak reference for light cache - LeeGod
  • Improved ignore damage ticks functionality - LeeGod

[2023.7.1 BUILD 1] - 2023-July-27

Added

  • Added arrowIgnoreDamageTicks option - LeeGod

Changed

  • Added fillWorld description (inform /imanity fillWorld radius is in blocks) - LeeGod

Fixed

  • Only apply yaw and pitch since only rotation can desync for ghostBucketFix option - LeeGod
  • Fixed toggleantixray command on console - LeeGod

[2023.5.1 LTS BUILD 3] - 2023-June-22

Changed

  • Don't update blocks that's too faraway for antixray (reduce loads) - LeeGod
  • Stricter solid block checks for antixray - LeeGod

[2023.5.1 LTS BUILD 2] - 2023-May-31

Changed

  • Improved network manager initialization and packet sending - LeeGod
    • Removed network manager packet queue synchronization
    • Ensure queued packet only being sent once
    • Add network manager to pending list and add them all at once on main thread tick
    • Don't try to flush packet out of main thread unless it's in pending state
    • Solved #198
    • Solved #204
    • Solved #207

[2023.5.1 LTS BUILD 1] - 2023-May-24

20230501

Added

  • Added Raytrace AntiXray Addition - LeeGod
    • An advanced anti xray system that only display ores to people who can see it from raytracing.
    • Built on top of Async AntiXray
    • Exclusive to ImanitySpigot3 Enterprise.
    • Sub feature: Fake Ores
      • Generating random ores surrounding the world.
      • To mislead xrayers from mining the real ores.
  • Added Async AntiXray - LeeGod
    • Alternative to current spigot anti xray, obfuscation is running completely in different thread pool.
    • Also fixed the issue where ores are tend to not be obfuscated.
  • Added /imanity disableAntiXray - LeeGod
    • Only works when Async AntiXray was enabled
  • Added /imanity bypassAntiXray - LeeGod
    • Only works when Async AntiXray was enabled
  • Added improvedHitDetection option - LeeGod
  • Added ghostBucketFix option - LeeGod
    • Fixed ghost water/lava bucket placement by improving right click detection.
  • Added bucketUpdateRange option - LeeGod

Fixed

  • Fixed memory leak for AsyncFastLight - LeeGod

[2023.4.1 BUILD 2] - 2023-April-25

  • Fixed lighting issue with loading chunks - LeeGod

[2023.4.1 BUILD 1] - 2023-April-23

  • Added throughCobweb option to every egg, snowball, and pearl - LeeGod
  • Added velocity exploit patch - LeeGod

[2023.3.1 BUILD 3] - 2023-April-12

  • Disallow natural creature spawning system from loading chunks - LeeGod
  • Fixed incorrect casting in part of chunk generation - LeeGod

[2023.3.1 BUILD 2] - 2023-March-29

  • Added compatibilityMode option - LeeGod
    • It's an option that attempts to fix edge cases for different scenarios or plugins. More changes will be added to this option, currently focsuing on chunk related stuff.
  • Added TileEntityChest thread safe fallback - LeeGod
    • An attempt of fixing #137

[2023.3.1 BUILD 1] - 2023-March-17

  • Added Redstone Limiter addition - LeeGod
    • An addition that allows you to control the maximum amount of redstone, hopper, dispenser, dropper, piston push per tick by configuration. currently available for Enterprise only.
  • Added mob stacker related APIs to Entity class - LeeGod

[2023.2.1 LTS BUILD 6] - 2023-March-6

  • Added world region modification sealevel - LeeGod
    • This option allows you to modify the sea/water level of a special region
    • Argument: sealevel: <number>

[2023.2.1 LTS BUILD 5] - 2023-March-2

  • Fixed restart script not working - LeeGod

[2023.2.1 LTS BUILD 4] - 2023-February-28

  • Fixed remove lakes region using wrong condition checking - LeeGod

[2023.2.1 LTS BUILD 3] - 2023-February-28

  • removeLakes world region option will now remove lakes generated by heightmap (lower than sea level) - LeeGod
  • usercache.json now won't crash the server for failed loading - LeeGod

[2023.2.1 LTS BUILD 2] - 2023-February-18

  • Fixed small error on explosion calculation - LeeGod

[2023.2.1 LTS BUILD 1] - 2023-February-17

(New Release)

Added

  • Added Enterprise Plan - LeeGod
    • Checkout Enterprise now on HERE
  • Added AsyncExplosion addition - LeeGod & Whizyyy
    • A mutli-threaded explosion system with enhanced algorithm to optimize Explosion by 3-8x.
  • Added GhostPatcher addition - LeeGod
    • A patcher system that will remove ghost blocks when fast instant mining.
  • Added option explosion.shouldCheckBlockDensity into imanity world config - LeeGod
  • Added option explosion.constantExplosionRange into imanity world config - LeeGod

Chores

  • Improved explosion algorithm - Whizyyy
  • Improved comments in confiugrations - Whizyyy

[2023.1.1 BUILD 2] - 2023-February-6

  • Emerald ore generation will now be overriden by Custom block rule set if enabled - LeeGod
  • Attempting to fix BKCommonLib reflection compatibility on nms World class - LeeGod
  • Ignore Citizens patching if the Citizens is on new versions - LeeGod

[2023.1.1 BUILD 1] - 2023-Januray-1

Chores

  • Improved block position memory allocation - Whizyyy
  • Improved player chunk map memory allocation - Whizyyy

Fixes

  • Fixed EquipmentSetEvent not called when item is the same - LeeGod
    • Special Thanks to Xefreh for helping on the issue!

[2022.11.1 LTS BUILD 3] - 2022-December-8

  • Should not reset damage ticks on entity death with mob stacker stacked - LeeGod
  • Fixed not checking for overriden ChunkRegionLoader - LeeGod

[2022.11.1 LTS BUILD 2] - 2022-November-7

  • Fixed MobStacker ignoring entity equipments - LeeGod

[2022.11.1 LTS BUILD 1] - 2022-November-3

(New Release)

Added

# This section allow you to configure the MobStacker settings
# MobStacker is a feature that allow you to stack mobs together
# So that you can have less entities in the world and then better performance
# This is very useful for servers such as SkyBlock or Faction that run huge mob farms
mobStacker:
  enabled: true
  onlyStackFromSpawner: false
  stackRadius: 5.0
  maxStackAmount: 50
  ticksToStack: 100
  ignoreEntityType:
  - HORSE
  - VILLAGER
  - WOLF

image

Bug Fixes

  • Fixed setFlying() wrong variable used - LeeGod

[2022.8.1 BUILD 2] - 2022-August-30

  • Added world option enderPearlTrajectoryRandomness - LeeGod
  • Added world option potionTrajectoryRandomness - LeeGod
  • Added world option snowBallTrajectoryRandomness - LeeGod
  • Added world option eggTrajectoryRandomness - LeeGod
  • Prevent server crashing from invalid movement packet - LeeGod
  • Fixed instant respawn not working properly with setHealth(0) - Whizyyy
  • Fixed some errors on parallel entity tracking - LeeGod

[2022.8.1 BUILD 1] - 2022-August-24

(New Release)

Added

  • Added option fishingHookTrajectoryRandomness - LeeGod
  • Added isEssentialRedstoneWaterProof option - Whizyyy

Changed

  • Updated ImanityKnockback - LeeGod
  • Allow scanPlayers(list) to be used when parallel - LeeGod

Fixed

  • Fixed PandaWire's redstone logic, some advanced tnt cannons are now working - Whizyyy
  • Fixed merge cannon optimization + improved explosions - Whizyyy

[2022.5.3 BUILD 4] - 2022-July-21

  • Added LagSpikeTriggerEvent - Whizyyy
  • Added auto download spark profiler - LeeGod
  • Improved chunk cache and ensure main in getOrCreateChunk - LeeGod
  • Allow NibbleArray to be 0 length on load - LeeGod
  • Fixed timing export error in broken host - LeeGod
  • Fixed chunk scheduler NPE - LeeGod
  • Fixed issue when Citizens NPC were throwing potion with vanishPatch option enabled - Whizyyy

[2022.5.3 BUILD 3] - 2022-June-3

  • Fixed PacketPlayInBlockPlace decode error - LeeGod

[2022.5.3 BUILD 2] - 2022-June-2

  • Fixed AsyncFastLight ArrayIndexOutOfBoundsException - LeeGod
  • Fixed Knockback Enchantment level get shifted by 1 - LeeGod
  • Fixed TNT Merging - LeeGod
  • Fixed /ping permission command - Whizyyy
  • Added dontReadItemNBTDataFromPackets option - LeeGod

[2022.5.3 BUILD 1] - 2022-May-21

(New Release)

⚠️ Potential API & Config Changes, Please be aware before updating. ⚠️

⚠️ This is an extremely experimental version, Please use it on your own risk. ⚠️

Added

  • Migrated ImanitySpigot3's knockback system into ImanityKnockback - LeeGod
  • Added V2 editor and file format support - LeeGod
    • This is very meanful for those server who still rely on v2 knockback
    • It now supports you directly dragging your knockback profile into imanity/knockback folder and reload
    • And edit it the same way as the old one!
  • Use pastebin for get knockback config button - LeeGod
v2.mp4

Changes

  • Knockback related api has been moved to package dev.imanity.knockback.api - LeeGod
    • Check Imanity docs for more detailed changes on API.
    • This change is due to our future plan for knockback system.
  • Renamed Velocities behaviour to HitBase - LeeGod
  • Shift all knockback related config option into imanity/knockback.yml - LeeGod
    • No auto config migration, please be aware.

Fixed

  • Fixed wrong knockback calculation on all behaviour - LeeGod
  • Fixed V3 editor glitches when multiple people have it opening - LeeGod

Removed

  • Removed Classic Knockback Importer - LeeGod
    • Replaced by direct file format support
  • Removed Multiple global knockback support - LeeGod
    • Replaced by single global profile.
    • Pretty much no server uses more than one profile by default and applies randomly.
    • Have it support multiple random knockback is basically useless.
  • Removed Per world knockback support - LeeGod
    • Will be replaced by plugin soon.

[2022.5.1 LTS BUILD 4] - 2022-June-1

  • Fixed AsyncFastLight ArrayIndexOutOfBoundsException - LeeGod

[2022.5.1 LTS BUILD 3] - 2022-May-18

  • Fixed IncompatibleClassChangeError on modern java versions (java 12+) - LeeGod

[2022.5.1 LTS BUILD 2] - 2022-May-4

  • Fixed java 11+ compatibility - LeeGod
  • Fixed plugin compatibility for SWM and lazarus when AsyncFastLight enabled - LeeGod

[2022.5.1 LTS BUILD 1] - 2022-May-3

(New Release)

Fixed

  • Fixed some issues for AsyncFastLight addition - LeeGod
    • If you purchased AsyncFastLight addition, please update to this version or above for the best experience.

[2022.3.1 BUILD 2] - 2022-April-19

  • Added option zeroHeightCarpets to imanity config
  • Added option arrowTrajectoryRandomness to imanity world config
  • Do not allow logins while the server is shutting down
  • Ensure chunks are always loaded on hard position sets
  • Dont broadcast head rotation packet
  • Fixed block break desync
  • Fixed invisibility for non-parallel tracker
  • Reverted useless explode optimization

[2022.3.1 BUILD 1] - 2022-March-22

(New Release)

Added

Fixed

  • Fixed instant respawn dont clear fire tick in lava - LeeGod
  • Fixed durability update when other container open - LeeGod

[2022.1.1 BUILD 3] - 2022-February-24

  • Added 2022 copyright in config files - Whizyyy
  • Fixed durability changer option - Whizyyy
  • Don't let packet processing error crash the server - LeeGod

[2022.1.1 BUILD 2] - 2022-February-11

  • Added option forceDurabilityUpdating
  • Improved how durabilityMultiplier works
    • Made durability item update only did on specific slot rather than entire inventory for specific situation like armor damage and such to prevent updating inventory when player eating food or drinking potion.
    • Fixed #86

[2022.1.1 BUILD 1] - 2022-Januray-15

(New Release)

Added

  • Added Packet processing while sleeping - LeeGod
  • Added detailed watchdog report information - LeeGod
  • Added limit login processing per tick - LeeGod

Changes

  • Attempt to shutdown scheduler on unload world - LeeGod
  • Let timings data use Int2ObjectOpenHashMap - LeeGod
  • Bring old tile entity ticking system back - LeeGod

Removed

  • Removed Free from using item while sprint start patch - LeeGod

Fixed

  • Fixed portal not working when cancelling the PlayerPortalEvent - Whizyyy
  • Fixed player disconnect not able to log on back in certain situation - Whizyyy

[2021.12.1 BUILD 2] - 2021-December-24

  • Added upTo256CharsInChat option - Whizyyy
  • Added options to configure Cannon Optimizations - Whizyyy
  • Added Projectile Custom Through Options - Whizyyy
  • Added eatAndDropFix Option - Whizyyy
  • unloadQueue iterator safe - LeeGod
  • Changed tab completion for PLManager on load arg - Whizyyy
  • Fixed comments mistake in EnderPearl configuration section - Whizyyy

[2021.12.1 BUILD 1] - 2021-December-13

(New Release)

Added

  • FastAsyncLight addition - LeeGod
  • Added isIntelligence & setIntelligence method in Mob interface - Whizyyy

Changes

  • Optimize VarInts - LeeGod
  • ASM generated packet constructors - LeeGod
  • Made entityList iterator safe while accepting add or removal - LeeGod
  • Player and ItemFrame always run in main-thread for Parallel Entity Tracking - LeeGod
  • Non-blocking in-progress chunk saving - LeeGod

Code Quality

  • Caching relative chunks - LeeGod
  • Force async catching for unloadQueue anywhere - LeeGod
  • Added different variants for chunk getter - LeeGod

Bug Fixes

  • Free from using item while sprint starts (fixes double eat) - LeeGod
  • Fixed PlayerChunkMap reflection error for BKCommonLib - LeeGod
  • Fixed NPE for arrow knockback - LeeGod
  • Fixed #72 - LeeGod

[2021.11.1 LTS BUILD 6] - 2021-December-10

Urgent FIX

  • Disable the possibility to send RCE message including inbounds and outbounds - LeeGod

[2021.11.1 LTS BUILD 5] - 2021-November-28

Added

  • HumanEntity#setBlocking(boolean bloocking) method in API, allow to force a HumanEntity to block the sword or not - Whizyyy
  • TabCompletion for FakeEnvironment command - Whizyyy
  • Chunk list & tile entity list caching to improve memory allocation - LeeGod

Changes

  • Improved TabCompletion for PluginManager command - Whizyyy

Bug Fixes

  • Chunks inaccessible/broken during their unloading and needed to be used at the same time - LeeGod
    • This fix also corrected a bug with the FakeEnvironment command

[2021.11.1 LTS BUILD 4] - 2021-November-26

Added

  • Added AsyncHeartbeat addition support (new addition coming soon) - LeeGod

[2021.11.1 LTS BUILD 3] - 2021-November-24

Added

  • Added PlayerOnGroundEvent - Whizyyy

Changes

  • Changed header comments of config files - Whizyyy
  • Improved prioritized task queue for chunk loaders - LeeGod
  • Always update lighting on first tick ignoring randomTickUpdate options from spigot - LeeGod

Bug Fixes

  • Don't lock for blocking thread in async chunk whenever unnecessary - LeeGod
    • a bug fix attempt target towards #60

[2021.11.1 LTS BUILD 2] - 2021-November-18

Bug Fixes

  • Fixed incorrect percentage calculation for cave generate rate - LeeGod

[2021.11.1 LTS BUILD 1] - 2021-November-14

Added

  • Added more precise error display when creating knockack behaviour/modifier - LeeGod
  • Supported legacy netty (4.0.23.Final) - LeeGod
    • Requires Rancha 2021.11.1 LTS BUILD 2
    • Fixed #51

Changes

  • Blocking main for block flowing and applyPhysics - LeeGod
    • possibly fixes some weird behaviour in terms of chunk or physics
  • AsyncTabCompleteEvent will now be called from player's tab complete action - LeeGod

Bug Fixes

  • Fixed Knockback editor layout for default minecraft font - LeeGod old_new
  • Fixed protocollib patch - LeeGod
  • Fixed Generate ASM Code for EventExecutor patch - Whizyyy
  • Fixed /imanity fillWorld command - LeeGod
  • Fixed ChunkAnalyzer start / end event calling - LeeGod

[Pre Release]

[2021.10.1 BUILD 14] - 2021-November-11

  • Fixed knockback error on java 9+ - LeeGod
    • Fixes fishing hook or arrow not working properly and the IncompatibleClassChangeError

[2021.10.1 BUILD 13] - 2021-November-10

Stable release are coming very soon! Get ready for it ;)

  • Added Projectile behaviour support for arrow & fishing hook - LeeGod
  • Added support for KQueue transport (netty's native transport for mac os) - LeeGod
  • Knockback Editor interface will now automatically closed when you try to execute other command - LeeGod
  • Fixed Vanilla behaviour incorrect extra knockback calculation - LeeGod

[2021.10.1 BUILD 12] - 2021-November-7

  • Added more information in /imanitySpigot help command - LeeGod

[2021.10.1 BUILD 11] - 2021-November-5

  • Improved knockback control centre, player section - LeeGod
  • Improve Metrics - LeeGod

[2021.10.1 BUILD 10] - 2021-November-1

  • Fixed Metrics data sending - LeeGod

[2021.10.1 BUILD 9] - 2021-October-31

  • Added Fake Environment feature and command - Whizyyy
    • Ability to fake nether / the end environment into overworld, made some special visual for your server!
  • Added option to limit nbt packet decode - LeeGod

[2021.10.1 BUILD 8] - 2021-October-28

  • Changed Chunk packet anti xray obfuscate done directly in netty encode patch - LeeGod
    • Possibly fixes #49
  • Improved World Biome Option - Whizyyy

[2021.10.1 BUILD 7] - 2021-October-26

  • Fixed and improved /pluginmanager command - Whizyyy
  • If plugin attempts to async accessing getChunkAt() search from cache first - LeeGod
  • Chunk packet anti xray obfuscate done directly in netty encode - LeeGod
    • Fixes FastAsyncWorldEdit error
  • sendPacketNearby() lookup from world player list - LeeGod
  • Fixed asyncChunkGeneration error - LeeGod

[2021.10.1 BUILD 6] - 2021-October-24

  • Added /pluginmanager command - Whizyyy
    • The powerful tool to manage plugins in the server
    • Replaces Plugman or any similar plugin management plugins
  • getChunkAt() is now MT-safe if chunk is loaded - LeeGod
    • Fixes multiple plugin incompatible issues

[2021.10.1 BUILD 5] - 2021-October-21

  • Fixed a compatbility issue with some tablist apis - LeeGod
  • Removed unused patches - LeeGod

[2021.10.1 BUILD 4] - 2021-October-20

  • Show 'Imanity' and some useful infomation when server stop responding - LeeGod
  • Added book exploit patch - LeeGod

[2021.10.1 BUILD 3] - 2021-October-19

  • Properly handling InterruptedException on server shutdown - LeeGod

[2021.10.1 BUILD 2] - 2021-October-16

  • EXPERIMENTAL Added server side hit detection - LeeGod
  • Added option "asyncChunkLoads.chunkGenerateThreads" - LeeGod
  • Added command "/imanitySpigot fillWorld" - LeeGod
  • Added debug for entity slice - LeeGod
  • Chunk Generation is now capable for multi-threads - LeeGod
  • Use shared random for entities - LeeGod
  • Dont teleport dead entities - LeeGod
  • Cache creature type in entity list - LeeGod
  • Fixed some bugs - LeeGod

[2021.10.1 BUILD 1] - 2021-October-07

(New Release)

⚠️ Update required for Rancha 2021.09.1 BUILD 2

Functional

  • Added chunkTickRate option - LeeGod
  • Added ability to change plugin enable / plugin disable color for premium - Whizyyy
  • Made display as percentage - LeeGod

Bug Fixes

  • Fixed chunk tick algorithm - LeeGod
    • Fixed Cactus growing without a limit - LeeGod

Code Quality

  • Improved block position allocation - LeeGod
  • Reduce the amount of chunk lookup in setTypeAndData() - LeeGod
  • Changed C/I to Github Action - LeeGod

[2021.09.3 BUILD 5] - 2021-October-02

  • Added classic knockback profile importer - LeeGod
    • The ability to import knockback profiles from ImanitySpigot2
    • This only works on knockbacks that was advanced module.
  • Added classic knockback behaviour - LeeGod
    • Repersent advanced module from ImanitySpigot2
  • Added option "asyncChunkLoads.waitForChunks" - LeeGod
  • Improve algorithm for chunk tick list - LeeGod
  • Fixed broken plugin nms compatibility in Server Connection - LeeGod
Classic-Importer.mp4

[2021.09.3 BUILD 4] - 2021-September-28

[2021.09.3 BUILD 3] - 2021-September-28

  • Fixed some memory leak issues - LeeGod

[2021.09.3 BUILD 2] - 2021-September-25

[2021.09.3 BUILD 1] - 2021-September-24

(New Release)

⚠️ Update required for Rancha 2021.09.1 BUILD 1

Functional

  • Added Metrics HERE - LeeGod
  • Improved lag spike logger - LeeGod
    • Fixed a problem where old entries were still counted in new lag spike log
    • Added tick count display for each entries

API Changes

  • Added API annotation to every imanitySpigot package API classes - LeeGod
  • Added Chunk Analyse API - LeeGod
    • Documentation will be added soon

Code Quality

  • Don't compile mockito-core directly into jar - LeeGod

[Experimental]

[2021.09.2 BUILD 2] - 2021-September-20

  • Changed max text length in profile name, behaviour name and modifier name to 16 characters - LeeGod
  • Fixed #31 - LeeGod

[2021.09.2 BUILD 1] - 2021-September-18

(New Release)

Knockback Changes

  • Added Knockback Control Centre - LeeGod
    • This is a completely redesigned knockback editor system
    • This is the very first update with Knockback Control Centre implementation
    • Some feature is lacking:
      • Simple editor
      • Knockback per world options
  • Added damager specify for velocities behaviour - LeeGod
  • Removed priority for behaviour - LeeGod
    • Replaced by list order swapping
Knockback.Control.Centre.mp4

Bug Fixes

  • Fixed region modification location incorrect issue - LeeGod

Code Quality

  • Added brand new source generator for Source code buyers - LeeGod
  • Removed WorldData debug code - LeeGod

[2021.09.1 BUILD 1] - 2021-September-2

(New Release)

API Changes

  • Added org.bukkit.entity.Mob interface. Refer to entities that has AI - LeeGod
    • This is the same interface that >=1.12 bukkit API has, You can use it safety on both ImanitySpigot and modern APIs.
  • Added com.destroystokyo.paper.entity.RangedEntity interface. Refer to entities that has Ranged attack ability (ex: Skeletion) - LeeGod
    • a replica of modern Paper's interface. some method aren't possible to be ported
  • Added com.destroystokyo.paper.entity.Pathfinder interface. Open the possibility to control Pathfinding without NMS - LeeGod
    • This is the same interface that >=1.13 Paper API has, You can use it safety on both ImanitySpigot and modern APIs.
  • Added org.imanity.imanityspigot.ai package of interfaces. Open the possibility to control Mob AI / Goals without NMS - LeeGod
    • a replica of modern Paper's interface (>=1.15). Due to Mojang changes a lot in terms of Goal types, some aren't possible to port
    • Documentation available HERE
  • MobAIHandler is now desperated. - Whizyyy
  • Bumped Maven dependency version to 2021.09.1b1 - LeeGod

Bug Fixes

  • Fixed an error on startup - LeeGod
  • Fixed Compatibility patch for Citizens - LeeGod

Docs Changes

  • Added Documentation Page for Mob AI HERE - LeeGod

[2021.08.1 BUILD 8] - 2021-Augest-31

  • Prevent Fire Spread load chunks - LeeGod
  • Force getChunkAt() main thread - LeeGod
    • Fixed in some cases plugins broke when getChunkAt and get error with async catcher
  • Only process BlockPhysicsEvent if a plugin has a listener - LeeGod
  • Fixed hard coded async catcher unloadQueue - LeeGod
  • Fixed wrong index field were being used in PlayerInventory clear - LeeGod
  • Fixed Tile Entity Unload Lag Spike - LeeGod
  • Fixed Cancelling BlockPlaceEvent triggering physics - LeeGod

[2021.08.1 BUILD 7] - 2021-Augest-27

  • Fixed an critical error - LeeGod
  • Fixed an issue with loadChunk() and regenerateChunk() while async chunk is enabled - LeeGod

[2021.08.1 BUILD 6] - 2021-Augest-27

  • Added Hard coded Async Catcher to unloadQueue - LeeGod
  • Improved option durabilityMultiplier - LeeGod
    • round durabilityMultiplier multiplied result
    • update inventory if durabilityMultiplier has a different result, so it synced with clients

[2021.08.1 BUILD 5] - 2021-Augest-26

  • Added world config option blockOperation - LeeGod

[2021.08.1 BUILD 4] - 2021-Augest-25

  • Fixed an issue while Old Enchanting is disabled - LeeGod
  • Flooring BlockPosition in Explosion - LeeGod
  • Changed option higherDurabilityMultiplier to durabilityMultiplier - LeeGod
  • Improved option durabilityMultiplier - LeeGod Whizyyy
    • durabilityMultiplier instead of diving use multiply is more intuitive
    • Fixed comment
  • Added Notes for knockback related stuff - LeeGod
    • extraHorizontal
    • extraVertical
    • default profile system

[2021.08.1 BUILD 3] - 2021-Augest-23

  • Fixed an issue cause EntityTracker broken - LeeGod
    • This issue may result in you can't see other players, which is fixed now

[2021.08.1 BUILD 2] - 2021-Augest-23

  • Added check for ChunkRegionLoader, if it's not ChunkRegionLoader don't activate Async Chunk
  • Added reference Taliban Pearl showcase video
  • Fixed #12
  • Fixed #13
  • Fixed #14

[2021.08.1 BUILD 1] - 2021-Augest-22

(New Release)

  • Fixed Citizens Compatibility - LeeGod
  • Improved Configuration Descriptions - Whizyyy
  • Improved Security - LeeGod

[2021.07.3 BUILD 7] - 2021-Augest-16

  • Fixed Compile Error - LeeGod

[2021.07.3 BUILD 6] - 2021-Augest-16

  • Added Configurable Merge Range based on Item Type - LeeGod
  • Optimized Network connection - LeeGod
    • Consolidate flush calls for entity tracker packets
    • Only Flush packets once in flushPacketQueue
  • Implemented Entity Lookup Improvement - LeeGod
  • Remove Netty Unpooled buffer option - LeeGod
    • Moved to patch internally in rancha

[2021.07.3 BUILD 5] - 2021-Augest-1

  • Removed option nettyNotPreferDirectBuffer - LeeGod
  • added option nettyUseUnpoolBuffer - LeeGod
    • This is an option that patches netty to use unpooled heap buffer so it fixes some compatibility issue

[2021.07.3 BUILD 4] - 2021-July-30

  • Fixed captureDrops order - LeeGod

[2021.07.3 BUILD 3] - 2021-July-30

  • Added ability to disable drops in BlockBreakEvent - LeeGod

[2021.07.3 BUILD 2] - 2021-July-30

  • Fixed Versioning - LeeGod
    • Plugins will now receive 1.8.8-R0.1-SNAPSHOT instead of custom versioning format

[2021.07.3 BUILD 1] - 2021-July-29

(New Release)

Documentation

Functional

  • Supported Oversized Chunk read & write - LeeGod
  • Added Old Enchanting option - LeeGod
  • Added /imanitySpigot docs - LeeGod

Performance

  • Reduce Chunk Lookup in Entity Ticking - LeeGod

Bug Fixes

  • Fixed FastAsyncWorldEdit support - LeeGod
  • Fixed View Distance player disappear issue - LeeGod
  • Fixed /curkb Error - LeeGod

API

  • Added PlayerPickupArrowEvent - LeeGod
  • Added EntityPickupItemEvent - LeeGod
  • Added Player.imanity().setKnockback() - LeeGod
  • Added Player.imanity().isCanPickupExperience() - LeeGod
  • Added Player.imanity().setCanPickupExperience() - LeeGod
  • Added Chunk.getBlock(Location) - LeeGod

Code Quality

  • Improved Physics error silence - LeeGod
  • Use Cache instead of MapMaker in Offline Players Cache - LeeGod
  • Remove extra useless postToMainThread call - LeeGod

[2021.07.2 BUILD 3] - 2021-July-20

  • Added World.setSpawnLocation(Location) - LeeGod
  • Added ability to upload information data on code.imanity.dev with flag - LeeGod
    • /imanitySpigot chunkAnalyzer export -u is the command, -u flag stands for upload - LeeGod
  • Added ability to reload premium.yml while /imanitySpigot reload - LeeGod
  • Starting Code base for Plugin Manager - Whizyyy
  • Fixed Knockback Reload - LeeGod

[2021.07.2 BUILD 2] - 2021-July-20

  • Added !stacktrace Command in Rancha (This command will print out all thread's stacktrace, useful when having server timed out issues.)
  • Added Command Documentation for Knockback Docs - LeeGod
  • Premium Feature Added Lag Spike Alert Message for customization while lag spike alert - LeeGod
  • Premium Feature Added Ping Self Message for customization when pinging ourself - LeeGod
  • Reload Knockback Profiles while /imanitySpigot reload - LeeGod
  • Fixed ChunkAnalyzer Description in /imanitySpigot - LeeGod
  • Fixed Plugin Command again - Whizyyy

[2021.07.2 BUILD 1] - 2021-July-16

(New Release)

  • Auto Saving and Chunk Unloading Optimziation - LeeGod
    • Re-added Auto Save cap (configurable in world config "maxAutoSaveChunksPerTick")
    • Build level NBT Data in IO Thread if chunk has been unloaded
    • Dont queue jobs if queue is over an amount (configurable in world config "maxQueuedSizeAutoSave")
    • Reattempt chunk save if failure (prevent unnecessary bugged chunk load)
  • Added Command to Toggle Lag Spike Detector - LeeGod
  • Let /tp execute player teleport after chunk loaded - LeeGod

[2021.07.1 BUILD 4] - 2021-July-16

  • Fixed Plugin Command Patch - LeeGod

[2021.07.1 BUILD 3] - 2021-July-14

  • Disallow Negative value in Hit Delay, Horizontal Friction and Vertical Friction - LeeGod
  • Fixed Speed Value Modifier ClassCastException - LeeGod

[2021.07.1 BUILD 2] - 2021-July-13

  • Added "switchToSimple" tab completion to Advanced Command Editor - LeeGod
  • Allow deletion for Advanced Format Profile in Simple Command Editor - LeeGod
  • Storing World directly in the Knockback Profile instead of in world config - LeeGod
  • Fixed Command Type Choice being useless - LeeGod
  • Fixed /plugins color code - Whizyyy

[2021.07.1 BUILD 1] - 2021-July-12

(New Release)

  • Added documentation page for Knockback System https://docs.imanity.dev/books/imanityspigot-3/page/knockback
  • Added Command "/curkb " to view player's current knockback
  • Added Command "/kb togglePerWorld" to enable Knockback Per World in game
  • Added Command "/kb addWorld " to set available profile in worlds for Knockback Per World Feature
  • Added Command "/kb removeWorld " to remove available profile in worlds for Knockback Per World Feature
  • Added Ability to modify knockback per world options in Command Editor
  • Added Command and editor button to enable and disable hit delay in Simple Command Editor
  • Added limitation of knockback profile names (attempts to create knockback with name "vanilla", "reload", "listprofiles", "listdefaults", "listbehaviours", "listmodifiers", "toggleperworld", "switchtoadvanced", and "switchtosimple" is not allowed)
  • Mentioning documentation page in Knockback Command Editor (modifierPath explaination, Help Page etc)
  • Changed Command to switch command mode from "/kb simple" and "/kb advanced" to "/kb switchToSimple" and "/kb switchToAdvanced"

[2021.06.2 BUILD 3] - 2021-July-2

  • Improved lag spike detection message
  • Fixed Chunk status not being recognized correctly
  • Fixed build configuration
  • Fixed plugin command
  • Fixed UnsupportedOperationException on set default knockback profiles

[2021.06.2 BUILD 2] - 2021-June-27

  • Fixed Compile Error

[2021.06.2 BUILD 1] - 2021-June-26

(New Release)

API Changes

  • Added getKnockback method to KnockbackService.
  • Added PlayerSelectKnockbackEvent.
  • Renamed getDefaultKnockback() to getRandomKnockback(World).

Docs Changes

  • Javadocs for Knockback class
  • Javadocs for KnockbackBehaviour class.
  • Javadocs for KnockbackService class.

Knockback System

  • Added knockbackPerWorld option in config.yml and knockback option in world configuration.
  • Added hit delay to Simple command editor.
  • Knockback Behaviours can now be enabled or disabled.
  • Hit delay is now overwriting based, Now if a hit delay behaviour is enabled, bukkit hit delay will be overrided.
  • Renamed simple behaviour to velocities behaviour.
  • Renamed default knockback to vanilla knockback.
  • Improved Description for Knockback Modifier.
  • Profile registered with name "vanilla" or "reload" will not be allowed.
  • If a knockback profile were unregistered, Player's using the porilfe will automatically pick a knockback from default lists.
  • Displaying Behaviour Identity in knockback profile editor.
  • Removed velocityPacket behaviour (We believe there is no reason for this to be customizable, so we decide to made it enabled by default without customization ability.)
  • Removed no valid knockback warning (Planning to make a command for checking player's current knockback.)

Code Quality

  • knockback instance for players are now not allowed to be null

[2021.06.1 BUILD 6] - 2021-June-24

  • Added notes for instantRespawn option (for Via-Version compatibility) - closed #3
  • Improved BlokState Array map, fixed
  • Fixed FAWE compatibility on PlayerChunkMap NMS issue
  • Fixed getChunk callback not being called correctly when chunk is already loaded & Async Chunk is disabled - closed #4

[2021.06.1 BUILD 5] - 2021-June-23

  • Added Instant Respawn Option
  • Fixed ProtocolLib Patching
  • Fixed FastAsyncWorldEdit Compatibility
  • Fixed ImanityCommand weird behaviour when entering unknown sub command
  • Don't patch ProtocolLib if it's ProtocolLib 4.6.1-SNAPSHOT or above
  • Updated JavaAssist to 3.28.0-GA