Survival Log Database中文
Mod Manager: Lists every installed mod, turns mods on or off, and changes their settings in-game.

Mod Manager

Lists every installed mod, turns mods on or off, and changes their settings in-game.

Version
0.8.2
Game build
1.1.19611
Category
Tools
Settings
3
Hotkeys
1
Versions
10
Languages
English, 中文

Mod Manager adds a Mods screen to Survival Log. It lists every BepInEx mod you have installed, shows whether each one loaded, and lets you change their settings, turn them on or off and install their updates, all without opening a .cfg file. Open it with F10, or with the Mods button in the Esc menu or on the title screen.

Highlights

Every mod in one list

icon, version and DLL for each mod, with the ones that did not start listed apart along with BepInEx's load errors. Shared libraries sit in a folded group at the bottom.

Change settings in-game

switches, sliders, number boxes, drop-down lists, text boxes and key capture for hotkeys. Each change is saved to the mod's .cfg file at once.

Knows what needs a restart

changed settings that apply at the next start are marked NEEDS RESTART. Settings a mod applies at once get no mark.

Item pickers

settings that hold game items or categories get a searchable picker with names and icons, instead of a box for id numbers.

Search, reset, clashes

find any setting across all mods, see which ones differ from the default and put them back, and spot hotkeys two mods share.

Errors tab

warnings and errors logged this session show up under the mod they came from, with an ERROR or WARNING mark in the list and an "Errors" filter. When an error went through game code another mod also changes, the tab names that mod. Errors from BepInEx or the game itself get their own ERRORS page beside MODS.

See all 14 features

Everything it does 14

Every mod in one list

icon, version and DLL for each mod, with the ones that did not start listed apart along with BepInEx's load errors. Shared libraries sit in a folded group at the bottom.

Change settings in-game

switches, sliders, number boxes, drop-down lists, text boxes and key capture for hotkeys. Each change is saved to the mod's .cfg file at once.

Knows what needs a restart

changed settings that apply at the next start are marked NEEDS RESTART. Settings a mod applies at once get no mark.

Item pickers

settings that hold game items or categories get a searchable picker with names and icons, instead of a box for id numbers.

Search, reset, clashes

find any setting across all mods, see which ones differ from the default and put them back, and spot hotkeys two mods share.

Errors tab

warnings and errors logged this session show up under the mod they came from, with an ERROR or WARNING mark in the list and an "Errors" filter. When an error went through game code another mod also changes, the tab names that mod. Errors from BepInEx or the game itself get their own ERRORS page beside MODS.

Copy mod list

one button copies every mod with its version and state, and this session's errors, ready to paste into a bug report.

Turn mods on or off

a switch on each mod's page, applied at the next start. It warns about mods that need the one you turn off, and turns on what a mod needs with one button.

Dependencies

each mod's page lists what it needs (with the version it asks for), what it can use, what it does not work with, and which mods need or use it. A missing, off or wrong-version mod is marked red.

Update checks and installs

at each start it asks GitHub which mods have a newer release and shows one message saying how many. INSTALL UPDATE downloads the new version and puts it in place for the next start, keeping the old files. INSTALL ALL UPDATES does every mod at once and marks any update it stopped, the page shows the notes of every release since yours, and ROLL BACK puts the old version back if the new one gives you trouble. Each update is checked first: it must be the same mod, from the same GitHub repository as before, with no program files. An update that newly starts programs, loads other code or uses the registry is refused, and one that can do something else the old version could not (like connect to the internet) asks you before it installs.

Conflicts tab

each mod's page lists the other mods that patch the same parts of the game, marked LIKELY TO CLASH, MAY CLASH or PROBABLY HARMLESS, so you know where to look first when two mods misbehave together.

Changelog tab

a mod that links its changelog gets a CHANGELOG tab that shows it right on the mod's page.

Tabs from other mods

a mod can add a tab with its own page to its entry. New Loop Plus adds TALENTS, an editor for its loop rewards.

Game version warning

a mod not known to work on your game version gets a grey mark, which turns red if it logs errors. Mod authors can list newer game versions their mod works on without a new release.

The Mod Manager adds nothing to your save and does not edit game files. It only contacts GitHub, for update checks and installs, and needs no account or key.

For mod authors

Your mod shows up with no work at all. To give it a name in both languages, an icon, a banner, a category, links, item pickers, live settings, update installs and more, add a few lines of metadata to your .csproj; nothing needs a reference to the Mod Manager. The full guide is in the README.

Works in English and Chinese.

Settings 3

Saved inBepInEx\config\com.dev.survivallog.modmanager.cfgChange them on the Mod Manager's Mods screen, or edit the file with the game closed.

Menu

[Menu]

While the Mods screen is open, the game's own hotkeys are paused, and Esc closes the screen. While you type in a box on the screen, keys go to the box instead.

OpenKey
Key
Default F10
The key that opens and closes the Mods screen. The Mods button in the Esc menu and on the title screen opens it too. Set it to None to use only the buttons.
打开和关闭「模组」界面的按键。Esc 菜单和标题画面中的「模组」按钮也能打开它。默认 F10。

