AbyssalLib icon

AbyssalLib -----

A plugin library for GUIs, Items, Blocks, Advancements and much more.



Major improvements, new APIs and bug fixes
Changelog

Features & Additions
  • Permissions System: Added a Permission API with an in-game GUI and Web Editor (with domain support). Includes custom permission checks (Player#hasPerm) and removes the need for permissions in paper-plugin.yml.
  • Dynamic Translations: Added ItemTranslationProvider and ServerTranslator global providers/resolvers, allowing developers to add dynamic translations without PlaceholderAPI.
  • Resource Pack Loading: Implemented configuration phase sending for resource packs.
  • New Asset Types: Added support for Atlas, BBModelLoader, and Core Shader assets.
  • Loot Commands: Added a command to set custom loot tables on any container (loot generates upon interaction). Added custom loot table support directly to entities.
  • Locate Command: Added a locate command for structures, which works exclusively in newly generated chunks.
  • Dynamic Statistics: Added dynamically generated tracking for entities_killed, blocks_mined, and items_crafted based on namespace and ID.

Changes & Improvements
  • Asynchronous Item Ticking & GUI Performance: ItemTicker now runs asynchronously. Additionally, GuiManager now creates a ticker specifically for GUIs with a tickInterval greater than 0 (default is 1), improving overall server performance.
  • Structure Optimization: Improved structure placement performance by ~75% and reduced structure file sizes by ~95%. Increased the StructureBlock size limit to 1028 for X/Y/Z coordinates.
  • GUI Engine Overhaul: Reworked ItemMenu to utilize ItemCategory systems, allowing categorized item displays (a default category is generated if none is specified by a plugin). Missing plugin icons now default to an apple placeholder.
  • Particle Performance: Improved the performance of default particle renderers.
  • Component Handling: Component Maps and custom components now use NbtOps codecs to properly maintain data types natively.

Fixes
  • Worldgen & Structures: Fixed structure rotation failing to rotate by the origin anchor. Fixed an issue where worldgen would fail for structures extending beyond a 3x3 chunk region. Fixed structure placement not working with processors.
  • MiniMessage Parsing: Fixed MiniMessage text parsing for Server-Side Rendering (SSR), chat packets (including disguised packets), boss-bars, objectives, and dialogs.
  • Translation Overrides: Fixed TranslationLoader overriding previously loaded locale files, and fixed a bug where failed translation strings were replaced by their raw keys instead of parsing correctly.
  • Packet Translation: Fixed PacketTranslator breaking items server-side, allowing custom items to function correctly in recipes.
  • Block State Adapters: Fixed and added adapters for Nameable, Container, InventoryHolder, Lootable, Lockable, Leaves, and Bed (part/occupied) tile states.

API & Developer Notes
  • Dependencies: Updated to Kotlin 2.1.0, added kotlinx.coroutines, and added Kotlin API for config and database.
  • Database Loader: Added a universal Database API and Loader via Config, supporting MariaDB, MongoDB, Redis, PostgreSQL, and H2.
  • New APIs: Added Scoreboard API, Economy API (requires plugin implementation, not Vault compatible), Advancement & Toast API, and Placeholder API with defaults.
  • Kotlin DSLs: Added Kotlin DSLs for Blocks and Block Entities (similar to the Item DSL).
  • Energy Conductor Nodes: Added EnergyConductor for cable-type nodes with simulation mode for insert/extract. Transfers now depend on BlockFace. Custom blocks must manually handle EnergyNetwork registration/unregistration.
  • Library Migrations: Moved away from ItemBridge, BlockBridge, and Identifier. Use BlockInfo and Adventure Key instead. Direct support for Nexo and ItemsAdder has been removed.
  • GUI API Adjustments: Added GuiClickContext and GuiDragContext as overrides, replacing the old onDrag and onClick. Added new builder utilities (fill, fillBorder, structure) and new UI layers (ScrollLayer, StateCycleElement, ToggleElement, ProgressBarLayer).
  • Javadocs: Added extensive Javadoc coverage across the library, linking to PaperMC and Adventure APIs.
  • Removals & Deprecations:
    • Deleted the Multiblock API.
    • Removed deprecated GUI implementations (ListedLayers and PaginatedElements are replaced by LayerStack and PagedLayer).
    • Removed BlockPileFeature, CaveVineFeature, and RandomPatchFeature.
    • Removed DamageType.Registrar (use DamageType#register in PluginBootstrap).

----------, Apr 17, 2026
Resource Information
Author:
----------
Total Downloads: 793
First Release: May 4, 2025
Last Update: May 14, 2026
Category: ---------------
All-Time Rating:
1 ratings
Find more info at darksoulq.github.io...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings