
EmakiForge | Blueprint Forging
Blueprint-driven forging where material combinations decide stats and quality rolls with a pity counter.
Автор: JiuWu6212обновлён 31 авг. 2026 г.
СнаряжениеМеханики игрыМини-игры
Описание
Последние версии
Все версии →release
Emaki Forge 4.8.0
4.8.031 авг. 2026 г.59Minecraft: 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.2, 26.2folia, paper, purpur
Что нового
### Added
- Legacy material and blueprint conversion command with preview, backups, conflict reporting, and explicit apply modes.
### Changed
- Forge material and blueprint eligibility now uses CoreLib matchers while `item_sources` remains available for counting, construction, display, and audit identity.
### Breaking Changes
- Migrate custom eligibility rules to matchers without removing item-source fields that still serve non-eligibility duties.
### Upgrade Notes
- Back up the plugin directory, inspect the conversion preview, and stage-test every blueprint, material, capacity, quality, and failure-return path.
release
Emaki Forge 4.7.0
4.7.011 авг. 2026 г.35Minecraft: 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.2, 26.2folia, paper, purpur
Что нового
### Added
- The forge capacity slot lists what the recipe wants and how much you have placed. A new `%blueprint_requirements%` placeholder goes in the `capacity_display` slot lore of `gui/forge_gui.yml`, one material per line, a tick when the amount is met and a cross when it is not, followed by placed/required. The count is what sits in the forge GUI, not what is in the player's inventory.
- Per-recipe grouping for that list when one blueprint is shared by several recipes: a header per recipe, at most 3 groups, and the rest collapsed into a single "N more recipes" line. The lists are deliberately not merged, because a recipe wanting iron and another wanting gold would both show as missing when satisfying either is enough. The same slot can also read `%recipe_count%`.
- Editable wording for the checklist under `gui.blueprint.*`: `no_recipe`, `recipe_group_header`, `requirement_satisfied`, `requirement_missing`, `more_recipes`.
- Multi-line lore expansion: a lore line holding nothing but one placeholder expands into as many lines as the value has entries. Keep `%blueprint_requirements%` on a line of its own.
- A `gui_template` key on recipes, naming a template file under `gui/` without the `.yml`, so a recipe can open with its own forge GUI. Left out, `forge_gui` is used as before.
- `console.config_precheck_issue_warn` and `console.config_precheck_issue_error` message keys, used to colour precheck problem lines by severity.
### Changed
- Actions use a new syntax, and most of it is rewritten for you. 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 three forge refresh actions are the only ones you need to rename by hand; automatic rewriting does not cover them. Drop the leading `emaki`:
- `emakiforge_refresh_held` → `forge_refresh_held`
- `emakiforge_refresh_player` → `forge_refresh_player`
- `emakiforge_refresh_all` → `forge_refresh_all`
- Forge's own variables need a `var.` prefix wherever recipes or `config.yml` use them, for example `%forge_result_item_name%` → `%var.forge_result_item_name%` and `%forge_failure_reason%` → `%var.forge_failure_reason%`. The old inline token `<show_item>` in the quality broadcast becomes `%var.forge_show_item%`, already applied in the new `config.yml`. GUI text and player placeholders such as `%player%` are unaffected.
- Action names gain their underscores automatically: `sendmessage` → `send_message`, `playsound` → `play_sound`, `broadcastmessage` → `broadcast_message`. The bundled `recipes/example_recipe.yml` shows the converted form.
- Console errors for an action line that failed to compile state the problem, its position in the line and the likely intended value, instead of an internal code. The file, recipe id, phase and line index still follow, and the wording comes from the language file.
- Config precheck problem lines are coloured by severity across the whole line: red for error and fatal, yellow for warn, grey for info as before. Older language files missing the two new keys fall back to the previous template rather than printing bare keys.
- Six startup and reload console lines changed from white to grey for consistency with the other Emaki plugins.
- For developers: `EmakiForgeApiProvider` is removed, and `available()`, `apiVersion()`, `pluginName()` and `isReady()` are replaced by `EmakiForgeApi.status()` returning `ApiStatus`. New `catalog()` (`recipes`, `recipe`, `materialById`, `materialByItem`, `matchRecipe`, `validate`, `previewResult`, `mastery`, `accepting`), `operations()` (`forgeAsync`, `openForgeGui`, `openRecipeBook`, `viewingRecipeBook`, `refreshItem`, `refreshPlayer`) and `extensions()` (reserved, currently empty) accessors return degraded implementations when the plugin is absent instead of throwing. Return values are unified as `EmakiResult`, with `FailureKind` separating a disabled subsystem from a missing plugin. New model types: `ForgeInputs`, `ForgeOutcome`, `ForgeRecipeView`, `ForgeMaterialView`, `ForgeBlueprintView`, `ForgeValidation`. `ForgeStartEvent` and `ForgeCompletedEvent` document their thread semantics. `EmakiForgeApi.Bridge` and `ForgeExtensions` are `@ApiStatus.NonExtendable`. This is a breaking API release with no legacy signatures or transitional compatibility.
### Removed
- JS scripting, including the forge success-rate rules and result hooks it provided. There is no automatic conversion, but both have config equivalents: `success_rate` and `failure_outcomes` for the odds, and the `pre` / `success` / `failure` lists under a recipe's `actions` section plus `result.success.actions` for rewards. The bundled `scripts/examples/forge_success.js` sample is gone as well.
- The old `emakiforge_`-prefixed action names and the bare-variable placeholder form; neither is kept as an alias.
### Notes
- Update EmakiCoreLib to `4.7.0` first.
- Back up your whole `plugins/EmakiForge/` folder before upgrading, especially `recipes/` and `gui/`.
- Three things need doing by hand: renaming the three refresh actions, adding the `var.` prefix to Forge variables, and rewriting JS success-rate or reward scripts as recipe config. Everything else is rewritten for you.
- Showing the material checklist requires adding a `%blueprint_requirements%` line to the `capacity_display` slot lore in `gui/forge_gui.yml`. An older GUI file still forges fine, it just shows no checklist.
- Recipe structure, blueprints and player forge mastery data are unchanged and need no migration.
- After updating, run `/emakiforge reload` and `/emakiforge debug stats` to confirm the registered recipe count matches expectations, then open the forge GUI and check the checklist.
# Emaki Forge v4.6.0
## MineBBS 更新日志
### 破坏性变更与必要迁移
- 【破坏性】配方 `result` 结构调整且不再兼容旧格式:原 `result.item_sources`、`result.meta_actions.name_actions`、`result.meta_actions.lore_actions`、`result.actions` 需改写为 `result.success.outputs[].item_sources` 以及 `result.success.name_actions`、`result.success.lore_actions`、`result.success.actions`。插件只读取 `success`;缺失时该配方不会报错,但也不会产出任何物品,所有自定义配方必须迁移。
- 【破坏性】GUI 槽位物品结构改为嵌套组件:原 `item: "<MATERIAL>"` 搭配 `display_name`、`lore`、`hidden_components: [tooltip]`,现改为 `item.source` 搭配 `item.components.custom_name`、`item.components.lore`、`item.components.tooltip_display.hide_tooltip`。所有自定义 `gui/*.yml` 必须迁移。
- 【破坏性】插件描述文件从 `plugin.yml` 迁移到 `paper-plugin.yml`,其中的 `commands:` 段已移除(命令改为运行时注册)。不再支持纯 Spigot,必须使用 Paper 或 Paper 分支。
- 【移除】浏览器端 Web Console 层整体移除:`web-console.yml`、`web-extensions/` 以及 `web-console/` 前端项目。此前通过浏览器修改配置的服主需要直接编辑 YAML。
- 【移除】管理端配方编辑器模板 `gui/editor_gui.yml` 已删除,它唯一的入口就是被移除的网页编辑器。
### 新增功能
- 新增三个可配置动作,可用于任意动作链:`emakiforge_refresh_held`、`emakiforge_refresh_player`、`emakiforge_refresh_all`。
- 新增 `/emakiforge debug stats`(别名 `status`),输出运行时与配方加载报告:generation、文件数/解析数/跳过数/注册数/重复数、问题与警告、耗时、来源状态。
- 配置预检与配方加载诊断(目录创建失败、id 为空、id 重复、加载失败)现已可本地化;玩家可见的运行时状态提示(重载中、无可用配方、加载失败、能力缺失、索引未就绪、已关闭、会话过期)同样可本地化。
- 新增对 EmakiItem 的可选软依赖;未安装该插件时,EmakiAttribute 对接会降级运行,不再直接失败。
### 重载与结算可靠性
- 重载改为原子操作:候选运行时在后台构建,只有在不存在阻断性问题时才整体安装。失败时继续由原运行时提供服务;被后续重载取代的重载会被报告为已过期。
- 重载汇总数字改为取自本次重载自身的结果,并发重载不会再报出混合的计数。
- 锻造结算加入明确的提交边界,已过期的完成流程不会二次返还已消耗的输入。
- 配方书绑定打开时取得的运行时快照,重载期间翻页不会混用不同 generation 的数据。
- GUI 模板由独立加载器读取,并纳入重载候选校验。
- 消息前缀更换为新的品牌渐变配色。
### 修复
- `/emakiforge reload` 此前无条件回报成功并吞掉失败,现在会回报失败并附带详情(`general.reload_fail` 消息键此前存在但从未被发送)。
- 重载回复改为在发送者自身的执行域上送达,这是 Folia 上的正确行为所必需的。
### 运行环境与兼容性
- `api-version` 由 `1.21` 提升到 `1.21.8`,仅支持 1.21.8 及以上版本。
- 构建基座由 spigot-api 改为 paper-api,使用本插件 API 的开发者需要同步切换编译基座。
- Java 目标版本仍为 25,`folia-supported: true` 保持不变,权限集保持不变(use/book/reload/debug/admin)。
- 移除了跨插件的强制 API 版本门禁,混用小版本略有差异的 Emaki 插件不再在启动阶段被阻止。
### 升级说明
- 需要 EmakiCoreLib `4.6.0`。
- 升级前请备份 `recipes/` 与 `gui/` 目录,并按上述结构迁移全部自定义配方与 GUI 模板。
- 升级后建议执行一次 `/emakiforge reload` 与 `/emakiforge debug stats`,确认配方注册数量与预期一致,再验证锻造 GUI 和配方书流程。
## SpigotMC Update Log
[CENTER][SIZE=6][B]◆ Emaki Forge v4.6.0 Release ◆[/B][/SIZE][/CENTER]
[CENTER]New recipe result and GUI item structures, atomic reloads, a debug stats report, and a Paper-only 1.21.8+ baseline.[/CENTER]
[CENTER][B]━━━━━━━━━━━━━━━━━━━━[/B][/CENTER]
[LIST]
[*]Breaking: recipe results move to result.success.outputs[].item_sources and result.success.name_actions / lore_actions / actions. Only success is read; a recipe without it silently produces nothing, so every custom recipe must be migrated.
[*]Breaking: GUI slot items move to nested components - item.source plus item.components.custom_name, item.components.lore, and item.components.tooltip_display.hide_tooltip. Every custom gui/*.yml must be migrated.
[*]Breaking: the descriptor moved from plugin.yml to paper-plugin.yml and its commands section is gone; commands register at runtime and plain Spigot is no longer supported.
[*]Removed: the browser-based Web Console layer (web-console.yml, web-extensions/, the web-console/ frontend project). Edit YAML directly instead.
[*]Removed: gui/editor_gui.yml, the admin recipe-editor template, whose only entry point was the removed web editor.
[*]Added three action-chain actions: emakiforge_refresh_held, emakiforge_refresh_player, emakiforge_refresh_all.
[*]Added /emakiforge debug stats (alias status) reporting generation, files, parsed, skipped, registered, duplicates, issues, warnings, elapsed time, and source state.
[*]Config precheck, recipe-load diagnostics, and player-facing runtime state messages are now localizable.
[*]Added an optional soft dependency on EmakiItem; the EmakiAttribute integration now degrades gracefully when that plugin is absent.
[*]Reload is atomic: a candidate runtime is built in the background and installed only when no blocking problems exist, a failed reload keeps the previous runtime serving, and a superseded reload is reported as stale.
[*]Reload summary numbers come from that reload's own result, so concurrent reloads no longer report mixed counts.
[*]Forge settlement has an explicit commit boundary, so a stale completion cannot return already-consumed inputs twice.
[*]The recipe book binds to the runtime snapshot taken when it was opened, and GUI templates now take part in reload candidate validation.
[*]Fixed /emakiforge reload always reporting success and swallowing failures; it now reports failure with detail.
[*]Fixed reload replies so they are delivered on the sender's own execution domain, which is required for correctness on Folia.
[*]api-version raised from 1.21 to 1.21.8 and the build base moved from spigot-api to paper-api. Java target stays 25, folia-supported stays true, and the permission set is unchanged.
[*]Cross-plugin hard API version gating was removed, so mixing slightly different Emaki minor versions is no longer blocked at startup.
[*]Requires EmakiCoreLib 4.6.0. Back up recipes/ and gui/ before updating.
[/LIST]
## Modrinth Changelog
### Added
- Three action-chain actions: `emakiforge_refresh_held`, `emakiforge_refresh_player`, `emakiforge_refresh_all`.
- `/emakiforge debug stats` (alias `status`) reporting generation, files, parsed, skipped, registered, duplicates, issues, warnings, elapsed time, and source state.
- Localizable config precheck and recipe-load diagnostics (directory creation failure, blank id, duplicate id, load failure) plus localizable player-facing runtime state messages (reloading, no recipes, load failed, capability missing, index not ready, closed, session expired).
- Optional soft dependency on EmakiItem, so the EmakiAttribute integration degrades gracefully when that plugin is absent instead of hard-failing.
### Changed
- Reload is atomic: a candidate runtime is built in the background and installed only when no blocking problems exist. A failed reload keeps the previous runtime serving, and a superseded reload is reported as stale.
- Reload summary numbers come from that reload's own result, so concurrent reloads no longer report mixed counts.
- Forge settlement has an explicit commit boundary, so a stale completion no longer returns already-consumed inputs a second time.
- The recipe book binds to the runtime snapshot taken when it was opened, so paging during a reload cannot mix generations.
- GUI templates are loaded by their own loader and participate in reload candidate validation.
- Message prefix switched to a new brand gradient.
- `api-version` raised from `1.21` to `1.21.8`; only 1.21.8+ is supported. The build base moved from spigot-api to paper-api, so API consumers must switch their compile base. Java target stays 25, `folia-supported: true` and the permission set (use/book/reload/debug/admin) are unchanged.
- Cross-plugin hard API version gating was removed, so mixing slightly different Emaki minor versions is no longer blocked at startup.
### Fixed
- `/emakiforge reload` used to report success unconditionally and swallow failures; it now reports failure with detail (the `general.reload_fail` message key existed but was never sent).
- Reload replies are delivered on the sender's own execution domain, which is required for correctness on Folia.
### Removed
- The browser-based Web Console layer (`web-console.yml`, `web-extensions/`, the `web-console/` frontend project). Owners who edited config through the browser must edit YAML directly.
- `gui/editor_gui.yml`, the admin recipe-editor template, whose only entry point was the removed web editor.
- Backward compatibility for the old recipe `result` structure: `result.item_sources`, `result.meta_actions.name_actions`, `result.meta_actions.lore_actions` and `result.actions` become `result.success.outputs[].item_sources` and `result.success.name_actions` / `lore_actions` / `actions`. Only `success` is read; if it is missing the recipe silently produces nothing, so all custom recipes must be migrated.
- The flat GUI slot item structure: `item: "<MATERIAL>"` with `display_name`, `lore` and `hidden_components: [tooltip]` becomes `item.source` with `item.components.custom_name`, `item.components.lore` and `item.components.tooltip_display.hide_tooltip`. All custom `gui/*.yml` must be migrated.
- The `commands:` section, as the descriptor moved from `plugin.yml` to `paper-plugin.yml` and commands register at runtime. Plain Spigot is no longer supported; Paper or a Paper fork is required.
### Notes
- Requires EmakiCoreLib 4.6.0.
- Back up `recipes/` and `gui/` before updating, then migrate all custom recipes and GUI templates to the structures above.
- After updating, run `/emakiforge reload` and `/emakiforge debug stats` to confirm the registered recipe count matches expectations, then verify the forge GUI and recipe book.
release
Emaki Forge 4.6.0
4.6.027 июл. 2026 г.35Minecraft: 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.2, 26.2folia, paper, purpur
Что нового
### Added
- Three action-chain actions: `emakiforge_refresh_held`, `emakiforge_refresh_player`, `emakiforge_refresh_all`.
- `/emakiforge debug stats` (alias `status`) reporting generation, files, parsed, skipped, registered, duplicates, issues, warnings, elapsed time, and source state.
- Localizable config precheck and recipe-load diagnostics (directory creation failure, blank id, duplicate id, load failure) plus localizable player-facing runtime state messages (reloading, no recipes, load failed, capability missing, index not ready, closed, session expired).
- Optional soft dependency on EmakiItem, so the EmakiAttribute integration degrades gracefully when that plugin is absent instead of hard-failing.
### Changed
- Reload is atomic: a candidate runtime is built in the background and installed only when no blocking problems exist. A failed reload keeps the previous runtime serving, and a superseded reload is reported as stale.
- Reload summary numbers come from that reload's own result, so concurrent reloads no longer report mixed counts.
- Forge settlement has an explicit commit boundary, so a stale completion no longer returns already-consumed inputs a second time.
- The recipe book binds to the runtime snapshot taken when it was opened, so paging during a reload cannot mix generations.
- GUI templates are loaded by their own loader and participate in reload candidate validation.
- Message prefix switched to a new brand gradient.
- `api-version` raised from `1.21` to `1.21.8`; only 1.21.8+ is supported. The build base moved from spigot-api to paper-api, so API consumers must switch their compile base. Java target stays 25, `folia-supported: true` and the permission set (use/book/reload/debug/admin) are unchanged.
- Cross-plugin hard API version gating was removed, so mixing slightly different Emaki minor versions is no longer blocked at startup.
### Fixed
- `/emakiforge reload` used to report success unconditionally and swallow failures; it now reports failure with detail (the `general.reload_fail` message key existed but was never sent).
- Reload replies are delivered on the sender's own execution domain, which is required for correctness on Folia.
### Removed
- The browser-based Web Console layer (`web-console.yml`, `web-extensions/`, the `web-console/` frontend project). Owners who edited config through the browser must edit YAML directly.
- `gui/editor_gui.yml`, the admin recipe-editor template, whose only entry point was the removed web editor.
- Backward compatibility for the old recipe `result` structure: `result.item_sources`, `result.meta_actions.name_actions`, `result.meta_actions.lore_actions` and `result.actions` become `result.success.outputs[].item_sources` and `result.success.name_actions` / `lore_actions` / `actions`. Only `success` is read; if it is missing the recipe silently produces nothing, so all custom recipes must be migrated.
- The flat GUI slot item structure: `item: "<MATERIAL>"` with `display_name`, `lore` and `hidden_components: [tooltip]` becomes `item.source` with `item.components.custom_name`, `item.components.lore` and `item.components.tooltip_display.hide_tooltip`. All custom `gui/*.yml` must be migrated.
- The `commands:` section, as the descriptor moved from `plugin.yml` to `paper-plugin.yml` and commands register at runtime. Plain Spigot is no longer supported; Paper or a Paper fork is required.
### Notes
- Requires EmakiCoreLib 4.6.0.
- Back up `recipes/` and `gui/` before updating, then migrate all custom recipes and GUI templates to the structures above.
- After updating, run `/emakiforge reload` and `/emakiforge debug stats` to confirm the registered recipe count matches expectations, then verify the forge GUI and recipe book.
release
Emaki Forge 4.5.0
4.5.014 июл. 2026 г.29Minecraft: 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.2, 26.2folia, paper, purpur
Что нового
### Added
- Forge item refresh actions for held item, player inventory, and all online players.
- Manifest v2 Web Console integration.
- Command suggestions after `/emakiforge ` or `/eforge `.
### Improved
- Consolidated recipe result structure toward `result.success.outputs/actions` and related branch fields.
- Improved recipe loading and default examples.
- Aligned with the Paper API / `paper-plugin.yml` 1.21.8+ baseline.
### Notes
- Update with the matching CoreLib release.
- Breaking: Action aliases were removed; use canonical action IDs.
- Migrate older flat result fields to `result.success.*` when needed.
release
Emaki Forge 4.4.0
4.4.029 июн. 2026 г.47Minecraft: 1.21.8, 1.21.9, 1.21.10, 1.21.11folia, paper, purpur, spigot
Что нового
### Added
- Public Bukkit events: `ForgeStartEvent` (cancellable) and `ForgeCompletedEvent` (with success, result item, and quality info).
- JavaScript extensions for forge result hooks and forge rules via `emaki.module("forge")`.
- Config precheck on startup and reload.
### Improved
- Hardened the prepared forge cache by cloning preview items.
### Notes
- No breaking config changes.
release
Emaki Forge 4.3.0
4.3.016 июн. 2026 г.16Minecraft: 1.21.8, 1.21.9, 1.21.10, 1.21.11folia, paper, purpur, spigot
Что нового
### Added
- Forge script module access through `emaki.module("forge")`.
- Forge-owned script examples.
- Shared condition system support.
- Updated Web Console registration.
### Fixed
- Fixed default condition alignment.
- Fixed item source display/identification consistency.
- Fixed unstable old API access expectations.
### Refactored
- Static facade + Bridge API model.
- Assembly namespace registration.
- Script module lifecycle.
- Recipe loading and item identification.
### Improved
- Better default resources and Web Console metadata.
- Better integration with CoreLib item sources and conditions.
release
Emaki Forge 4.2.0
4.2.05 июн. 2026 г.36Minecraft: 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
Что нового
Forge v4.2.0 is a cleanup and integration update. Forge now owns its script entry, script examples, and Assembly namespace more clearly.
### Highlights
- Forge script module access through `emaki.module("forge")`.
- Forge-owned script examples.
### Improved
- Forge registers its own Assembly layer namespace.
- CoreLib-aligned bStats, runtime dependency handling, and versioned resource notices.
### Notes
- Use with the matching CoreLib release.
release
Emaki Forge 4.1.0
4.1.02 июн. 2026 г.17Minecraft: 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
Что нового
# EmakiForge v4.1.0
> Quality pity system, player signatures, Web console editor, and a completely refactored forge pipeline.
---
### ✨ New Features
#### Quality Pity System
After a streak of forges without a high-tier result, the system now guarantees a better quality outcome on your next attempt. No more endless bad luck — the pity mechanic has your back.
#### Player Signature
Every forged item now proudly displays the name of the player who created it, giving each piece of equipment a personal touch and a unique sense of ownership.
#### Web Console & GUI Editor
EmakiForge is now fully integrated with the Web management console. Edit forge recipes and GUI configurations directly in your browser. Both the forge interface and recipe book have been completely redesigned for a better player experience.
#### Forge Validation Service
A new pre-forge validation step ensures that all conditions are met before the forge operation proceeds, preventing invalid forge attempts.
#### Failure Resolution
A dedicated failure handling service provides flexible multi-tier penalty configurations — customize what happens when a forge attempt fails.
#### Preparation Phase
Material checking, consumption, and preview have been separated into their own preparation stage, making the forge flow clearer and more maintainable.
#### Result Post-Processing
Additional actions can now be executed after a forge completes — trigger skills, send messages, or run custom logic.
#### Performance Recorder
A new performance monitoring feature lets server admins track forge operation performance.
### ♻️ Improvements
- The main forge service has been extensively refactored, with each stage now having a clear, single responsibility.
- The material model has been simplified for more intuitive recipe configuration.
- The forge GUI and recipe book have been redesigned for a significantly improved user experience.
- The async executor has been optimized for faster forge response times.
release
Emaki Forge 4.0.0
4.0.011 мая 2026 г.34Minecraft: 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
Что нового
## EmakiForge 4.0.0 Release
This release introduces a ledger-based reversible name/lore modification system, PAPI placeholder support, and unifies the effect configuration format.
### New Features
- **Name/Lore Action System**: Recipes and quality configs support `name_actions` / `lore_actions` fields. Forging can directly modify item names and lore with actions like `append_suffix`, `prepend_prefix`, `prepend`, `append`, `insert_below`, `replace_line`. All operations tracked via ItemOperationLedger for precise revert capability. Material effects also support `type: "lore_action"` / `"name_action"`.
- **PAPI Placeholders**: `%emakiforge_recipe_count%` (loaded recipe count) and `%emakiforge_last_crafted%` (player's last crafted recipe ID).
- **Enhanced Forge Audit**: Forged items store complete audit data in PDC: recipe ID, quality, multiplier, timestamp, material signatures, and output source.
### Improvements
- Unified `effects` list format with `type` field (`variables` / `ea_attribute` / `es_skill` / `name_action` / `lore_action`).
- Material item sources unified to `item_sources: [...]` list format.
- Example recipe fully rewritten with comprehensive field coverage and detailed comments.
- Config and language files auto-merge new keys on upgrade.
### Breaking Changes
- `structured_presentation` removed — replaced by `name_actions` / `lore_actions`.
- Quality config `item_meta.structured_presentation` → `item_meta.name_actions` / `item_meta.lore_actions`.
- Material `item` field → `item_sources: [...]` list format.
- Skill effect type: `"skill"` → `"es_skill"`, `skills` → `es_skills`.
- Old example recipe `flame_sword.yml` replaced by `example_recipe.yml`.
### Upgrade Notes
- Migrate `structured_presentation` to `name_actions` / `lore_actions` in existing recipes.
- Migrate material `item` fields to `item_sources` list format.
- Config version updated to `4.0.0` — new entries are auto-merged on upgrade.
[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 Forge 3.5.0
3.5.04 мая 2026 г.25Minecraft: 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
Что нового
## EmakiForge 3.5.0 Release
This maintenance release improves player data handling around kick events and synchronizes the module with the CoreLib 3.5.0 dependency line.
- Added player kick event handling for forge player data flows.
- Removed deprecated lifecycle cleanup calls.
- Updated dependency alignment to CoreLib `3.5.0`.
- Synchronized plugin, config, and language versions to `3.5.0`.
### Upgrade Notes
- Existing recipes, GUI configuration, and permission nodes remain compatible.
- Test player quit and kick scenarios if you use external data synchronization.
[View Full Documentation](https://jiuwu02.github.io/Emaki_Series/) | [Join Discord Community](https://discord.gg/FV4GFQbvCM) | [QQ Group](https://qm.qq.com/q/GqGrzHp0wU)



