LabApi.LabKit 1.2.0

dotnet add package LabApi.LabKit --version 1.2.0
                    
NuGet\Install-Package LabApi.LabKit -Version 1.2.0
                    
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="LabApi.LabKit" Version="1.2.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="LabApi.LabKit" Version="1.2.0" />
                    
Directory.Packages.props
<PackageReference Include="LabApi.LabKit" />
                    
Project file
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 LabApi.LabKit --version 1.2.0
                    
#r "nuget: LabApi.LabKit, 1.2.0"
                    
#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 LabApi.LabKit@1.2.0
                    
#: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=LabApi.LabKit&version=1.2.0
                    
Install as a Cake Addin
#tool nuget:?package=LabApi.LabKit&version=1.2.0
                    
Install as a Cake Tool

LabKit — The Essential Utility Library for SCP:SL LabAPI

NuGet License: MIT

English | Türkçe | Русский

LabKit is a high-performance, modular C# utility framework specifically built for SCP: Secret Laboratory LabAPI plugin developers. It removes boilerplate code and provides clean, battle-tested abstractions for HUDs, combat mechanics, spatial audio, radio channels, zone triggers, room transformations, and visual particle systems.


Key Modules (41 Modules — 57 Source Files)

Module Namespace Purpose
Visual Particles LabKit.Visuals Toxic gas, EMP shockwaves, spark bursts, and player-attached particle emitters
Zone Trigger & Manager LabKit.Zones 3D Sphere & Box boundary triggers with entry/exit events
Radio Frequency Engine LabKit.Radio Channels (100.0-109.9), encryption keys, and distance-based static noise
Ability & Cooldown Manager LabKit.Abilities Cooldown timers, multi-charge systems, and key-binding triggers
Room Decorator & Lighting LabKit.World Emergency lighting, blackouts, and relative 3D prop/barrier placement
Stacked HUD Feed LabKit.UI Timed, multi-line proximity-filtered chat/killfeed overlay
Status HUD Helper LabKit.UI Dynamic colored TPS, custom health bars, and player status bars
Text Sanitizer LabKit.UI Rich Text exploit prevention, tag stripper, whitespace normalization
Overlay Engine LabKit.Display Priority-ordered, flicker-free element renderer with custom offsets & sizes
CASSIE Builder & Queue LabKit.Audio Non-overlapping priority CASSIE queue and NATO phonetic generator
Spatial Audio & Zones LabKit.SpatialAudio 3D positioned audio descriptors attached to players, dummies, or world
Damage Pipeline LabKit.Damage Chainable damage modifiers (armor, resistance, SCP vulnerability)
Round Scenario Engine LabKit.Scenario Timed round event scheduler with recurring interval triggers
Dice Roller & Loot LabKit.Loot Dice notation parser (e.g. 2d6+3), weighted loot drop tables
Player Tag Manager LabKit.Tags Priority-ordered, timed, custom colored TMP name tags
Round Stats Tracker LabKit.RoundStats Per-round kill, damage, distance, and leaderboard tracking
Spawn Wave Builder LabKit.Spawning Weighted and guaranteed custom respawn wave allocator
Atomic Storage LabKit.Storage Crash-safe atomic JSON file reader/writer
Safe Timers & Anti-Spam LabKit.Timing Cancellable async safe timers and lock-free action throttlers

Installation via NuGet

<PackageReference Include="LabApi.LabKit" Version="1.0.0" />

Or place LabKit.dll directly into your server's dependencies/ folder.


Quick Start Examples

Visual Particles & Gas Zones

var toxicGas = ParticleDescriptor.CreateToxicGas("gas_hcr", roomCenter, radius: 8f, duration: 15f);
ParticleManager.Instance.Spawn(toxicGas);

Proximity HUD Chat Feed

StackedHudFeed.Instance.Push(
    senderId: player.UserId,
    senderName: player.Nickname,
    content: TextSanitizer.EscapeTags(messageText),
    category: "RADIO",
    colorHex: "#00FFCC",
    durationSeconds: 5f,
    worldPosition: player.Position);

Radio Transmission with Distance Noise

var tx = new RadioTransmission(sender.UserId, sender.Nickname, 104.5f, "Alpha-1 reporting in!", sender.Position);
string received = RadioManager.Instance.ProcessTransmissionForReceiver(tx, receiver.Position);

License

MIT

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  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. 
.NET Core netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.2.0 114 8/26/2026
1.0.1 96 8/26/2026
1.0.0 91 8/26/2026