Posted May 26, 20232 yr Problem: The changed values in the 'mores.toml' configuration file for my mod aren't working ingame. Example: The default value for Copper Shield is 240 The value in 'mores.toml' was changed to 280 The value ingame is still 240 after restarting the game in IntelliJ IDEA. Repository: https://github.com/Leronus/mOres/tree/1.19.2 Relevant files: Main mod file - https://github.com/Leronus/mOres/blob/1.19.2/src/main/java/mod/leronus/mores/Mores.java Config files - https://github.com/Leronus/mOres/blob/1.19.2/src/main/java/mod/leronus/mores/config/Config.java https://github.com/Leronus/mOres/blob/1.19.2/src/main/java/mod/leronus/mores/config/MoresConfig.java https://github.com/Leronus/mOres/blob/1.19.2/src/main/java/mod/leronus/mores/config/ConfigHolder.java Request: Could somebody identify the problem for me, I would very much appreciate it! Thank you in advance. Kind regards, Leronus
May 26, 20232 yr https://github.com/Leronus/mOres/blob/99378b540b0ee0f62eba0fb8c4471abb7aff63c3/src/main/java/mod/leronus/mores/item/ModItems.java#LL486C136-L486C136 The config files are not loaded until after all objects are registered: https://forge.gemwire.uk/wiki/Stages_of_Modloading So your code linked above will just be using the default configuration values. If you want to use configurations for something like that, you need to code it into your item. i.e. it gets the durability dynamically from the config and is not set at registeration time. e.g. https://forums.minecraftforge.net/topic/113328-1182-config-field-does-not-work/?do=findComment&comment=503920 Boilerplate: If you don't post your logs/debug.log we can't help you. For curseforge you need to enable the forge debug.log in its minecraft settings. You should also post your crash report if you have one. If there is no error in the log file and you don't have a crash report then post the launcher_log.txt from the minecraft folder. Again for curseforge this will be in your curseforge/minecraft/Install Large files should be posted to a file sharing site like https://gist.github.com You should also read the support forum sticky post.
May 28, 20232 yr Author I have managed to get the configuration file working using CommentedFileConfig but the order is completely random when generating a new config file everytime. How do I make sure the config file is in the order as defined in the Config.java class? Relevant file: https://github.com/Leronus/mOres/blob/1.19.2/src/main/java/mod/leronus/mores/config/Config.java
May 28, 20232 yr That's not the way to do it. https://github.com/Leronus/mOres/blob/b4215d26b0ddb2cf5beb6f1d41c4d4189bddab14/src/main/java/mod/leronus/mores/Mores.java#L30 Loading config in your mod constructor will just mean the client and server can have different configurations/durabilities in multiplayer mode. Which will lead to all sorts of bugs and glitches. That's why you need a server config and do it dynamically, like it says on that other thread. e.g. what happens if the player joins server1 which has the copper shield with durability 100, then the player switches to server 2 which says it is 200 You have no way to handle this if you just read the client's (probably default) config at mod loading/construction time. Boilerplate: If you don't post your logs/debug.log we can't help you. For curseforge you need to enable the forge debug.log in its minecraft settings. You should also post your crash report if you have one. If there is no error in the log file and you don't have a crash report then post the launcher_log.txt from the minecraft folder. Again for curseforge this will be in your curseforge/minecraft/Install Large files should be posted to a file sharing site like https://gist.github.com You should also read the support forum sticky post.
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.