
EmakiCooking | Seven Cooking Stations
Cook at world blocks with real interaction, branching results, floating displays and a nutrition system.
Автор: JiuWu1,8 тыс.15обновлён 31 авг. 2026 г.
ЕдаМеханики игрыМини-игры
Описание
Галерея
Последние версии
Все версии →release
Emaki Cooking 4.3.0
4.3.031 авг. 2026 г.189Minecraft: 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.2, 26.2folia, paper, purpur
Что нового
### Added
- Legacy-condition conversion command with preview, conflict reporting, explicit apply, and backups.
### Changed
- Cooking tools, fuels, moisture, ingredients, containers, and nutrition checks now use CoreLib matchers.
- Bundled recipes use the current block-style matcher schema while `item_sources` remains available for construction and return-container duties.
### Breaking Changes
- Migrate custom eligibility rules to matchers and review fuel ordering because the first matching rule wins.
### Upgrade Notes
- Back up the plugin directory, inspect the conversion preview, and test custom item sources, returned containers, moisture, fuels, and recipes on a staging server.
release
Emaki Cooking 4.2.0
4.2.011 авг. 2026 г.123Minecraft: 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.2, 26.2folia, paper, purpur
Что нового
### Changed
- Actions use a new syntax, and you do not have to rewrite anything yourself. On first startup CoreLib rewrites the config files of every Emaki plugin under `plugins/`, once only. Each edited file keeps the original beside it with a `.legacy-backup` suffix. A line that cannot be converted leaves your config untouched and goes into a separate `.v2-failed` file, with the file and line listed in the console.
- The seven nutrition actions are the only ones you need to rename by hand; automatic rewriting does not cover them. Underscores now separate the words:
- `emakicookingaddnutrition` → `cooking_add_nutrition`
- `emakicookingremovenutrition` → `cooking_remove_nutrition`
- `emakicookingsetnutrition` → `cooking_set_nutrition`
- `emakicookingclearnutrition` → `cooking_clear_nutrition`
- `emakicookingresetnutrition` → `cooking_reset_nutrition`
- `emakicookingrechecknutritionthreshold` → `cooking_recheck_nutrition_threshold`
- `emakicookingrunrecipereward` → `cooking_run_recipe_reward`
- Nutrition loops need editing by hand too: `loopsync`/`cancelloop` become `start_task`/`stop_task`, `%player_name%` becomes `%caster.uuid%`, `mode=replace` becomes `on_conflict=replace`, and `stop_if_offline` becomes `stop_when_offline`. The comments in the nutrition threshold section of `config.yml` already show the new format. The repeat count of `start_task` is capped by CoreLib `action.pipeline.max_repeat_times` (default `100`).
- The juicer inspect action is `right_click` in the new `config.yml`. If you keep your old config file, change `inspect` under `stations.juicer`, or the juicer block cannot be mined.
- For developers: `EmakiCookingApi.available()`, `apiVersion()`, `pluginName()` and `isReady()` are replaced by `EmakiCookingApi.status()`, which returns `ApiStatus`. `EmakiCookingApiProvider` is removed; call the static methods on `EmakiCookingApi` directly. New `nutrition()`, `catalog()` and `operations()` accessors return no-op implementations when the plugin is absent instead of throwing. `EmakiCookingApi.Bridge` is now `@ApiStatus.NonExtendable`.
### Fixed
- Stations breaking down for good after a while (chopping board, wok, grinder, juicer): a wok that finished cooking but could not be served, ingredients vanishing or being overwritten by the next ones added, a chopping board that would neither cut nor return items, a grinder with a frozen progress bar. One flaw caused all of it: a counter on the station's saved record climbed on every read, and once a save failed the station looked empty to the plugin with no way back. The counter no longer climbs and a failed save rolls back.
- The pipeline jamming when a dish moves between stations, on Folia servers. An error mid-transfer blocked that station and everything queued behind it until a restart; it now recovers on its own.
- Items being taken even when a recipe `condition` failed, on the wok and juicer. The bowl or container was removed before the condition was checked, so a failure had already cost the item and still reported success. The check now happens first, and only the `on_fail` actions run.
- Items sometimes taken at odd moments. Recipes pulling ingredients from a player's inventory retried forever when they could not find them, so items could disappear after the player walked away or swapped items. Capped at 5 attempts, then the station is released without taking anything.
- The juicer block being impossible to break while it held liquid, because inspect took over left click in survival and creative.
- A flood of error messages when serving from the juicer without a container in hand.
- Floating text and displayed items left in the world after removing a station, on all seven types, when the plugin could not read the station's contents.
### Removed
- JS scripting, including `.js` reward scripts in recipes. There is no automatic conversion, so rewrite those rewards using config actions. The bundled `scripts/examples/cooking_reward.js` sample is gone as well.
- Two config options that never did anything: `stations.juicer.drop_completed_result_on_break` and `stations.fermentation_barrel.require_sealed`. They sat in the config file but were never read, so no value ever had an effect. Delete them from your own config whenever you like.
### Notes
- Update EmakiCoreLib to `4.7.0` first.
- Back up your whole `plugins/EmakiCooking/` folder before upgrading.
- Three things need doing by hand: renaming the seven nutrition actions, rewriting JS reward scripts as config actions, and converting nutrition loops to `start_task`/`stop_task`. Everything else is rewritten for you.
- Player nutrition data and stations already placed in the world are unaffected and need no migration. The action syntax inside recipe files is rewritten automatically; the recipe structure itself has not changed.
# Emaki Cooking v4.1.0
## MineBBS 更新日志
### 【必读】升级前必须完成的两件事
- **不处理会静默清空玩家营养数据。** 营养数据键由 `values:` 改为 `nutrition:`,没有兼容旧键的回退读取,也没有提升数据版本号,因此旧的 `data/nutrition/<uuid>.yml` 会被判定为空并按各营养类型默认值重建。**升级前必须先备份 `data/nutrition/`,并把每个玩家文件中的 `values:` 段改名为 `nutrition:`**,否则所有玩家营养数据都会丢失。
- **营养动作短别名已移除。** `ecaddnutrition`、`cookingaddnutrition`、`ecremovenutrition`、`ectakenutrition`、`cookingremovenutrition`、`ecsetnutrition`、`cookingsetnutrition` 全部不再存在,只保留 `emakicookingaddnutrition`、`emakicookingremovenutrition`、`emakicookingsetnutrition`。**升级前必须检索所有配置与脚本,把短别名替换为完整的 `emakicooking*` 动作名**,否则使用短别名的动作链会报动作未注册。
### 工位数据未被破坏
- 工位状态存储主体迁移到方块 PDC,但旧的 YAML 仍会被扫描并自动归档到 `data/stations-legacy-backup/`;没有方块实体的方块继续走 YAML 回退。
- 配方文件、`stations.*` 结构与权限键均未改变。
### 破坏性变更:移除 Web Console
- 浏览器端 Web Console 层已整体移除,包含 `web-console.yml`、GUI 界面的网页扩展与配套前端项目;原先依赖该网页界面完成的运维操作需要改用配置文件或命令。
### 世界黑名单与工位占位符
- 新增全局与按工位的世界黑名单:`station.disabled_worlds: []` 与 `stations.<type>.disabled_worlds: []`。在黑名单世界中,插件不接管相关事件,保留原版方块行为。
- 新增工位占位符族 `%emakicooking_station_*%`,解析玩家最近交互的工位:`type`、`type_name`、`world`、`x`、`y`、`z`、`location`、`block`、`heat_block`、`burning`、`burning_seconds`、`heat`、`moisture`、`steam`、`input`、`input_source`、`input_amount`、`ingredient_count`、`recipe`、`recipe_id`、`progress`、`progress_target`、`progress_percent`、`completed`、`fluid`、`fluid_amount`、`player`。另有 `station_<name>_<field>` 形式用于指定某一工位类型。
- 新增公开的工位交互事件,第三方插件可以据此做联动。
### 命令、动作与预检
- 新增命令 `/ecooking station reindex`(需要 `emakicooking.admin`),用于重建工位状态索引。
- 新增 `/ecooking inspect block`(此前只有 `inspect hand`),可查看工位类型、来源、方块、方块状态、是否为方块实体、存储后端、PDC 状态、索引状态、索引后端、是否存在旧版 YAML,以及是否被世界黑名单禁用交互。
- 新增营养动作:`emakicookingclearnutrition`、`emakicookingresetnutrition`、`emakicookingrechecknutritionthreshold`、`emakicookingrunrecipereward`。
- 配置预检新增配方目录与工位状态目录提示,并按工位给出存储后端提示。
- 新增本地化工位名称与错误提示键。
### 修复
- 修复工位悬浮文本丢失原版物品译名的问题:此前文本会被拍平成旧式字符串,客户端无法本地化可翻译组件。现在保留组件结构,原版物品名按客户端语言显示。
- 修复默认 `config.yml` 中示例动作行无效、从不触发的问题:它们使用了未注册的动作 id。默认值已修正,开箱示例(砧板、炒锅、研磨机、蒸锅、烤炉、榨汁机、发酵桶的音效与粒子反馈,以及营养过量反馈)现在可以真正生效。
### 其他改进
- 插件描述文件由 `plugin.yml` 更名为 `paper-plugin.yml`,改用结构化依赖(必需 EmakiCoreLib;可选 PlaceholderAPI / CraftEngine / ItemsAdder / Nexo / Oraxen / PacketEvents / MMOItems / NeigeItems)。全部 25 个权限键及其默认值保持不变;`/ecooking`(别名 `ec`)改为代码注册,别名保留。
- 工位状态主要存放在方块 PDC 并带版本账本,配合索引恢复与完成事务恢复,崩服或强制关服后工位进度与产出更不容易丢失或重复发放。
- 消息前缀更换为新的品牌渐变样式。
- 第三方物品 / 家具接入范围保持不变。
### 升级说明
- 需要 EmakiCoreLib `4.6.0`。
- **升级前请依次完成:备份 `data/nutrition/`,把各玩家文件的 `values:` 改名为 `nutrition:`,再检索配置与脚本替换全部营养动作短别名。**
- `api-version` 由 `1.21` 提升到 `1.21.8`,构建基线由 spigot-api 改为 paper-api;`folia-supported: true` 与 Java 25 目标保持不变。
- 新增配置键 `station.disabled_worlds` 与按工位的 `disabled_worlds` 默认为空列表,即不禁用任何世界,不填写则行为不变。
- 升级后建议用 `/ecooking inspect block` 抽查若干已放置工位,确认存储与索引状态正常,并检查一次玩家营养数值是否符合预期。
## SpigotMC Update Log
[CENTER][SIZE=6][B]◆ Emaki Cooking v4.1.0 Release ◆[/B][/SIZE][/CENTER]
[CENTER]Two mandatory pre-upgrade steps for nutrition data and nutrition action aliases, plus world blacklists, station placeholders, PDC-backed station state, and removal of the Web Console.[/CENTER]
[CENTER][B]━━━━━━━━━━━━━━━━━━━━[/B][/CENTER]
[LIST]
[*]MANDATORY STEP 1 - player nutrition data will be silently reset unless you act. The nutrition data key changed from values: to nutrition: with no fallback read and no schema version bump, so old data/nutrition/<uuid>.yml files are treated as empty and rebuilt from per-type defaults. Back up data/nutrition/ and rename the values: section to nutrition: in each player file before upgrading, otherwise all player nutrition is lost.
[*]MANDATORY STEP 2 - short nutrition action aliases are removed. ecaddnutrition, cookingaddnutrition, ecremovenutrition, ectakenutrition, cookingremovenutrition, ecsetnutrition, and cookingsetnutrition are gone; only emakicookingaddnutrition, emakicookingremovenutrition, and emakicookingsetnutrition remain. Any action chain using a short alias will report an unregistered action, so search your configs and scripts and replace them with the full emakicooking* names.
[*]Station state data is NOT broken: primary storage moved to block PDC, but legacy YAML is still scanned and automatically archived to data/stations-legacy-backup/, and blocks without a tile state fall back to YAML. Recipe files, the stations.* structure, and permission keys are unchanged.
[*]Breaking: the browser-based Web Console layer is removed, including web-console.yml, the GUI surface web extension, and the web-console frontend project.
[*]New world blacklists, global and per station: station.disabled_worlds: [] plus stations.<type>.disabled_worlds: []. In a blacklisted world the plugin does not take over events and vanilla block behavior is preserved.
[*]New station placeholder family %emakicooking_station_*% resolving the player's most recent interacted station: type, type_name, world, x, y, z, location, block, heat_block, burning, burning_seconds, heat, moisture, steam, input, input_source, input_amount, ingredient_count, recipe, recipe_id, progress, progress_target, progress_percent, completed, fluid, fluid_amount, player. A station_<name>_<field> form also exists to target a specific station type.
[*]New public station interaction event so third-party plugins can react to station interactions.
[*]New command /ecooking station reindex (requires emakicooking.admin) to rebuild the station state index.
[*]New /ecooking inspect block, reporting station type, source, block, block state, whether it is a tile state, storage backend, PDC state, index state, index backend, whether legacy YAML exists, and whether interaction is disabled by the world blacklist.
[*]New nutrition actions: emakicookingclearnutrition, emakicookingresetnutrition, emakicookingrechecknutritionthreshold, emakicookingrunrecipereward.
[*]Config precheck adds recipe-directory and station-state-directory messages, plus storage backend hints per station, and new localized station names and error keys are included.
[*]Fixed station floating text losing vanilla item translation names: the text was flattened to a legacy string so translatable components could not be localized by the client. Components are now preserved and vanilla item names render in the client's own language.
[*]Fixed the sample action lines in the default config.yml being invalid and never firing because they used unregistered ids. The defaults are corrected, so the out-of-the-box examples work: chopping board, wok, grinder, steamer, oven, juicer, fermentation barrel sound and particle feedback, and nutrition overeating feedback.
[*]Descriptor renamed from plugin.yml to paper-plugin.yml with structured dependencies (EmakiCoreLib required; PlaceholderAPI / CraftEngine / ItemsAdder / Nexo / Oraxen / PacketEvents / MMOItems / NeigeItems optional). All 25 permission keys and their defaults are unchanged, and /ecooking (alias ec) registers in code with the alias preserved.
[*]Station state now primarily lives in block PDC with a version ledger, plus index recovery and completion transaction recovery, so station progress and output are less likely to be lost or double-granted after a crash or hard shutdown.
[*]Message prefix switched to a new brand gradient, and the third-party item/furniture integration set is unchanged.
[*]Requires EmakiCoreLib 4.6.0. api-version moves from 1.21 to 1.21.8 and the build base moves from spigot-api to paper-api; folia-supported: true and the Java 25 target are unchanged.
[*]The new config keys station.disabled_worlds and the per-station disabled_worlds default to empty lists, meaning nothing is disabled, so leaving them out changes nothing.
[/LIST]
## Modrinth Changelog
### Added
- World blacklists, global and per station: `station.disabled_worlds: []` plus `stations.<type>.disabled_worlds: []`. In a blacklisted world the plugin does not take over events and vanilla block behavior is preserved.
- Station placeholder family `%emakicooking_station_*%` resolving the player's most recent interacted station: `type`, `type_name`, `world`, `x`, `y`, `z`, `location`, `block`, `heat_block`, `burning`, `burning_seconds`, `heat`, `moisture`, `steam`, `input`, `input_source`, `input_amount`, `ingredient_count`, `recipe`, `recipe_id`, `progress`, `progress_target`, `progress_percent`, `completed`, `fluid`, `fluid_amount`, `player`. A `station_<name>_<field>` form also exists to target a specific station type.
- Public station interaction event so third-party plugins can react to station interactions.
- New command `/ecooking station reindex` (requires `emakicooking.admin`) to rebuild the station state index.
- `/ecooking inspect block` (previously only `inspect hand`), reporting station type, source, block, block state, whether it is a tile state, storage backend, PDC state, index state, index backend, whether legacy YAML exists, and whether interaction is disabled by the world blacklist.
- New nutrition actions: `emakicookingclearnutrition`, `emakicookingresetnutrition`, `emakicookingrechecknutritionthreshold`, `emakicookingrunrecipereward`.
- Config precheck messages for the recipe directory and station state directory, plus storage backend hints per station.
- New localized station names and error keys.
### Changed
- Descriptor renamed from `plugin.yml` to `paper-plugin.yml` with structured dependencies (EmakiCoreLib required; PlaceholderAPI / CraftEngine / ItemsAdder / Nexo / Oraxen / PacketEvents / MMOItems / NeigeItems optional). All 25 permission keys and their defaults are unchanged; `/ecooking` (alias `ec`) registers in code with the alias preserved.
- Station state now primarily lives in block PDC with a version ledger, plus index recovery and completion transaction recovery, so station progress and output are less likely to be lost or double-granted after a crash or hard shutdown. Legacy YAML is still scanned and automatically archived to `data/stations-legacy-backup/`, and blocks without a tile state fall back to YAML.
- Message prefix switched to a new brand gradient.
- The third-party item/furniture integration set is unchanged.
- `api-version` raised from `1.21` to `1.21.8` and the build base moved from spigot-api to paper-api; `folia-supported: true` and the Java 25 target are unchanged.
### Fixed
- Station floating text lost vanilla item translation names: the text was flattened to a legacy string, so translatable components could not be localized by the client. Components are now preserved and vanilla item names render in the client's own language.
- The sample action lines in the default `config.yml` were invalid and never fired because they used ids that were not registered. The defaults are corrected, so the out-of-the-box examples now work: chopping board, wok, grinder, steamer, oven, juicer, fermentation barrel sound and particle feedback, and nutrition overeating feedback.
### Removed
- **Player nutrition data will be silently reset unless you act first.** The nutrition data key changed from `values:` to `nutrition:` with no fallback read and no schema version bump, so old `data/nutrition/<uuid>.yml` files are treated as empty and rebuilt from per-type defaults. Back up `data/nutrition/` and rename the `values:` section to `nutrition:` in each player file before upgrading, otherwise all player nutrition is lost.
- **Short nutrition action aliases are removed.** `ecaddnutrition`, `cookingaddnutrition`, `ecremovenutrition`, `ectakenutrition`, `cookingremovenutrition`, `ecsetnutrition`, and `cookingsetnutrition` are gone; only `emakicookingaddnutrition`, `emakicookingremovenutrition`, and `emakicookingsetnutrition` remain. Any action chain using a short alias will report an unregistered action, so search your configs and scripts and replace them with the full `emakicooking*` names.
- The browser-based Web Console layer, including `web-console.yml`, the GUI surface web extension, and the `web-console/` frontend project.
### Notes
- Requires EmakiCoreLib 4.6.0.
- Before upgrading, in order: back up `data/nutrition/`, rename `values:` to `nutrition:` in each player nutrition file, then search configs and scripts and replace every short nutrition action alias with its full `emakicooking*` name.
- Station state data is not broken: recipe files, the `stations.*` structure, and permission keys are unchanged. The new config keys `station.disabled_worlds` and the per-station `disabled_worlds` default to empty lists, meaning nothing is disabled, so leaving them out changes nothing. After upgrading, spot-check a few placed stations with `/ecooking inspect block` and verify player nutrition values look correct.
release
Emaki Cooking 4.1.0
4.1.027 июл. 2026 г.118Minecraft: 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.2, 26.2folia, paper, purpur
Что нового
### Added
- World blacklists, global and per station: `station.disabled_worlds: []` plus `stations.<type>.disabled_worlds: []`. In a blacklisted world the plugin does not take over events and vanilla block behavior is preserved.
- Station placeholder family `%emakicooking_station_*%` resolving the player's most recent interacted station: `type`, `type_name`, `world`, `x`, `y`, `z`, `location`, `block`, `heat_block`, `burning`, `burning_seconds`, `heat`, `moisture`, `steam`, `input`, `input_source`, `input_amount`, `ingredient_count`, `recipe`, `recipe_id`, `progress`, `progress_target`, `progress_percent`, `completed`, `fluid`, `fluid_amount`, `player`. A `station_<name>_<field>` form also exists to target a specific station type.
- Public station interaction event so third-party plugins can react to station interactions.
- New command `/ecooking station reindex` (requires `emakicooking.admin`) to rebuild the station state index.
- `/ecooking inspect block` (previously only `inspect hand`), reporting station type, source, block, block state, whether it is a tile state, storage backend, PDC state, index state, index backend, whether legacy YAML exists, and whether interaction is disabled by the world blacklist.
- New nutrition actions: `emakicookingclearnutrition`, `emakicookingresetnutrition`, `emakicookingrechecknutritionthreshold`, `emakicookingrunrecipereward`.
- Config precheck messages for the recipe directory and station state directory, plus storage backend hints per station.
- New localized station names and error keys.
### Changed
- Descriptor renamed from `plugin.yml` to `paper-plugin.yml` with structured dependencies (EmakiCoreLib required; PlaceholderAPI / CraftEngine / ItemsAdder / Nexo / Oraxen / PacketEvents / MMOItems / NeigeItems optional). All 25 permission keys and their defaults are unchanged; `/ecooking` (alias `ec`) registers in code with the alias preserved.
- Station state now primarily lives in block PDC with a version ledger, plus index recovery and completion transaction recovery, so station progress and output are less likely to be lost or double-granted after a crash or hard shutdown. Legacy YAML is still scanned and automatically archived to `data/stations-legacy-backup/`, and blocks without a tile state fall back to YAML.
- Message prefix switched to a new brand gradient.
- The third-party item/furniture integration set is unchanged.
- `api-version` raised from `1.21` to `1.21.8` and the build base moved from spigot-api to paper-api; `folia-supported: true` and the Java 25 target are unchanged.
### Fixed
- Station floating text lost vanilla item translation names: the text was flattened to a legacy string, so translatable components could not be localized by the client. Components are now preserved and vanilla item names render in the client's own language.
- The sample action lines in the default `config.yml` were invalid and never fired because they used ids that were not registered. The defaults are corrected, so the out-of-the-box examples now work: chopping board, wok, grinder, steamer, oven, juicer, fermentation barrel sound and particle feedback, and nutrition overeating feedback.
### Removed
- **Player nutrition data will be silently reset unless you act first.** The nutrition data key changed from `values:` to `nutrition:` with no fallback read and no schema version bump, so old `data/nutrition/<uuid>.yml` files are treated as empty and rebuilt from per-type defaults. Back up `data/nutrition/` and rename the `values:` section to `nutrition:` in each player file before upgrading, otherwise all player nutrition is lost.
- **Short nutrition action aliases are removed.** `ecaddnutrition`, `cookingaddnutrition`, `ecremovenutrition`, `ectakenutrition`, `cookingremovenutrition`, `ecsetnutrition`, and `cookingsetnutrition` are gone; only `emakicookingaddnutrition`, `emakicookingremovenutrition`, and `emakicookingsetnutrition` remain. Any action chain using a short alias will report an unregistered action, so search your configs and scripts and replace them with the full `emakicooking*` names.
- The browser-based Web Console layer, including `web-console.yml`, the GUI surface web extension, and the `web-console/` frontend project.
### Notes
- Requires EmakiCoreLib 4.6.0.
- Before upgrading, in order: back up `data/nutrition/`, rename `values:` to `nutrition:` in each player nutrition file, then search configs and scripts and replace every short nutrition action alias with its full `emakicooking*` name.
- Station state data is not broken: recipe files, the `stations.*` structure, and permission keys are unchanged. The new config keys `station.disabled_worlds` and the per-station `disabled_worlds` default to empty lists, meaning nothing is disabled, so leaving them out changes nothing. After upgrading, spot-check a few placed stations with `/ecooking inspect block` and verify player nutrition values look correct.
release
Emaki Cooking 4.0.0
4.0.014 июл. 2026 г.78Minecraft: 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.2, 26.2folia, paper, purpur
Что нового
### Added
- Recent-station placeholders and a public station interaction event.
- Nutrition reset, nutrition threshold recheck, and recipe reward actions.
- PDC-first station storage for block-entity stations, with YAML fallback where needed.
- Manifest v2 Web Console integration for Cooking configs and GUI editing.
### Fixed / Improved
- Fixed vanilla item names in station text displays being flattened to server-side English.
- Improved station restore flow through coordinate indexes plus PDC/YAML state reads.
- Improved `/ecooking inspect` and storage precheck details.
- Command suggestions now appear after `/ecooking `.
### Notes
- Update with the matching CoreLib release.
- Requires Paper-family 1.21.8+ behavior.
- `.idx` coordinate indexes are still used for fast station restore lookup; they are not the main block-entity state body.
- Breaking: Action aliases were removed; use canonical action IDs.
- Back up Cooking data before updating.
release
Emaki Cooking 3.4.0
3.4.029 июн. 2026 г.94Minecraft: 1.21.8, 1.21.9, 1.21.10, 1.21.11folia, paper, purpur, spigot
Что нового
### Added
- Nutrition (diet-style) system, enabled by default: customizable nutrition types, food sources, and edge-triggered single/combo thresholds.
- Nutrition gain via vanilla, CraftEngine, ItemsAdder, Nexo, Oraxen foods, plus MMOItems and NeigeItems consumables.
- Nutrition actions, `/ecooking nutrition` command, new permissions, and PlaceholderAPI placeholders; nutrition is persisted (configurable save interval).
- Oraxen support for cooking station blocks and furniture.
- Public events: `PlayerNutritionConsumeEvent` (cancellable), `NutritionThresholdChangeEvent`, `CookingRecipeCompleteEvent` (cancellable, result-editable).
- JavaScript extensions for cooking result rules and completion hooks via `emaki.module("cooking")`.
- Config precheck on startup and reload.
### Fixed
- Fixed potential lag when closing cooking station containers on Folia.
### Notes
- Breaking: recipe conditions only read `availability_condition`; migrate legacy root-level condition fields.
- Nutrition adds optional softdepends (Oraxen, MMOItems + MythicLib, NeigeItems); missing ones are skipped.
- Nutrition is on by default; disable via `nutrition.enabled`.
release
Emaki Cooking 3.3.0
3.3.016 июн. 2026 г.51Minecraft: 1.21.8, 1.21.9, 1.21.10, 1.21.11folia, paper, purpur, spigot
Что нового
### Added
- Cooking script module access through `emaki.module("cooking")`.
- `result.<branch>.outputs/actions` recipe result structure.
- `input.amount` for chopping board recipes.
- Updated Web Console registration.
### Fixed
- Fixed unclear chopping board amount semantics.
- Fixed custom block station matching consistency.
- Fixed legacy result output/action field confusion.
- Fixed Cooking GUI editor old slot fields.
### Refactored
- Static facade + Bridge API model.
- Recipe result parsing.
- Station interaction and runtime item handling.
### Improved
- Better default recipes.
- Better item return/drop handling.
- Better Web Console editing for Cooking configs.
release
Emaki Cooking 3.2.0
3.2.05 июн. 2026 г.97Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11folia, paper, purpur, spigot
Что нового
Cooking v3.2.0 is a cleanup and integration update. It keeps Cooking aligned with the new CoreLib script and runtime model.
### Highlights
- Cooking script module access through `emaki.module("cooking")`.
- Cooking-owned script examples.
### Improved
- Better shared item source display behavior through CoreLib.
- CoreLib-aligned bStats, runtime dependency handling, and versioned resource notices.
release
Emaki Cooking 3.1.0
3.1.02 июн. 2026 г.28Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11folia, paper, purpur, spigot
Что нового
# EmakiCooking v3.1.0
> Workstation text displays, wok stir-fry animation, configurable effects, and Web console support.
---
### ✨ New Features
#### Workstation Text Display
Cooking stations now support floating text displays above them, providing clear visual feedback on the current processing status. Choose between Bukkit and PacketEvents display backends depending on your server setup.
#### Wok Stir-fry Animation
The wok station now features a stir-fry animation effect, adding visual flair to the cooking process.
#### Station Effect System
A new configurable particle and sound effect system lets you add custom visual and audio feedback during station operation.
#### Cooking Animation Improvements
Cooking animations have been optimized to support arbitrary rotation angles, removing the previous fixed-direction limitation.
#### Recipe Completion Conditions
Cooking recipes now support the core library's recipe completion condition system, enabling post-completion logic and actions.
#### Web Console Integration
EmakiCooking is now accessible through the built-in Web management console, allowing you to edit recipes and configurations directly in your browser.
### 🐛 Bug Fixes
- Fixed ingredient source resolution during recipe matching, which could cause incorrect ingredient consumption.
- Fixed wok failure output using incorrect item source format.
### ♻️ Improvements
- All station GUI interfaces have been optimized and updated.
- Example recipe files have been improved for better clarity and ease of use.
- Language files have been significantly expanded with translations for all new features.
release
Emaki Cooking 3.0.0
3.0.011 мая 2026 г.75Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11paper, purpur, spigot
Что нового
## EmakiCooking 3.0.0 Release
This release adds three new cooking stations (Oven, Juicer, Fermentation Barrel), a virtual display entity system, and heat source ignition, significantly expanding cooking gameplay.
### New Features
- **Oven**: Temperature-sensitive cooking station. Players control heat by adding fuel; supports perfect bake, normal bake, and burnt results based on temperature management.
- **Juicer**: Press-based cooking station. Players press multiple times to extract fluid (measured in ml), then collect with a container. Supports fluid mode and direct output mode.
- **Fermentation Barrel**: Long-duration fermentation station. Supports early collection (partial product), normal completion, and over-fermentation (spoiled product). Progress persists across server restarts.
- **Display Entity System**: Cooking stations show floating item display entities above them. Three backends: `auto`, `packet_events` (virtual entities, no entity ID usage, better performance), `bukkit` (real ItemDisplay). Configurable view distance and refresh interval.
- **Heat Source Ignition**: Wok and steamer support `ignite_heat_source` to automatically light/extinguish heat source blocks when ingredients are added/removed. Works with CraftEngine, ItemsAdder, and Nexo custom blocks.
- **PAPI Placeholders**: `%emakicooking_recipe_count%` (total recipes) and `%emakicooking_recipe_count_<station>%` (per-station count).
### Improvements
- Config and language files auto-merge new keys on upgrade.
- Fermentation barrel state uses dirty-flag batch persistence to reduce disk IO.
- All stations auto-drop contents when the block is broken.
### Breaking Changes
- Station block sources changed from single `block_source` to list `block_item_sources`.
- Tool/spatula/heat source fields unified to `*_item_sources` list format.
- Steamer moisture rules renamed from `moisture_sources` to `moisture_rules` with updated sub-fields.
- All recipe `input.source` → `input.item_sources` (list), `result.output.source` → `result.output.item_sources` (list).
- Old built-in recipes removed; each station directory now has `example_recipe.yml`.
### Upgrade Notes
- New station GUI templates and recipe directories are auto-created.
- PacketEvents display backend requires Minecraft 1.19.4+; auto-falls back to Bukkit on older versions.
- Config version updated to `4.0.0` with new station and `display_entities` configuration sections.
- Existing recipes must migrate `source` fields to `item_sources` list format — refer to each station's `example_recipe.yml`.
[View Full Documentation](https://jiuwu02.github.io/Emaki_Series/) | [Join Discord Community](https://discord.gg/FV4GFQbvCM) | [QQ Group](https://qm.qq.com/q/GqGrzHp0wU)
release
Emaki Cooking 2.3.0
2.3.04 мая 2026 г.33Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11paper, purpur, spigot
Что нового
## EmakiCooking 2.3.0 Release
This release overhauls cooking station interactions and adds PlaceholderAPI support.
- Added unified station interaction handling for left/right/shift clicks.
- Added configurable interaction behavior for cooking stations.
- Improved wok, chopping board, steamer, and grinder runtime flows.
- Added `StoredItemCodec` for safer stored item serialization.
- Improved recipe, item source, numeric, and default value parsing.
- Added PlaceholderAPI as a soft dependency.
- Removed deprecated conversion and cleanup language entries.
### Upgrade Notes
- Review the new `config.yml` interaction settings.
- Retest custom stations and recipes after updating.
[View Full Documentation](https://jiuwu02.github.io/Emaki_Series/) | [Join Discord Community](https://discord.gg/FV4GFQbvCM) | [QQ Group](https://qm.qq.com/q/GqGrzHp0wU)






