1. Please be advised of a few specific rules and guidelines for this section.

RELEASED XModConfig - A system allowing mods to have configurations

Discussion in 'Other' started by XanthicDragon, Feb 15, 2020.

  1. XanthicDragon

    XanthicDragon Void-Bound Voyager

    After seeing the desire for a configuration system for mods for the past ... what, 5 years? I've decided to take it into my own hands.

    The result of this desire is XModConfig, which is a robust and easy-to-use API boasting the ability to configure mods during runtime.
    You can look at the API and its components here: XModConfig README.MD

    You can download the components here:

    Features:
    (this is just a reiteration of the GitHub's README with some added formatting for SB forums)

    [​IMG]
    The interface is clean and straightforward! Unique value types have unique handlers, e.g. booleans get a red or green button.


    [​IMG]
    It's possible to give full detail to your users so they know exactly what they're doing when they change config data.


    [​IMG]
    Numeric values can be clamped, and also restricted to being whole or decimal values.
    Decimal values support localization (using , for a point instead of .)


    Simple and straightforward API!

    You already go through enough crap when it comes to making Starbound mods work. I've got no interest in making that job any harder. It's (ideally) got good enough documentation to make the process of learning to use + implementing this API easy Please do not hesitate to create an issue on the GitHub or respond to this thread requesting better documentation if confusion or difficulty arises!


    Easy setup!

    Implementing configs into your mods is as easy as writing a simple patch file, and writing code to handle known config values. The code does the rest of the work for you. All you need to worry about is handling config flags in your code. You can get a template of the patch file HERE (click here)


    Added features for unsafe Lua!

    WARNING: Unsafe Lua is incredibly dangerous! It is best to treat it similarly to a firearm; never assume it is safe, and always practice extreme discretion and care when using it.

    Never enable unsafe Lua unless you have manually checked to see that none of your mods contain malicious code, and/or you are willing to risk potential catastrophic and irreversible damage to your computer should a mod employ the use of malicious code. You have been warned!

    For your own safety, I will not be showing how to enable this feature. Any damage caused by other mods is not my responsibility. By enabling unsafe Lua, you acknowledge the potential dangers! Although I can personally assure you this mod does not employ malicious code, you should still check yourself because this is a serious security concern for everyone. Please be safe!

    ----

    Are you a private individual who works on your own mods for you and your group of friends? Disgruntled that Starbound doesn't let you reference the player from any context and use logical sides (client/server) to streamline what you can and can't reference? Me too. Enabling Unsafe Lua allows the mod to create a global config file that can be referenced from any Lua context.
    • This creates %appdata%\.StarboundModConfigs\YOUR-MOD-NAME-HERE\config.cfg on Windows
    • This creates ~\.StarboundModConfigs\YOUR-MOD-NAME-HERE\config.cfg on Unix and OS-X.

    Easy for users too!
    XModConfig Interface supports Quickbar Mini for instant mod config access!
     
    Last edited: Feb 17, 2020

Share This Page