-
-
Notifications
You must be signed in to change notification settings - Fork 0
Getting Started
This guide will walk you through installing and using MLVScan to protect your game from malicious mods.
MLVScan supports MelonLoader, BepInEx 5.x, and BepInEx 6.x (Mono & Il2Cpp). Choose the appropriate section for your mod loader.
- A compatible mod loader installed on your game (MelonLoader or BepInEx)
- Basic familiarity with installing mods
-
Download MLVScan
- Visit the Releases page
- Download the latest
MLVScan.MelonLoader.dll
-
Install the Plugin
- Navigate to your game's installation folder
- Open the
Pluginsfolder (created by MelonLoader) - Copy
MLVScan.MelonLoader.dllinto thePluginsfolder
-
Launch Your Game
- Start your game normally
- MLVScan will automatically initialize and scan all installed mods
- Check the MelonLoader console for scan results
-
Download MLVScan
- Visit the Releases page
- Download the latest
MLVScan.BepInEx.dll
-
Install the Patcher
- Navigate to your game's installation folder
- Open the
BepInEx/patchersfolder - Copy
MLVScan.BepInEx.dllinto theBepInEx/patchersfolder
-
Launch Your Game
- Start your game normally
- MLVScan will automatically initialize and scan all installed plugins
- Check the BepInEx console/log for scan results
-
Download MLVScan
- Visit the Releases page
- Download the latest
MLVScan.BepInEx6.Mono.dll
-
Install the Plugin
- Navigate to your game's installation folder
- Open the
BepInEx/pluginsfolder - Copy
MLVScan.BepInEx6.Mono.dllinto theBepInEx/pluginsfolder
-
Launch Your Game
- Start your game normally
- MLVScan will automatically initialize and scan all installed plugins
- Check the BepInEx console/log for scan results
-
Download MLVScan
- Visit the Releases page
- Download the latest
MLVScan.BepInEx6.IL2CPP.dll
-
Install the Plugin
- Navigate to your game's installation folder
- Open the
BepInEx/pluginsfolder - Copy
MLVScan.BepInEx6.IL2CPP.dllinto theBepInEx/pluginsfolder
-
Launch Your Game
- Start your game normally
- MLVScan will automatically initialize and scan all installed plugins
- Check the BepInEx console/log for scan results
When you launch your game with MLVScan installed:
- Pre-load Analysis: MLVScan scans all mods/plugins before they execute
- Pattern Detection: Uses 17+ detection rules from MLVScan.Core to identify suspicious code
- Hash Verification: Checks mod SHA256 hashes against your whitelist
- Automatic Protection: Disables any mods/plugins with suspicious patterns above the threshold
- Report Generation: Creates detailed reports for any flagged mods/plugins
[MLVScan] Pre-scanning for malicious mods...
[MLVScan] Scanning for suspicious mods...
[MLVScan] No suspicious mods found
[MLVScan] MLVScan initialization complete
[MLVScan] Pre-scanning for malicious mods...
[MLVScan] Scanning for suspicious mods...
[MLVScan] Disabled 1 suspicious mods
[MLVScan] ======= DETAILED SCAN REPORT =======
[MLVScan] SUSPICIOUS MOD: SomeMod.dll
[MLVScan] SHA256 Hash: abc123...
[MLVScan] [CRITICAL] Process execution detected (2 instances)
...
MLVScan creates a configuration section in MelonPreferences.cfg:
[MLVScan]
WhitelistedHashes = ["3918e1454e05de4dd3ace100d8f4d53936c9b93694dbff5bcc0293d689cb0ab7", "8e6dd1943c80e2d1472a9dc2c6722226d961027a7ec20aab9ad8f1184702d138"]
DisableThreshold = Medium
DumpFullIlReports = false- WhitelistedHashes: Array of SHA256 hashes for trusted mods
-
DisableThreshold: Minimum severity level to trigger mod disabling (
Low,Medium,High,Critical) - DumpFullIlReports: Generate complete IL dumps for flagged mods (advanced debugging)
If you're developing your own mods, you can use MLVScan.DevCLI to scan your builds during development:
dotnet tool install --global MLVScan.DevCLI# Scan your built mod
mlvscan-dev MyMod.dll
# Get JSON output for CI/CD
mlvscan-dev MyMod.dll --json
# Fail build on high severity issues
mlvscan-dev MyMod.dll --fail-on HighAdd this to your .csproj to automatically scan after builds:
<Target Name="MLVScanCheck" AfterTargets="Build">
<Exec Command="dotnet mlvscan-dev $(TargetPath)" />
</Target>For more information on the Developer CLI, see the Developer CLI Guide.
On your first launch, MLVScan will:
- Create default configuration in
MelonPreferences.cfg - Initialize a default whitelist (includes common false positives like UnityExplorer, CustomTV)
- Scan all installed mods
- Display results in the console
When MLVScan flags a mod, it generates reports in:
YourGame/UserData/MLVScan/Reports/
├── ModName_20231215_123456.report.txt
├── Prompts/
│ └── ModName.prompt.md
└── IL/
└── ModName_20231215_123456.il.txt (if DumpFullIlReports is enabled)
- Learn about SHA256 hash-based whitelisting
- Understand scan reports
- Use the Developer CLI for mod development
- Troubleshooting common issues
- View frequently asked questions
- Join the Modding Discord
- Check the MLVScan thread in #mod-releases
- Report bugs on GitHub