Установка сервера CRMP на Windows и Linux — пошаговая инструкция
Сервер CRMP позволяет создать собственный игровой проект на карте «Криминальной России»: Role Play, Free Roam, гонки, дальнобойщиков, выживание или другой режим на языке Pawn.
Для запуска потребуются серверная адаптация CRMP, скомпилированный игровой мод в формате .amx, подходящие плагины, файл server.cfg и открытый UDP-порт. Сервер можно установить на домашний компьютер, Windows VPS, Linux VPS или игровой хостинг.
В руководстве рассмотрены установка CRMP на Windows и Linux, структура серверной сборки, добавление игрового мода, настройка плагинов, первый запуск, подключение к серверу и решение распространённых ошибок.
Что представляет собой сервер CRMP
CRMP — многопользовательская адаптация для игры на карте «Криминальной России». Серверная часть построена на совместимой с SA-MP архитектуре и использует:
- игровые моды на языке Pawn;
- скомпилированные файлы
.amx; - конфигурационный файл
server.cfg; - фильтрскрипты;
- нативные плагины;
- каталог
scriptfiles; - RCON для удалённого управления;
- UDP-порт для подключения игроков.
Серверная программа не содержит полноценный Role Play режим автоматически. Базовая адаптация предоставляет ядро и демонстрационный мод, а аккаунты, работы, транспорт, организации, дома, бизнесы и другие системы реализуются игровым модом.
Какую версию CRMP выбрать
На официальной странице серверных адаптаций представлены две основные ветки:
- CRMP 0.3e Rev C3 — старая версия, используемая некоторыми классическими сборками;
- CRMP 0.3.7 Rev C5 — более поздняя адаптация, которую обычно выбирают для новых установок.
Версия серверного ядра должна соответствовать клиенту, через который будут подключаться игроки. Мод, плагины и сервер нельзя без проверки смешивать между разными версиями.
Перед выбором проверьте
- для какой версии создан игровой мод;
- какие плагины использует сборка;
- поддерживает ли хостинг нужное ядро;
- какой клиент установлен у игроков;
- есть ли исходный файл
.pwn; - работают ли используемые модели транспорта;
- требуется ли отдельный клиентский мод-пак.
Из чего состоит серверная сборка CRMP
| Компонент | Назначение |
|---|---|
| Серверное ядро | Принимает подключения игроков и выполняет игровой мод. |
server.cfg |
Хранит имя сервера, порт, RCON-пароль, игровой мод и список плагинов. |
gamemodes |
Содержит основные игровые режимы в формате AMX и их исходники PWN. |
filterscripts |
Содержит дополнительные независимые скрипты. |
plugins |
Содержит DLL для Windows или SO для Linux. |
scriptfiles |
Хранит настройки, INI-файлы, локальные базы и данные скриптов. |
pawno |
Редактор, компилятор и include-файлы Pawn. |
server_log.txt |
Основной журнал запуска и ошибок сервера. |
samp.ban |
Список заблокированных IP-адресов. |
Системные требования
Для локального теста
- Windows 10 или 11 либо современный Linux;
- 1–2 ядра процессора;
- от 1 ГБ свободной оперативной памяти;
- от 2 ГБ свободного места;
- доступ к UDP-порту;
- CRMP-клиент соответствующей версии.
Для публичного сервера
- VPS или игровой хостинг с публичным IPv4;
- быстрые процессорные ядра;
- 2–4 ГБ памяти для небольшой сборки;
- SSD или NVMe;
- DDoS-защита UDP-трафика;
- FTP или SFTP;
- MySQL, если её использует игровой мод;
- регулярные резервные копии.
Точная нагрузка зависит не только от онлайна. Тяжёлые циклы Pawn, большое количество объектов, старые плагины и частые запросы к базе способны перегрузить сервер даже при небольшом числе игроков.
Где скачать серверные файлы CRMP
Безопаснее использовать серверную адаптацию с официальной страницы CRMP. Там размещены отдельные архивы для Windows и Linux.
Выбирайте архив по системе
- Windows Server — для домашнего компьютера, Windows VPS и некоторых игровых панелей;
- Linux Server — для Debian, Ubuntu и большинства игровых хостингов;
- 0.3e Rev C3 — только для сборки, рассчитанной на эту версию;
- 0.3.7 Rev C5 — для соответствующего клиента и мода.
Не скачивайте серверное ядро из случайной готовой сборки, если можно получить оригинальный архив отдельно.
Проверка загруженного архива
Перед запуском
- проверьте архив антивирусом;
- распакуйте его в отдельную папку;
- посмотрите список исполняемых файлов;
- изучите содержимое
server.cfg; - проверьте каталог
plugins; - замените установленный RCON-пароль;
- не вводите реальные данные MySQL в непроверенный мод;
- не запускайте неизвестные дополнительные программы.
Особое внимание
Файлы .exe, .dll и .so выполняют машинный код. Неизвестный нативный плагин потенциально опаснее обычного Pawn-скрипта.
Пошаговая установка CRMP Server на Windows
- Скачайте Windows-архив нужной версии CRMP.
- Создайте отдельную папку, например
C:\CRMP-Server. - Распакуйте в неё содержимое архива.
- Проверьте наличие
server.cfg. - Проверьте папки
gamemodes,filterscripts,pluginsиscriptfiles. - Откройте
server.cfgв текстовом редакторе. - Замените RCON-пароль.
- Укажите игровой мод и порт.
- Запустите серверный файл.
- Проверьте сообщения в консоли.
Исполняемый файл в разных архивах может называться по-разному, например:
samp-server-cr.exe
samp-server.exe
crmp-server.exe
Запускайте тот файл, который находится рядом с server.cfg и входит в официальный серверный архив.
Подготовка папки Windows-сервера
Рекомендуемая структура:
C:\CRMP-Server\
├── samp-server-cr.exe
├── server.cfg
├── server_log.txt
├── samp.ban
├── gamemodes\
├── filterscripts\
├── plugins\
├── scriptfiles\
└── pawno\
Не устанавливайте сервер
- в папку самой игры;
- в каталог CRMP-клиента;
- в системную папку Windows;
- в архив без предварительной распаковки;
- в папку с ограниченными правами записи.
Серверная часть не требует установленной GTA:SA для запуска. Клиент игры нужен только компьютеру, с которого вы подключаетесь для тестирования.
Пошаговая установка CRMP Server на Linux
Ниже приведён пример для Debian или Ubuntu.
Обновление системы
sudo apt update
sudo apt upgrade -y
Установка основных инструментов
sudo apt install wget curl tar unzip screen -y
Создание отдельного пользователя
sudo adduser --disabled-password --gecos "" crmp
Создание папки
sudo mkdir -p /home/crmp/server
sudo chown -R crmp:crmp /home/crmp/server
Загрузка архива
Скачайте Linux-версию CRMP на компьютер и передайте её через SFTP либо загрузите прямой официальный адрес командой wget.
Распаковка
sudo -u crmp tar -xzf crmp-server-linux.tar.gz \
-C /home/crmp/server
Если архив имеет формат ZIP:
sudo -u crmp unzip crmp-server-linux.zip \
-d /home/crmp/server
Просмотр файлов
cd /home/crmp/server
ls -la
Linux-файл сервера в разных архивах может называться:
samp03svr-cr
samp03svr
crmp-server
Установка 32-битных библиотек Linux
Классические серверные ядра SA-MP и CRMP обычно являются 32-битными. На 64-битной системе им могут потребоваться дополнительные библиотеки.
Включение архитектуры i386
sudo dpkg --add-architecture i386
sudo apt update
Установка библиотек
sudo apt install \
libc6:i386 \
libstdc++6:i386 \
libatomic1:i386 \
-y
Разрешение на запуск
cd /home/crmp/server
chmod +x samp03svr-cr
Подставьте фактическое имя файла из своего архива.
Проверка зависимостей
ldd ./samp03svr-cr
Строка not found укажет на отсутствующую библиотеку.
Первый тест
sudo -u crmp ./samp03svr-cr
Структура серверных файлов
CRMP-Server/
├── server.cfg
├── server_log.txt
├── samp.ban
├── gamemodes/
│ ├── simple.amx
│ └── simple.pwn
├── filterscripts/
├── plugins/
├── scriptfiles/
└── pawno/
├── pawno.exe
├── pawncc.exe
└── include/
Главные правила
server.cfgнаходится в корне;- основной игровой мод в формате AMX находится в
gamemodes; - фильтрскрипты AMX находятся в
filterscripts; - плагины находятся в
plugins; - include-файлы используются только при компиляции исходника;
- данные скриптов сохраняются в
scriptfiles.
Установка игрового мода CRMP
Основной игровой режим обычно состоит из:
gamemodes/
├── roleplay.pwn
└── roleplay.amx
Для запуска требуется AMX
Файл .pwn является исходным кодом. Сервер выполняет скомпилированный файл .amx.
Установка готового мода
- Скопируйте
roleplay.amxв папкуgamemodes. - При наличии скопируйте
roleplay.pwnтуда же. - Установите необходимые плагины.
- Скопируйте содержимое
scriptfiles. - Импортируйте SQL-базу, если она требуется.
- Укажите мод в
server.cfg.
gamemode0 roleplay 1
Расширение .amx в этой строке не указывается.
Как скомпилировать PWN в AMX
Через Pawno
- Откройте
pawno/pawno.exe. - Выберите исходный файл
gamemodes/roleplay.pwn. - Нажмите F5 или кнопку Compile.
- Проверьте окно компилятора.
- Убедитесь, что появился
roleplay.amx.
Через командную строку Windows
pawno\pawncc.exe gamemodes\roleplay.pwn
Успешная компиляция
Компилятор не должен выводить ошибок. Предупреждения желательно также проверить, но они не всегда препятствуют созданию AMX.
Если AMX не появился
- не найден include-файл;
- в коде есть синтаксическая ошибка;
- у компилятора нет права записи;
- путь содержит проблемные символы;
- исходник рассчитан на другой набор include-файлов;
- компиляция использует неправильную версию Pawn.
Установка include-файлов
Подключаемые библиотеки Pawn помещаются в:
pawno/include/
Пример
pawno/include/
├── a_samp.inc
├── sscanf2.inc
├── streamer.inc
└── a_mysql.inc
Если компилятор сообщает:
fatal error 100: cannot read from file: "streamer"
значит, файл streamer.inc отсутствует в используемой папке include.
Установка плагинов CRMP
Плагины расширяют возможности игрового мода: MySQL, Streamer, sscanf, обработка команд и другие функции.
Windows
plugins/
├── mysql.dll
├── streamer.dll
└── sscanf.dll
Строка в server.cfg:
plugins mysql streamer sscanf
Linux
plugins/
├── mysql.so
├── streamer.so
└── sscanf.so
Строка в server.cfg:
plugins mysql.so streamer.so sscanf.so
Версии должны совпадать
- include-файл должен соответствовать плагину;
- Windows использует DLL;
- Linux использует SO;
- 32-битное ядро требует совместимый 32-битный плагин;
- старый игровой мод может не работать с новой несовместимой версией MySQL-плагина.
Проверка загрузки
При запуске консоль должна показать успешную загрузку каждого плагина. Сообщение:
Failed.
означает несовместимый файл, отсутствующую библиотеку или неправильное имя в конфигурации.
Установка фильтрскриптов
Фильтрскрипт — дополнительный AMX-скрипт, работающий вместе с основным модом.
Копирование
filterscripts/
├── admin.amx
└── objects.amx
Подключение в server.cfg
filterscripts admin objects
Несколько названий разделяются пробелами. Расширение AMX не указывается.
Не подключайте автоматически
- неизвестную админку;
- старый античит без исходного кода;
- скрипт с неизвестными RCON-командами;
- дублирующую систему регистрации;
- фильтрскрипт, рассчитанный на другую версию ядра.
Папка scriptfiles
В ней могут находиться:
- INI-конфигурации;
- SQLite-базы;
- списки домов и транспорта;
- данные аккаунтов старых модов;
- настройки организаций;
- текстовые журналы;
- файлы сторонних библиотек.
При установке готовой сборки
Скопируйте содержимое scriptfiles с сохранением вложенных папок и регистра букв.
На Linux имена:
Accounts
accounts
считаются разными каталогами. Из-за этого мод, работавший на Windows, может не найти свои файлы после переноса.
Настройка файла server.cfg
Файл находится в корневой папке рядом с серверной программой.
Базовый пример CRMP
echo Executing Server Config...
lanmode 0
rcon_password ЗАМЕНИТЕ_НА_СЛОЖНЫЙ_ПАРОЛЬ
maxplayers 50
port 8904
hostname My Criminal Russia Role Play
gamemodetext Role Play
mapname Criminal Russia
language Russian
gamemode0 roleplay 1
filterscripts
plugins streamer sscanf mysql
announce 1
query 1
weburl gta-miami.online
maxnpc 0
onfoot_rate 40
incar_rate 40
weapon_rate 40
stream_distance 300.0
stream_rate 1000
logtimeformat [%d/%m/%Y %H:%M:%S]
Основные параметры
| Параметр | Назначение |
|---|---|
rcon_password |
Пароль удалённого администрирования. |
maxplayers |
Максимальное количество игроков. |
port |
UDP-порт сервера. |
hostname |
Название в клиенте CRMP. |
gamemode0 |
Основной AMX-мод. |
filterscripts |
Дополнительные AMX-скрипты. |
plugins |
Список нативных плагинов. |
announce |
Публикация в общем списке. |
query |
Отображение сведений о сервере. |
weburl |
Адрес сайта проекта. |
Настройка RCON-пароля
RCON предоставляет полный административный контроль над сервером.
Небезопасные примеры
rcon_password 123456
rcon_password admin
rcon_password changeme
rcon_password qwerty
Требования к паролю
- не менее 16 случайных символов;
- не совпадает с паролем FTP;
- не совпадает с паролем MySQL;
- не публикуется в скриншотах;
- не передаётся обычным модераторам;
- меняется после ухода разработчика.
Временное отключение RCON
Когда удалённое управление не используется и ядро поддерживает параметр:
rcon 0
Перед отключением убедитесь, что игровые административные системы не зависят от RCON.
Какой порт выбрать для сервера CRMP
Для CRMP традиционно рекомендуется:
port 8904
Можно назначить другой свободный порт от 1 до 65535, если его разрешает хостинг.
Порт должен быть
- открыт по протоколу UDP;
- свободен на операционной системе;
- совпадать в
server.cfgи панели хостинга; - проброшен на маршрутизаторе при домашнем запуске;
- указан игрокам вместе с IP.
Несколько серверов на одном IP
Первый сервер: 8904 UDP
Второй сервер: 8905 UDP
Третий сервер: 8906 UDP
Каждому процессу требуется отдельный порт.
Первый запуск сервера
Windows
Запустите серверный EXE из корневой папки.
Linux
cd /home/crmp/server
sudo -u crmp ./samp03svr-cr
При успешном запуске консоль показывает
- чтение
server.cfg; - загрузку плагинов;
- загрузку фильтрскриптов;
- запуск игрового мода;
- число добавленных моделей транспорта;
- прослушиваемый порт;
- сообщения игрового режима.
Пример нормального запуска
Server Plugins
--------------
Loading plugin: streamer
Loaded.
Loading plugin: sscanf
Loaded.
Loaded 2 plugins.
Started server on port: 8904
Number of vehicle models: 10
После запуска проверьте журнал
server_log.txt
Подключение к локальному серверу
На компьютере с запущенным сервером добавьте адрес:
127.0.0.1:8904
Также может использоваться:
localhost:8904
Для другого компьютера в домашней сети
Укажите локальный IP сервера:
192.168.1.100:8904
Как узнать локальный IP Windows
ipconfig
Linux
ip addr
Адрес 127.0.0.1 работает только на том компьютере, где запущен сервер.
Открытие порта CRMP в Windows
Запустите PowerShell от имени администратора.
New-NetFirewallRule `
-DisplayName "CRMP Server UDP 8904" `
-Direction Inbound `
-Protocol UDP `
-LocalPort 8904 `
-Action Allow
Проверка правила
Get-NetFirewallRule |
Where-Object DisplayName -Like "CRMP*"
Удаление правила
Remove-NetFirewallRule `
-DisplayName "CRMP Server UDP 8904"
Также Windows может показать запрос на разрешение доступа при первом запуске EXE. Разрешите доступ для нужного типа сети.
Открытие порта CRMP в Linux
Для UFW
sudo ufw allow 8904/udp
Проверка
sudo ufw status numbered
Проверка процесса
sudo ss -lunp | grep 8904
Если VPS имеет облачный firewall
Разрешите UDP 8904 также в панели провайдера. Локальное правило UFW не отменяет ограничение внешнего сетевого экрана.
Проброс порта на домашнем роутере
Для подключения игроков из интернета создайте правило Port Forwarding:
Внешний порт: 8904
Внутренний порт: 8904
Протокол: UDP
Локальный IP: 192.168.1.100
Перед настройкой
- закрепите локальный IP компьютера;
- проверьте Windows Firewall;
- узнайте, выдаёт ли провайдер публичный IPv4;
- исключите двойной NAT;
- не открывайте RDP и другие ненужные службы.
Серый IP
Если провайдер использует CGNAT, обычный проброс порта не поможет. Потребуется публичный IP, игровой хостинг или VPS.
Подключение к серверу через интернет
Игрокам передаётся публичный IP и порт:
203.0.113.25:8904
Публичный IP VPS
Указан в панели провайдера.
Публичный IP домашнего соединения
Проверьте его в панели роутера или через сервис определения IP.
Если подключение не работает
- убедитесь, что процесс запущен;
- проверьте порт в
server.cfg; - проверьте UDP-правило firewall;
- проверьте внешний firewall VPS;
- проверьте проброс роутера;
- убедитесь в наличии публичного IPv4;
- проверьте соответствие версии клиента;
- посмотрите
server_log.txt.
Добавление CRMP-сервера во вкладку Internet
В server.cfg укажите:
announce 1
query 1
Дополнительно заполните
hostname My Criminal Russia Role Play
gamemodetext Role Play
mapname Criminal Russia
language Russian
weburl gta-miami.online
Если сервер не появился
- проверьте доступность UDP-порта;
- убедитесь, что сервер работает постоянно;
- проверьте значение
announce; - проверьте значение
query; - удалите неправильную строку
bind; - проверьте совместимость клиентской версии;
- подождите обновления списка.
Даже сервер, временно не отображающийся в общем списке, можно добавить вручную по IP и порту.
Управление сервером через RCON
Вход в игре
/rcon login ВАШ_RCON_ПАРОЛЬ
Список команд
/rcon cmdlist
Список переменных
/rcon varlist
Перезапуск игрового мода
/rcon gmx
Смена мода
/rcon changemode roleplay
Загрузка фильтрскрипта
/rcon loadfs admin
Перезапуск фильтрскрипта
/rcon reloadfs admin
Выгрузка фильтрскрипта
/rcon unloadfs admin
Просмотр игроков
/rcon players
Сообщение сервера
/rcon say Сервер будет перезапущ>
/rcon varlist
Перезапуск игрового мода
/rcon gmx
Смена мода
/rcon changemode roleplay
Загрузка фильтрскрипта
/rcon loadfs admin
Перезапуск фильтрскрипта
/rcon reloadfs admin
Выгрузка фильтрскрипта
/rcon unloadfs admin
Просмотр игроков
/rcon players
Сообщениеен через 5 минут
Корректное выключение
/rcon exit
Подключение MySQL к серверу CRMP
MySQL нужна не каждому игровому моду. Старые сборки могут хранить данные в INI или SQLite, а современные RP-моды обычно используют отдельную базу.
Для MySQL-мода потребуется
- сервер MySQL или MariaDB;
- имя базы;
- пользователь и пароль;
- SQL-файл структуры;
- совместимый MySQL-плагин;
- соответствующий
a_mysql.inc; - правильные реквизиты в моде или конфигурации.
Импорт SQL через командную строку
mysql \
-u crmp_user \
-p \
crmp_database \
< database.sql
Типичные параметры
Host: 127.0.0.1
Port: 3306
Database: crmp_database
User: crmp_user
Password: СЛОЖНЫЙ_ПАРОЛЬ
Если база находится на другом сервере
- разрешите подключение с IP CRMP-сервера;
- не открывайте порт 3306 всему интернету;
- проверьте сетевой экран;
- используйте отдельного пользователя без глобальных прав.
Ошибка подключения
Смотрите консоль, server_log.txt и собственный журнал MySQL-плагина. Точный синтаксис подключения зависит от версии плагина и игрового мода.
Автозапуск CRMP-сервера на Linux
Создайте службу systemd:
sudo nano /etc/systemd/system/crmp.service
Содержимое
[Unit]
Description=Criminal Russia Multiplayer Server
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
User=crmp
Group=crmp
WorkingDirectory=/home/crmp/server
ExecStart=/home/crmp/server/samp03svr-cr
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
Подставьте настоящее имя серверного файла.
Применение
sudo systemctl daemon-reload
sudo systemctl enable crmp
sudo systemctl start crmp
Проверка состояния
sudo systemctl status crmp
Просмотр журнала
sudo journalctl -u crmp -n 100 --no-pager
Перезапуск
sudo systemctl restart crmp
Остановка
sudo systemctl stop crmp
Распространённые ошибки при запуске CRMP
Unable to start server
Проверьте:
- существование
server.cfg; - правильность RCON-пароля;
- свободен ли порт;
- права на запуск Linux-файла;
- наличие 32-битных библиотек;
- соответствие ядра операционной системе.
Unknown Gamemode
Причины:
- неверное название в
gamemode0; - AMX отсутствует в папке
gamemodes; - файл имеет другое написание букв;
- игровой мод завершился при запуске;
- не загрузился обязательный плагин.
Script not found
Проверьте строку:
gamemode0 roleplay 1
И наличие файла:
gamemodes/roleplay.amx
Run time error 19: File or function is not found
Обычно ошибка связана с отсутствующим или несовместимым плагином.
Проверьте
- все плагины из строки
plugins; - DLL или SO для правильной системы;
- разрядность плагина;
- версию MySQL, Streamer или sscanf;
- зависимости командой
ldd; - соответствие include-файла и плагина.
Loading plugin: mysql — Failed
Возможные причины:
- плагин отсутствует;
- Windows DLL загружена на Linux;
- Linux SO загружена на Windows;
- не установлена системная библиотека;
- плагин имеет неправильную архитектуру;
- в конфигурации неверно указано имя.
Permission denied на Linux
chmod +x samp03svr-cr
sudo chown -R crmp:crmp /home/crmp/server
No such file or directory при существующем файле
Для 32-битного бинарного файла это часто означает отсутствие загрузчика или библиотек i386.
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install libc6:i386 libstdc++6:i386 -y
Address already in use
Порт занят другим процессом.
sudo ss -lunp | grep 8904
Остановите другой сервер или назначьте новый порт.
Server didn’t respond
- сервер выключен;
- используется неправильный IP;
- закрыт UDP-порт;
- не выполнен проброс роутера;
- провайдер использует серый IP;
- версия клиента не соответствует серверу;
- ядро аварийно завершилось.
Сервер запускается и сразу закрывается в Windows
Откройте командную строку в папке сервера и запустите EXE из неё, чтобы увидеть ошибку:
cd C:\CRMP-Server
samp-server-cr.exe
После переноса с Windows не находятся файлы
Linux различает регистр букв. Сравните пути в Pawn-коде с реальными названиями каталогов.
scriptfiles/Accounts
scriptfiles/accounts
Не работает русский текст
Проверьте:
- кодировку исходного PWN;
- используемые include-файлы;
- совместимость компилятора;
- кодировку таблиц MySQL;
- конвертацию текста игровым модом;
- версию русификатора или CRMP-плагина.
Проверка сервера после установки
Серверная часть
- сервер запускается без аварийного завершения;
- все плагины имеют статус Loaded;
- игровой мод не показывает runtime error;
- порт прослушивается;
- журнал создаётся;
- MySQL подключается;
- автоматический перезапуск не зациклен.
Клиентская часть
- сервер добавляется по IP;
- отображается правильное название;
- выполняется подключение;
- появляется выбор класса или авторизация;
- работают русские ники и текст;
- игрок появляется в правильной точке;
- транспорт имеет корректные модели;
- после выхода сохраняются данные.
Администрирование
- RCON-пароль заменён;
- вход через RCON работает;
- команда
playersпоказывает пользователей; - сервер корректно перезапускает мод;
- резервная копия создана;
- неизвестные фильтрскрипты отключены.
Безопасность сервера CRMP
Обязательные меры
- замените стандартный RCON-пароль;
- не публикуйте
server.cfgс паролями; - не запускайте неизвестные DLL и SO;
- используйте отдельного пользователя Linux;
- открывайте только игровой UDP-порт;
- закройте MySQL от общего интернета;
- обновляйте плагины только после тестирования;
- проверяйте готовые моды по исходному коду;
- ограничивайте административные команды;
- просматривайте
server_log.txt.
Не храните данные MySQL
- в клиентских файлах;
- в публичном репозитории;
- в сообщениях общего чата;
- в доступном для скачивания архиве;
- на скриншотах панели управления.
Проверка готового мода
Найдите в исходнике:
- скрытые RCON-команды;
- проверки по конкретным никам;
- неизвестные IP и домены;
- добавление администратора;
- отправку паролей;
- необъяснимые HTTP-запросы;
- жёстко прописанные данные базы;
- команды удаления файлов.
Резервное копирование сервера
Что сохранять
server.cfg;- папку
gamemodes; - папку
filterscripts; - папку
plugins; - папку
scriptfiles; - исходники и include-файлы;
- SQL-дамп;
- список версий плагинов;
- файлы блокировок;
- настройки автозапуска.
Архив Linux
tar -czf \
/home/crmp/crmp-backup-$(date +%F).tar.gz \
/home/crmp/server
Дамп MySQL
mysqldump \
--single-transaction \
-u crmp_user \
-p \
crmp_database \
> /home/crmp/crmp-database-$(date +%F).sql
Копия должна храниться
- на сервере для быстрого отката;
- на другом VPS или облачном диске;
- на компьютере владельца;
- отдельно перед обновлением мода;
- отдельно перед заменой плагинов.
Периодически проверяйте восстановление на тестовой копии. Наличие архива не гарантирует, что он содержит все нужные файлы и рабочую базу.
Частые вопросы по установке CRMP Server
Какую версию CRMP выбрать?
Версию, для которой создан ваш игровой мод и которую использует клиент. Для новых установок чаще рассматривают CRMP 0.3.7, но старую сборку нельзя переносить без проверки.
Можно ли запустить CRMP на Windows 11?
Да, серверная программа обычно запускается на современных версиях Windows. Старым плагинам могут потребоваться дополнительные компоненты.
Можно ли установить CRMP на Ubuntu?
Да. Используйте Linux-архив и установите 32-битные библиотеки, необходимые старому серверному ядру и плагинам.
Нужна ли GTA:SA на серверном VPS?
Нет. Игра и CRMP-клиент нужны игроку, а VPS запускает только серверные файлы.
Какой стандартный порт CRMP?
Для серверной адаптации CRMP традиционно используется UDP-порт 8904.
Можно ли использовать порт 7777?
Можно назначить любой свободный разрешённый UDP-порт, но его необходимо указать в server.cfg, firewall и клиенте.
Куда устанавливать игровой мод?
Файл AMX помещается в gamemodes, после чего его название указывается в строке gamemode0.
Нужен ли файл PWN для запуска?
Нет, сервер выполняет AMX. PWN нужен для изменения и повторной компиляции игрового мода.
Почему сервер не видит AMX?
Проверьте имя в gamemode0, папку gamemodes, регистр букв и наличие самого файла.
Что означает runtime error 19?
Игровой мод вызывает функцию, которую сервер не нашёл. Чаще всего не загрузился нужный плагин или используется несовместимая версия.
Чем DLL отличается от SO?
DLL используется на Windows, SO — на Linux. Файлы нельзя взаимозаменять.
Почему плагин работает на Windows, но не работает на Linux?
Проверьте наличие Linux-версии, разрядность, системные зависимости и указание расширения .so в server.cfg.
Где находится журнал ошибок?
Основные сообщения записываются в server_log.txt в корневой папке сервера.
Как подключиться к серверу на своём компьютере?
Добавьте адрес 127.0.0.1:8904 в клиент CRMP.
Как дать доступ другу?
Откройте UDP-порт, выполните проброс на роутере и передайте публичный IP. При сером IP потребуется VPS или публичный адрес от провайдера.
Почему сервер не появляется во вкладке Internet?
Проверьте announce 1, query 1, доступность UDP-порта и соответствие серверной адаптации клиенту.
Как перезапустить игровой мод?
После входа в RCON выполните /rcon gmx.
Как установить фильтрскрипт?
Поместите AMX в filterscripts и добавьте его название в строку filterscripts.
Обязательно ли использовать MySQL?
Нет. Это зависит от игрового мода. Некоторые сборки используют INI или SQLite.
Можно ли запускать сервер от root?
Технически возможно, но небезопасно. На Linux создайте отдельного пользователя без административных прав.
Как оставить сервер работающим после закрытия SSH?
Используйте службу systemd, игровую панель или отдельную сессию screen. Для постоянного проекта удобнее systemd.
Почему сервер постоянно перезапускается в systemd?
Процесс аварийно завершается. Посмотрите journalctl и server_log.txt, а не увеличивайте число автоматических рестартов.
Нужно ли делать копию перед заменой плагина?
Да. Сохраните серверные файлы и базу, затем проверьте новый плагин на тестовой копии.
Официальные и технические источники
Заключение
Для установки CRMP Server необходимо скачать серверную адаптацию под нужную версию клиента и операционную систему, распаковать файлы, установить игровой мод и настроить server.cfg.
Основной мод в формате AMX помещается в gamemodes, фильтрскрипты — в filterscripts, а плагины — в plugins. На Windows используются DLL, на Linux — SO.
Для локального теста подключайтесь к 127.0.0.1:8904. Для публичного доступа откройте UDP-порт в сетевом экране и панеи VPS, а при домашнем запуске настройте его проброс на роутере.
Перед первым публичным запуском замените RCON-пароль, проверьте игровые скрипты и плагины, импортируйте базу данных и создайте резервную копию рабочей сборки.
При ошибках сначала изучайте консоль и server_log.txt. Сообщение runtime error 19 обычно указывает на отсутствующий или несовместимый плагин, а Unknown Gamemode — на проблему с AMX или строкой gamemode0.
Комментарии к инструкции
Обсудите решение, задайте вопрос или дополните инструкцию