v2.25.0 MC 1.21.11, 1.21.10, 1.21.8, 1.21.7, 1.21.6, 1.21.5
I only list the primary changes here. For information on API changes, internal changes, and changes to the language files, you can find the complete changelog on Github:
https://github.com/Shopkeepers/Shopkeepers/blob/master/CHANGELOG.md
Known potential issues: See
here.
- Update for Minecraft 1.21.11.
- Add support for new mob types:
- Camel husk: Similar editor options as camel.
- Nautilus: Supports baby variant, saddle and armor.
- Zombie nautilus: Supports saddle, coral variant and armor.
- Parched: Similar editor options as other skeleton types.
- Horse shopkeepers: Add support for netherite horse armor.
- Drop support for Minecraft versions below 1.21.5. This has the following benefits:
- Modernize the plugin by building against a more modern Bukkit version.
- Reduce the plugin size by bundling fewer compatibility modules.
- Simplify updating the plugin for new Paper versions: For versions before 1.21.5, the Spigot and Paper versions shared the same compatibility code, which required building all Paper modules against the Spigot mappings. But since Paper usually releases their Spigot mapping support after some delay, updating the plugin to support the latest Minecraft version on Paper was also delayed.
- Command: Add command "/shopkeeper history [player|'all'|'self'] [shop=...|owner=...|'own'|'player'|'admin'|'all'] [page]".
- Permission: "shopkeeper.history.own" (default: true): Allows viewing the own trading history.
- Permission: "shopkeeper.history.admin" (default: op): Allows viewing the trading history of others and admin shops.
- Example: "/shopkeeper blablubbabc shop=Test" shows the trading history of player "blablubbabc" with the shopkeeper named "Test" (assuming there is only a single shopkeeper with this name). You can also target a specific shopkeeper via their id, unique id, or by looking at them in-game.
- The player and owner argument also support the look-up of offline players, taking into account the currently existing shop owners, and existing online mode players. However, the plugin does not check the trading history to find offline players by name.
- Only the currently existing shopkeepers can be specified by name or id. To look up the trading history of a no longer existing shop, use their unique id.
- If the owner of a shop has changed, a player without the shopkeeper.history.admin permission can only view the trading history of the shopkeeper from when they still owned the shop.
- Config: This command is currently only supported when using trade-log-storage: 'SQLITE'.
- Config: Item metadata (e.g. item display names) can only be retrieved when the trade was logged while using log-item-metadata: true.
- Debug: If we fail to load the stored item metadata (can for example be the case when there have been backwards incompatible changes across server updates), we log the error in debug mode but otherwise silently ignore it and display the item without the metadata in the history.
- Trade log: Depending on the trade log merging configuration and the hard-coded IO buffering delay, it can take a few seconds for trades to show up in the trading history. In order for trades to show up in the trading history more quickly, the IO buffering delay (the delay before logs are persisted to the database) is reduced from 30 seconds to 10 seconds. With this change and the default trade log merging configuration, it now takes 10-25 seconds for trades to show up in the trading history, versus the 30-45 seconds from before.
- In the command output, players have their uuid as hover text and shops have their shopkeeper uuid as hover text.
- Command: The "/shopkeeper teleport" command shows the shopkeeper uuid as hover text in the success message now.
- Fix: Consider copper chests valid shop containers.
- Fix: Automatically create missing parent directories for the SQLite trade log.
- Fix: Repeat the setup of the SQLite trade log database if an error occurred during a previous save attempt.
- Fix: Baby zombies would occasionally spawn or mount nearby chickens. Disable spawn data randomization.
- We also cancel any entity mounting events for shopkeeper mobs now, in case there are ever any cases in the future in which mobs might try to mount other mobs, outside of spawning.
- Fix: UnsupportedOperationException during config loading when the missing default value for shop-creation-item is inserted.
Donations
If you like this plugin, consider making a
donation.
Thanks!