Sueta

PrismaticAPI

2.0.1

Versatile library for advanced color manipulation and text formatting in Bukkit/Spigot/Paper plugins.

·Plugin
  1. 2.0.1latestUpdate 2.0.1Aug 18, 2026

    Color Parsing Fixes and Minecraft 26.2

    Patch release fixing several color-parsing bugs, and updating the version library so Minecraft 26.2 is recognised.
    Fixed
    - Fixed the compact hex form &xff8800 always falling back to white. It now resolves to the color it names, the same as the other supported hex formats. - Fixed plain text being pushed through the MiniMessage parser just because it contained a <. A legacy header like &8<&d&l Top &8> was treated as markup, which changed how its color codes rendered. Only real recognised tags trigger that path now. - Fixed decorations bleeding into the rest of a message. A strikethrough or bold code stayed active after the next color code instead of being cleared, the way it works in vanilla chat. - Fixed one of the legacy formatter methods not using the main color parser, so it could return a different color than the rest of the library for the same text.
    Changed
    - Updated the bundled VNC library to 1.3.0, which recognises Minecraft 26.2 and its snapshots, and detects more server and mod platforms.
    Notes / Recommendations
    - This is a drop-in replacement for 2.0.0. Nothing in the API changed, so plugins built against 2.0.0 keep working. - If you were working around the &xff8800 format by using a different hex syntax, you can go back to whichever one you prefer.
    22 downloads
  2. 2.0.0Update 2.0.0Aug 4, 2026

    The Element API

    Major rewrite of the interactive message system. Element replaces the old chat components with a single immutable type that is parsed once and rendered per player, plus a faster color pipeline. Classic PrismaticAPI.colorize(...) usage is untouched.
    Added
    - Added Element, one message type for plain text and interactive text. Parse it once, keep the instance, and render it for every player. - Added placeholder support inside elements: {name} and %name% tokens are kept as data and resolved at render time, so a gradient now spans the resolved value instead of the length of the token. - Added a render cache. Each segment caches its colorized text for the two color profiles (hex and legacy), so an element sent to a hundred players pays the color pipeline twice. - Added AdventureElement as a separate class, so a server without Adventure never loads a Kyori class by touching an element. - Added PrismaticAPI.supportsHexColors(player) to check whether a player's client can actually receive RGB colors. - Added PrismaticAPI.forgetPlayer(...) and PrismaticAPI.clearPlayerCache() to drop cached player color capabilities. - Added markup helpers: Element.isMarkup(raw), Element.stripMarkup(raw), element.toMarkup(), and autoLinkUrl() on the builder.
    Changed
    - Replaced the me.croabeast.prismatic.chat package with me.croabeast.prismatic.element. ChatComponent and MultiComponent are gone; Element covers both. - Elements are now immutable. Changes go through element.toBuilder(), so a shared instance can never be modified by another consumer. - Renamed three click constants: EXECUTE to RUN_COMMAND, SUGGEST to SUGGEST_COMMAND, CLIPBOARD to COPY_TO_CLIPBOARD. The string aliases (run, suggest, copy, ...) are unchanged. - A player's hex support is now resolved once per session instead of once per formatted line. - Text with no color markers now skips the color passes entirely. - An empty message now renders to an empty array instead of a padded blank component. - Updated the Gradle wrapper to 9.6.1.
    Fixed
    - Fixed gradients bleeding one color too far when the text started with a hex-prefixed color. - Fixed placeholders not resolving inside click and hover values of an element.
    Notes / Recommendations
    - This is a breaking release. Any plugin using the old chat components must be updated before it will compile against 2.0.0. - The README includes a full migration table from 1.5.x to 2.0.0, method by method. - Call PrismaticAPI.forgetPlayer(...) from your PlayerQuitEvent handler so cached entries do not survive the session. - Plugins that only use PrismaticAPI.colorize(...) and the Adventure facade need no changes.
    25 downloads
  3. 1.5.0Update 1.5.0May 23, 2026

    What's Changed

    - chore: bump version to 1.5.0 by @CroaBeast (4055c41) - refactor: simplify color engine internals by @CroaBeast (e322baa) - chore: consume published VNC dependency by @CroaBeast (ca0f67a) - refactor: extend formatter pipelines for chat by @CroaBeast (335ec67) - feat: add interactive chat components by @CroaBeast (dcfdaa2) - feat: expose chat component factories by @CroaBeast (1ed0eee) - chore: document interactive chat components by @CroaBeast (4896d54)

    Contributors

    - @CroaBeast Full Changelog: https://github.com/CroaBeast/PrismaticAPI/compare/423a5d2…
    84 downloads
  4. 1.1.0Update 1.1.0Nov 17, 2025
    - Added MiniMessage output methods. - Added 1.21.5+ support.
    48 downloads
  5. 1.0.0Update 1.0.0Apr 16, 2025
    116 downloads

Similar projects

Plugin →