Speedgot
✨ xInventories
-----
Per-world inventory separation with groups, patterns, and multi-storage support
Download Now
2.8 MB .jar
Overview
Updates (
--
)
Reviews (
---
)
Version History
Discussion
The Full Stack
[1.1.0] - 2026-01-30
Added
Data Foundation
Inventory Versioning - Automatic version history for player inventories
Configurable version retention and triggers (save, world-change, gamemode-change)
Commands: /xinv version list, /xinv version restore, /xinv version diff
Rollback to any previous version with preview
Death Recovery - Recover inventories lost on death
Configurable retention period and max records per player
Commands: /xinv death list, /xinv death restore, /xinv death preview
Automatic cleanup of old records
Player State Separation
Statistics Separation - Per-group player statistics (kills, deaths, blocks mined, etc.)
Advancements Separation - Per-group advancement/achievement progress
Recipes Separation - Per-group unlocked recipe tracking
PWI-Style Player Settings - Extended player state options
Flying state (save-flying, save-allow-flight)
Fall distance, fire ticks, air levels
Display name preservation
Inventory toggle (save-inventory) to disable inventory sync per-group
Global defaults in config.yml with per-group overrides
All existing state (ender chest, XP, potion effects, health/hunger) now fully per-group
Content Control
Templates - Pre-defined inventory templates for groups
Apply templates on first join or group entry
Commands: /xinv template list, /xinv template apply, /xinv template create
Template editor GUI for viewing/editing template contents
Support for starter kits, event loadouts, etc.
Item Restrictions - Control which items players can use per group
Whitelist or blacklist modes with material patterns
Actions: prevent, drop, remove, or move to vault
Per-group restriction configurations
Confiscation Vault - Storage for restricted items
Items removed with MOVE_TO_VAULT action are stored safely
Players can view and reclaim confiscated items via GUI
Commands: /xinv vault, /xinv vault claim, /xinv vault <player>
Admin access to view/manage other players' vaults
NBT Filters - Advanced item filtering by NBT data
Filter by enchantments (with level ranges)
Filter by custom model data
Filter by display name/lore patterns (regex)
Shared Slots - Share specific inventory slots across groups
Configure shared slots, armor slots, or offhand
Real-time sync across group transitions
Advanced Groups
Conditional Groups - Dynamic group assignment based on conditions
Permission-based: permission: "group.vip"
Schedule-based: Time ranges with timezone support
Cron-based: Complex schedules like "weekends only"
PlaceholderAPI: Evaluate placeholders for group selection
World Group Inheritance - Groups inherit settings from parent groups
Reduces configuration duplication
Child groups override parent settings
Circular inheritance detection
Temporary Groups - Time-limited group assignments
Assign players to groups for events/minigames
Auto-restore original group on expiration
Commands: /xinv tempgroup assign, /xinv tempgroup remove, /xinv tempgroup list
Events: TemporaryGroupExpireEvent, TemporaryGroupAssignEvent
Inventory Locking - Temporarily lock player inventories
Commands: /xinv lock, /xinv unlock, /xinv lock list
Configurable duration, scope (all/group/slots), and bypass permissions
Events: InventoryLockEvent, InventoryUnlockEvent
Admin Tools
Audit Logging - Track all inventory modifications
Who modified what, when, and what changed
Commands: /xinv audit <player>, /xinv audit search, /xinv audit export
Configurable retention and action filtering
Bulk Operations - Apply actions to all players in a group
Commands: /xinv bulk clear, /xinv bulk apply-template, /xinv bulk reset-stats
Progress tracking and cancellation support
Anti-Dupe Detection - Detect potential item duplication exploits
Rapid switch detection, item count anomaly detection
Configurable sensitivity (LOW, MEDIUM, HIGH)
Admin notifications and optional inventory freeze
Statistics Dashboard - Plugin performance metrics
Commands: /xinv stats, /xinv stats cache, /xinv stats performance
Storage usage, cache hit rates, operation timing
Inventory Comparison - Side-by-side player inventory comparison GUI
Inventory Search - Search across all player inventories for specific items
Inventory Expiration - Auto-delete inactive player data
Configurable inactivity threshold
Exclusion by permission or UUID
Commands: /xinv expiration status, /xinv expiration preview, /xinv expiration run
External Integrations
Vault Economy - Per-group economy balances
Separate balances per inventory group
Transfer money between groups
Full Vault provider compatibility
LuckPerms Contexts - Expose current group as LuckPerms context
Context key: xinventories:group
Enables permission tracks based on inventory group
PlaceholderAPI Expansion - Extended placeholders
%xinventories_group%, %xinventories_item_count%, %xinventories_empty_slots%
%xinventories_version_count%, %xinventories_death_count%, %xinventories_balance%
%xinventories_locked%, %xinventories_lock_reason%, %xinventories_last_save%
Plugin Import - Import data from other inventory plugins
PerWorldInventory (PWI) support
MultiVerse-Inventories (MVI) support
MyWorlds support
Commands: /xinv import detect, /xinv import <plugin>
Network Sync
Cross-Server Sync - Redis-based synchronization for networks
Real-time inventory sync across BungeeCord/Velocity networks
Distributed locking to prevent data conflicts
Configurable conflict resolution strategies (latest-wins, merge)
Server heartbeat monitoring
Cache invalidation across servers
Backwards Compatibility
Spigot Support - Runtime dependency loading for Spigot servers
Automatically downloads required libraries (Kotlin, coroutines, serialization, etc.) from Maven Central
SHA-256 checksum verification for all downloaded dependencies
Isolated classloader ensures no conflicts with other plugins
Works transparently on Spigot 1.20.5+ and older Paper versions
On Paper 1.21+, uses server-provided libraries for optimal performance
Dependencies cached in plugins/xInventories/libraries/ folder
Quality of Life
Inventory Merge - Merge two groups' inventories
Strategies: COMBINE, REPLACE, KEEP_HIGHER, MANUAL
Preview and conflict resolution GUI
Commands: /xinv merge, /xinv merge confirm, /xinv merge cancel
Export/Import JSON - Export inventories for external tools
Commands: /xinv export, /xinv export all, /xinv importjson
Full inventory data including effects, XP, statistics
Config Versioning - Automatic config migration on updates
Preserves user settings during upgrades
Automatic backup before migration
Startup Branding - ASCII art logo and colorized console output
Displays version, storage type, groups loaded, sync status
GUI Enhancements (20+ new screens)
Core Management: Player Lookup, Inventory Editor, Version Browser, Death Recovery Panel
Administration: Template Manager, Group Browser, Bulk Operations Panel, Inventory Search
Configuration: Item Restrictions Editor, Shared Slots Editor, Lock Manager, Conditional Groups Editor
Monitoring: Audit Log Viewer, Statistics Dashboard, Economy Overview
Utilities: Backup Manager, Import Wizard, Export Tool, GUI Customization
CI/CD & Code Quality
Nightly Builds - Automatic development builds on every push to main
Available at
Nightly Release
Pre-release builds for testing new features
GitHub Actions Workflows
Automated testing on PRs and pushes
Code coverage reporting with Codecov
Static analysis with Detekt
Security scanning with CodeQL
Multi-version Paper testing (1.20.5 - 1.21.4)
Automatic PR labeling and stale issue cleanup
API documentation generation with Dokka
Dependabot - Automated dependency updates
Changed
Updated test suite to 3801 tests (up from 991)
Added version field to PlayerData for sync conflict detection
Added balances field to PlayerData for per-group economy
Added statistics, advancements, recipes fields to PlayerData
Enhanced CronExpression to properly handle day-of-week wildcards
Changed mainThreadDispatcher property type to CoroutineDispatcher for better testability
Reduced jar size from 6.6MB to 1.7MB using Paper's library loader
Dependencies are now downloaded automatically at server startup
Only bStats is bundled in the jar (relocated to avoid conflicts)
Added cross-version Paper compatibility (1.20.5 - 1.21.11+)
Created AttributeCompat utility for runtime attribute detection
Handles GENERIC_MAX_HEALTH -> MAX_HEALTH rename in Paper 1.21.2+
Created VersionDetector for Minecraft version detection at runtime
Updated api-version to 1.20 for broader compatibility
Expanded MainMenuGUI to 45 slots with new feature access
Fixed
Fixed CronExpression day matching when only day-of-week is specified
Fixed SQLite batch save missing version and balances columns
Fixed EconomyService mock configuration in tests
Fixed YAML deserialization compatibility with MockBukkit 4.101.0
Added recursive MemorySection to Map conversion in InventorySerializer
Fixed Paper 1.21.11 API compatibility
Updated GENERIC_MAX_HEALTH to MAX_HEALTH attribute references
Fixed coroutine context handling in integration tests
Fixed scheduler timing in gamemode change tests
Dependencies
Gradle 9.3.0
Kotlin 2.1.21
kotlinx-coroutines 1.9.0
kotlinx-serialization-json 1.8.1
Paper API 1.21.11-R0.1-SNAPSHOT
Shadow plugin 9.3.1
run-paper plugin 3.0.2
Caffeine 3.2.3
HikariCP 6.2.1
Jedis 5.2.0
JUnit Jupiter 5.13.4
MockK 1.14.7
MockBukkit 4.101.0
SQLite JDBC 3.51.1.0
bStats 3.1.0
Embedded Redis 1.4.3
----------
,
Feb 13, 2026
View on SpigotMC
Resource Information
Author:
----------
Total Downloads:
105
First Release:
Jan 29, 2026
Last Update:
Jun 19, 2026
Category:
---------------
All-Time Rating:
0 ratings
Find more info at github.com...
Version
-----
Released:
--------------------
Downloads:
------
Version Rating:
----------------------
--
ratings
Ask Questions / Get Support