You are viewing a potentially older version of this package. View all versions.
nickklmao-REPOConfig-1.1.6 icon

REPOConfig

Edit mod configs in-game!

Date uploaded a day ago
Version 1.1.6
Download link nickklmao-REPOConfig-1.1.6.zip
Downloads 44430
Dependency string nickklmao-REPOConfig-1.1.6

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2100 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2100
nickklmao-MenuLib-1.0.5 icon
nickklmao-MenuLib

A library for creating UI!

Preferred version: 1.0.5

README

REPO Config

Edit mod configs in-game!

Installation

  1. Ensure you have BepInEx installed

    • Download BepInEx from BepInEx Releases
    • Extract it into your R.E.P.O. game directory
  2. Download RepoConfig

    • Download the latest release from Thunderstore
    • Place the RepoConfig.dll inside BepInEx/plugins/

For Developers

Click To Expand

The currently supported ConfigEntry types are bool, int, float, UnityEngine.InputSystem.Key, and string

  • string types currently require AcceptableValueList<string>. (See "Setting Up Options" below)

Setting Up Ranges:

  1. Create a ConfigEntry<float> or ConfigEntry<int>
  2. Bind it using AcceptableValueRange<float> or AcceptableValueRange<int>:
floatEntry = Config.Bind("General", "Float Entry", 2f, new ConfigDescription("", new AcceptableValueRange<float>(2.5f, 10.5f)));
intEntry = Config.Bind("General", "Int Entry", 2, new ConfigDescription("", new AcceptableValueRange<int>(0, 100)));

Setting Up Options:

  1. Create a ConfigEntry<string>
  2. Bind it using AcceptableValueList<string>:
gamemodeEntry = Config.Bind("General", "Gamemode", "Survival", new ConfigDescription("", new AcceptableValueList<string>("Creative", "Survival", "Adventure Mode")));

Hiding A Setting (Case-Sensitive)

  1. Create a ConfigEntry
  2. Bind it with a tag HideFromREPOConfig:
floatEntry = Config.Bind("General", "Float Entry", 2f, new ConfigDescription("", null, "HideFromREPOConfig"));

Note

  • Some mods may not have immediate support

CHANGELOG

v1.1.6

  • Supports enum types
    • Enums with the [Flags] attribute won't directly support multiple values, this will come later

v1.1.5

  • Added support for keybindsS
  • Descriptions scroll
    • There's a config option to change the speed

v1.1.4

  • Fixed naming (again)

v1.1.3

  • Added a tag to hide configs from the in-game menu
    • "HideREPOConfig"
  • Auto adds spaces to mod names & setting names
  • Shortened description limit
    • If they wrap to another line, they become harder to read

v1.1.2

  • Added a config option to disable the mod menu from loading
    • This is good for people who make modpacks and don't want others to edit the settings as easily
    • Requires a restart
  • Added descriptions to slider options
  • Added support for option settings
    • Settings that use words rather than numbers
  • Updated the way settings are fetched

v1.1.1

  • Fixed saved changes, it wasn't working properly :sad:

v1.1.0

  • Added save changes button
  • Moved reset button to the bottom
  • Added snapping for the bar indicator
  • Fixed spacing between settings
  • Fixed text scaling
  • Fixed bar indicator from getting stuck when not hovering
  • Updated README for developers
  • Code refactoring
    • This now runs of MenuLib

v1.0.2

  • Updated mod list to reflect mod names rather than assembly names
  • Updated README for developers
    • Added support for ConfigEntry<float>

v1.0.1

  • Updated README

v1.0.0 🔥

  • Initial release