Table of Contents

Interface IModuleContext

Namespace
Shard.Modding.SDK.Module
Assembly
Shard.Modding.SDK.dll

The server-facing surface handed to a module at setup. It exposes server events (scoped to the module) and a module-tagged logger; the scheduler, service registry, and world access will be added here as those subsystems land. A module's Module class holds this and re-exposes it to the rest of the module's code.

public interface IModuleContext

Properties

Events

Server events, scoped so this module's subscriptions are removed on shutdown.

IEventBus Events { get; }

Property Value

IEventBus

Log

Logger tagged with the module id.

IShardLogger Log { get; }

Property Value

IShardLogger

ModuleId

The owning module's identifier ("Group:Name").

string ModuleId { get; }

Property Value

string

Services

Services exposed by the host to this module. Use it to resolve server-provided capabilities such as registries, commands, schedulers, and other shared services.

IServiceRegistry Services { get; }

Property Value

IServiceRegistry