Перейти к содержимому
Mineforgian

Craftorithm

A lightweight recipe management plugin

Загрузки
22K
Подписчики
60
Обновлён
8 июля 2026 г.
Лицензия
GPL-3.0-or-later

Опубликован 13 ноября 2023 г.

craftorithm-1.svg craftorithm-2.svg craftorithm-3.svg craftorithm-4.svg


[中文版本]

Craftorithm is a recipe management plugin which can add recipes, remove/disable recipes, limit to recipes, etc.

Features

Add shaped recipe

Add Shaped Recipe

Add shapeless recipe

Add Shapeless Recipe

Add cooking recipe(furnace、blast_furnace、smoker、campfire)

Add Cooking Recipe

Add smithing recipe

Add Smithing Recipe

Add stone cutting recipe

Add Stone Cutting Recipe

Add brewing recipe

Add Brewing Recipe

Add anvil recipe

Add Anvil Recipe

Show recipe list

Show Recipe List

Disable recipe

Disable recipe

Usage

Craftorithm Wiki

Ченджлог

1.11.3.0Релиз26.1.1, 26.1.2, 26.2 · 8 июля 2026 г.

更新内容 | Update Contents

  1. 修复 BackIcon 在无父级页面时使用异步关闭页面导致异常报错的问题 | Fixed an issue where BackIcon would throw an error when asynchronously closing a page with no parent page.
  2. script 模块新增一些数学运算的函数 | Added several math-related functions to the script module.
  3. 优化更新检测的方式 | Optimized the update checking mechanism.
1.11.2.0Релиз26.1.1, 26.1.2, 26.2 · 7 июля 2026 г.

更新内容 | Update Contents

  1. 新增script函数set_inv_item, 用于设置玩家打开容器指定位置的物品 | Added script function set_inv_item for setting the item at a specified slot in a container opened by a player
  2. 现在合成事件相关触发器上下文中会包含合成材料的ID和数量本次事件一次性合成的次数 | Now the crafting event-related trigger context includes the IDs and counts of crafting ingredients, as well as the number of times the crafting is performed in a single event
  3. 如果配方的某个触发器正在冷却,那么本次合成以及所有相关触发器将被阻止 | If a trigger of a recipe is on cooldown, this crafting and all related triggers will be blocked
  4. 优化recipebook命令的参数解析,现在的使用格式为/craftorithm recipebook [--player <name>] [--type <type>] | Optimized argument parsing for the recipebook command; the current usage format is /craftorithm recipebook [--player <name>] [--type <type>]
  5. 修复RecipeDisplayIcon的lore会重复的问题 | Fixed the issue where the lore of RecipeDisplayIcon would duplicate
1.11.1.1Релиз26.1.1, 26.1.2, 26.2 · 5 июля 2026 г.

更新内容 | Update Contents

  1. 修复ProtocolLib挂钩在某些情况下会抛出异常的问题 | Fixed an issue where ProtocolLib hooks would throw exceptions in certain situations
1.11.1.0Релиз26.1.1, 26.1.2, 26.2 · 4 июля 2026 г.

兼容性提醒 | Compatibility Notes

  • 最低Minecraft版本提升: 最低支持版本从 1.19 提升至 1.20 | Minimum Minecraft version raised: Minimum supported version raised from 1.19 to 1.20
  • 配方文件格式变动: 配方文件会自动转换, 但random_cooking类型的配方在新版本已经去除 | Recipe file format changes: Recipe files will be auto-converted, but random_cooking type recipes have been removed
  • 脚本系统: 旧版脚本系统已移除, function.yml文件已失去作用 | Script system: Legacy script system removed, function.yml file is no longer functional
  • packetevents / ProtocolLib: 配方更新导致客户端卡顿的优化和虚拟配方预览功能需要安装其中之一才能生效 | packetevents / ProtocolLib: Optimization for client lag caused by recipe updates and virtual recipe preview require one of these to be installed

全新插件文档 | New Plugin Documentation

https://yufiriamazenta.github.io/Craftorithm-Docs/


新增功能 | New Features

全新脚本引擎 | New Script Engine

  • 新增完整的 DSL 脚本引擎: 词法分析 → AST → 编译器 → 栈式虚拟机 | Full DSL script engine: Lexer → AST → Compiler → Stack-based VM
  • 支持条件判断 (if/elseif/else)、算术运算 (+ - * / %)、字符串拼接、取反运算 (!) | Supports conditionals (if/elseif/else), arithmetic operators (+ - * / %), string concatenation, negation (!)
  • 支持变量 (set/get)、延迟执行 (delay)、日志输出 (log)、播放音效 (sound) | Supports variables (set/get), delayed execution (delay), logging (log), sound playback (sound)
  • 内置条件函数: game_modepermissionitemcompare 等 | Built-in condition functions: game_mode, permission, item, compare, etc.
  • 内置动作函数: tellgiverun_cmdtake_itemplay_sound 等 | Built-in action functions: tell, give, run_cmd, take_item, play_sound, etc.
  • 新增 /craftorithm script 子命令用于执行脚本 | New /craftorithm script subcommand for executing scripts

全新触发器系统 | New Trigger System

  • 新增 Trigger 模块, 支持数十种触发器类型, 可监听配方合成、物品使用等多种事件 | New Trigger module supporting dozens of trigger types, monitoring recipe crafting, item usage, and more

