Jump to content

Recommended Posts

Posted (edited)

Hello, I'm trying to write configuration file, so I search around this site and found config handler full class, and not gonna lie - I took it, I was too lazy to make it myself, I edit a bit and added some functions. Problem is when I use upper case letters in category, it duplicates (code below). The uppercase category "Mod" get none of keys and values, lower case gets it. Also when using lower case, no duplicates, everythink is fine, but all lower cased categories doesn't look great, because I have mod config button enabled, so yeah..
 

# Configuration file

Mod {

    settings {
    }

}


mod {
    B:"Mod Enabled"=true

    settings {
        S:"Custom Toggle Command"=ar:toggle
        B:"Toggle Command"=true
    }

}

How I use config handler
 

@EventHandler
public void onInitialization(FMLInitializationEvent event) {

  if (ConfigHandler.hasCategory("Mod") == false) {
  	ConfigHandler.writeConfig("Mod", "Mod Enabled", true);
  }

  if (ConfigHandler.hasCategory("Mod.settings") == false) {
  	ConfigHandler.writeConfig("Mod.settings", "SEOL", 0);
  	ConfigHandler.writeConfig("Mod.settings", "Toggle Command", true);
 	ConfigHandler.writeConfig("Mod.settings", "Custom Toggle Command", "ar:toggle");
  }
}

ConfigHandler class, not full, writeConfig() only, and also init()

	public static void init() {
		config = new Configuration(new File(file));
		try {
			config.load();
		} catch (Exception e) {
			System.out.println("Cannot load configuration file!");
		} finally {
			config.save();
		}
	}

	public static void writeConfig(String category, String key, String value) {
		config = new Configuration(new File(file));
		try {
			config.load();
			String set = config.get(category, key, value).getString();
			config.getCategory(category).get(key).set(value);
		} catch (Exception e) {
			System.out.println("Cannot load configuration file!");
		} finally {
			config.save();
		}
	}
	
	public static void writeConfig(String category, String key, int value) {
		config = new Configuration(new File(file));
		try {
			config.load();
			int set = config.get(category, key, value).getInt();
			config.getCategory(category).get(key).set(value);
		} catch (Exception e) {
			System.out.println("Cannot load configuration file!");
		} finally {
			config.save();
		}
	}
	
	public static void writeConfig(String category, String key, boolean value) {
		config = new Configuration(new File(file));
		try {
			config.load();
			boolean set = config.get(category, key, value).getBoolean();
			config.getCategory(category).get(key).set(value);
		} catch (Exception e) {
			System.out.println("Cannot load configuration file!");
		} finally {
			config.save();
		}
	}
	
	public static void writeConfig(String category, String key, long value) {
		config = new Configuration(new File(file));
		try {
			config.load();
			long set = config.get(category, key, value).getInt();
			config.getCategory(category).get(key).set(value);
		} catch (Exception e) {
			System.out.println("Cannot load configuration file!");
		} finally {
			config.save();
		}
	}
	
	public static void writeConfig(String category, String key, double value) {
		config = new Configuration(new File(file));
		try {
			config.load();
			double set = config.get(category, key, value).getDouble();
			config.getCategory(category).get(key).set(value);
		} catch (Exception e) {
			System.out.println("Cannot load configuration file!");
		} finally {
			config.save();
		}
	}
	
	public static void writeConfig(String category, String key, short value) {
		config = new Configuration(new File(file));
		try {
			config.load();
			int set = config.get(category, key, value).getInt();
			config.getCategory(category).get(key).set(Integer.valueOf(value));
		} catch (Exception e) {
			System.out.println("Cannot load configuration file!");
		} finally {
			config.save();
		}
	}

	public static void writeConfig(String category, String key, byte value) {
		config = new Configuration(new File(file));
		try {
			config.load();
			int set = config.get(category, key, value).getInt();
			config.getCategory(category).get(key).set(Integer.valueOf(value));
		} catch (Exception e) {
			System.out.println("Cannot load configuration file!");
		} finally {
			config.save();
		}
	}

	public static void writeConfig(String category, String key, float value) {
		config = new Configuration(new File(file));
		try {
			config.load();
			double set = config.get(category, key, value).getDouble();
			config.getCategory(category).get(key).set(Double.valueOf(value));
		} catch (Exception e) {
			System.out.println("Cannot load configuration file!");
		} finally {
			config.save();
		}
	}
}

 

