Mod
Registed
No reviews yet
A library that brings you annotated registries!
Provides a framework or library for other mods to use.
Community voices
Reviews
Click once to include, again to exclude, again to clear
No reviews yet. Be the first to review this project!
Get it on
Available Platforms
Compatibility
Supported Environments
About
Project Details
For authors
Embed Badge
If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.
Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.
Identifiers
Platform IDs
About
Description
Registed
Implementation
First, implement Registed through gradle:
Using Groovy
build.gradle
repositories {
maven { url "https://api.modrinth.com/maven" }
}
dependencies {
modApi "maven.modrinth:registed:$project.registed_version"
}
gradle.properties
registed_version=?
Replace
?with the latesttag nameof Registed.
Using Kotlin
build.gradle.kts
repositories {
maven("https://api.modrinth.com/maven")
}
dependencies {
modApi("maven.modrinth:registed:${property("registedVersion")}")
}
gradle.properties
registedVersion=?
Replace
?with the latesttag nameof Registed.
Next, reference Registed into your fabric.mod.json as a dependency:
fabric.mod.json
{
// Other contents
"depends": {
"registed": "*"
},
// Other contents
}
Registed should not be nested in your project. You should always treat Registed as a standalone mod.
Usage
To register an object, do:
full.path.to.ClassName.java
@RegistryId("modid")
public class ClassName {
@ho.artisan.registed.annotation.registries.Item
public static final Item ITEM = ...;
}
You must annotate your registration class with @RegistryID^@RegistryID_classpath to tell Registed which namespace to use.
After that, remember to reference this class in your fabric.mod.json:
fabric.mod.json
{
// Other contents
"entrypoints": {
"registed": [
"full.path.to.ClassName"
]
},
// Other contents
}
Registed supports all Registry<?> types inside class Registries^Registries_classpath. You should convert the target registry type name from UPPER_SNAKE_CASE to CamelCase to find the desired annotation, for example, Registries.LOOT_NBT_PROVIDER_TYPE has a representing annotation @LootNBTProviderType.
All available annotations for registered objects are under package
ho.artisan.registed.annotation.registries.
These annotations can only be applied on fields, and you should always make sure your registered objects are
staticandfinalfields.
By default, the registered objects will use their field names in snake_case as their in-game identifier paths, for example, field MY_EXAMPLE_ITEM will have the identifier path of my_example_item. We suggest using UPPER_SNAKE_CASE to name your fields, as they should be static and final and only in snake cases will Registed preserve the underscores.
To customize a registered object's in-game identifier path, you can apply annotation @RegistryID^@RegistryID_classpath to the target field:
@RegistryID("my_item")
@ho.artisan.registed.annotation.registries.Item
public static final Item ITEM = ...;
The identifier path provided by
@RegistryID[@^RegistryID_classpath] will be consumed as raw without any further processing.
Screenshots
Gallery
Versions
Files
Relations
Project Relations
More like this
Similar Mods
Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.
On ModDex
Community snapshot
By the numbers
Statistics
Want to reach Minecraft players?
We're looking for a server hosting partner to feature here and other parts of the site. Interested? Send us a message!
Get in touchGet it on
Available Platforms
On ModDex
Community snapshot
By the numbers