ultra_reemun Posted April 2, 2020 Share Posted April 2, 2020 (edited) I have added config files to my mod, however only the first value in each can be changed For example one of my configs looks like this: [dodge] #The time it takes for your dodge to refresh. #Note that this value must be an integer (whole number) that is 2 or higher, or else things will not fire properly. #Default: 4 #Range: 2 ~ 20 cooldown_time = 4 #Whether or not you have to be touching the ground to dodge. #Without this enabled the dodge ability can be used like a dash whilst jumping, which may be overpowered. #Default: true requires_ground = false And no matter what I do to requires_ground, it always will equal its default value, however I can change cooldown_time. Here is my Config builder: @Mod.EventBusSubscriber public class Config { private static final ForgeConfigSpec.Builder server_builder = new ForgeConfigSpec.Builder(); public static final ForgeConfigSpec server_config; private static final ForgeConfigSpec.Builder client_builder = new ForgeConfigSpec.Builder(); public static final ForgeConfigSpec client_config; static { DodgeConfig.init(server_builder, client_builder); server_config = server_builder.build(); client_config = client_builder.build(); } public static void loadConfig(ForgeConfigSpec config, String path) { Dodge.LOGGER.info("Loading config: " + path); final CommentedFileConfig file = CommentedFileConfig.builder(new File(path)).sync().autosave().writingMode(WritingMode.REPLACE).build(); Dodge.LOGGER.info("Built config: " + path); file.load(); Dodge.LOGGER.info("Loaded config: " + path); config.setConfig(file); } } And here is my Config: public class DodgeConfig { public static ForgeConfigSpec.IntValue cooldown_time; public static ForgeConfigSpec.BooleanValue requires_ground; public static void init(ForgeConfigSpec.Builder server, ForgeConfigSpec.Builder client) { server.comment("dodge config"); cooldown_time = server .comment("The time it takes for your dodge to refresh. \nNote that this value must be an integer (whole number) that is 2 or higher, or else things will not fire properly. \nDefault: 4") .defineInRange("dodge.cooldown_time", 4, 2, 20); requires_ground = server .comment("Whether or not you have to be touching the ground to dodge. \nWithout this enabled the dodge ability can be used like a dash whilst jumping, which may be overpowered. \nDefault: true") .define("dodge.requires_ground", false); } } It is also worth noting that I have updated my DodgeConfig class and deleted my server-config.toml, however upon running minecraft server-config.toml reverts to how it was before I applied my changes. I'm so confused so any help would be greatly appreciated. Alternatively, if you know a better way to create a config in1.15.2 please share! Edited April 3, 2020 by ultra_reemun Alternate Quote Link to comment Share on other sites More sharing options...
ultra_reemun Posted April 3, 2020 Author Share Posted April 3, 2020 bump, I've still had no luck Quote Link to comment Share on other sites More sharing options...
ultra_reemun Posted April 3, 2020 Author Share Posted April 3, 2020 For anybody in the future finding this, I rewrote my code using TheElectronWill / night-config. https://github.com/TheElectronWill/night-config Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.