Переход Counter-Strike 2 на движок Source 2 полностью изменил архитектуру моддинга серверов сообщества. Классический фреймворк SourceMod и плагины на языке SourcePawn больше не поддерживаются в CS2. Современным стандартом расширения функционала серверов стала связка из низкоуровневого загрузчика Metamod:Source версии 2.x и мощного скриптового окружения CounterStrikeSharp, позволяющего писать плагины на C# с использованием среды выполнения .NET 8/9.
В этом практическом руководстве мы пошагово разберём установку Metamod:Source на Linux-сервер CS2, внедрение хука в gameinfo.gi, развёртывание CounterStrikeSharp и добавление первого администратора сервера.
Загрузка и распаковка Metamod:Source для Linux#
Metamod выступает в роли базовой интерфейсной прослойки между бинарными библиотеками сервера Source 2 (server.so) и пользовательскими плагинами.
Перейдите в директорию игровых файлов сервера csgo/ и загрузите актуальную сборку Metamod:Source ветки 2.0:
cd /opt/cs2-server/game/csgo && curl -L https://mms.alliedmods.net/mmsdrop/2.0/mmsource-2.0.0-git1313-linux.tar.gz -o mms.tar.gz && tar -xzf mms.tar.gz && rm mms.tar.gz
Архив создаст папку addons/metamod/ и файл манифеста addons/metamod.vdf.
Внедрение Metamod в конфигурационный файл gameinfo.gi#
Чтобы движок Source 2 подключил Metamod при инициализации, необходимо добавить путь к аддону в файл структуры поиска ресурсов /opt/cs2-server/game/csgo/gameinfo.gi.
Проверьте блок SearchPaths в файле:
grep -n "Game_LowViolence" /opt/cs2-server/game/csgo/gameinfo.gi
Добавьте строку Game csgo/addons/metamod прямо перед директивой Game_LowViolence csgo:
sed -i '/Game_LowViolence\s*csgo/i \\t\t\tGame\tcsgo/addons/metamod' /opt/cs2-server/game/csgo/gameinfo.gi
Без этой правки сервер будет запускаться в ванильном режиме, игнорируя любые установленные плагины.
Установка CounterStrikeSharp с runtime-пакетом#
CounterStrikeSharp предоставляет доступ к серверным API CS2 через современный управляемый код C#. Скачайте релиз, включающий в себя полноценную среду выполнения .NET для Linux:
cd /opt/cs2-server/game/csgo/addons && curl -L -O https://github.com/roflmuffin/CounterStrikeSharp/releases/download/v297/counterstrikesharp-with-runtime-linux-297.zip && unzip counterstrikesharp*.zip && rm counterstrikesharp*.zip
После распаковки структура каталогов пополнится папкой addons/counterstrikesharp/, внутри которой располагаются системные библиотеки и подкаталог plugins/ для пользовательских плагинов.
Настройка прав администратора в admins.json#
Для назначения прав администратора используется конфигурационный файл addons/counterstrikesharp/configs/admins.json. В нём привязываются SteamID64 игроков к наборам прав:
cat /opt/cs2-server/game/csgo/addons/counterstrikesharp/configs/admins.json
Пример настройки полного доступа root-администратора:
{
"SuperAdmin": {
"identity": "76561198000000000",
"flags": [
"@css/root"
]
}
}
Перезапуск сервера и верификация в консоли#
Перезапустите игровой процесс через systemd для загрузки новых бинарных хуков:
sudo systemctl restart cs2 && sudo journalctl -u cs2 -n 25 --no-pager
В консоли сервера отправьте команду meta list. Успешный ответ подтвердит статус Loaded для плагина CounterStrikeSharp. Далее команда css_plugins list выведет список всех скомпилированных C# модулей.
Если вы хотите развернуть сервер сообщества CS2 с готовыми плагинами разминки, кастомными картами и веб-панелью управления без ручной правки бинарных конфигов, современный хостинг серверов CS2 предоставляет автоматическую установку CounterStrikeSharp и менеджер плагинов в один клик.




