Unnamed Common Library (UCL)

Unnamed Common Library (UCL)

A very simple, easy to use configuration library that fits right in your mod!

by
419 Downloads
fabricneoforgelibrarymagicmanagement
Rent Server with this Mod

About this Mod

English

❔ Tell me more about it

Unnamed Common Library (UCL) is my attempt at making a simple, useful, (yet to be) powerful configuration library. Its goal is to be general purpose so that no matter the mod you build or your preferences, you can always use it. This library is obviously not meant to be used on its own,if you do so it will at most serve as an example and a test for its capabilities.

🤩 Why you should like it

  • Very easy to implement and use
  • Optional configuration screen integrations
  • JSON, TOML, and YAML support

🧑‍💻 For developers

Installation

Add the repository to your build.gradle(.kts):

repositories {
    maven {
        url = "https://maven.pkg.github.com/aurorarissime/unnamed-common-library"
    }
}

And in your buildscript, add the dependency (modImplementation for Fabric, implementation for NeoForge):

dependencies {
    (mod)Implementation("from.discorde:ucl:${ucl_version}+${minecraft_version}-fabric")
}
Usage

1. Create your configuration model

MyModConfig.java

import from.discorde.ucl.common.config.annotations.*;

@Configuration(
    name = "mymod"
)
public class MyModConfig {
    @Comment("Enable the awesome feature")
    public boolean awesomeFeature = true;

    @Comment("Maximum power level (0-100)")
    public int maxPower = 50;

    @Comment("Welcome message displayed to players")
    public String welcomeMessage = "Hello!";
}

2. Load the configuration in your mod initialiser

MyMod.java

public class MyMod implements ModInitializer {
    // The wrapper class is auto-generated at compile time
    public static final MyModConfigWrapper CONFIG = MyModConfigWrapper.createAndLoad();

    @Override
    public void onInitialize() {
        if (CONFIG.awesomeFeature) {
            System.out.println("Awesome feature is enabled!");
        }
    }
}
References

Annotations

@Configuration

Add this annotation right above your config class

Parameter Type Default Description
name String required Config file or folder name
location ConfigurationLocation SUBDIRECTORY Where to save the config
format ConfigurationFormat JSON5 File format to use
screen boolean true Generate YACL config screen

@Comment

Add this annotation above any field to include a comment in the config file

@Comment("This comment will appear above the field in the config file")
public boolean myOption = true;

Enums

ConfigurationLocation

Value Description
ROOT Save directly in the config folder as {name}.{ext}
SUBDIRECTORY Save in a subfolder as {name}/configuration.{ext}

ConfigurationFormat

Value Extension Description
JSON5 .json5 JSON with comments, trailing commas, and unquoted keys
TOML .toml Tom's Obvious Minimal Language
YAML .yaml YAML Ain't Markup Language
Configuration screens integration

If screen = true (default) in your @Configuration annotation and YetAnotherConfigLib (YACL) is installed, a configuration screen will be auto-generated and accessible through Mod Menu.
To disable the config screen, just set the screen parameter to false in the @Configuration annotation.

Enjoy 🙂

Available Versions

Unnamed Common Library 0.5.0 for 1.21.11 Neoforgerelease
MC 1.21.11neoforge
January 9, 2026
Unnamed Common Library 0.5.0 for 1.21.11 Fabricrelease
MC 1.21.11fabric
January 9, 2026
Unnamed Common Library 0.5.0 for 1.21.10 Neoforgerelease
MC 1.21.10neoforge
January 9, 2026
Unnamed Common Library 0.5.0 for 1.21.10 Fabricrelease
MC 1.21.10fabric
January 9, 2026
Unnamed Common Library 0.5.0 for 1.21.9 Neoforgerelease
MC 1.21.9neoforge
January 9, 2026

How to Install Unnamed Common Library (UCL) on Your Server

1

Order Server

Order a Minecraft Java server with at least 3 GB RAM (4 GB recommended).

2

Set fabric Loader

In the panel under "Egg", select the fabric loader and matching Minecraft version (1.21.11).

3

Install Mod

Open the mod browser in the dashboard and search for "Unnamed Common Library (UCL)". Click "Install" – done! Alternatively, upload the .jar via SFTP to the /mods folder.

Compatibility

Mod Loaders

fabricneoforge

Minecraft Versions

1.21.11, 1.21.10, 1.21.9 (+2 more)

Server-side

~ Optional

Recommended RAM

4 GB(min. 3 GB)

Frequently Asked Questions

Unnamed Common Library (UCL) server crashes on startup – what to do?

Most common cause: wrong fabric version or insufficient RAM. Check the server log (latest.log) for "OutOfMemoryError" or "Mixin" errors. With Mado Hosting: ensure at least 3 GB RAM is allocated and the loader matches the mod version (1.21.11). You can switch loaders with one click in the panel.

Is Unnamed Common Library (UCL) compatible with fabric and neoforge?

Unnamed Common Library (UCL) officially supports fabric, neoforge for Minecraft 1.21.11, 1.21.10, 1.21.9. The Mado dashboard automatically detects incompatible loader combinations.

Server lagging with Unnamed Common Library (UCL) – how to optimize performance?

Recommended RAM: 4 GB (per 8 players). Use /spark profiler to check if Unnamed Common Library (UCL) consumes the most tick time. Common fixes: reduce server view-distance to 8-10, install "performant" or "starlight" as supplementary mods on Forge. With Mado Hosting, your server runs on NVMe SSDs with dedicated CPU cores for minimal latency.

Rent Modded Server

Install Unnamed Common Library (UCL) with just one click on your server.

Recommended RAM
4 GBab €8/mo
Min. 3 GB | +1 GB pro 8 Spieler
Create Server Now
1-Click Mod Install
NVMe SSD Storage
DDoS Protection included

Details

License
Creative Commons Attribution Non Commercial Share Alike 4.0 International
Server-side
Optional

Supported Versions

1.21.111.21.101.21.91.21.21.21.1