BetterConfig
2.3.0A very powerful and easy to use command based configuration library for servers and clients.
2.3.0latestRelease Paper 2.3.0Jan 19, 2025 - Greatly improved documentation ofConfigclass2.3.1Release Paper 2.3.1Jan 19, 2025 _No relevant changes._2.2.0Release Paper 2.2.0Jan 15, 2025 - Update JavaDoc to clarify that resetting a config does not use the setter - Allow for custom chat representations of config values ([#16](https://github.com/xpple/BetterConfig/pull/16))2.1.3Release Paper 2.1.3Jan 14, 2025 _No relevant changes._2.1.2Release Paper 2.1.2Oct 10, 2024 - Added the sources JAR to the publication2.1.1Release Paper 2.1.1Oct 9, 2024 - Fixed a bug withModConfig#resetTemporaryConfigsthat could cause a bug when a config is bothtemporaryandreadOnly2.1.0Release Paper 2.1.0Sep 13, 2024 This release introduces two new features and some bug fixes! - Added theonChangeconfig attribute ([#10](https://github.com/xpple/BetterConfig/pull/10)). You can now register a function that is called whenever a specific config is updated. For example:
- Added global change hook ([#11](https://github.com/xpple/BetterConfig/pull/11)). This allows you to register a global function that is called whenever _any_ config is updated. For example:@Config(onChange = "onChange") public static List<String> exampleOnChange = new ArrayList<>(List.of("xpple, earthcomputer")); private static void onChange(List<String> oldValue, List<String> newValue) { LOGGER.info("exampleOnChange was updated | old: {}, new: {}", oldValue, newValue); }
- Added Tatar translations ([#8](https://github.com/xpple/BetterConfig/pull/8) by Amirhan-Taipovjan-Greatest-I)new ModConfigBuilder<>("<mod id>", Configs.class) .registerGlobalChangeHook(event -> BetterConfigCommon.LOGGER.info("{} was updated | old: {}, new: {}", event.config(), event.oldValue(), event.newValue())) .build();2.0Release Paper 2.0Aug 20, 2024 - Added support for Paper servers Depending on your setup, you might have to adjust how the config is initialised: - Fabric clients:
- Fabric servers:new ModConfigBuilder<FabricClientCommandSource, CommandBuildContext>(<mod id>, Configs.class) // ... .build();
- Paper servers:new ModConfigBuilder<CommandSourceStack, CommandBuildContext>(<mod id>, Configs.class) // ... .build();
- Added support for server-sided custom argument types - Fabric:new ModConfigBuilder<>(<plugin name>, Configs.class) // ... .build();
- Paper:dev.xpple.betterconfig.util.WrappedArgumentType
- Fixed bug where theio.papermc.paper.command.brigadier.argument.CustomArgumentTyperesetsubcommand would be available for readonly configs1.3-multi-platformRelease Paper 1.3-multi-platformAug 20, 2024 - Added support for Paper servers (details will follow in the stable release)
Similar projects
Plugin →WorldEdit
A Minecraft Map Editor... that runs in-game! With selections, schematics, copy and paste, brushes, and scripting. Use it in creative, or use it temporarily in survival.
11.6MSueta
Common Network
Forge and Fabric Unified Networking Solution
3.9MSueta
LuckPerms
A permissions plugin/mod for Minecraft servers.
2.8MSueta
ItemSwapper
Inventory update concept for hotswapping items.
2.1MSueta
SkinsRestorer
🎨 Ability to restore/change skins on servers! (Offline and Online Mode)
1.6MSueta
Universal TierTagger
Displays a players Tiers across the following Networks: MCTiers PVPTiers SubTiers TiersMC PVPHQ
1.1MSueta