Class ModBase
Namespace: WukongMp.Sdk
Assembly: WukongMp.Sdk.dll
Base class for WukongMP SDK mods. Each mod should have exactly one class extending from this, which will be instantiated by the mod loader.
public abstract class ModBase : ICSharpModExV2, ICSharpModEx, ICSharpMod
Inheritance
Implements
ICSharpModExV2, ICSharpModEx, ICSharpMod
Inherited Members
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Constructors
ModBase()
protected ModBase()
Properties
IsDebug
Indicates whether the mod is running in a debug build. Can be used to enable debug-only features or logging.
public bool IsDebug { get; }
Property Value
Logger
protected ILogger Logger { get; }
Property Value
ModDirectory
This mod's own folder under Mods, which holds its assemblies, manifest and any config files.
protected string ModDirectory { get; }
Property Value
Name
Mod name, used for logging and patching.
public abstract string Name { get; }
Property Value
Methods
DeInit()
Called by the mod loader on game closing.
public virtual void DeInit()
GetReloadContext()
Called by the mod loader. Used in hot reload.
public virtual object? GetReloadContext()
Returns
Init()
Called by the mod loader on game start.
public void Init()
Initialize(IDependencyContainer)
protected abstract void Initialize(IDependencyContainer services)
Parameters
services IDependencyContainer
LateInit()
Called by the mod loader after all Init calls.
public virtual void LateInit()
RegisterArchetypes(Action<IArchetypeRegistry>)
Register new archetypes or modify existing.
protected void RegisterArchetypes(Action<IArchetypeRegistry> configure)
Parameters
configure Action<IArchetypeRegistry>
The configuration callback.
RegisterConfig<TConfig>(string)
Reads fileName from this mod's folder and registers the result as a singleton.
protected void RegisterConfig<TConfig>(string fileName = "config.json") where TConfig : class, new()
Parameters
fileName string
Type Parameters
TConfig
Remarks
A missing file yields defaults. A file that exists but does not parse, or that carries a key the config type does not declare, throws ModConfigException.
Reload(object?)
Called by the mod loader. Used in hot reload.
public virtual void Reload(object? context)
Parameters
context object?
SetLoggerFactory(ILoggerFactory)
Called by the mod loader.
public void SetLoggerFactory(ILoggerFactory loggerFactory)
Parameters
loggerFactory ILoggerFactory
SetModDirectory(string)
Called by the mod loader, before Init.
public void SetModDirectory(string directory)
Parameters
directory string