SCPSLTemplateGenerator 1.0.3

dotnet tool install --global SCPSLTemplateGenerator --version 1.0.3
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local SCPSLTemplateGenerator --version 1.0.3
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=SCPSLTemplateGenerator&version=1.0.3
                    
nuke :add-package SCPSLTemplateGenerator --version 1.0.3
                    

SCPSL Template Generator

A .NET CLI tool for quickly generating SCP:SL LabAPI plugin templates with automatic dependency management.

<p align="center"> <a href="https://github.com/thefrenchydev/SCPSLTemplateGenerator"><img src="https://img.shields.io/badge/github-repo-blue?logo=github" alt="Github"></a> <a href="https://www.nuget.org/packages/SCPSLTemplateGenerator"><img src="https://img.shields.io/nuget/v/SCPSLTemplateGenerator.svg?logo=nuget" alt="NuGet"></a> <a href="https://dotnet.microsoft.com/download/dotnet/8.0"><img src="https://img.shields.io/badge/.NET-8.0-blue?logo=dotnet" alt=".NET"></a> </p>

Features

Quick Plugin Generation - Create a complete plugin structure with one command
🔧 Automatic Dependencies - Integrated dependency management via SL_REFERENCES
📦 LabAPI Integration - Pre-configured with Northwood.LabAPI and CustomEventHandler
🎯 Customizable - Plugin name, author, description, and version
📁 Complete Structure - Includes example commands, events, and config files

Installation

Install globally using .NET CLI:

dotnet tool install --global SCPSLTemplateGenerator

Quick Start

Generate a new plugin:

scpsl-template new MyPlugin --author "YourName" --description "My awesome plugin"

Options

  • --author / -a : Plugin author name (default: "YourName")
  • --description / -d : Plugin description (default: "A SCP:SL plugin")
  • --version / -v : Plugin version (default: "1.0.0")
  • --output / -o : Output directory (default: current directory)
  • --force / -f : Overwrite existing files

Generated Structure

MyPlugin/
├── MyPlugin.sln
├── MyPlugin.csproj
├── Plugin.cs          # Main plugin class
├── Config.cs          # Plugin configuration
├── LICENSE            # MIT License
├── .gitignore
├── Commands/
│   └── ExampleCommand.cs
└── Events/
    └── PlayerEvent.cs

Requirements

  • .NET 8.0 SDK or later
  • Environment variable SL_REFERENCES pointing to your SCP:SL dependencies folder

Environment Setup

On first use, the tool will help you set up the SL_REFERENCES environment variable, which should point to a folder containing your SCP:SL game dependencies (Assembly-CSharp.dll, UnityEngine.dll, etc.).

In case you have missing dependencies, the tool will add them for you.

Building from Source

git clone https://github.com/thefrenchydev/SCPSLTemplateGenerator.git
cd SCPSLTemplateGenerator
dotnet build -c Release
dotnet pack -c Release
dotnet tool install --global --add-source ./nupkg SCPSLTemplateGenerator

License

MIT License - See LICENSE file for details

Support

For issues, feature requests, or contributions, please visit the GitHub repository.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
1.0.3 110 1/12/2026
1.0.2 97 1/10/2026
1.0.1 107 1/9/2026
1.0.0 110 1/9/2026

- When you build the project, the dll will be automatically copied into the dedicated server plugins folder.
- Got rid of app.config file as it's deprecated.
- Fixed Template text not being replaced with the namespace in the EventsContainer.GetEvents() method call.