Jump to content

Recommended Posts

Posted (edited)

Hello again,

 

I have been searching and attempting multiple methods on creating configuration files but I have not succeeded at all. My mod has a version checker and I would like to add a config option to disable it.

 

Does anyone know how to create one?

Edited by Kihron
Posted (edited)

Try around with this.
 

Quote

      This will create a Configfile if needed (must be in the PreInit of the loading Section.)

Quote


        File configFile = new File(Loader.instance().getConfigDir(), "yourConfig.cfg");
        config = new Configuration(configFile);
        config.load();
        Property yourtempvalue = config.get("test", "test value", 100);
        yourValue = yourtempvalue.getInt();
        if(config.hasChanged()){
            config.save();
        }

 

This will load your Value you want. Play around to get Strings and booleans

 

 

I tested it and the File looks like this 

Quote

 

# Configuration file

test {
    I:"test value"=100
}

 


 

Edited by NextInima
Posted

Thank you for the reply, I have some questions.

 

    @EventHandler
    public static void preInit(FMLPreInitializationEvent event)
    {
        File configFile = new File(Loader.instance().getConfigDir(), "keymod.cfg");
        Configuration config = new Configuration(configFile);

        config.load();
        Property update = config.get("Update Checker", "Whether or not the Update Checker runs.", 50);
        if(config.hasChanged())
            config.save();

        proxy.registerKeyBindings();
    }

 

First, does everything go under preInit?

Second, the variables config and update had some errors so I guessed the class for them, are they supposed to be something else?

When I ran the game, under mod options, the config didn't load so I don't know if I did this wrong or not. 

Posted

Hey, I truly am thankful for your help, but sadly it isn't working for me, just a reminder, I'm running 1.8.9 so I don't know if things are different or if you are also testing in that version.

This is what I have now,

 

    @EventHandler
    public static void preInit(FMLPreInitializationEvent event) {
        File configFile = new File(Loader.instance().getConfigDir(), "keymod.cfg");
        Configuration config = new Configuration(configFile);
        config.load();
        Property isOn = config.get("test", "test value", 100);
        int update = isOn.getInt();
        if (config.hasChanged()) {
            config.save();

            proxy.registerKeyBindings();
        }
    }

 

I had to make an assumption that the update variable was an int. 
Sadly, once again when loading the game, under mod options, the config button is grayed out.

  • 3 years later...
Posted
On 5/3/2018 at 2:20 AM, Kihron said:

Thank you for the reply, I have some questions.

 


    @EventHandler
    public static void preInit(FMLPreInitializationEvent event)
    {
        File configFile = new File(Loader.instance().getConfigDir(), "keymod.cfg");
        Configuration config = new Configuration(configFile);

        config.load();
        Property update = config.get("Update Checker", "Whether or not the Update Checker runs.", 50);
        if(config.hasChanged())
            config.save();

        proxy.registerKeyBindings();
    }

 

First, does everything go under preInit?

Second, the variables config and update had some errors so I guessed the class for them, are they supposed to be something else?

When I ran the game, under mod options, the config didn't load so I don't know if I did this wrong or not. 

How can i write or read hte config file on any class ?

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

Announcements



×
×
  • Create New...

Important Information

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