- Debug Mode is for Development Purposes.
Use it to help Develop and Debug MelonLoader, Plugins, and Mods. - All Logs are made in the created
MelonLoader/Logs
folder in your Game's Installation Folder. - All Plugins get placed in the created
Plugins
folder in your Game's Installation Folder. - All Mods get placed in the created
Mods
folder in your Game's Installation Folder. - The Official Wiki
- Proxies
- Launch Options
- Debugging
- Linux Support (WINE / STEAM PROTON / NATIVE)
- Android & Oculus Quest Support (WIP)
Usage Guides: |
---|
INSTALLER |
MANUAL USE |
Example Projects: |
---|
TestPlugin |
TestMod |
Nightly Builds: |
---|
master |
alpha-development |
universality |
- Givo
- Florian Fahrenberger
- Python
- SirCoolness
- SlidyDev
On Windows, the .NET 6.0 Desktop Runtime will be installed automatically
- Follow the Instructions in one of the Guides linked below.
Installer Guides: |
---|
INSTALL |
UPDATE |
RE-INSTALL |
UN-INSTALL |
- Follow the Steps to UN-INSTALL
- Follow the Steps to INSTALL
- Make sure the Game is Closed and Not Running before attempting to Install.
- Make sure you have all the Requirements Installed before attempting to Install.
- Download MelonLoader [x86] [x64]
- Extract the MelonLoader folder from the MelonLoader Zip Archive to the Game's Installation Folder.
- Extract version.dll & dobby.dll from the MelonLoader Zip Archive to the Game's Installation Folder.
- Make sure the Game is Closed and Not Running before attempting to UN-INSTALL.
- Remove the version.dll file from the Game's Installation Folder.
- Remove the MelonLoader folder from the Game's Installation Folder.
These additional steps below are OPTIONAL if you want to do a FULL UN-INSTALL.
- Remove the Plugins folder from the Game's Installation Folder.
- Remove the Mods folder from the Game's Installation Folder.
- Remove the UserData folder from the Game's Installation Folder.
MelonLoader has its own config file at ./UserData/Loader.cfg
(you need to run MelonLoader at least once for it to appear).
Here is a list of the current config options (and their default values):
[loader]
# Disables MelonLoader. Equivalent to the '--no-mods' launch option
disable = false
# Equivalent to the '--melonloader.debug' launch option
debug_mode = true
# Only use this if the game freezes when trying to quit. Equivalent to the '--quitfix' launch option
force_quit = false
# Disables the start screen. Equivalent to the '--melonloader.disablestartscreen' launch option
disable_start_screen = false
# Starts the dotnet debugger (only for Il2Cpp games). Equivalent to the '--melonloader.launchdebugger' launch option
launch_debugger = false
# Sets the loader theme. Currently, the only available themes are "Normal" and "Lemon". Equivalent to the '--melonloader.consolemode' launch option (0 for Normal, 4 for Lemon)
theme = "Normal"
[console]
# Hides warnings from displaying. Equivalent to the '--melonloader.hidewarnings' launch option
hide_warnings = false
# Hides the console. Equivalent to the '--melonloader.hideconsole' launch option
hide_console = false
# Forces the console to always stay on-top of all other applications. Equivalent to the '--melonloader.consoleontop' launch option
console_on_top = false
# Keeps the console title as original. Equivalent to the '--melonloader.consoledst' launch option
dont_set_title = false
[logs]
# Sets the maximum amount of log files in the Logs folder (Default: 10). Equivalent to the '--melonloader.maxlogs' launch option
max_logs = 10
[unityengine]
# Overrides the detected UnityEngine version. Equivalent to the '--melonloader.unityversion' launch option
version_override = ""
# Disables the console log cleaner (only applies to Il2Cpp games). Equivalent to the '--melonloader.disableunityclc' launch option
disable_console_log_cleaner = false
# Forces the Il2Cpp Assembly Generator to run without contacting the remote API. Equivalent to the '--melonloader.agfoffline' launch option
force_offline_generation = false
# Forces the Il2Cpp Assembly Generator to use the specified regex. Equivalent to the '--melonloader.agfregex' launch option
force_generator_regex = ""
# Forces the Il2Cpp Assembly Generator to use the specified Il2Cpp dumper version. Equivalent to the '--melonloader.agfvdumper' launch option
force_il2cpp_dumper_version = ""
# Forces the Il2Cpp Assembly Generator to always regenerate assemblies. Equivalent to the '--melonloader.agfregenerate' launch option
force_regeneration = false
# Enables the CallAnalyzer processor for Cpp2IL. Equivalent to the '--cpp2il.callanalyzer' launch option
enable_cpp2il_call_analyzer = false
# Enables the NativeMethodDetector processor for Cpp2IL. Equivalent to the '--cpp2il.nativemethoddetector' launch option
enable_cpp2il_native_method_detector = false
- These are additional Launch Options that MelonLoader adds to the Game.
- These can be used to manipulate how MelonLoader works.
Argument | Description |
---|---|
--no-mods | Launches the Game without loading any Plugins or Mods |
--quitfix | Fixes the Hanging Process Issue with some Games |
--melonloader.consolemode | Changes the Theme Display Mode of the Console [ Default = 0 ] |
--melonloader.consoleontop | Forces the Console to always stay on-top of all other Applications |
--melonloader.consoledst | Keeps the Console Title as Original |
--melonloader.hideconsole | Hides the Console |
--melonloader.hidewarnings | Hides Warnings from Displaying |
--melonloader.debug | Debug Mode |
--melonloader.maxlogs | Max Log Files [ Default: 10 ] [ NoCap: 0 ] |
--melonloader.loadmodeplugins | Load Mode for Plugins [ Default: 0 ] |
--melonloader.loadmodemods | Load Mode for Mods [ Default: 0 ] |
--melonloader.basedir | Changes the Proxy's Load Directory for the Bootstrap |
--melonloader.disablestartscreen | Disable the Start Screen |
- These ones below are Unity Engine specific Launch Options.
Argument | Description |
---|---|
--melonloader.unityversion | Allows you to Specify the Version of Unity Engine |
--melonloader.agfoffline | Forces Assembly Generator to Run without Contacting the Remote API |
--melonloader.agfregenerate | Forces Regeneration of Assembly |
--melonloader.agfregex | Forces Assembly Generator to use a Specified Regex |
--melonloader.agfvdumper | Forces Assembly Generator to use a Specified Version of Dumper |
--melonloader.disableunityclc | Disable Unity Console Log Cleaner |
- These ones below are Cpp2IL specific Launch Options.
Argument | Description |
---|---|
--cpp2il.callanalyzer | Enables CallAnalyzer processor |
--cpp2il.nativemethoddetector | Enables NativeMethodDetector processor |
MelonLoader uses a proxy DLL to trick the game into loading itself on startup. This only applies for Windows.
- The Proxy DLL is able to be Renamed to the Compatible File Names below.
- By Default the Proxy is named as "version.dll".
- For most Games the Default File Name should work perfectly fine.
- Some Games may have you use a different Proxy File Name depending on the Architecture, Operating System, version of the Engine used by the Game, etc.
File Names: |
---|
version.dll |
winhttp.dll |
winmm.dll |
dinput.dll |
dinput8.dll |
dsound.dll |
d3d8.dll |
d3d9.dll |
d3d10.dll |
d3d11.dll |
d3d12.dll |
ddraw.dll |
msacm32.dll |
MelonLoader is licensed under the Apache License, Version 2.0. See LICENSE for the full License.
Third-party Libraries used as Source Code and/or bundled in Binary Form:
- Dobby is licensed under the Apache License, Version 2.0. See LICENSE for the full License.
- Mono is licensed under multiple licenses. See LICENSE for full details.
- HarmonyX is licensed under the MIT License. See LICENSE for the full License.
- MonoMod is licensed under the MIT License. See LICENSE for the full License.
- Mono.Cecil is licensed under the MIT License. See LICENSE for the full License.
- Newtonsoft.Json is licensed under the MIT License. See LICENSE for the full License.
- TinyJSON is licensed under the MIT License. See LICENSE for the full License.
- Tomlet is licensed under the MIT License. See LICENSE for the full License.
- AsmResolver is licensed under the MIT License. See LICENSE for the full License.
- SharpZipLib is licensed under the MIT License. See LICENSE for the full License.
- Semver is licensed under the MIT License. See LICENSE for the full License.
- Illusion Plugin Architecture is licensed under the MIT License. See LICENSE for the full License.
- MuseDashModLoader is licensed under the MIT License. See LICENSE for the full License.
- mgGif is licensed under the MIT License. See LICENSE for the full License.
- AssetsTools.NET is licensed under the MIT License. See LICENSE for the full License.
- AssetRipper.VersionUtilities is licensed under the MIT License. See LICENSE for the full License.
- Steam Library, VDF, and ACF Parsing from SteamFinder.cs by Umbranoxio and Dalet.
- bHapticsLib is licensed under the MIT License. See LICENSE for the full License.
- IndexRange is licensed under the MIT License. See LICENSE for the full License.
- ValueTupleBridge is licensed under the MIT License. See LICENSE for the full License.
- WebSocketDotNet is licensed under the MIT License. See LICENSE for the full License.
- Pastel is licensed under the MIT License. See LICENSE for the full License.
- Il2CppInterop is licensed under the LGPLv3 License. See LICENSE for the full License.
External Libraries and Tools that are downloaded and used at Runtime:
- Cpp2IL is licensed under the MIT License. See LICENSE for the full License.
- Unity Runtime Libraries from MelonLoader.UnityDependencies are part of Unity Software.
Their usage is subject to Unity Terms of Service, including Unity Software Additional Terms. - .NET Runtime is licensed under the MIT License. See LICENSE for the full License.
See MelonLoader Wiki for the full Credits.
MelonLoader is not sponsored by, affiliated with or endorsed by Unity Technologies or its affiliates.
"Unity" is a trademark or a registered trademark of Unity Technologies or its affiliates in the U.S. and elsewhere.