Updates

[Updates]
CheckForUpdates
On / off
Default On
Each time the game starts, ask GitHub whether mods that name a GitHub repository have a newer release. Only GitHub is contacted, and no account or key is needed. Turning it off stops the checks at once.
每次启动游戏时,向 GitHub 查询标明了 GitHub 仓库的模组是否有新版本。只会连接 GitHub,不需要账号或密钥。默认开启。
ShowToast
On / off
Default On
After the update check at the start, show one message saying how many mods have updates. Click it to see them.
启动时检查更新后,显示一条消息,说明有多少个模组有更新。点击即可查看。默认开启。

Hotkeys 1

F10

The key that opens and closes the Mods screen. The Mods button in the Esc menu and on the title screen opens it too. Set it to None to use only the buttons.

Install

  1. Install BepInEx (if no other mods were installed before, start the game once so BepInEx finishes setup, then quit).
  2. Install Exiled's Toolkit 0.4.0 or later.
  3. Download the zip from the Files tab on Nexus.
  4. Extract it into the game folder (the folder with SurvivalLog.exe). The zip holds a BepInEx folder, so the DLL lands in the right place. When asked, merge the folders. The result should be:
    C:\Program Files (x86)\Steam\steamapps\common\Survival Log\BepInEx\plugins\ModManager.dll

Where it goes

Survival Log\
├─ SurvivalLog.exe
└─ BepInEx\
   ├─ plugins\
   │  └─ ModManager.dll
   └─ config\
      └─ com.dev.survivallog.modmanager.cfg   (made on first start)

Uninstall

Delete ModManager.dll from the BepInEx\plugins folder. Settings you changed with it stay in the other mods' .cfg files.

Settings

The Mod Manager's own settings (the key that opens it, update checks, the update message) can be changed on the Mods screen, or in BepInEx\config\com.dev.survivallog.modmanager.cfg while the game is closed (see CONFIG.md; the cfg file explains each setting in English and Chinese).

