KittsBadgeSystem 0.1.1

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

KittsBadgeSystem

LabAPI Badge Tool

License Downloads GitHub release alternate text is missing from this package README image GitHub stars GitHub issues

KittsBadgeSystem is a tool that controls badges for SCP Secret Laboratory using LabAPI.

Consider Supporting?

If you enjoy this project and would like to support future development, I would greatly appreciate it if you considered donating via my Ko-Fi.

Installation

KittsBadgeSystem is available in two editions:

  • Standard: Stores all infractions in a local JSON file.
  • MongoDB: Stores all infractions in a MongoDB database.

All required files can be found in the latest release.

Standard

Required files

  • KittsBadgeSystem.dll (latest version)
  • Newtonsoft.Json.dll (v13.0.4 or later)

Installation

  • Place KittsBadgeSystem.dll in your plugins folder.
  • Place Newtonsoft.Json.dll in your dependencies folder.

MongoDB

Required files

  • KittsBadgeSystem-MongoDB.dll (latest version)
  • DnsClient.dll (v1.6.1 or later)
  • Microsoft.Extensions.Logging.Abstractions.dll (v2.0.0 or later)
  • MongoDB.Bson.dll (v3.10.0 or later)
  • MongoDB.Driver.dll (v3.10.0 or later)

Installation

  • Place KittsBadgeSystem-MongoDB.dll in your plugins folder.
  • Place all other .dll files in your dependencies folder.

Run the server and you're set!

Configurations:

Parameter Type Description Default Value
Debug bool Sends debug logs to console. false
MongoDBURI string MongoDB URI. "mongodb://username:password@ip:port/"
MongoDBName string MongoDB name. KittsBadgeSystem
MongoDBCollectionName string MongoDB collection name if using database. BadgeData
PlayerBadgePermission string Permission for player badge command. kts.badge
AdminBadgePermission string Permission for admin badge command. kts.badgeadmin
DefaultBadgeFormat string Formatting for badges with no text, {group} = groupName. '{group}'
BadgeFormat string Permission for admin badge command. '{group} | {text}'

Default YML Config File

# Sends debug logs to console
debug: false
# Permission for player badge command
player_badge_permission: kts.badge
# Permission for admin badge command
admin_badge_permission: kts.badgeadmin
# Formatting for badges with no text, {group} = groupName
default_badge_format: '{group}'
# Formatting for badges, {group} = groupName, {text} = badgeText
badge_format: '{group} | {text}'

MongoDB YML Config File

# Sends debug logs to console
debug: false
# MongoDB URI
mongo_d_b_u_r_i: mongodb://username:password@ip:port/
# MongoDB name
mongo_d_b_name: KittsPlayerAnalyticsSystem
# MongoDB collection name
mongo_d_b_collection_name: BadgeData
# Permission for player badge command
player_badge_permission: kts.badge
# Permission for admin badge command
admin_badge_permission: kts.badgeadmin
# Formatting for badges with no text, {group} = groupName
default_badge_format: '{group}'
# Formatting for badges, {group} = groupName, {text} = badgeText
badge_format: '{group} | {text}'

Want to use in your own project?

To install in your project, simply reference the KittsBadgeSystem.dll file, found in the latest release.

Alternatively, you can use the NuGet Package which can be found here:

KittsBadgeSystem.dll is really easy to use, if you would like to change someone's badge data you can do Player.GetBadgeData() and change what you want. You can also use the command if you're only using this as a standalone plugin.

A really simple example of using this plugin could be the colour being changed to a random colour when jumping as shown below.

public override void OnPlayerJumped(PlayerJumpedEventArgs ev)
{
    ev.Player.GetBadgeData().BadgeColour = ColourTypes.Random().EnumColour;

    // If you're not using MonogoDB you will need to update the JsonCache as shown below
    DatabaseJson.SaveJsonCache();
    // If you are using MongoDB it will automatically update to the database
}

Found a bug or have feedback?

If you have found a bug please make an issue on GitHub or the quickest way is to message me on discord at kittscloud.

Also message me on discord if you have feedback for me, I'd appreciate it very much. Thank you!

Product Compatible and additional computed target framework versions.
.NET Framework net481 is compatible. 
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
0.1.1 69 7/20/2026
0.1.0 66 7/20/2026