Skip to content

Migration Guide 0.13 ➝ 0.14

This release is mainly just the update to 1.20, but there are a few changes that you should be aware of.

Instead, you can now set a list of ProjectDistributors in code, which will be used to check for updates:

MyAddon.kt
object MyAddon : Addon() {

    override val projectDistributors = listOf(
        ProjectDistributor.hangar(/*project id*/), //(1)!
        ProjectDistributor.spigotmc(/*project id*/), //(2)!
        ProjectDistributor.modrinth(/*project id*/), //(3)!
        ProjectDistributor.github(/*project id*/) //(4)!
    )

}
  1. Example:
    ProjectDistributor.hangar("xenondevs/Machines")
  2. Example:
    ProjectDistributor.spigotmc("102712")
  3. Example:
    ProjectDistributor.modrinth("nova-framework")
  4. Example:
    ProjectDistributor.github("Nova-Addons/Machines")

Changed NovaRecipe.key: NamspacedKey to NovaRecipe.id: ResourceLocation

In the effort to convert everything from NamespacedId / NamespacedKey to ResourceLocation, the NovaRecipe class has now also been updated to use ResourceLocation. If you've created a custom recipe deserializer, you'll probably now also need to switch to RecipeDeserializer#getRecipeId(File).

Smithing Recipes

Since Mojang has changed smithing, the SMITHING_TRANSFORM and recipe files now also need to be in a smithing_transform directory. You'll also now need to specify a template ingredient.
There is currently no support for smithing trim recipes.