v2.23.5

Details

  • Filename
    Shopkeepers-2.23.5.jar
  • Uploaded by
  • Uploaded
    Apr 23, 2025
  • Size
    1.95 MB
  • Downloads
    14,368
  • MD5
    1c9c0fcbe8995093d05a605942b9d26b

Supported Bukkit Versions

  • 1.21.5
  • 1.21.1
  • 1.21.3
  • 1.21.4
  • 1.21
  • 1.20.6

Changelog

v2.23.5 for MC 1.21.5, 1.21.4, 1.21.3, 1.21.1, 1.21, 1.20.6

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

  • If available, use the item's custom display name in trade notification messages.
  • Performance: Further optimize the handling of the BlockPhysicsEvent for sign shopkeepers: Instead of checking during each block physics event whether the event shall be cancelled because the block or one of its neighbors would be affected by the event (7 checks), we pre-calculate the set of affected block locations and then only perform a single map lookup during the event (1 check).
  • Performance: Optimize shulker peek AI: Only update the peek state if actually necessary to avoid redundant game events and other side effects.
  • Performance: Remove the PlayerMap "optimization" again: It does not provide a clear benefit, but adds additional complexity and potential for bugs and memory leaks.
  • Fix: It was still possible to spawn or move shopkeepers into protected GriefPrevention regions. When using the check-spawn-location-interaction-result, we now temporarily spawn a dummy chest block at the checked location to ensure that region protection plugins like GriefPrevention actually react to our dummy interaction test event.
  • Fix: Mark shopkeepers as dirty when a property value is found missing and the default value is being used.
    • As before, we log a warning and then fall back to the default value for missing property values. This is for example often the case when new properties are added.
    • However, previously, we would not mark the shopkeeper as dirty in this case since the default value also equals the initial property value. One consequence of this was that the warning about missing property values would be repeated over and over during subsequent plugin reloads.
  • Fix: Add a Paper-specific 1.21.5 module to resolve issues related to trade notifications and pig, cow and chicken variants.
  • Paper: Omit redundant 'id' and 'count' properties when logging the metadata of items involved in trades.

Known potential issues: See here.

Donations

If you like this plugin, consider making a donation.

Thanks!