### 破坏性更新 | Breaking Changes
1. 插件提供的 `ItemProvider` 接口发生了改变,因此为旧版本编写的物品源插件需要额外适配才能兼容此版本 | The `ItemProvider` interface provided by the plugin has changed, so item provider plugins written for older versions need extra adaptation to be compatible with this version
2. 物品组内不再能设置物品数量,所有数量都必须在配方文件中定义 | Item amounts can no longer be defined inside item packs; all amounts must be defined in the recipe files
### 常规更新 | Regular Changes
1. 兼容Minecraft 26.3 | Compatible with Minecraft 26.3
2. 铁砧配方材料使用物品组时现在支持指定数量,例如 `item_pack:物品组名 4` | Item pack ingredients in anvil recipes now support specifying an amount, e.g. `item_pack:pack_name 4`
3. 新增插件重载与服务器启动完成后从数据库恢复在线玩家已解锁配方的功能 | Added restoring online players' discovered recipes from the database after plugin reload and server startup
4. 修复玩家在配方未注册完毕时加入服务器会导致已经解锁的配方被取消解锁的问题 | Fixed an issue where joining the server before recipe registration completed would cause already unlocked recipes to be locked again
5. 修复重载期间合成限制规则会短暂失效,导致本应被拦截的合成得以进行的问题 | Fixed an issue where ingredient restriction rules briefly stopped working during reload, allowing crafting that should have been blocked
6. 修复 `item_packs.yml` 中使用 `tag:` 或嵌套引用其他物品组(`item_pack:组名`)的条目无法解析的问题 | Fixed item pack entries in `item_packs.yml` using `tag:` or nested item pack references (`item_pack:pack_name`) failing to parse
7. 修复 `/craftorithm item fuel add` 在手持多个物品时会向 `custom_fuels.yml` 写入带数量的无效配置键的问题,历史无效键需手动清理 | Fixed `/craftorithm item fuel add` writing invalid config keys containing amounts to `custom_fuels.yml` when holding a stack; existing invalid keys need to be removed manually
8. 修复数据库连接池的连接数上限、心跳启动时机与空闲连接驱逐逻辑,以及 DAO 语句与结果集未关闭导致的资源泄漏 | Fixed database connection pool connection limits, heartbeat startup timing and idle connection eviction, as well as resource leaks from unclosed DAO statements and result sets
9. 修复特定情况下保存物品时出现并发修改异常的问题 | Fixed a ConcurrentModificationException when saving items under certain conditions
10. 修复假结果预览功能在特定时序下可能报空指针的问题 | Fixed a NullPointerException in the fake result preview feature under certain timing
11. 修复自定义菜单加载失败时打开回调会被执行两次的问题 | Fixed the open callback of custom menus being invoked twice when menu loading fails
12. 修复重载时触发器数据在异步线程与主线程之间存在的并发问题 | Fixed a concurrency issue with trigger data between the async reload thread and the main thread
13. 优化内部代码结构,清理无引用代码 | Optimized internal code structure and removed unreferenced code
Optional dependencies
CraftEngine
Any compatible version
PacketEvents
Any compatible version
ExecutableItems
Any compatible version
MythicMobs
Any compatible version
Developer information
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle.
maven { name = "Modrinth"; url = "https://api.modrinth.com/maven" }