Skip to content

Releases: Nameeees/JPPlayerVaults

JPPlayerVaults 1.2.0

Choose a tag to compare

@Nameeees Nameeees released this 18 Oct 20:15

[1.2.0] - 2026-10-18

Modern-version features: the plugin now takes advantage of what new servers offer while keeping the
same jar working on 1.8.

Added

  • Vault picker: /pv without arguments opens a menu with one icon per vault (item count in the
    lore). /pv 3 opens a specific vault as always and /pv help shows the text help;
    vaults.picker: false restores the old behaviour.
  • MiniMessage colours (messages-format: auto | legacy | minimessage): on servers with
    Adventure (Paper and its forks) a message written with tags such as <gradient:#2ec4b6:#12727f>,
    <#ff8800>, <click:run_command:'/pv 1'> or <hover:show_text:'...'> is sent as a Component.
    It applies to chat, action bars, inventory titles and the picker item names/lore. auto is the
    default: messages that use & keep working exactly as before, on every version.
  • NBT item storage for the SQL backend (storage.item-format: auto | nbt | bukkit). On Paper
    1.20.5+ vaults are stored with ItemStack.serializeItemsAsBytes, which Paper documents as safer
    for data migrations
    than Bukkit's own serialization, and which keeps slot order and gaps by
    design. Every blob records its format, so data written by 1.0.0-1.1.0 still loads.
  • storage.yaml-format: readable | nbt: the YAML backend can store each vault as Base64 NBT instead
    of hand-editable slots (readable stays the default).
  • storage.mysql.driver-jar and automatic loading of any .jar placed in
    plugins/JPPlayerVaults/lib/: the database backend no longer depends on the server shipping the
    JDBC driver. (plugin.yml documents Paper's libraries: as an alternative, commented out because
    it makes every server start need internet.)
  • vaults.title-max-length (default 32, 0 = no limit): with Components available the 1.8-1.12
    title cap can be lifted.
  • Paper/Folia scheduler support: the autosave and the migration use GlobalRegionScheduler when it
    exists, and anything that touches a player (closing a vault, saving it) is scheduled on that
    player's region thread via EntityScheduler.
  • /pv admin looks names up with Paper's getOfflinePlayerIfCached instead of walking the whole
    player cache.

Changed

  • Messages are only sent as Components when the message actually uses MiniMessage; legacy messages
    keep the plain string path, so nothing about existing texts changes.
  • The integration harness grew to cover the new surface: 102 checks on Paper 26.3 and 64 on
    Paper 1.8.8
    , including an NBT round-trip, the compatibility of pre-1.2.0 blobs, MiniMessage in
    both modes, the picker and the schedulers.

Notes

  • Folia scheduling is implemented (region-aware), but the plugin does not declare
    folia-supported: true yet because it has not been tested on a real Folia server.
  • On a server without Adventure the MiniMessage tags of a message are stripped so the text stays
    readable, and a warning is logged once.

JPPlayerVaults 1.1.0

Choose a tag to compare

@Nameeees Nameeees released this 18 Oct 18:55

Database storage and administrator tools.

Added

  • Optional SQL storage (storage.type: mysql) next to the YAML files: any database over JDBC, MySQL/MariaDB preconfigured, tables created automatically and every vault written inside a transaction.
  • /pv admin subcommands behind the new jpvaults.admin permission (OP by default):
    • /pv admin open <player|uuid> <number> - open another player's vault, online or offline.
    • /pv admin info [player] - plugin status, or a report for one player.
    • /pv admin delete <player|uuid> <number> confirm - wipe one vault.
    • /pv admin migrate [force] - copy the YAML files into the database, in batches, keeping the originals.
  • Database settings in config.yml: host, port, database, credentials, table prefix, pool size, connection timeout, driver class and a raw JDBC URL for other engines.
  • When stored data cannot be read, the plugin refuses to open the vault instead of showing it empty and overwriting the real items on the next save.

Changed

  • A vault can only be open for one person at a time, so an administrator cannot edit a vault while its owner has it open (and the other way round).
  • /pv reload reports when storage settings changed and a restart is needed.

Verified

  • Integration harness: PASS on Paper 1.8.8 (47 checks) and Paper 26.3 (69 checks), covering both backends (the SQL one end to end against H2 in MySQL mode with the production schema) and every command path.
  • Real 1.8.8 client: open, store, disconnect, reconnect and the item comes back from storage.

Documentation: https://nameeees.github.io/jpvaults-docs/
Admin commands: https://nameeees.github.io/jpvaults-docs/reference/admin-commands/
Storage: https://nameeees.github.io/jpvaults-docs/getting-started/storage/
Support: https://discord.gg/VQSvfQw8v8
Changelog: https://github.com/Nameeees/JPPlayerVaults/blob/main/CHANGELOG.md
SHA-256: 3b6d8f1dc7ad1bd6aa3ca5f4b2589cbb1b0918a58e37e72250e1e6954d2755cd (reproducible build)

JPPlayerVaults 1.0.0

Choose a tag to compare

@Nameeees Nameeees released this 18 Oct 17:58

First public release of JPPlayerVaults: private, rank-based player vaults for Minecraft 1.8 to the latest version, in one jar with no dependencies.

Added

  • /pv <number> with aliases /playervaults and /jpvaults, and /pv help / /pv reload.
  • Rank-based vault count: the highest jpvaults.vaults.<n> permission wins, with vaults.default-amount for players without one.
  • Configurable vault size from 9 to 54 slots, autosave, sounds and language.
  • English and Spanish messages bundled; any other language is one file away.

Safety

  • Durable save on close and quit, atomic writes, Q/Ctrl+Q and outside clicks blocked, off-hand swap guarded.
  • Unreadable player files are backed up as a timestamped .bak before anything can overwrite them.

Compatibility

  • One jar for Minecraft 1.8 to the latest version, built against the Spigot 1.8.8 API with Java 8 bytecode.
  • No NMS, no Vault, no database, no bStats, no network access.
  • Tested on Paper 1.8.8 (integration test plus a real 1.8 client) and Paper 26.3 (integration test).

Documentation: https://nameeees.github.io/jpvaults-docs/
Support: https://discord.gg/HATd9QgukF
Changelog: https://github.com/Nameeees/JPPlayerVaults/blob/main/CHANGELOG.md
SHA-256: 7c361b64892a62ea03e8a3c7f9bc382bf44fc22febb0bb92e46025b5212c9a35 (reproducible build)