Перейти к содержимому
Mineforgian

RuinedWardrobe

Paper/Folia wardrobe plugin with polished armor storage, anti-dupe protection, async storage, diagnostics, and bStats metrics.

Загрузки
114
Подписчики
1
Обновлён
28 июля 2026 г.
Лицензия
Custom

Опубликован 30 мая 2026 г.

RuinedWardrobe

RuinedWardrobe is a Paper and Folia wardrobe plugin for servers that want armor cosmetics to feel clean for players and dependable for staff. Players save armor sets into GUI slots, equip or unequip them with one click, rename saved sets, and the plugin handles persistence, bound armor protection, diagnostics, audit logs, and storage migration around it.

Highlights

  • Hypixel-style wardrobe GUI with drag and drop armor editing, page navigation, locked slots, and equip buttons.
  • Paper and Folia scheduler support.
  • Runtime support for Paper/Folia 1.21 through 26.2.
  • Java 21+.
  • Permission tier slots through ruinedwardrobe.slots.<amount> plus admin bonus slots.
  • SQLite by default, with optional MySQL or MariaDB for networks.
  • Async database pipeline with queue limits, retries, health metrics, and batch sync.
  • Bound armor anti-dupe protection for clicks, drags, drops, swaps, armor dispense, and optional container locking.
  • GUI editing avoids silent item loss by preventing occupied-piece overwrites and restoring undelivered taken pieces.
  • Full Bukkit ItemStack storage for custom armor metadata exposed through Bukkit.
  • /wardrobe doctor reports storage, cache, sync, DB probe, and common optional plugin hooks.
  • Vanilla-compatible death behavior by default, with an option to preserve wardrobe sets on death.
  • Audit logs for equips, edits, deaths, sanitizer removals, sync changes, storage errors, and item deserialization failures.
  • Anonymous bStats metrics for server/plugin version adoption, with a local opt-out in config.
  • Config, GUI, language, and permission templates made for live server management.

Install

  1. Download the jar for your server version.
  2. Put it in your server plugins folder.
  3. Start the server once so RuinedWardrobe creates its files.
  4. Edit plugins/RuinedWardrobe/config.yml, gui.yml, lang/en_US.yml, and permissions.
  5. Restart the server, or use /wardrobe reload after config-only changes.

Commands

  • /wardrobe or /rw opens the wardrobe GUI.
  • /wardrobe help shows command help.
  • /wardrobe list [player] lists saved wardrobe sets.
  • /wardrobe rename <slot> <name> renames one of your saved sets.
  • /wardrobe doctor prints runtime diagnostics.
  • /wardrobe reload reloads config, GUI, and language files.
  • /wardrobe migrate <sqlite|mysql> [--dry-run] [--force] migrates storage with snapshot verification.
  • /wardrobe admin open <player> opens another player's wardrobe.
  • /wardrobe admin setslots <player> <amount> adds admin bonus slots.
  • /wardrobe admin clearslots <player> removes admin bonus slots.

Compatibility Notes

RuinedWardrobe stores and restores the full Bukkit item stack for armor pieces. Custom item and resource-pack plugins work best when their armor is exposed as normal Bukkit ItemStack data. RuinedWardrobe does not create those items; it stores, equips, and returns the item stack the server gives it.

Links

License

RuinedWardrobe is free to use on any server, including monetized servers. The source and jar can be used, modified, and shared for free, but the plugin itself cannot be resold or commercially redistributed. See the license in the repository for the full terms.

Ченджлог

