Skip to content

Latest commit

 

History

33 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AdvancedCrafting

Materials, smithing, and alloy discovery for TF-Minecraft.

AdvancedCrafting turns equipment crafting into a hands-on workshop activity. Players prepare ingredients, combine materials, and work recipes at crafting stations. The materials they choose and the quality of their work shape the finished item.

Features

  • Crafting stations — make items through recipes with material requirements and sequences of tool hits.
  • Ingredient conversion — turn supported items into crafting materials with their own properties.
  • Alloy discovery — experiment with ingredients and catalysts, name newly discovered alloys, and reproduce known combinations.
  • Material-driven equipment — carry ingredient stats and crafting quality into the finished item's attributes through MMOItems.
  • Crafting identity — retain the recipe, materials, and quality behind a crafted item, with support for naming, appearance, and branding.
  • Profession progression — connect recipes and materials to profession access and experience rewards.

Credits

Originally authored by Drefvelin.

Documentation

Project documentation

Technical documentation is maintained in TF-Minecraft/Docs.

License

Copyright (c) 2026 TF-Minecraft contributors.

TF-Minecraft-authored material in this repository is licensed under the Artistic License 2.0. Third-party dependencies and bundled material retain their own licenses.

Tests and coverage

Use Java 21 and Maven 3.9. Install the pinned plugin dependencies with the repository's existing .github/scripts/prepare-release.sh workflow, then run:

mvn -B --no-transfer-progress clean verify -DskipTests=false -Dmaven.test.skip=false

The JUnit 5 suite uses MockBukkit for server state and Mockito at external plugin boundaries. JaCoCo measures every production class; no production packages, classes, or methods are excluded. verify requires 100% instruction, branch, and line coverage, and fails when any counter falls below that threshold. The HTML report is target/site/jacoco/index.html; XML/CSV are alongside it. Build and release CI upload the coverage report as an artifact, including failed runs when a report was generated.

Coverage proves the exercised Java behavior. It does not replace a live Paper server integration check with the pinned ItemsAdder/MMOItems/TLibs versions.

Failed alloy forges record consumed ingredient quantities on scrap for Recycler recovery. Older scrap retains only its recorded base; missing catalyst history cannot be recovered.

About

Crafting stations, alloy discovery, and material-based equipment for TFMC Minecraft servers.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages