
You are viewing a potentially older version of this package. View Latest Version
Mod Menu
Configure settings for mods that follow BepInEx ConfigurationManager conventions.Mod Menu
A Mods screen next to the game's Settings, on the title screen and in the pause menu.
Features
- Adds a menu in-game for players to set mod configs that follow the BepInEx ConfigurationManager conventions.
Open it from Settings > Mods.
Multiplayer
Client-side only: other players don't need it, and it doesn't affect joining lobbies.
For mod developers
There's nothing to add for Mod Menu. Your mod's settings appear automatically, and it needs no reference, dependency or extra code.
- Bind your settings with
Config.Bindon your plugin's ownConfig, inAwake. Entries in a separatenew ConfigFile(...)don't appear. - Mod Menu follows the
ConfigurationManager conventions, so set your
settings up as you would for it:
AcceptableValueRangegives a slider,AcceptableValueListor an enum gives a dropdown, aboolgives a toggle, and anything else gets a text box. - Every
ConfigurationManagerAttributesmember is honoured exceptCustomDrawer,CustomHotkeyDrawerandHideSettingName, which draw in ConfigurationManager's own window. Those settings get their normal control instead. The olderSystem.ComponentModelattributes and string tags ("Advanced","Hidden", ...) work too, as does[Browsable(false)]on a plugin class to hide the whole mod.
A few differences from ConfigurationManager's window:
- Settings keep the order you bind them in, within each section, unless you set
Order. Sections keep the order their first setting was bound in. - Without
DispName, the label is the key with spaces added (ParkDistanceshows as "Park Distance"). - Descriptions are TextMeshPro rich text, so avoid
<and>unless you mean them as tags.
Community
Join the CRACK Modding Discord (unofficial, fan-run): https://discord.gg/crack-modding Get help, report bugs, suggest features and hear about new mods first.