▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Моды/EmakiForge
EmakiForge

EmakiForge

Recipe-driven forging with quality tiers, material effects, and in-game editor

18
0
Все версииEmakiForge 1.10.0

EmakiForge 1.10.0

Release1 нед. назад

Список изменений

EmakiForge Changelog

[1.10.0] - 2026-03-31

New Features

Material Quality Modification Mechanism

  • Added ForgeMaterial.QualityModifier record to support influencing forging quality through material effects.
  • Supports two modification modes:
    • force: Forcibly specifies a quality tier, overriding random and pity mechanisms.
    • minimum: Sets a quality floor, taking the higher value compared to the random result.
  • Added ForgeQualityModifierResolver service to uniformly process quality modification logic.
  • The quality_modify effect can now be added in material definitions:
effects:
  - type: quality_modify
    mode: force  # or minimum
    tier: perfect   # quality tier name

Item Refresh Service

  • Added ForgeItemRefreshService, supporting automatic refresh of forging attributes for player inventory and dropped items.
  • Added ForgeItemRefreshListener, listening to the following events to trigger refresh:
  • Player joins server (PlayerJoinEvent)
  • Player clicks inventory (InventoryClickEvent)
  • Player drags inventory (InventoryDragEvent)
  • Player drops an item (PlayerDropItemEvent)
  • Player picks up an item (EntityPickupItemEvent)
  • Supports batch refresh for online players, single player inventory refresh, and dropped item refresh.
  • The refresh process recalculates quality modifications and updates item metadata.

Material Contribution Record

  • Added ForgeMaterialContribution record, representing contribution information of forging materials.
  • Includes material ID, quantity, slot, category, sequence, and other information.
  • Provides toAuditMap() and toSignatureData() methods for auditing and signing.

Improvements & Optimizations

Quality Calculation Flow Optimization

  • QualityRollPlan record structure changes:
  • Added rolledTier: Randomly rolled quality tier.
  • Added finalTier: Final quality tier after applying modifications.
  • Added forceApplied: Whether a force modification was applied.
  • PreparedForge record structure changes:
  • Added rolledQualityTier: Random quality tier.
  • Added forceQualityApplied: Whether forced application occurred.
  • Improved quality calculation logic to support material modifier participation.

Quality Tier Comparison Refactoring

  • QualitySettings added helper methods:
  • findTier(String name): Find a quality tier.
  • tierIndex(String name): Get the index of a quality tier.
  • tierIndex(QualityTier tier): Get the index of a quality tier.
  • hasTier(String name): Check if a quality tier exists.
  • higherTier(QualityTier first, QualityTier second): Compare and return the higher quality tier.
  • Improved quality tier lookup logic, reducing redundant calculations.
  • Optimized quality configuration parsing performance.

ForgeMaterial Enhancements

  • Added qualityModifiers() method to get the list of material quality modifiers.
  • Added definitionSignatureData() method to generate material definition signature data.
  • Improved material effect parsing to support quality modification effects.

ForgeService Improvements

  • Added findMaterialById(String materialId) method.
  • Added resolveMaterialQualityModifiers() method to parse material quality modifiers.
  • Improved forge preparation flow, integrating quality modification calculation.

Configuration Changes

Configuration File Updates

  • Action IDs in configuration files have been updated to camelCase format.
  • Example recipe configurations have been updated accordingly.

Code Improvements

EmakiForgePlugin

  • Added itemRefreshService() accessor.
  • Improved plugin lifecycle management.

ForgeLifecycleCoordinator

  • Integrated item refresh service initialization.

ForgeRuntimeComponents

  • Added itemRefreshService component.

RecipeLoader

  • Improved recipe loading logic.

ForgeExecutionService

  • Improved forge execution flow.

ForgeLayerSnapshotBuilder

  • Optimized layer snapshot building logic.

ForgeLookupIndex

  • Added findMaterialById() method.
  • Improved material lookup performance.

Usage Notes

Material Quality Modification

  • To use the material quality modification feature, you need to add the quality_modify effect in the material definition.
  • The effect data must include the mode (force/minimum) and tier (quality name) fields.
  • Force mode overrides pity mechanisms; use with caution.
  • Minimum mode takes the higher value compared to the random result, suitable for pity scenarios.

Item Refresh Service

  • The item refresh service is enabled by default and will automatically refresh upon relevant events.
  • The refresh process recalculates quality modifications and updates item metadata.
  • May cause performance overhead in scenarios with a large number of items; adjustment based on server load is recommended.

Action ID Migration

  • Action IDs in configuration files need to be migrated from underscore_case to camelCase format.
  • Affected configurations:
  • Quality actions in config.yml
  • Custom recipe configurations

Compatibility

  • Requires EmakiCoreLib 1.11.0 or above.
  • The quality modification feature is optional and does not affect existing recipe configurations.
  • Maintains backward compatibility with older configuration files.

API Changes

  • QualityRollPlan record structure changed with added fields.
  • PreparedForge record structure changed with added fields.
  • QualityCalculationService constructor added new parameters.
  • The above changes may affect external plugins directly using these APIs.

Known Issues

  • The item refresh service may cause performance overhead in scenarios with a large number of items.

Файлы

EmakiForge-1.10.0.jar(193.89 KiB)
Основной
Скачать

Метаданные

Канал релиза

Release

Номер версии

1.10.0

Загрузчики

Paper
Purpur

Версии игры

1.21–1.21.11

Загрузок

2

Дата публикации

1 нед. назад

Загрузил

ID версии

Главная