Recent changes to Paperspigot and Spigot itself broke compatibility with v2, which v3 addresses. Also included are some bugfixes for bugs that have been reported in this past period.
General bugfixes
General bugfixes not deserving of its own category.
- Entity movement error on newer builds of 1.13.2 spigot server
- Template loading error on newer builds of 1.13.2 paperspigot server
- An error on 1.13+ when retrieving block data inside a chunk load event (cyclic chunk load bug)
- Initialization errors when used on Java 12 due to changes in security manager
- Dimension field initialized null for custom entities on some worlds, causing entities to disappear when reloaded
- World provider 'is dark world' property incorrect, caused light fixing to malfunction on some worlds (Light cleaner)
- Too strict field/method modifier matching, made more loose to allow for changes in custom server implementations
- Error when an item is set to empty/null inside a (hopper) inventory using ItemUtil
- Missing user agent for when downloading resource packs. Some ftp/servers block such downloads as a result.
- Item transfer bug that caused lava buckets to stay when transferring
- MaterialData <> BlockData translation glitch for 1.13+ new button types, caused these buttons to malfunction in Traincarts
- Akarin paperspigot fork not detected as a paperspigot server
Map Display API bugfixes
Relatively new, it deserves its own section because of the many bugs that have been fixed for it.
- Map contents not sent when players die or change world
- Map contents not sent on player join when the anti-xray feature is enabled on Paperspigot (Protocollib bug, workaround installed)
- A bug in the internal controller caused a silent internal server bug when maps were loaded crossing a chunk border
- Block update state (map rendering) for some block types caused random block physics events. Disabled those and added detection for other block types that may cause it in the future
- Cyclical texture loading loop bug in resource packs that caused a crash, when a texture refers to itself.
- Rendering bug of slab blocks on 1.13+
- Incorrect map display UV texture code caused some 3d models to render incorrectly
- Inefficient rendering of voxel-based (1x1 texture) models. Has been optimized to speed up rendering.
- Texture loading for animated textures returning incorrect data, now picks the first frame of the animation instead
- Incorrectly initializing map displays before the owner plugin is actually enabled
- Minor performance issue with BlockRenderOptions hashCode function (used frequently for lookup)
- Glitch that occurs when a player is teleported that is at the same time controlling a map display using movement controls
- Some JVM instances unable to load certain resource pack zip files. Fixed by using the Java ZipFile API instead of JarFile API when loading resource packs, since zip-support of JarFile could not be guaranteed.
New features
Some new goodies.
- Added Shulker entity packet datawatcher API, for sending a fake shulker entity to a player
- Added crystal entity datawatcher API, for sending and updating the end crystal
- Added extra helper methods for retrieving Map Display instances from Item Frames
- Extra overloads for DebugUtil (command-controlled variables)