NovaCore is a library mod for creating NeoForge mods. It contains common classes for creating blocks, items, etc., and data generation classes.
Why use a library mod?
Using a library mod removes a lot of boilerplate code required to get things up and running. This allows you to focus on what matters most and not spend a lot of time writing code that is required by the framework you choose.
Planned Features
- Better support for NeoForge
- Eventually become framework agnostic and supports both NeoForge and Fabric.
- Create NovaCore-API (Contains framework agnostic code for your mod)
- Create NovaCore-NeoForge (Contains everything needed to bootstrap NeoForge mods)
- Create NovaCore-Fabric (Contains everything needed to bootstrap NeoForge mods)
Wiki
The wiki will have the most up-to-date information about NovaCore.
Check out Discussions on GitHub.
Issues
If you find an issue or a bug, please report it on GitHub.
Community
Join our friendly community to get help for NovaCore and other add-ons and chat with the rest of the players! Like what you see? Consider becoming a Patreon!
Server Hosting
Need a server to play with friends? Don't know how to set one up? Just rent an already-configured server!
Click on the picture below, select your plan (at least 4GB), use my code Nova to get 25% off your first month, and enjoy playing with your friends!

All Versions
+ Add VersionAll notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [NeoForged Semantic Versioning](https://docs.neoforged.net/docs/gettingstarted/versioning).
## [4.0.0](https://github.com/NovaMachina-Mods/NovaCore/compare/v3.0.0...v4.0.0) - 2025-01-15
### Added
- Registry key to
AbstractRegistry BlockBehavior.Propertiesto block factory methodsItem.Propertiesto item factory methodsBucketItemfactory method- Add tag to tag
### Changed
- Update to 1.21.4
- Require NeoForge 21.4.20-beta
- Burnable block factory method
- Conditions from
LootModifierDefinition IngredientUtilsis essentially defunct- Fluid textures are no longer set in
FluidDefinition
## [3.0.0](https://github.com/NovaMachina-Mods/NovaCore/compare/v2.0.0...v3.0.0) - 2024-07-09
### Added
IServiceProviderto work more towards framework-agnostic library- Factory classes for
BlockItem,Block, andBlockEntityType - Orrientable blockstate functions for data generation
- Menu and Screen support
- Unit testing for some registries
### Changed
- Updated to NeoForge 21.0.40-beta
- Move NeoForge Registry classes to
novamachina.novacore.bootstrap.core.registries
### Removed
BlockBuilderclass. UseBlockBehavior.Propertiesand factory functions fromBlockRegistry
## [2.0.0](https://github.com/NovaMachina-Mods/NovaCore/compare/v1.0.0...v2.0.0) - 2024-03-14
### Added
- BlockState provider
- Recipe provider
- Abstract Recipe and RecipeSerializer
### Changed
- Updated to NeoForge 20.4.167
- Replace all references of Forge with NeoForge
- Replace
ForgeRegistrieswith eitherBuiltInRegistriesorNeoForgeRegistries - Use Codec encoding for
FluidStackandItemStack - Replace
ExistingFileHelperinRecipeProviderwithCompletableFuture<HolderLookup.Provider> Consumer<FinishedRecipe>->RecipeOutputAbstractLangGeneratoris now abstract- Falling block factory method returns ColoredFallingBlock with color value -8356741
### Removed
- Lombok
- Some
@NonNulland@Nullable - Removed
idparameter fromRecipeas it is no longer used by Vanilla
## [1.0.0](https://github.com/NovaMachina-Mods/NovaCore/compare/v1.0.0) - 2023-10-24
### Added
- Requires NeoForge 47.1.55+
- Bootstrap classes for Neoforge registries
- Common Block Entity renderer
- Mostly framework agnostic definitions for:
- Blocks
- Block Entities
- Creative Tabs
- Fluids
- Items
- Loot Modifiers
- Recipe Serializers
- Framework agnostic registries for:
- Block Entity Types
- Block
- Creative Tabs
- Fluids
- Items
- Loot Modifiers
- Recipe Serializers
- Recipe Types
- Sound Events
- Data Generation classes for:
- Recipes
- Loot Tables
- Tags
- Language
- Common utility classes
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [NeoForged Semantic Versioning](https://docs.neoforged.net/docs/gettingstarted/versioning).
## [3.0.0](https://github.com/NovaMachina-Mods/NovaCore/compare/v2.0.0...v3.0.0) - 2024-07-09
### Added
IServiceProviderto work more towards framework-agnostic library- Factory classes for
BlockItem,Block, andBlockEntityType - Orrientable blockstate functions for data generation
- Menu and Screen support
- Unit testing for some registries
### Changed
- Updated to NeoForge 21.0.40-beta
- Move NeoForge Registry classes to
novamachina.novacore.bootstrap.core.registries
### Removed
BlockBuilderclass. UseBlockBehavior.Propertiesand factory functions fromBlockRegistry
## [2.0.0](https://github.com/NovaMachina-Mods/NovaCore/compare/v1.0.0...v2.0.0) - 2024-03-14
### Added
- BlockState provider
- Recipe provider
- Abstract Recipe and RecipeSerializer
### Changed
- Updated to NeoForge 20.4.167
- Replace all references of Forge with NeoForge
- Replace
ForgeRegistrieswith eitherBuiltInRegistriesorNeoForgeRegistries - Use Codec encoding for
FluidStackandItemStack - Replace
ExistingFileHelperinRecipeProviderwithCompletableFuture<HolderLookup.Provider> Consumer<FinishedRecipe>->RecipeOutputAbstractLangGeneratoris now abstract- Falling block factory method returns ColoredFallingBlock with color value -8356741
### Removed
- Lombok
- Some
@NonNulland@Nullable - Removed
idparameter fromRecipeas it is no longer used by Vanilla
## [1.0.0](https://github.com/NovaMachina-Mods/NovaCore/compare/v1.0.0) - 2023-10-24
### Added
- Requires NeoForge 47.1.55+
- Bootstrap classes for Neoforge registries
- Common Block Entity renderer
- Mostly framework agnostic definitions for:
- Blocks
- Block Entities
- Creative Tabs
- Fluids
- Items
- Loot Modifiers
- Recipe Serializers
- Framework agnostic registries for:
- Block Entity Types
- Block
- Creative Tabs
- Fluids
- Items
- Loot Modifiers
- Recipe Serializers
- Recipe Types
- Sound Events
- Data Generation classes for:
- Recipes
- Loot Tables
- Tags
- Language
- Common utility classes
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [NeoForged Semantic Versioning](https://docs.neoforged.net/docs/gettingstarted/versioning).
## [2.0.0](https://github.com/NovaMachina-Mods/NovaCore/compare/v1.0.0...v2.0.0) - 2024-03-14
### Added
- BlockState provider
- Recipe provider
- Abstract Recipe and RecipeSerializer
### Changed
- Updated to NeoForge 20.4.167
- Replace all references of Forge with NeoForge
- Replace
ForgeRegistrieswith eitherBuiltInRegistriesorNeoForgeRegistries - Use Codec encoding for
FluidStackandItemStack - Replace
ExistingFileHelperinRecipeProviderwithCompletableFuture<HolderLookup.Provider> Consumer<FinishedRecipe>->RecipeOutputAbstractLangGeneratoris now abstract- Falling block factory method returns ColoredFallingBlock with color value -8356741
### Removed
- Lombok
- Some
@NonNulland@Nullable - Removed
idparameter fromRecipeas it is no longer used by Vanilla
## [1.0.0](https://github.com/NovaMachina-Mods/NovaCore/compare/v1.0.0) - 2023-10-24
### Added
- Requires NeoForge 47.1.55+
- Bootstrap classes for Neoforge registries
- Common Block Entity renderer
- Mostly framework agnostic definitions for:
- Blocks
- Block Entities
- Creative Tabs
- Fluids
- Items
- Loot Modifiers
- Recipe Serializers
- Framework agnostic registries for:
- Block Entity Types
- Block
- Creative Tabs
- Fluids
- Items
- Loot Modifiers
- Recipe Serializers
- Recipe Types
- Sound Events
- Data Generation classes for:
- Recipes
- Loot Tables
- Tags
- Language
- Common utility classes
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [NeoForged Semantic Versioning](https://docs.neoforged.net/docs/gettingstarted/versioning).
## [1.0.0](https://github.com/NovaMachina-Mods/NovaCore/compare/v1.0.0...HEAD) - 2023-10-24
### Added
- Requires NeoForge 47.1.55+
- Bootstrap classes for Neoforge registries
- Common Block Entity renderer
- Mostly framework agnostic definitions for:
- Blocks
- Block Entities
- Creative Tabs
- Fluids
- Items
- Loot Modifiers
- Recipe Serializers
- Framework agnostic registries for:
- Block Entity Types
- Block
- Creative Tabs
- Fluids
- Items
- Loot Modifiers
- Recipe Serializers
- Recipe Types
- Sound Events
- Data Generation classes for:
- Recipes
- Loot Tables
- Tags
- Language
- Common utility classes