基本信息
我的世界Java版本
1.21.x
1.20.x
1.19.x
1.18.2
平台
Bukkit
运行环境
搬运团队
搬运资源声明
对于可进行 JAR 文件搬运的许可证,我们提供站内下载服务;其他资源会跳转到原帖下载。资源更新可能不及时,建议前往资源内提供的原帖链接下载最新版本。
详情信息
许可证 GPL-3.0-only
发布于 2024-11-29
更新于 2026-02-14
更新日志
主要更改
- 移除了 Spigot 平台模块,并在检测到 Spigot 时停止加载 QS。这意味着除非我们用于显示物品的协议发生变化,否则 QS 不需要为每个版本更新。
- 完全重写了经济代码
- 所有与经济相关的系统的新类
- 任何与经济或福利相关的事件都与以前的版本不兼容。
- 增加了每种类型的招牌布局自定义,允许您更改行配置,空字符串('')将使该行为空。
# 商店招牌的布局。
layout:
# 购买商店的布局。
BUYING:
line1: "header"
line2: "trading"
line3: "item"
line4: "price"
# 冻结商店的布局。
FROZEN:
line1: "header"
line2: "trading"
line3: "item"
line4: "price"
# 出售商店的布局。
SELLING:
line1: "header"
line2: "trading"
line3: "item"
line4: "price"
- 添加了对物品黑名单模式的支持(感谢 bennycallanan)
-
在物品黑名单配置中添加了通配符模式支持,允许用户通过简单的模式阻止整个类别的物品。
-
特性
- 通配符模式如 *_AXE 和 *_SPAWN_EGG 现在在黑名单配置中有效
- 支持 * 代表任意字符和 ? 代表单个字符匹配
- 模式匹配不区分大小写
-
- 重构了 GUI 系统(感谢 Yusakidev)
- 实现了 gui.yml 配置文件以自定义 GUI。
- 实现了更好的 qs 浏览过滤功能
- 实现了更稳定且错误较少的 GUI 系统。
- 添加了 gui.yml 以完全可配置的 GUI 布局和文本
- 浏览菜单:搜索、排序(价格/名称/库存)和过滤(全部/购买/出售/有库存)
- 工作人员菜单:玩家/工作人员选择的搜索功能
- 分组的物品页面以更好地浏览商店
- 重构了所有菜单页面以使用可配置的显示/描述
- 内部添加了 WorldEdit 兼容性,因为它被广泛使用。
- 重构了税收系统,使其更加灵活且易于配置。
- 引入了新的累进税制,允许根据玩家的余额征税。(由 YuanYuanOwO 提议)
- 引入了对与商店互动的玩家、店主或两者征税的能力
- 所有与税收相关的配置已移至配置文件的 shop-tax 部分。这可能需要重新配置您的税收设置。
- 添加了新的 ShopEnhancedTaxEvent,弃用了旧的 ShopTaxEvent。
- 添加了新的 TaxManager 和 TaxProvider 接口,这允许通过插件/第三方开发者添加自定义税收提供者。
插件/兼容性更改
- 添加了 UltimateClaims 兼容性
- 添加了 SimpleClaimSystem 兼容性
- 添加了 Pika 的 Quests 插件
- 添加了 BetonQuest 插件
- 添加了 Pl3xMap 插件
- MatcherPlus 兼容性改进
- 添加了对 CrazyCrates 的支持
- 添加了对 ExcellentCrates 的支持
- 添加了对 SilkSpawners 的支持。
- WorldGuard 兼容性改进(感谢 golovin12)
- 添加了明确的权限处理:
- 区域所有者和成员自动拥有在其自己的区域内创建和交易的权限。
- 其他玩家必须启用适当的 WorldGuard 标志(quickshophikari-create, quickshophikari-trade)才能与商店互动。
- 如果商店位于任何区域之外,默认的 QuickShop 行为适用(无额外限制)
- 添加了明确的权限处理:
- 添加了基于商店状态的彩色标记以支持 bluemap(感谢 YusakiDev)
- 更新了 dynmap/towny 插件以使用新的 ShopTypeEnhancedEvent 而不是 ShopTypeEvent。
- 移除了 WorldEdit 兼容性,现在已包含在主插件中。
- 添加了对全局标志的支持以支持 WorldGuard 兼容性。
内部/开发者 API
- 移除了一些已弃用的方法和类。
- 重构了交互管理器。现在更加灵活并允许外部添加
- 这涉及两个类 InteractionBehavior 和 InteractionType。
- InteractionType 详细说明了交互类型,例如:STANDING_LEFT_CLICK_SIGN, STANDING_LEFT_CLICK_SHOP
- InteractionBehavior 概述了 InteractionType 的行为,例如 CONTROL_PANEL 和 TRADE_UI
- 添加了 UserLimitCalculationEvent,允许应用自定义用户限制。
- 这对于限制用户拥有的商店数量或在现有等级系统提供的限制基础上添加新限制非常有用,而无需实现新的 RankLimiter。
- 添加了一个新的 ShopLayoutProvider 接口及其默认实现。
- 这允许使用自定义布局来布置商店,提供更多自定义选项。
- 这还允许开发人员覆盖默认布局提供者并创建自己的实现。
- 如何自行实现?
- 实现您想要注册到 InteractionManager 的类:
-
InteractionManager manager = QuickShop.getInstance().getInteractionManager(); manager.interaction(new MyTradeInteraction()); manager.behavior(new MyTradeBehavior());
- 替换了一些可以轻松替换为内置 Java 方法的 Apache Commons 调用,减少了约 1100ms/方法调用
- 弃用了 ShopType 枚举和 ShopTypeEvent。这些被新的 IShopType 接口和实现类所取代。
- 新的事件是 ShopTypeEnhancedEvent。
- 这允许第三方插件添加自己的商店类型,并简化了代码检查的翻译。
- 更新了配置系统以使用 Boosted-yaml
- 这允许自动更新配置文件而无需复杂的更新脚本
- 这还允许配置系统不依赖于 Minecraft。
- 将逻辑 PaperLib 调用替换为原生 PaperAPI 调用。
次要更改
- 将 Java 版本提升到 21
- 添加了 shop.display-allow-enchants 以启用/禁用商店展示物品上的附魔。
- 为 packetevents 不支持虚拟展示物品上的自定义附魔添加了变通方法。
- 使用本地化翻译进行商店类型的模式切换图标(感谢 ExyiN)
- 提升了 Residence 版本以支持兼容性(感谢 YuanYuanOwO)
- 添加了世界白名单支持(感谢 wling-art)
- 添加了 /qs database save 命令,该命令将所有当前标记为脏数据的商店保存到数据库。
- 将 _SHOPBLOCK 交互拆分为 _SHOPBLOCK 和 _CONTAINER。
- _SHOPBLOCK 与商店相关,_CONTAINER 与当前不是商店的有效商店容器相关。
- 添加了命令面板中的库存选项,这对于为玩家打开商店库存提供了第二个选项很有用。
- 将 Crowdin 参数从系统属性移到 config.yml
- crowdin-host
- use-crowdin-ota
修复
- 修复了物品价格限制的问题(感谢 maxcom1)
- 修复了 1.20.x 协议库显示的问题(感谢 YuanYuanOwO)
- 修复了 itemdebug 中没有手持物品的问题(感谢 YuanYuanOwO)
- 修复了 dominion 插件的问题(感谢 YuanYuanOwO)
- 添加了一个简单的检查以避免这种情况。如果不是自己的商店,直接拒绝限额请求。(感谢 YuanYuanOwO)
- 修复了在 TransactionBuilder 中未设置税费而导致的 NPE(感谢 maxcom1)
- 修复了 /quickshop suggestprice 无法区分购买/出售商店的问题。(感谢 MidSpike)
- 修复了 ProtocolLib 的 PacketEvents ClassNotFoundException(感谢 wling-art)
- 将区块状态访问重新分配到区域线程以进行商店创建(感谢 r00tbeerman)
- 解决了 SLF4J StaticLoggerBinder 加载错误(感谢 wling-art)
- 通过验证招牌朝向解决了招牌劫持问题(感谢 wling-art)
- 对 QuickShop 禁用时的性能改进以防止潜在的冻结。
- 修复了 1.20.4 packetevents 虚拟展示物无法保持位置的问题。
- 修复了 GriefPrevention 兼容性插件中的关键问题。
- 修复了当福利激活时商店所有者无法获得金钱的问题。
- 修复了 folia 上 lands 插件的问题,使用区域线程以支持 Folia 兼容性(感谢 YusakiDev)
- 修复了堆叠商店上 TRADE_DIRECT 的问题
- 修复了 protocollib 5.4.0 由于未记录的包变更导致的问题。
- 修复了创建商店时物品堆叠超过最大堆叠大小的问题。
- 修复了 1.21.11 上与 BukkitAudiences 相关的崩溃问题。
- 修复了商店删除时过于急躁的问题。
- 修复了非所有者拥有的商店转让给其他人时的权限检查问题。(感谢 YuanYuanOwO)
- 修复了超级工具 UI 问题(感谢 YuanYuanOwO)
- 修复了调试模式外生成日志的问题。
- 修复了 /qs find 问题。
- 修复了配置加载时间问题。
- 修复了配置加载/创建警告消息语言问题。
- 修复了命令描述语言键不匹配的问题(感谢 wling-art)
- 修复了 folia 上的 qs clean 命令(感谢 wling-art)
- 修复了 folia 上的 per-player-shop-sign 问题(感谢 wling-art)
- 修复了虚拟展示物包发送中的潜在递归死锁问题(感谢 wling-art)
- 修复了配置加载/创建警告消息语言问题。
- 修复了 folia 上 /qs browse 和 ShopItemOnly 插件不正常工作的问题。
- 修复了 PLAN 使用过时 API 的问题。
- 修复了 folia 上的 /qs clean 问题。(感谢 wling-art)
- 修复了 folia 上的 /qs cleanghost 问题(感谢 wling-art)
- 更多针对 folia 上商店的线程安全修复(感谢 wling-art)
- 修复了福利计算中的所有者付款问题(感谢 wling-art)



