Skip to main content

Module mods

Module mods 

Source

Structs§

LoadedMod
One mod discovered under .supreme/mods/.
ModsPageState

Functions§

discover_mods
Scans .supreme/mods/, loads every mod’s mod.json, and pairs each one with its current values from the active configuration in mods.json.
mods_page
persist_mod_configurations
Persists every currently-loaded mod’s in-memory configuration (overrides only, never a mod’s mod.json defaults) into the active configuration in mods.json. Merges with whatever’s already there rather than replacing it wholesale, so a mod not currently in mods (temporarily removed, or failed to load this session) keeps its saved overrides rather than losing them the next time anything else gets persisted. Never touches any mod’s own mod.json, so an edit here can’t clobber a mod author’s rules/parameters/defaults, and replacing a mod’s whole directory (e.g. an update) can’t take a person’s overrides for it along with it.
save_enabled_order
Persists the current display order and enabled set of mods to mods.json: active.order is set directly from mods’ current list order, this is what makes reordering in the UI stick, and, since display order is DLL merge priority for the active configuration, what makes a drag-reorder change priority too. active.enabled is set to the checked subset (membership only; its effective order always comes from active.order via ModsPreset::priority_order, never stored separately). A single call covers both a checkbox toggle and a drag-reorder, since mods already reflects whichever just happened. Called after every checkbox toggle or reorder.
tournament_play_selection
The Play button becomes “Online” when an enabled mod with tournament ui actions has a selection in its active configuration (there is no extra selection file). Returns that selection (for the footer tooltip), or None for a normal Play!.