Tags
Creators
Details
Licensed LGPL-3.0-only
Published 6 months ago
Updated 2 months ago
All versions
2.0.0
Release
EmakiStrengthen 2.0.07 months ago 23
Compatibility
Minecraft: Java Edition
1.21.x
Platforms
Paper
Purpur
Changes
EmakiStrengthen Changelog
[2.0.0] - 2026-04-09
Added
The strengthen system now uses a recipe-driven model
- Default data has been consolidated from
profiles/,rules/, andmaterials/intorecipes/*.yml, and each recipe can now define matching rules, star stages, material requirements, presentation rules, economy cost, and action hooks in one place. - The release now ships with six starter recipes:
weapon_physical,weapon_projectile,weapon_spell,armor_guard,generic_visual, andoffhand_focus, making it easier to bootstrap weapon, armor, and off-hand growth lines. - Each star stage can now define its own
materials,presentation,success_actions,failure_actions, and economy overrides, so growth design is no longer constrained by the old profile model.
Temper and optional-material mechanics
- Failures now build up
temper, and later success rates increase according to each recipe'smax_temperandtemper_chance_bonus_per_level. - Optional materials can now declare
protectionandtemper_boostat the star-stage level, which enables anti-drop-star effects and extra temper gain. - The strengthen GUI now uses four optional-material slots, and the preview area now shows success rate, cost, and required materials together.
Multi-currency cost and presentation actions
- Recipe economy definitions now support multiple currency entries, formula-based cost calculation, and per-star overrides so different equipment lines can follow different cost curves.
- Strengthen presentation now reuses CoreLib features such as
lore_search_insert, conditional name appends, variable substitution, and expression rendering for finer control over item names and lore.
Improved
Admin commands and player flow were aligned with the new recipe model
setstar,givecatalyst,inspect,reload, and tab completion now all work around recipes and the material catalog instead of the old profile IDs.- Fixed strengthen materials are now consumed directly from the inventory, which lets the GUI focus on the target item and optional-material choices for the current attempt.
- State output and player-facing messages now consistently use the new
recipe,first_reach, andtemperterminology.
Fixed
- Fixed materials, optional materials, and economy costs are now validated before the strengthen attempt proceeds, preventing failures that were only discovered after result write-back.
- If result write-back fails, the attempt is now aborted immediately instead of writing a broken state back onto the item.
- Missing recipe matches, invalid optional materials, and insufficient cost conditions now return clearer failure reasons, which reduces operator investigation time.
Upgrade Notes
- The old default
profiles/,rules/, andmaterials/directories have been removed; move custom strengthen content intorecipes/*.yml. - Global
config.ymlfields such asmax_star,max_crack,crack_chance_bonus_per_level,success_chance_cap, andeconomy.*have moved into each recipe'slimitsandeconomysections. - If admin scripts still use
/emakistrengthen setstar <star> [profile]or depend on old inspect field names, migrate them to the new recipe terminology and output format.
Known Issues
- None
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:SH4PlNS2:x0ROlyqg"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:SH4PlNS2:x0ROlyqg"
}