UI优化 | UI Improvements

  • 优化配方列表页面: 配方列表页面、配方类型选择菜单、支持按时间/名称排序, 通过/craftorithm recipebook 命令打开 | Enhanced recipe list page: recipe list, type selection menu, sort by time/name, opened via /craftorithm recipebook
  • 配方创建器 UI 重写 | Recipe creator UI rewritten
  • 配方编辑器 UI 重写 | Recipe editor UI rewritten
  • 配方展示页面改为可自定义, 支持通过 YAML 配置文件自定义布局和图标 | Recipe display pages are now customizable via YAML config files for layout and icons
  • 新增自定义菜单功能, 通过 YAML 配置文件创建自定义界面 | New custom menu feature, create custom interfaces via YAML config files
  • 菜单按钮支持按点击类型绑定脚本动作 (actions 配置) | Menu buttons support binding script actions by click type (actions config)
  • 菜单按钮支持 item_model 字段 | Menu buttons support item_model field

其他新功能 | Other New Features

  • 新增旧配方格式自动转换功能 (LegacyRecipeMigrator) | Automatic legacy recipe format conversion (LegacyRecipeMigrator)
  • 基于 packetevents 或 ProtocolLib 的虚拟配方预览功能 | Virtual recipe preview based on packetevents or ProtocolLib
  • 新增 main_command_aliases 配置项, 用于设置主命令别名 | New main_command_aliases config option for setting main command aliases
  • 新增分 tick 加载功能, 将配方加载分散到多个 tick 以减少卡服 | New tick-batched loading, distributes recipe loading across multiple ticks to reduce lag
  • 新增 ItemPack 物品包功能, 用于一个材料槽位允许多种物品, 类似原版tag | New ItemPack item pack feature, allowing a ingredient slot to accept multiple items, similar to vanilla tags
  • 新增 SX-Item 挂钩 | New SX-Item hook
  • 新增适用于铁砧配方和锻造台配方的物品组件复制系统 (copy_components_rules), 支持以下规则: allitem_nameitem_modeltrimunbreakabletoolhide_tooltipfire_resistancecustom_model_data_componentdisplay_nameloreenchantmentsattributesitem_flagmax_stack_sizerarityfoodcustom_model_datacustom_persistent_data | New item component copy system for anvil and smithing recipes (copy_components_rules), supports: all, item_name, item_model, trim, unbreakable, tool, hide_tooltip, fire_resistance, custom_model_data_component, display_name, lore, enchantments, attributes, item_flag, max_stack_size, rarity, food, custom_model_data, custom_persistent_data

API扩展 | API Extensions

  • 新增 RecipeRegisterEvent 事件 | New RecipeRegisterEvent event
  • 扩展 CraftorithmAPI 公开 API (新增物品管理、配方管理、触发器管理等方法) | Expanded CraftorithmAPI (new item management, recipe management, trigger management methods)

Bug 修复 | Bug Fixes

  • 修复服务器配方缓存和禁用配方可能出问题的 bug | Fixed a bug where server recipe cache and disabled recipes could malfunction
  • 修复 disable_recipes.yml 会重复记录的问题 | Fixed disable_recipes.yml duplicate recording issue

优化 | Optimizations

  • 优化配方更新时客户端的卡顿问题 | Optimized client lag during recipe updates
  • 优化重载时其他插件监听器的恢复逻辑 | Improved listener restoration logic for other plugins during reload

1.10.26Релиз26.1, 26.1.1, 26.1.2 · 8 июня 2026 г.

更新内容 | Update Contents

  1. 新增not_convert_listener_classes,用于配置不进行转化的监听器类 | Added the not_convert_listener_classes configuration, which is used to configure listener classes not to be converted
  2. 新增动作give-exp,现在切石机配方也可以执行actions了 | Added action give-exp. Stonecutting recipes can now also execute actions
  3. 将原本弃用的配方编辑页面暂时添加回来 | Added back the previously deprecated recipe editor menu
  4. 将reload命令拆分成重载其他内容和重载配方,以缓解reload造成服务器过载的问题 | Split the reload command into reloading other content and reloading recipes to mitigate server overload issues caused by reload
1.10.25Релиз1.21.9, 1.21.10, 1.21.11 · 18 января 2026 г.

更新内容 | Update Contents

  1. 新增not_convert_listener_classes,用于配置不进行转化的监听器类 | Added the not_convert_listener_classes configuration, which is used to configure listener classes not to be converted
  2. 新增动作give-exp,现在切石机配方也可以执行actions了 | Added action give-exp. Stonecutting recipes can now also execute actions
  3. 将原本弃用的配方编辑页面暂时添加回来 | Added back the previously deprecated recipe editor menu
  4. 将reload命令拆分成重载其他内容和重载配方,以缓解reload造成服务器过载的问题 | Split the reload command into reloading other content and reloading recipes to mitigate server overload issues caused by reload
1.10.22Релиз1.21.7, 1.21.8, 1.21.9 · 3 октября 2025 г.

更新内容 | Update Contents

  1. 修复#107 | Fixed #107
1.10.20Релиз1.21.6, 1.21.7, 1.21.8 · 16 августа 2025 г.

更新内容 | Update Contents

  1. 新增物品插件挂钩优先级配置项 | Added item plugin hook priority option
  2. 添加CraftEngine兼容 | Add CraftEngine compatibility

Комментарии

Загружаем…