MageConfigurationAPI

v1.3.1·Updated 2025-08-10

An API that implements a settings menu to change BepInEx Configs.

About this mod Author’s original text

MageConfigurationAPI

This BepInEx mod provides a centralized configuration system for Mage Arena mods, allowing all registered BepInEx configurations to appear in the game's settings menu automatically.

Features

  • Automatic UI Integration: Registered configurations appear in-game without additional GUI work
  • Mod Configuration Access: Safely access configurations from other mods
  • Change Notification: Subscribe to events when configurations change
  • Type-Safe Access: Get configuration values with proper type handling
  • BepInEx Config Description Tags: Settings GUI will automatically check BepInEx Config Description Tag validation

Installation

  • Prerequisites:
  • Mage Arena with BepInEx 5.4.21
  • Installation:

MageArena/

└── BepInEx/

└── plugins/

├── MageConfigurationAPI.dll

Usage for Mod Developers

Basic Configuration Registration

using BepInEx;

using BepInEx.Configuration;

using MageConfigurationAPI.Data;

[BepInPlugin(PluginGuid, PluginName, PluginVersion)]

public class YourPlugin: BaseUnityPlugin

{

private const string PluginGuid = "your.mod.guid";

private ConfigEntry ExampleSetting;

private void Awake()

{

// Create standard BepInEx config entry

ExampleSetting = Config.Bind(

"Section Name",

"Setting Name",

0.5f,

"Description of this setting"

);

// Register with MageConfigurationAPI

var registeredConfig = new ModConfig(this, ExampleSetting);

}

}

Advanced Features

// Accessing other mods' configurations

var otherModConfig = ConfigManager.GetConfigByGUIDAndName(

"other.mod.guid",

"TheirSettingName"

);

// Subscribing to configuration changes

registeredConfig.SettingChanged += (sender, args) =>

{

Logger.LogInfo($"Setting changed to: {args.ChangedSetting.BoxedValue}");

};

Configuration Support

  • Types:
  • (bool, int, float, string, Enums)
  • Tags:
  • BepInEx Config Description Tags

Changelog

v1.3.1

  • Fixed issues with settings positioning.

v1.3.0

  • Fixed issues with subscribing to OnSettingChanged in ModConfig.

v1.2.0

  • Remove testing configs.

v1.1.0

  • Added settings flag to choose when the option is visible.

v1.0.0

  • Initial public release.
  • Core configuration registration system.
  • Basic in-game UI integration.

Install & use Install: follow the bundled instructions

  1. Unzip the archive from playbuff and read the bundled readme / instructions first.
  2. Most mods rely on the game's mod loader — the usual route is a community mod manager (such as r2modman): pick this game, install, and it handles the loader and dependencies.
  3. For a manual install, put the mod files into the matching Mod / plugins folder inside the game directory.
  4. Launch the game to confirm it loaded; mods with listed dependencies need those installed as well.

Install locations vary a lot between mods — the bundled readme is the most reliable guide.

Dependencies

Install these first, or the mod will not work:

BepInEx-BepInExPack

File & checksum

Filename
MageConfigurationAPI-1.3.1.zip
File size
39.6 KiB