
EmakiForge | Blueprint Forging
Blueprint-driven forging where material combinations decide stats and quality rolls with a pity counter.
Оцените первым
405
2
Список изменений
Added
- Three action-chain actions:
emakiforge_refresh_held,emakiforge_refresh_player,emakiforge_refresh_all. /emakiforge debug stats(aliasstatus) 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-versionraised from1.21to1.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: trueand 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 reloadused to report success unconditionally and swallow failures; it now reports failure with detail (thegeneral.reload_failmessage 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/, theweb-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
resultstructure:result.item_sources,result.meta_actions.name_actions,result.meta_actions.lore_actionsandresult.actionsbecomeresult.success.outputs[].item_sourcesandresult.success.name_actions/lore_actions/actions. Onlysuccessis 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>"withdisplay_name,loreandhidden_components: [tooltip]becomesitem.sourcewithitem.components.custom_name,item.components.loreanditem.components.tooltip_display.hide_tooltip. All customgui/*.ymlmust be migrated. - The
commands:section, as the descriptor moved fromplugin.ymltopaper-plugin.ymland 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/andgui/before updating, then migrate all custom recipes and GUI templates to the structures above. - After updating, run
/emakiforge reloadand/emakiforge debug statsto confirm the registered recipe count matches expectations, then verify the forge GUI and recipe book.
Файлы
EmakiForge-4.6.0.jar(437.73 KiB)
ОсновнойМетаданные
Канал релиза
Release
Номер версии
4.6.0
Загрузчики
FoliaPaperPurpur
Версии игры
1.21.8–26.2
Загрузок
21
Дата публикации
27.07.2026
