Links
Tags
Creators
Details
All versions
1.8.0
Release
PerPlayerKit 1.8.02 months ago 1,684
Compatibility
Minecraft: Java Edition
26.3
26.2
26.1.x
1.21.x
1.20.x
1.19.x
Platforms
Paper
Purpur
Spigot
Changes
1.8.0
Upgrade guide: https://perplayerkit.com/upgrading
Breaking
- Config v3. Existing v1 and v2 configs are backed up and migrated automatically. Everything below is converted for you unless noted.
- Player-facing messages moved from
config.ymltolang/<code>.yml. Custom messages are carried over. - Message placeholders
%player%and%kitname%renamed to{player}and{kitname}. Existing messages are rewritten. max-kitsrenamed tokits.max-slots.disabled-command-worldsand rekit-on-kill world lists replaced bylocationsrules.- Kit room material and import filters replaced by
item-filter. - World names and storage type values are now case-insensitive. Review world entries that previously relied on exact case.
perplayerkit.adminnow includes kit room editing and staff inspection.- Remembered kit selections are stored in the database. Load a kit once after upgrading to save your selection.
Added
- PostgreSQL storage backend.
- 14 bundled languages.
- WorldGuard support (optional).
- Configurable kit limit, 1 to 99, with a paginated
/kitmenu and/k10../k99,/ec10../ec99. - Up to 99 kit room pages with grouped page navigation.
locationsrules: allow or deny any feature per world or WorldGuard region.- Per-world and per-region public kits for rekit-on-kill and rekit-on-respawn.
rekit-on-respawndelay in ticks.item-filterrules: unbreakable items, custom attributes, item flags, enchantment level caps, incompatible enchantments, potion level and duration caps, per-material overrides. Applies inside shulkers, containers, bundles, and enchanted books.- Remembered kit selections persist across reconnects, restarts, and server switches. Optional
restore-enderchest. - Bundled starter kit room pages and public kits.
/perplayerkit autosetupto fill an empty kit room and public kits.add-kitsandreset confirmvariants./perplayerkit location [feature]to check which world and region rules apply./sharekit <slot> <player>and/shareec <slot> <player>with/shareacceptand/sharedecline./transferkits <player>to copy all kits and enderchests to another player./deleteec <slot>./purgeitemto remove an item type from all stored kits./kitdata exportand/kitdata importfor.ppkfiles.{kitname}placeholder in kit load broadcasts.- Permissions
perplayerkit.staff,perplayerkit.editkitroom,perplayerkit.kitnotify,perplayerkit.deleteenderchest. - Documentation site at https://perplayerkit.com
Changed
- Update checks run asynchronously, cache for one hour, and retry after one minute on failure.
- SQLite backups use
VACUUM INTOfor a consistent snapshot instead of copying the live file. - Storage failures are reported so queued saves can retry.
- Players with unloaded or failed kit data get a message instead of an empty kit.
- Item filtering now applies to accepted shares and transfers.
- Clearing a personal kit editor and closing it deletes the kit.
- Public kits with an unknown icon material are skipped instead of preventing plugin enable.
- Failed WorldGuard lookups block the action instead of falling back to a world-wide kit.
- Chat is sent through Paper's Adventure API when available.
- Redis errors are logged as errors with stack traces.
- Dependency updates: Adventure 4.26, Jedis 6.2, HikariCP 6.3.3, PostgreSQL driver 42.7.13, SQLite 3.53, bStats 3.2, okhttp2 replaced with okhttp3.
Fixed
- Restricted items could bypass the regear filter inside a shulker box.
- Ghost offhand item after kit load or regear.
/inspectkitand/inspecteclag and failures for offline players./inspectecopened the inspector's enderchest instead of the target's.- Kit editor changes lost during menu redraws.
- Item name formatting in menus.
/deletekitand/swapkitaccepted out-of-range slots.- KitsX import continued after reporting missing files.
- HikariCP
idleTimeoutwarning on startup with SQLite. - Kits loaded on the main thread when the plugin was re-enabled.
- Duplicate save on player quit.
- Pending respawn restoration not cancelled on disconnect or a second respawn.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:ol7vQoT5:ZIlKYVWp"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:ol7vQoT5:ZIlKYVWp"
}

