A lightweight mod manager for Marvel Rivals to import, categorize, enable/disable, preview and export UE IoStore mods (.pak/.utoc/.ucas) in the ~MODS folder.
一个专门给 漫威争锋(Marvel Rivals) 用的轻量 Mod 管理器:支持 导入 / 分类 / 启用禁用 / 预览 / 导出,管理 ~MODS 目录里的 UE IoStore Mod 文件(.pak/.utoc/.ucas)。
EN
- ✅ Recursive mod scanning (subfolders supported)
Mods inside subfolders under~MODSare now detected and shown assubdir/modname. - ✅ Disabled mods stored in Paks
Disabled mods are moved to:
...\Marvel\Content\Paks\MR_DISABLED_MODS
This is more stable across game updates than storing disabled files outsidePaks. - ✅ Improved category tagging
When tagging uncategorized mods, you get a hero dropdown list (with the latest heroes), while still allowing custom manual tags. - ✅ Day / Night theme switch
Toggle between light and dark UI themes. - ✅ Nexus preview helper (manual ID/URL supported)
You can fetch a mod cover image from Nexus by providing a Nexus mod URL or mod ID (e.g./mods/6234) and bind it as a preview image.
中文
- ✅ 支持递归扫描(子文件夹识别)
~MODS目录下的子文件夹也会被扫描,界面中显示为子目录/Mod名。 - ✅ 禁用目录移动到 Paks 下更稳
禁用的 Mod 会移动到:
...\Marvel\Content\Paks\MR_DISABLED_MODS
相比放在Paks外更不容易被游戏更新影响。 - ✅ 分类标签更好用
给未分类 Mod 设置标签时,提供 英雄下拉列表(可保持最新英雄),同时仍支持 手动输入自定义标签。 - ✅ 日间/夜间主题切换
一键切换浅色/深色主题。 - ✅ Nexus 预览图助手(支持手动粘贴 URL/ID)
可通过粘贴 Nexus 模组链接或输入 mod ID(例如/mods/6234)来抓取封面并绑定为预览图。
EN This manager can fetch a mod cover image from Nexus Mods and use it as a preview.
- ✅ If the mod name / folder name contains a Nexus Mod ID, the manager will try to detect it automatically.
Example:.../mods/6234→ detects 6234 - ✅ If no ID is found, a dialog will pop up asking you to:
- Paste a Nexus mod URL (e.g.
https://www.nexusmods.com/marvelrivals/mods/6234), or - Enter the mod ID directly (e.g.
6234)
- Paste a Nexus mod URL (e.g.
After the ID is obtained, the manager requests the mod details via Nexus API and downloads the cover image (picture_url) as your preview.
Tip: To make auto-detection easier, keep the mod ID in your zip/folder/mod name when possible.
中文 本管理器可以从 Nexus Mods 自动获取模组封面图,并绑定为本地预览图。
- ✅ 如果 Mod 名称 / 文件夹名称里包含 Nexus 的 Mod ID 编号,程序会自动识别该编号并抓取封面图。
例如:.../mods/6234→ 自动识别 6234 - ✅ 如果 无法找到编号,程序会弹出对话框要求你:
- 粘贴 Nexus 模组链接(例如
https://www.nexusmods.com/marvelrivals/mods/6234),或 - 直接输入 Mod ID(例如
6234)
- 粘贴 Nexus 模组链接(例如
获取到 ID 后,管理器会通过 Nexus API 请求模组详情并下载封面图(picture_url)作为预览图。
小提示:如果你希望尽量自动化,建议在压缩包/文件夹/Mod 名称里保留
6234这类编号,自动识别会更顺畅。
- Scan & group mods by file stem (treat
.pak/.utoc/.ucaswith same stem as one mod) - Enable / Disable mods safely
- Disabled mods are moved to a configurable folder and/or renamed with
.disabled
- Disabled mods are moved to a configurable folder and/or renamed with
- Category sidebar: click a category to filter mods
- Search categories: type keywords (e.g.
man→Mantis) - Manual tags: unknown mods can be assigned your own category label
- Disabled mods list: dedicated window that clearly shows disabled mods
- Import
- Import
.pak/.utoc/.ucasfiles - Import archives (
.zip/.7z/.rar) with safety checks (optional/diff structures will require manual selection)
- Import
- Export selected mods
- Preview
- Bind a preview image for each mod (png/jpg) to help decisions
- Bilingual UI: English / 中文 switch (default English)
Go to Releases and download the latest build:
- GitHub Repo → Releases → download
MarvelRivalsModManager_*.zipor.exe
建议从 Releases 下载打包版,普通用户无需安装 Python。
You can also run the .py source directly (see below).
- Windows 10/11
- Python 3.10+ recommended (3.8+ should work)
Optional dependencies (only needed for some features):
requests(hero list API UI)pillow(jpg/jpeg preview)
Install optional deps:
pip install requests pillow- Windows 10/11
- No Python required
python MarvelRivalsModManager.py- Set Mods folder to your
~MODSdirectory - (Optional) Set Disabled folder (recommended: under
...\Content\Paks\MR_DISABLED_MODS) - Import mods (files or archives)
- Use categories/search to filter
- Double-click a mod to toggle enable/disable
D:\Steam\steamapps\common\MarvelRivals\MarvelGame\Marvel\Content\Paks\~MODS
...\Marvel\Content\Paks\MR_DISABLED_MODS
The app supports custom install locations (different drive/folder paths).
Mods are grouped by file stem (same name prefix). Example (same stem = one mod set):
SomeMod_9999999_P.pakSomeMod_9999999_P.utocSomeMod_9999999_P.ucas
The manager treats them as one mod.
Some mods can be categorized using name keywords (hero name / common aliases).
If a mod is unknown, you can set your own category label:
- Select mod(s) → Set category tag… → type anything (e.g.
Hela,Mantis,SkinName,MyTag)
This is the most reliable way for unusual naming styles.
Many authors pack multiple variants / optional patches / diff folders in one archive. To avoid installing the wrong version, the app performs safety checks.
If the archive contains:
- optional/diff/patch/variant folders, or
- multiple top-level folders that contain mod files
Then the app will show a message like “Manual import recommended”.
- Extract the archive to any folder
- Use Import files…
- Manually select the
.pak/.utoc/.ucasfiles you want
The Delete selected… button permanently deletes selected mod sets:
- Removes
.pak/.utoc/.ucasand any*.disabled - Checks both enabled and disabled folders
You can bind a preview image for each mod:
- Select a mod → Bind preview… → choose an image
Supported:
.png(best).jpg/.jpegrequires Pillow:
pip install pillowUE IoStore mods typically do not provide a stable thumbnail that can be extracted reliably. Manual binding is simple and works consistently.
python -m venv .venv
.\.venv\Scripts\activate
pip install --upgrade pip
pip install pyinstaller requests pillow
pyinstaller --onefile --windowed MarvelRivalsModManager.pyOutput:
dist\MarvelRivalsModManager.exe
pyinstaller --onefile MarvelRivalsModManager.pypyinstaller --onefile --windowed --icon icon.ico MarvelRivalsModManager.pyDo NOT commit dist/ or .exe into the repository history.
Use Releases to upload binaries:
- Repo → Releases → Create a new release
- Tag:
v4.x/ Title:v4.x - Upload
MarvelRivalsModManager_v4.x.zip(or.exe) - Publish
Create .gitignore in repo root:
.idea/
__pycache__/
*.pyc
dist/
build/
*.spec
*.exe
*.zip
mr_mod_manager_config.json
previews/This app can optionally use MarvelRivalsAPI.com to refresh the latest hero list shown in the UI.
It is optional — the manager works without it.
本软件可选使用 MarvelRivalsAPI.com 来刷新 UI 中显示的最新英雄列表。
这是 可选功能,不配置也不影响 Mod 管理的核心功能。
- Open:
https://marvelrivalsapi.com/dashboard/settings - Sign in / create an account
- Click Generate Key (or use an existing key)
The key must be included in the x-api-key header for requests.
In this app:
- Click Set API key… / 设置 API Key…
- Paste your key
- Click Refresh heroes (API) / 刷新英雄列表(API)
curl -X GET "https://marvelrivalsapi.com/api/v1/maps" -H "x-api-key: YOUR_KEY_HERE"Note: Your API key is stored locally in the app config file on your computer. 提示:API Key 只会保存在你本机的配置文件中,不会上传到 GitHub。
This is a community tool and is not affiliated with Marvel Rivals / NetEase / Marvel. Use at your own risk. Keep backups of your mods.
本工具为社区作品,与官方无关。使用风险自担,建议备份 Mods。
This project is licensed under the MIT License. See LICENSE for details.
本项目采用 MIT License,详见 LICENSE 文件。