API and Namespace Index
This page is a map of the supported public API surface. For method-level details, use IntelliSense against the released DLLs.
Assembly layout
Section titled “Assembly layout”| Assembly | Purpose |
|---|---|
Anomaly.Client.Api.dll | Client-side mod API for commands, UI, events, config, assets, localization, and feature wrappers. |
Anomaly.Shared.dll | Shared message contracts and networking interfaces used by client and server companions. |
Anomaly.Server.dll | Server-side API for LabAPI companion plugins running next to Anomaly.Server. |
Do not reference Anomaly.Client.dll directly. It is the runtime component, not a stable compile-time API.
Client API areas
Section titled “Client API areas”| Area | Key types | Covered in |
|---|---|---|
| Commands | CommandRegistry, ICommand, ICommandContext | Client API Tour |
| Config | ClientConfig | Client API Tour |
| Persistence | ClientPersistence | Client API Tour |
| Input | InputRegistry, InputBindingDefinition, InputKey | Client API Tour |
| Virtual input | VirtualInputs | Virtual Inputs |
| Scheduling | Scheduler | Client API Tour |
| Localization | Tr | Assets and Localization |
| Networking | AnomalyMessaging | Custom Networking |
| Events | ClientEvents, PlayerEvents, RoleEvents, and related handlers | Client API Tour |
| Features | Client, Player, LocalPlayer, Room, Door, Item, and related wrappers | Client API Tour |
| Rendering | MaterialTint, ModelAttachment | Rendering and Visuals |
| Visual primitives | ScreenEffects, Subtitles, ItemModels, PlayerAnchor, PlayerAnchors | Rendering and Visuals |
| Character models | CharacterModels, IModelHook | Rendering and Visuals |
| HUD output | LocalHint, LocalBroadcast, CameraShake, Hud | HUD Output and Player State |
| Player state | Round, CameraManager, Player.MovementState, PlayerStatsWrapper.Stamina | HUD Output and Player State |
| Map features | Warhead, Scp914, Decontamination, Generator, Tesla, Elevator, FacilityCamera, Ragdoll, Locker | Map Features |
| Item / Pickup / Door subtypes | FirearmItem, KeycardItem, BreakableDoor, etc. | Map Features |
| World objects | WorldObjects | World Objects |
| UI | UiCanvas, UiLayer, UI helpers | Client API Tour |
| Assets | AnomalyResources, Announcer | Assets and Localization |
| Paths | Paths | Runtime Paths and User Data |
Shared message contracts
Section titled “Shared message contracts”Use Anomaly.Shared.dll when a client mod and server companion need to exchange custom messages. Put message classes in your own shared assembly, register them on both sides, and send them through AnomalyMessaging.
See Custom Networking for examples.
Server-side surface
Section titled “Server-side surface”Server companion plugins use Anomaly.Server.dll for:
- Sending and receiving Anomaly messages.
- Spawning and updating server-authored assets.
- Applying supported visual overrides.
- Looking up server asset entries by path.
See Server Companion Quickstart for a minimal plugin.
Stability expectations
Section titled “Stability expectations”- Public API assemblies are the supported contract for mod authors.
- Runtime and internal assemblies are not stable.
- Shared message definitions are compatibility-sensitive; change them carefully once released.