ModsFinder

Dynamic Registries

by silverminer007

Dynamic Registries is a Forge library that lets other mods create new data-pack based registries, so their elements can be defined in data packs.

ForgeClient and serverGNU Lesser General Public License v3.0 onlyOpen source1.18.1

What it does

Other mods can use the library to set up registries that are filled from data packs rather than from code. Elements can also be defined in code, and when an element is defined in both places the code definition overrides the data-pack one. Elements must be written as JSON, and creating elements only through code is possible without any data pack.

The library was written for Minecraft 1.18.1 and is published only for that version, with no builds for other game versions. It was built from a pull request to the Won-Ton author's base library that had not been merged upstream and was not expected to be merged for a long time after release. Installation covers the server and each player's game. It is open source under the GNU Lesser General Public License v3.0 only.

Installing it needs a development setup in which the Forge mod loader checks dependencies when loading. Mod authors also have to add a block to their mods.toml file in src/main/resources/META-INF, replace the modid there with their own mod's id, and rearrange the version range where needed.

Key features

  1. Data-pack registries

    Other mods can create registries whose entries are loaded from data packs.

  2. Code-defined elements

    Elements can be registered directly in code, without a data pack.

  3. Code overrides data packs

    An element defined in code replaces the matching element from a data pack.

  4. JSON element format

    Data-pack elements are written as JSON files.

Compatibility

Latest build for each game version and loader.

1.18.11.18.1-1.0.0
ReleaseBetaAlphaNot available

Only full game releases are shown. This mod publishes no snapshot builds.

Use cases

Mod authors adding registries

A mod author can expose a new registry so that content can be added through data packs instead of recompiling the mod.

Who it’s for: Mod developers who need data-pack based registries in a Forge 1.18.1 project. Players do not install it on its own; it comes in as a dependency of other mods.

How it compares

Full comparison

Cryptic Registry is also a Forge registry library, but it covers 1.19.2 – 1.20.1 and is not open source, so it does not serve 1.18.1 projects. James's Config Lib is a different kind of library, a configuration tool for Fabric, Forge, NeoForge and Quilt across 1.17.1 – 1.20.4 that is open source under the MIT License. Reforged Fabric API covers only 1.20 – 1.20.1, so it cannot be used with this 1.18.1 library.

ModLoadersGame versionsEnvironmentUpdated
Dynamic RegistriesForge1.18.1Client and server2022-03-01
Cryptic RegistryForge and NeoForge1.19.2 – 1.20.1Client and server2024-01-26
James's Config LibFabric, Forge, NeoForge and Quilt1.17.1 – 1.20.4Client or server, optional2024-01-27
Reforged Fabric APIForge1.20 – 1.20.1Client and server2023-08-25

Questions

Does Dynamic Registries need to be installed on both sides?

Yes. Servers that run it need every player to install it too.

Which Minecraft version does Dynamic Registries support?

Only 1.18.1. Its single Forge file is 1.18.1-1.0.0, published on 2022-03-01, and the author did not port it to other versions.

Can Dynamic Registries be used without a data pack?

Yes. Elements can be defined only in code, and when code and data pack define the same element, the code version is used.

In the catalog

Dynamic Registries is one of 3,514 Library mods on ModsFinder, and one of 1,576 Library mods for Forge. 4,416 mods support Minecraft 1.18.1.

More from silverminer007

All projects

Similar mods

What the author says

Dynamic registries is a library mod that allows the creation of new data-pack based registries. It's possible to define elements in code and trough data-packs (even the data-pack in your mod), but not necessary; you can also create elements only in code or in data-packs. Elements that were defined in code can also be…
silverminer007, on the Modrinth page

Official listing

Owner
silverminer007
Published
2022-02-21
Updated on Modrinth
2022-03-01
Facts verified
2026-10-15

Tags