config.yml and fixes differences between commands, menus, and starter setup.
Upgrade
- Stop the server and back up the plugin folder and database.
- Replace the plugin jar.
- Start the server. Existing v1 and v2 configs are backed up and converted to v3.
- Check the console for migration or storage errors.
config.yml as config.yml.backup-<id>.yml. Custom language files are backed up when migration changes them.
A migration error stops the plugin and retains the original config. Fix the reported problem and restart.
What moves
Values are transferred automatically. Empty message lists and prefixes stay empty. Disabled broadcasts stay disabled, and an old boolean rekit-on-kill setting keeps its value.
Legacy
%player% and %kitname% placeholders become {player} and {kitname}. The old disabled-world message keeps its color formatting. V2 language files are retained unchanged.
The console lists backups, moved setting groups, the retained storage backend, and behavior changes to review.
Check world and region rules
The old disabled-world list becomes a global deny rule. A nonempty kill whitelist becomes an allow rule and still takes precedence over the old blacklist. Otherwise, the blacklist becomes a deny rule. Two empty lists becomemode: deny with entries: [], allowing every world.
Earlier 1.8 development configs are converted too, with a backup. If both old and new rules are present, migration stops and asks you to choose which to keep.
World names now ignore capitalization. Check entries that previously depended on exact capitalization.
Location rules also cover sharing, menu interactions, and regear items. Automatic respawn and kill rekit both support world and region filters and public kit mappings.
When a relevant WorldGuard lookup fails, affected actions stop. Region mappings no longer silently fall back to a world-wide kit. See Worlds and regions.
Check item filtering
Older material and import filter settings move toitem-filter. Existing switches are retained. Enchanted books and nested items are checked too.
Migrated configs keep filtering on use without automatically filtering saves. Set filter-saves: true if new personal and enderchest kit saves should also meet the rules. Existing stored definitions remain unchanged until edited or purged.
See Item filtering for unbreakable items, enchantment caps, potion limits, and material overrides.
Check the storage message
Older versions selected SQLite for an unrecognized or differently capitalized storage type. For example,MySQL selected SQLite, while mysql selected MySQL.
The upgrade preserves the backend the old version used. It reports a retained SQLite fallback instead of silently connecting to another database. Use storage migration before choosing a different backend.
Check permissions
Commands and menus enforce the same action permissions.perplayerkit.admin now grants kit room editing and staff inspection. Admins still need perplayerkit.use for player features.
Notification access stays as before: operators and players explicitly granted perplayerkit.kitnotify. The player bundle does not add notifications.
To enable action notifications for ordinary players:
Add the starter kits to an existing setup
Existing public kit definitions are preserved. To add missing bundled definitions and fill unconfigured starter content:Behavior changes
- Personal and public kit selections persist across reconnects and restarts. Respawn and regear use the same saved choice.
- Load a kit once after upgrading to save your selection; older versions did not store that choice.
- Kit room filtering preserves stored definitions. Use
/purgeitemfor permanent removal. - Saving one kit room page leaves other unsaved pages available to autosetup.
- Clearing a personal editor and closing it deletes that saved kit.
/deleteec <slot>deletes an enderchest kit. - Regear items honor permissions, location rules, and elytra restrictions when used.
- Share codes and direct requests apply the current item filter when accepted.
- Pending respawn restoration is cancelled on disconnect or a newer respawn.
Roll back
Keep the same Minecraft version while upgrading or rolling back the plugin.- Stop the server.
- Restore
config.ymlfrom the backup named in the migration log. - Restore any language files the migration backed up.
- Replace the jar with the previous plugin jar, then start the server.