MurderModLoader.API
0.1.8
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package MurderModLoader.API --version 0.1.8
NuGet\Install-Package MurderModLoader.API -Version 0.1.8
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="MurderModLoader.API" Version="0.1.8" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="MurderModLoader.API" Version="0.1.8" />
<PackageReference Include="MurderModLoader.API" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add MurderModLoader.API --version 0.1.8
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: MurderModLoader.API, 0.1.8"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package MurderModLoader.API@0.1.8
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=MurderModLoader.API&version=0.1.8
#tool nuget:?package=MurderModLoader.API&version=0.1.8
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
murder-mod-loader
Mod loader for Murder Engine games. Uses Harmony for runtime method patching.
Requirements
- murder-unpack (
uv tool install murder-unpack) - .NET 8 SDK matching the game's architecture (x64 game needs x64 SDK)
Installation
Install the tools
# Install murder-unpack (bundle extraction)
uv tool install murder-unpack
# Install the mod loader installer
dotnet tool install -g murder-mod-install
Install into a game
# Auto-detects SDK, extracts bundle, sets up mod loader
murder-mod-install "/path/to/game"
# macOS .app bundles are also supported
murder-mod-install "/path/to/Game.app"
# Specify .NET SDK path manually if needed
murder-mod-install "/path/to/game" "/path/to/dotnet-sdk-8.0"
Launch
/path/to/game/launch-modded.sh # Linux / macOS
/path/to/game/launch-modded.bat # Windows
Creating a Mod
Create a directory with mod.yaml and a C# project:
# mod.yaml
Id: my-mod
Name: My Mod
Version: 1.0.0
DLL: MyMod.dll
using HarmonyLib;
using MurderModLoader.API;
public class MyMod : IMurderMod
{
private Harmony? _harmony;
public void OnLoad(ModContext context)
{
_harmony = new Harmony(context.HarmonyId);
_harmony.PatchAll(context.ModAssembly);
}
public void OnUnload() => _harmony?.UnpatchAll(_harmony.Id);
}
Reference the mod API in your .csproj:
<PackageReference Include="MurderModLoader.API" Version="0.1.*" />
For game type references (Murder, Bang, FNA), set GameAssemblyPath in your .csproj to the game's .modded/ directory, or let the build command handle it.
Build and install a mod
murder-mod-install build <mod-dir> <game-dir>
Disabling a mod
Place a .disabled file in the mod's directory, or set Enabled: false in mod.yaml.
Building from Source
git clone https://github.com/yuna0x0/murder-mod-loader.git
cd murder-mod-loader
dotnet build
Limitations
- SingleFileBundle only -- NativeAOT games can't be patched at runtime
- Architecture match -- the .NET SDK must match the game (x64 game needs x64 SDK)
License
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net8.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.