Changelog 10 versions

  1. 0.8.2On NexusGame 1.1.19611
    • The Mods button in the Esc menu and on the title screen shows the moment the menu opens, instead of popping in up to a second later.
  2. 0.8.1Game 1.1.19131Game 1.1.19611
    • After INSTALL ALL UPDATES, an update that waits for INSTALL ANYWAY is marked ASK in the mod list, and a refused one is marked REFUSED. A line under the button says how many of each there are.
  3. 0.8.0Game 1.1.19131
    • Updates are checked before they are installed:
      • The new DLL must be the same mod (the same BepInPlugin GUID) as the one installed. A zip that holds a program file (.exe, .bat, .ps1 and the like), or a file name Windows would change, is refused.
      • A mod's updates must keep coming from the GitHub repository its first install came from. A repository that was deleted and made again under the same name by someone else is not installed from; use GET UPDATE to install by hand if you trust it.
      • An update that starts doing something harmful code needs and a game mod does not (starting other programs, loading other code, using the Windows registry) is refused. A mod that already did it when installed keeps updating.
      • When an update can do something else the installed version could not (connect to the internet, call native code, open links or files in other programs, or add another DLL), its page says what, and it is installed only when you click INSTALL ANYWAY. INSTALL ALL UPDATES skips these.
      • A refused update says why on its page and is not offered again until the next start. GET UPDATE still lets you install it by hand.
  4. 0.7.0Game 1.1.19131
    • Mods can add a tab of their own to their page on the Mods screen, with any page they like (New Loop Plus uses it to edit its loop rewards). See "Your own tab" under "For mod authors" in the README.
    • Text boxes with several lines take the keyboard the same way one-line boxes do.
    • A mod's author can list the game versions each version of the mod works on in a game-versions.txt in its GitHub repository, so a mod that still works after a game update is no longer marked. See "Game versions it works on" under "For mod authors" in the README.
    • A mod not known to work on this game version gets a grey VERSION mark and a note that it may still work. The mark turns red, and the note says it may need an update, once the mod logs errors this session.
  5. 0.6.0Game 1.1.18902Game 1.1.19131
    • INSTALL ALL UPDATES at the top of the "Updates" filter installs every available update at once.
    • ROLL BACK TO (version): after an update, put the files it replaced back for the next start.
    • A mod's page shows the release notes of every release since your version, not only the latest.
    • A mod's page has a CONFLICTS tab listing the other mods that change the same game code, which parts, and what each mod does there. Each is marked LIKELY TO CLASH (both rewrite the game code), MAY CLASH (one can skip or rewrite it) or PROBABLY HARMLESS, riskiest first.
    • Errors and warnings logged this session are listed under the mod they came from: an ERRORS tab on the mod's page (with the message, the stack, and how many times it happened), an ERROR or WARNING mark in the list, and an "Errors" filter. When an error went through game code that another mod also changes, the tab names that mod, which is evidence of a real clash. Errors that belong to no mod (BepInEx, the game itself) have their own ERRORS page beside MODS at the top. COPY MOD LIST includes them all.
    • A mod that links its changelog gets a CHANGELOG tab next to CONFLICTS, which shows the changelog on the mod's page.
    • A mod's page shows the version range of each mod it needs, and marks an installed version outside that range as wrong version.
    • A mod's page lists the mods that need it (NEEDED BY) and the ones that can use it (USED BY (OPTIONAL)). A mod that needs it turns red while it is off.
    • A mod with too many sections for one row of tabs lists them down the left side of its settings instead.
    • Changing the view redraws only what changed, so the screen no longer flashes and replays its fade-in on every click.
    • Fixed: a mod with an optional dependency lost its name, description, links and relations on the Mods screen, because its dependency could not be read.
    • Fixed: a mod could be turned off while its update was downloading, which left its old and new DLLs in different folders and blocked ROLL BACK. While an update downloads, and after an install or rollback until the next start, the mod's switch is locked.
    • Fixed: during a burst of errors too fast to read, the count of errors not shown left out the ones that were skipped.
    • Update checks and changelogs read at most 4 MB from a server, so a broken changelog link cannot fill the game's memory.
    • The Mod Manager's own entry shows its name in Chinese, the game version it was made for, and a link to this changelog.
    • The Chinese description of the open key names the 「模组」 button as the game shows it in Chinese.
  6. 0.5.0
    • Item pickers: settings that hold game items, lists of items, items with amounts, or item categories can ask for a picker with names and icons in the game's language, instead of a box for id numbers.
    • Mods can hide a setting until another setting has a given value, and fold rarely used settings into an "Advanced" group.
    • Mods can show a banner across the top of their page and a CHANGELOG link.
    • Mods can list fixed hotkeys they use. They show on the mod's page and count in the hotkey clash check.
    • COPY MOD LIST at the bottom of the screen copies every mod with its version and state, for bug reports.
  7. 0.4.0
    • Install updates: INSTALL UPDATE downloads the release's zip from GitHub and puts the new files in place for the next start. The old files are kept in BepInEx\mod-manager\backups, and a failed install puts them back.
    • One message at the start says how many mods have updates; click it to see them. Turn it off with Updates.ShowToast.
    • Settings show whether a change needs a restart: NEEDS RESTART, MAY NEED RESTART, or no mark for settings the mod applies at once. Mods built on Exiled's Toolkit 0.4.0 can apply settings live.
    • A mod's page lists the mods it needs, works with and does not work with. TURN ON WHAT IT NEEDS turns on the ones it needs for the next start.
    • Mods can give a name and description in English and Chinese, an icon, a category, a link for reporting problems, and the game version they were made for. A mod made for another game version is marked VERSION.
    • Shared libraries sit in a folded "Libraries" group at the bottom of the list.
    • Mods can opt out of update checks, and a mod's GitHub repository is found from its RepositoryUrl when it does not name one.
    • The title-screen button reads "Mods", to match the other buttons there.
    • Needs Exiled's Toolkit 0.4.0 or later.
  8. 0.3.0
    • Update checks: at each game start, mods that name a GitHub repository are checked for a newer release. Mods with an update are marked in the list and get an "Updates" filter, and their page shows the release notes and a GET UPDATE button that opens the release page. No account or key is needed. Turn it off with Updates.CheckForUpdates.
  9. 0.2.0
    • Turn mods on or off from a switch on each mod's page. The DLL moves to BepInEx\disabled-plugins (or back) and the change applies at the next start. Turned-off mods are listed under "Off". Turning a mod off names the mods that need it.
    • Mods can show a description, their author, and Nexus Mods, GitHub and website links. Mod authors set these with assembly metadata; see "For mod authors" in the README.
  10. 0.1.0
    • First release.
    • An in-game Mods screen lists every installed mod, shows whether it loaded, and changes its settings.
    • Open it with F10, or the MODS button in the Esc menu and on the title screen.
    • Needs Exiled's Toolkit 0.3.0 or later.

Help

Known issues

  • It only shows settings that mods register with BepInEx.
  • Many mods read a setting only when the game starts. Such changes are saved at once and used after the next start.
  • The Mod Manager and Exiled's Toolkit cannot be turned off from the screen. Delete their DLLs to remove them.
  • While a mod's update downloads, and after an install or rollback until the next start, its switch is locked.
  • Update checks only cover mods that name a GitHub repository, and INSTALL UPDATE needs the release to carry a .zip with the mod's DLL. Otherwise GET UPDATE opens the release page.
  • GitHub allows 60 requests an hour without an account. Past that, release notes and installs say to try again later.

Found a bug?

Found a bug or have an idea? Come say hi on the Core Directive Discord, or leave a comment here. For bugs, please include BepInEx\LogOutput.log and BepInEx\mod-manager.log.
To reach me directly, message exiled.dev on Discord; you can find me in the official Survival Log Discord. I'm also on X as @AnExiledDev.
Check out my Survival Log wiki for items, crafting, maps and more.