CounterStrikeSharp — серверний фреймворк для моддингу Counter-Strike 2. Цей проект реалізує шар скриптів .NET 8 поверх плагіна Metamod Source, що дозволяє розробникам створювати плагіни, які взаємодіють із ігровим сервером сучасною мовою програмування (C#), щоб полегшити створення коду, який можна підтримувати та тестувати.
Базовий приклад з ігровими подіями та консольними командами
using CounterStrikeSharp.API.Core;
namespace HelloWorldPlugin;
public class HelloWorldPlugin : BasePlugin
{
public override string ModuleName => "Hello World Plugin";
public override string ModuleVersion => "0.0.1";
public override string ModuleAuthor => "roflmuffin";
public override string ModuleDescription => "Simple hello world plugin";
public override void Load(bool hotReload)
{
Logger.LogInformation("Plugin loaded successfully!");
}
[GameEventHandler]
public HookResult OnPlayerConnect(EventPlayerConnect @event, GameEventInfo info)
{
// Userid will give you a reference to a CCSPlayerController class
Logger.LogInformation("Player {Name} has connected!", @event.Userid.PlayerName);
return HookResult.Continue;
}
[ConsoleCommand("css_issue_warning", "Issue warning to player")]
public void OnCommand(CCSPlayerController? player, CommandInfo command)
{
Logger.LogWarning("Player shouldn't be doing that");
}
}Як побудувати
Для збірки потрібен CMake.
Клонувати репозиторій
git clone https://github.com/roflmuffin/counterstrikesharpІніціалізація та оновлення підмодулів
git submodule update --init --recursiveСтворити папку збірки
mkdir build
cd buildГенерація файлів збірки CMake
cmake ..Збірка
cmake --build . --config Debug
Приєднуйтесь до обговорення
Ви можете написати зараз та зареєструватися пізніше. Якщо у вас є обліковий запис, авторизуйтесь, щоб опублікувати від імені свого облікового запису.