endorh / simple-config

Minecraft configuration made simple!
https://www.curseforge.com/minecraft/mc-mods/simple-config
GNU Lesser General Public License v3.0
6 stars 0 forks source link
config forge java kotlin minecraft mod ui

Simple Config menu

Minecraft: 1.16 - 1.20.1 Mod Loader: Forge/NeoForge Side: Client/Server License Curse Forge Join the Discord

Simple Config

Helps other mods provide powerful config menus.

Initially developed as an alternative to Forge's config API, now it can also provide menus (and commands) for other mods which use Forge's config API, without any effort from their part, pretty much like how Configured does.

In multiplayer servers, it can allow certain players (by default, all operators) to remotely edit the server configuration for all mods, as well as share config presets for all players to use.

As a bonus, it also wraps Minecraft's options, gamerules and server properties as if Minecraft was just another mod, which allows Minecraft options to benefit from the config hotkey, preset and command features.

Features for players

Menu features

Example use-cases

Features for mod developers


Help and Documentation

This mod has a wiki which contains:

You may also drop by our Discord Server if you have any issues, questions or feedback of any kind, or if you just want to say hi.

Examples (for mod developers)

This mod includes a few demo configs:

You may also check the Aerobatic Elytra and Aerobatic Elytra Jetpack mods, which use this library.

Usage (for mod developers)

See the wiki on how to add Simple Config as a dependency.

Usage as soft dependency (for mod developers)

It's possible to use Simple Config as a soft dependency through dependency injection.

This way, players will be able to use your mod without needing to install Simple Config. However, the price that they'll pay is not being able to edit your mod's configuration, neither through menus nor config files. They'll be forced to use your default values.

At the moment, dependency injection is not supported for the Kotlin API.