Edited by ItsTautvydas
  • Guest locked this topic
Guest
This topic is now closed to further replies.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • If you are using AMD/ATI, update your drivers - get the drivers from their website - do not update via system
    • Not sure why this is happening, but I would love some help. The reason I restarted the server was because I was getting an error while trying to join regarding this "Internal Exception: io.netty.handler.codec.DecoderException: io.netty.handler.codec.EncoderException: java.io.IOException: Root tag must be a named compound tag" Im using ServerMiner if thats any help
    • [13-05-2025 02:20:01]    |-- fabric-renderer-registries-v1 3.2.25+df3654b390 [13-05-2025 02:20:01]    |-- fabric-rendering-data-attachment-v1 0.3.19+6e0787e690 [13-05-2025 02:20:01]    |-- fabric-rendering-fluids-v1 3.0.11+4d0d570390 [13-05-2025 02:20:01]    |-- fabric-rendering-v0 1.1.28+df3654b390 [13-05-2025 02:20:01]    |-- fabric-rendering-v1 1.13.0+526f2c6790 [13-05-2025 02:20:01]    |-- fabric-resource-conditions-api-v1 2.1.2+aae9039d90 [13-05-2025 02:20:01]    |-- fabric-resource-loader-v0 0.8.4+edbdcddb90 [13-05-2025 02:20:01]    |-- fabric-screen-api-v1 1.0.32+4d0d570390 [13-05-2025 02:20:01]    |-- fabric-screen-handler-api-v1 1.3.8+1cc24b1b90 [13-05-2025 02:20:01]    |-- fabric-sound-api-v1 1.0.2+c4f28df590 [13-05-2025 02:20:01]    |-- fabric-textures-v0 1.0.24+aeb40ebe90 [13-05-2025 02:20:01]    |-- fabric-transfer-api-v1 2.1.6+413cbbc790 [13-05-2025 02:20:01]    \-- fabric-transitive-access-wideners-v1 1.3.3+08b73de490 [13-05-2025 02:20:01] - fabricloader 0.16.14 [13-05-2025 02:20:01]    \-- mixinextras 0.4.1 [13-05-2025 02:20:01] - geckolib3 3.1.40 [13-05-2025 02:20:01]    \-- com_eliotlash_mclib_mclib 20 [13-05-2025 02:20:01] - genesis 1.19.2-1.0.2 [13-05-2025 02:20:01] - grounded_origins 1.2.3 [13-05-2025 02:20:01]    \-- apugli 1.9.3+1.19-fabric [13-05-2025 02:20:01] - icarus 1.14.1 [13-05-2025 02:20:01] - identity 2.6.1-1.19.1 [13-05-2025 02:20:01]    \-- omega-config 1.2.3-1.18.1 [13-05-2025 02:20:01] - impaled 1.1.4 [13-05-2025 02:20:01] - itemfig 1.19.2-0.2.7-fabric [13-05-2025 02:20:01] - java 17 [13-05-2025 02:20:01] - journeymap 5.9.8 [13-05-2025 02:20:01]    \-- journeymap-api-fabric 1.19.1-1.9-fabric-SNAPSHOT [13-05-2025 02:20:01] - landchidori 1.0.3 [13-05-2025 02:20:01] - latoorigins 1.19.2-1.1.0 [13-05-2025 02:20:01] - lithium 0.11.1 [13-05-2025 02:20:01] - magic_origins v0.3.5 [13-05-2025 02:20:01] - medievalorigins 5.1.9.2+1.19.2 [13-05-2025 02:20:01]    |-- additionalentityattributes 1.4.0+1.19.2 [13-05-2025 02:20:01]    |-- common-protection-api 1.0.0 [13-05-2025 02:20:01]    \-- reach-entity-attributes 2.3.0 [13-05-2025 02:20:01] - midnightlib 1.0.0 [13-05-2025 02:20:01] - minecraft 1.19.2 [13-05-2025 02:20:01] - moborigins 1.10.0 [13-05-2025 02:20:01] - mrplaguewarper 1.0.8 [13-05-2025 02:20:01] - mythic 1.0.2 [13-05-2025 02:20:01] - mythorigins 1.19-0.2.0 [13-05-2025 02:20:01] - omnitrix_origins 1.0.0 [13-05-2025 02:20:01] - oneporigins 1.0 [13-05-2025 02:20:01] - origins 1.7.1 [13-05-2025 02:20:01]    |-- apoli 2.6.1 [13-05-2025 02:20:01]    |    |-- calio 1.7.0 [13-05-2025 02:20:01]    |    |-- cardinal-components-base 5.0.1 [13-05-2025 02:20:01]    |    |-- cardinal-components-entity 5.0.1 [13-05-2025 02:20:01]    |    |-- cloth-config 8.0.75 [13-05-2025 02:20:01]    |    |    \-- cloth-basic-math 0.6.1 [13-05-2025 02:20:01]    |    \-- playerabilitylib 1.6.0 [13-05-2025 02:20:01]    \-- reach-entity-attributes 2.3.0 [13-05-2025 02:20:01] - origins-plus-plus 2.3.1 [13-05-2025 02:20:01] - origins_4d_being 1.0.0 [13-05-2025 02:20:01] - origins_vampire_mr 1-v2.1.0 [13-05-2025 02:20:01] - originsumbrellas 1.5.4 [13-05-2025 02:20:01] - pehkui 3.8.3+1.14.4-1.21 [13-05-2025 02:20:01]    \-- kanos_config 0.4.1+1.14.4-1.19.4 [13-05-2025 02:20:01] - promans_origins 1.0.0 [13-05-2025 02:20:01] - rpg_origins 1.4.3 [13-05-2025 02:20:01] - sculkling 1.0.0 [13-05-2025 02:20:01] - seleni 0.2.5+1.19.2 [13-05-2025 02:20:01] - slimeorigin 2.0.2-1.19.2 [13-05-2025 02:20:01] - spilaioorigins 1.19-0.3.0 [13-05-2025 02:20:01] - thiccpackets 1.17-1.19+ [13-05-2025 02:20:01] - thorigins 4.2.0 [13-05-2025 02:20:01] - trinkets 3.4.2 [13-05-2025 02:20:01] - voidwalker 1.0.0 [13-05-2025 02:20:01] - yee 3.0.3 [13-05-2025 02:20:01] Found 1 non-fabric mod: [13-05-2025 02:20:01] - better_weapons-1.jar [13-05-2025 02:20:01] SpongePowered MIXIN Subsystem Version=0.8.7 Source=file:/home/smpicnic/server/data/libraries/net/fabricmc/sponge-mixin/0.15.5+mixin.0.8.7/sponge-mixin-0.15.5+mixin.0.8.7.jar Service=Knot/Fabric Env=SERVER [13-05-2025 02:20:01] Compatibility level set to JAVA_17 [13-05-2025 02:20:02] Loaded configuration file for Lithium: 114 options available, 0 override(s) found [13-05-2025 02:20:02] Error loading class: net/minecraft/class_998 (java.lang.ClassNotFoundException: net/minecraft/class_998) [13-05-2025 02:20:02] @Mixin target net.minecraft.class_998 was not found impaled.mixins.json:TridentRiptideFeatureRendererMixin from mod impaled [13-05-2025 02:20:02] Initializing MixinExtras via com.llamalad7.mixinextras.service.MixinExtrasServiceImpl(version=0.4.1). [13-05-2025 02:20:03] Method overwrite conflict for revertScale in slimeorigin.mixins.json:MixinLivingEntity from mod slimeorigin, previously written by latokike.mythorigins.mixin.LivingEntityMixin. Skipping method. [13-05-2025 02:20:03] Added Config bclib.generator to auto sync (file hash) [13-05-2025 02:20:03] Added Config bclib.main to auto sync (content diff) [13-05-2025 02:20:03] Added Config bclib.recipes to auto sync (file hash) [13-05-2025 02:20:03] Added Config bclib.biomes to auto sync (file hash) [13-05-2025 02:20:04] Method overwrite conflict for damage in spilaioorigins.mixins.json:ItemStackMixin from mod spilaioorigins, previously written by latokike.latoorigins.mixin.ItemStackMixin. Skipping method. [13-05-2025 02:20:05] Building unoptimized datafixer [13-05-2025 02:20:05] Method overwrite conflict for method_6091 in moborigins.mixins.json:RavagerEntityMixin from mod moborigins, previously written by draylar.identity.mixin.RavagerEntityMixin. Skipping method. [13-05-2025 02:20:05] Minecraft has crashed! [13-05-2025 02:20:05] net.fabricmc.loader.impl.FormattedException: java.lang.NoSuchFieldError: ATTACK_DAMAGE_MODIFIER [13-05-2025 02:20:05] at net.fabricmc.loader.impl.FormattedException.ofLocalized(FormattedException.java:63) ~[fabric-loader-0.16.14.jar:?] [13-05-2025 02:20:05] at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:482) ~[fabric-loader-0.16.14.jar:?] [13-05-2025 02:20:05] at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74) [fabric-loader-0.16.14.jar:?] [13-05-2025 02:20:05] at net.fabricmc.loader.impl.launch.knot.KnotServer.main(KnotServer.java:23) [fabric-loader-0.16.14.jar:?] [13-05-2025 02:20:05] at net.fabricmc.loader.impl.launch.server.FabricServerLauncher.main(FabricServerLauncher.java:69) [fabric-loader-0.16.14.jar:?] [13-05-2025 02:20:05] Caused by: java.lang.NoSuchFieldError: ATTACK_DAMAGE_MODIFIER [13-05-2025 02:20:05] at net.minecraft.class_1799.<clinit>(class_1799.java:126) ~[server-intermediary.jar:?] [13-05-2025 02:20:05] at net.minecraft.class_1761.<init>(class_1761.java:114) ~[server-intermediary.jar:?] [13-05-2025 02:20:05] at net.minecraft.class_1761$1.<init>(class_1761.java:15) ~[server-intermediary.jar:?] [13-05-2025 02:20:05] at net.minecraft.class_1761.<clinit>(class_1761.java:15) ~[server-intermediary.jar:?] [13-05-2025 02:20:05] at net.minecraft.class_1802.<clinit>(class_1802.java:22) ~[server-intermediary.jar:?] [13-05-2025 02:20:05] at net.minecraft.class_1308$Anonymous$dedb2ce0fc304852b6ae6ea54fec0e73.<init>(DropSkullsMixins.java:23) ~[?:?] [13-05-2025 02:20:05] at net.minecraft.class_1308.<clinit>(class_1308.java:87) ~[server-intermediary.jar:?] [13-05-2025 02:20:05] at net.minecraft.class_1299.<clinit>(class_1299.java:260) ~[server-intermediary.jar:?] [13-05-2025 02:20:05] at net.minecraft.class_3103.<clinit>(class_3103.java:28) ~[server-intermediary.jar:?] [13-05-2025 02:20:05] at net.minecraft.class_3031.<clinit>(class_3031.java:84) ~[server-intermediary.jar:?] [13-05-2025 02:20:05] at net.minecraft.class_6800.<clinit>(class_6800.java:20) ~[server-intermediary.jar:?] [13-05-2025 02:20:05] at net.minecraft.class_6803.method_39702(class_6803.java:24) ~[server-intermediary.jar:?] [13-05-2025 02:20:05] at net.minecraft.class_5458.method_44104(class_5458.java:98) ~[server-intermediary.jar:?] [13-05-2025 02:20:05] at net.minecraft.class_5458.method_30566(class_5458.java:105) ~[server-intermediary.jar:?] [13-05-2025 02:20:05] at java.util.LinkedHashMap.forEach(LinkedHashMap.java:721) ~[?:?] [13-05-2025 02:20:05] at net.minecraft.class_5458.<clinit>(class_5458.java:104) ~[server-intermediary.jar:?] [13-05-2025 02:20:05] at net.minecraft.class_2378.<clinit>(class_2378.java:326) ~[server-intermediary.jar:?] [13-05-2025 02:20:05] at net.minecraft.class_2966.method_12851(class_2966.java:50) ~[server-intermediary.jar:?] [13-05-2025 02:20:05] at net.minecraft.server.Main.main(Main.java:98) ~[server-intermediary.jar:?] [13-05-2025 02:20:05] at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:480) ~[fabric-loader-0.16.14.jar:?] [13-05-2025 02:20:05] ... 3 more
    • Every time I try to run a modpack I am using, I get a crash error saying that it was caused by an invalid Java Runtime configuration. I have tried everything I can think of to try and debug it but nothing has worked. https://pastebin.com/ddxQTLh4
    • ok i tried to disable the last mod's i installed and it is some of then, so now im going to do the classic enable and disable trick to find out which mod cause the crash. thanks for the help  
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.