TeaHost
Counter-Strike 2cs2counterstrikesharpплагиныустановка4 мин. чтения

Установка CounterStrikeSharp на сервер CS2

Установка CounterStrikeSharp на CS2-сервер: выбор сборки with-runtime, распаковка addons, команды css_plugins, настройка admins.json и разбор ошибок загрузки

Кратко

CounterStrikeSharp ставится поверх Metamod:Source: скачайте с GitHub сборку with-runtime под свою ОС, скопируйте папку addons в game/csgo и перезапустите сервер. Проверка — meta list и css_plugins list; плагины кладутся в addons/counterstrikesharp/plugins/ИмяПлагина/, админы описываются в configs/admins.json.

Установка CounterStrikeSharp нужна почти каждому, кто хочет от сервера чего-то сверх ванильного матчмейкинга: ретейк, ворминг, кастомные команды, статистика, магазин скинов, кастомные режимы. CSS (не путать со стилями) — это платформа, на которой пишут плагины под CS2 на C#, и большинство современных плагинов рассчитано именно на неё.

Что нужно до начала

CounterStrikeSharp работает поверх Metamod. Если его нет — ставить CSS бессмысленно, он не загрузится. Порядок установки прослойки описан в заметке про установку Metamod Source, и там же ключевой момент про правку gameinfo.gi.

Проверить, что фундамент на месте:

код
meta list

Если команда отвечает, а не пишет Unknown command, — можно продолжать. По официальной инструкции CounterStrikeSharp нужен Metamod:Source 2.x из dev-ветки, сборка 1467 или новее с поддержкой KHook.

Какую сборку скачивать

Релизы лежат на GitHub проекта, в архиве обычно два варианта имени:

СборкаЧто внутриКогда брать
counterstrikesharp-with-runtime-...Плагин вместе с .NET-рантаймомПервая установка — обязательно; на арендованном сервере почти всегда
counterstrikesharp-... без runtimeТолько плагинОбновление уже установленного CSS, если вы сами следите за актуальностью .NET

Ставить .NET в систему на арендованном сервере вы, скорее всего, не сможете и не захотите, а сборка с рантаймом самодостаточна. Она весит больше, и это единственный её минус. На Linux для .NET может понадобиться пакет libicu, на Windows — Visual Studio Redistributable.

Второй параметр выбора — ОС. Linux-архив на Windows-сервер и наоборот не заработают.

Установка CounterStrikeSharp в папку csgo

Целевая папка та же, что у Metamod:

код
game/csgo/

После распаковки должно получиться:

код
game/csgo/addons/counterstrikesharp/
game/csgo/addons/counterstrikesharp/bin/
game/csgo/addons/counterstrikesharp/plugins/
game/csgo/addons/counterstrikesharp/configs/
game/csgo/addons/counterstrikesharp/gamedata/
game/csgo/addons/metamod/counterstrikesharp.vdf

Последний файл — тот, по которому Metamod узнаёт о существовании CSS. Он идёт в архиве, но при распаковке «только нужного» его иногда теряют, и потом долго не понимают, почему всё на месте, а плагин не грузится.

Заливать через файловый менеджер панели или SFTP, распаковывать с объединением папок.

После распаковки — полный перезапуск сервера. Первый старт будет дольше обычного: рантайм разворачивается.

Проверка

В консоли сервера:

код
meta list

CounterStrikeSharp должен появиться в списке загруженных плагинов Metamod со статусом running. Дальше:

код
css_plugins list

Команда покажет список загруженных плагинов CSS — пока пустой. Если css_plugins не распознаётся, значит CSS не поднялся, смотрите логи запуска.

Установка плагинов

Каждый плагин живёт в собственной папке со своим именем:

код
addons/counterstrikesharp/plugins/ИмяПлагина/ИмяПлагина.dll

Имя папки должно совпадать с именем dll — иначе плагин не найдётся. Это первое, что стоит проверять, когда «положил, а не работает».

Управление без перезапуска сервера:

код
css_plugins list
css_plugins load ИмяПлагина
css_plugins unload ИмяПлагина
css_plugins reload ИмяПлагина

Горячая перезагрузка экономит массу времени при настройке: правите конфиг, делаете reload, проверяете, без выкидывания игроков.

Конфиги плагинов появляются после первого запуска в addons/counterstrikesharp/configs/plugins/ИмяПлагина/. То есть логика такая: положили dll, запустили, получили конфиг, остановились, отредактировали, перезагрузили плагин.

Отдельные плагины требуют зависимостей — чаще всего это общие библиотеки, которые кладутся в plugins/shared/. Читайте readme конкретного плагина, универсального правила тут нет.

Админы

CSS ведёт свой список администраторов, независимый от ванильных механизмов. Файл:

код
addons/counterstrikesharp/configs/admins.json

В нём для каждого админа указываются SteamID, имя и набор флагов доступа — по ним плагины решают, кому доступна какая команда. Разбор формата и флагов — в заметке про выдачу прав администратора.

Практический совет: не давайте всем модераторам корневой флаг. Плагины трактуют его как «можно всё», включая команды, которые вы бы им не доверили.

Частые проблемы

css_plugins не существует. CSS не загрузился. Проверьте meta list — если там нет CounterStrikeSharp, дело в отсутствующем .vdf или в неверном пути распаковки.

Сервер падает на старте после установки. Обычно несовпадение версий: свежий патч CS2 сломал текущую сборку CSS или Metamod. Решение — обновить оба до сборок, выпущенных после патча.

Плагин в папке, но в списке его нет. Имя папки не совпадает с именем dll, либо плагин собран под другую мажорную версию CSS.

Всё работало, после обновления игры перестало. Классика: обновление перезаписало gameinfo.gi, Metamod отвалился, а вместе с ним и CSS. Порядок действий — в заметке про обновление сервера CS2.

Плагин требует .NET, хотя вы скачали with-runtime. Проверьте, что распаковали именно ту сборку — папка bin у версии с рантаймом заметно объёмнее.

Что ставят в первую очередь

Набор, с которого обычно начинают:

  • Админ-плагин с базовыми командами: смена карты, кик, бан, слэп
  • MatchZy, если сервер под матчи — про него есть отдельный материал: турнирный сервер на MatchZy
  • Плагины режимов — ретейк, дезматч, арена
  • Статистика и таблица лидеров

Что из этого имеет смысл на вашем сервере, зависит от режима: обзор вариантов есть в заметке про плагины и моды CS2.

Коротко

Metamod ставится первым, дальше скачивается сборка with-runtime под вашу ОС, распаковывается в game/csgo/ вместе с .vdf в папке metamod, сервер перезапускается, проверка идёт через meta list и css_plugins list. Плагины кладутся в одноимённые папки и перезагружаются на лету.

Если нужен сервер с файловым менеджером и консолью в панели, где всё это ставится за десять минут, — тарифы под CS2 здесь.