Table of Contents

Class GeneratePluginServerAttribute

Namespace
DotBoxD.Abstractions
Assembly
DotBoxD.Abstractions.dll

Requests a generated plugin facade and builder for the annotated partial class.

[AttributeUsage(AttributeTargets.Class, Inherited = false)]
public sealed class GeneratePluginServerAttribute : Attribute
Inheritance
GeneratePluginServerAttribute
Inherited Members

Properties

Context

The server-authored context type augmented by the generator and used by parameterless hooks.

public Type? Context { get; set; }

Property Value

Type

ContextFactory

Optional static factory method name on Context with signature TContext Factory(HookContext raw).

public string? ContextFactory { get; set; }

Property Value

string

ControlService

Optional control-plane service contract for install, live-settings, and lifecycle calls. When omitted, the generator falls back to the legacy {WorldNamespace}.Ipc.IGamePluginControlService convention. The contract must declare an UpdateSettingsAsync method with a typed array parameter for the update batch (e.g. UpdateSettingsAsync(string pluginId, TUpdate[] updates, ...)); the generator infers the live-setting update element type (TUpdate) from that array, so the parameter need not be named updates.

public Type? ControlService { get; set; }

Property Value

Type