Installation

Windows

The mod is based on .NET 8. You will need to install the .NET 8.0 Desktop Runtime to use it. Grab the x64 Desktop Runtime and install it.

Once you have the .NET runtime installed you can grab the latest release from the Releases Page. Extract the contents of the archive into the game's root directory (where MonsterHunterWorld.exe is located).

If you installed everything correctly you should now find winmm.dll in the same folder as MonsterHunterWorld.exe, and a CSharp directory in nativePC\plugins.

Linux (Proton/Wine)

As of version 0.0.7.2, SPL officially supports Linux through Proton/Wine. Below are the steps to install and run SPL on Linux.

  1. Download the latest .NET Desktop Runtime for x64 from here.
  2. Install the downloaded installer using protontricks:
protontricks-launch --appid 582010 path/to/windowsdesktop-runtime-8.x.xx-win-x64.exe
  1. Install the Direct 3D Shader Compiler using protontricks:
protontricks 582010 d3dcompiler_47
  1. Download the latest linux release of SPL (SharpPluginLoader-<version>-linux.zip) from the Releases Page and extract it into the game's root directory. After doing so you should have a msvcrt.dll file in the same folder as MonsterHunterWorld.exe.
  2. Set the steam launch options for MHW as follows:
# Use this for SPL only
WINEDLLOVERRIDES="msvcrt=n,b" %command%

# Or this for SPL together with Stracker's Loader
WINEDLLOVERRIDES="msvcrt,dinput8=n,b" %command%

Usage

Any C# plugins will be placed directly into the CSharp directory. The plugin loader will automatically load all DLLs in this directory. Subdirectories are also supported, so you can organize your plugins however you want.

Note

Putting plugins inside the nativePC\plugins\CSharp\Loader directory will not work. The plugin loader will not load them. See below for an example of a valid directory structure.

Once you have all your plugins installed you can simply start the game. The plugin loader will automatically load all plugins. Depending on the plugins you have installed you might also see an overlay/UI appear on the screen.

Directory Structure Examples

<Root game directory>
└── winmm.dll/msvcrt.dll
└── nativePC
    └── plugins
        └── CSharp
            ├── Plugin1
            │   └── Plugin1.dll
            ├── Plugin2
            │   └── Plugin2.dll
            └── Plugin3.dll

Conversely, the following is not valid, as Plugin1.dll is inside the Loader directory. The plugin loader will not load it.

<Root game directory>
└── winmm.dll/msvcrt.dll
└── nativePC
    └── plugins
        └── CSharp
            └── Loader
                └── Plugin1.dll