1.0.16Релиз26.1.1, 26.1.2, 26.2 · 28 июля 2026 г.
  • Made vanilla-style death loss transactional: bound drops are withheld until wardrobe storage commits, then one canonical unbound copy is released.
  • Kept GUI pickup and placement actions locked through item delivery or database rollback.
  • Fixed Paper/Folia reload and shutdown scheduling so player tasks cannot deadlock or leave pending action locks behind.
  • Added Folia retirement handling for abandoned player scheduler work.
  • Hardened SQLite durability with WAL, full synchronous writes, foreign keys, and a busy timeout on every connection.
  • Limited database retries to genuinely transient connection, transaction, busy, and locked failures.
  • Preserved existing config values during schema upgrades and stopped unsafe config downgrades.
  • Updated the Gradle wrapper, Shadow, Paper 26.2 verification target, database drivers, bStats, PlaceholderAPI, Caffeine, HikariCP, and test dependencies.
  • Verified Paper and Folia support from 1.21 through 26.2 on the Java 21 baseline.
1.0.15Релиз26.1.1, 26.1.2, 26.2 · 13 июля 2026 г.

This is the full production hardening pass.

  • Removes same-owner bound copies instead of converting them into normal duplicate items.
  • Keeps detached armor tied to its source slot until storage is reconciled.
  • Makes API saves consume physical armor and refuse occupied wardrobe slots.
  • Returns displaced physical armor safely when empty-slot checks are bypassed.
  • Validates bound piece metadata before persistence and rejects stacked armor-cell writes.
  • Flushes online armor before storage migrations.
  • Bounds caches and configuration values, hardens local file paths, and improves async failure logging.
  • Shrinks the jar while keeping normal TCP MySQL/MariaDB support.
1.0.14Релиз26.1.1, 26.1.2, 26.2 · 11 июля 2026 г.

Closes remaining creative-mode bound armor duplication paths. Creative inventory, cursor, drop, number-key, offhand, and drag actions involving equipped wardrobe items are now rejected and resynced. Survival detached-item recovery remains available.

1.0.13Релиз26.1.1, 26.1.2, 26.2 · 10 июля 2026 г.

Hardens wardrobe menus with viewer ownership checks, strict click and inventory-action validation, duplicate enforcement inside the controller, and authoritative inventory resyncs after rejected actions. Includes player and mob head support plus the survival armor-slot protection fixes from 1.0.11 and 1.0.12.

1.0.12Релиз26.1.1, 26.1.2, 26.2 · 10 июля 2026 г.

Adds helmet-cell support for custom player heads and all vanilla mob heads. Skull textures, profiles, PDC, lore, model data, and other Bukkit item metadata are preserved. Includes the survival armor-slot dupe fix from 1.0.11.

1.0.11Релиз26.1.1, 26.1.2, 26.2 · 10 июля 2026 г.

Fixes a survival-mode dupe where equipped wardrobe armor could be removed through the player crafting inventory's armor slots. Bound equipped pieces are now locked using Bukkit's armor slot type regardless of which inventory object reports the click. Includes regression coverage for the reported event path.

1.0.10Релиз26.1.1, 26.1.2, 26.2 · 26 июня 2026 г.
  • Fixed rapid wardrobe equip clicks so a pending action blocks the second mutation before it reaches storage.
  • Added /wardrobe rename for saved set labels.
  • Added more PlaceholderAPI values for open state, equipped state, slot counts, set existence, and saved armor pieces.
  • Added /wardrobe doctor compatibility reporting for common custom item, cosmetics, permissions, vanish, and world-region plugins.
  • Updated Paper/Folia 26.2 compatibility docs and bStats defaults.
1.0.9Релиз26.1.1, 26.1.2, 26.2 · 26 июня 2026 г.
  • Added /wardrobe rename <slot> <name> for saved set labels.
  • Added more PlaceholderAPI values for open/equipped state, slot counts, set presence, and saved armor pieces.
  • Added /wardrobe doctor compatibility reporting for common custom item, cosmetic, protection, and utility plugins.
  • Updated docs with custom item/resource-pack compatibility notes and the current Paper 26.2 API check.
  • Kept the shipped jar on Java 21 bytecode with Paper/Folia 1.21 through 26.2 support.

Комментарии

Загружаем…