Pterohost docs

SAMP: установка и настройка сервера

Пошаговая установка SA-MP сервера на Linux и Windows: server.cfg, режимы, плагины, порт 7777, частые проблемы и мониторинг.

Кратко: SA-MP (San Andreas Multiplayer) - мод для GTA:SA, позволяющий создавать многопользовательские серверы с кастомными режимами на Pawn. Для запуска нужен SA-MP Server Package 0.3.7-R2 (последний стабильный), открытый UDP 7777 и заполненный server.cfg.

SAMP: установка и настройка сервера

SA-MP - один из старейших игровых модов с открытым сервером, выпущенный ещё в 2004 году, но в 2026 году он по-прежнему живёт: тысячи серверов, сотни тысяч игроков и огромное сообщество с готовыми Pawn-скриптами, плагинами и даже open-source форком open.mp. Установить SA-MP сервер не сложнее, чем любой другой игровой сервер, - весь процесс занимает 15-20 минут на чистой VPS или выделенном сервере под Linux. В этой статье разберём полный путь: от скачивания бинарников до настройки server.cfg, подключения плагинов и диагностики частых проблем запуска.

Pterohost - игровой хостинг с DDoS-защитой уровня L3/L4/L7 и NVMe-дисками, готовый для SA-MP серверов. Промокод 4START даёт -20% на первый заказ. Заказать сервер SAMP

Что нужно перед установкой

Перед тем как скачивать серверные файлы, убедитесь:

  • У вас есть VPS или выделенный сервер на Linux (Ubuntu 20.04/22.04/24.04 рекомендуется) или Windows Server 2019/2022.
  • Открыт UDP-порт 7777 в брандмауэре (и пробросить на роутере, если сервер за NAT).
  • На Linux установлены i386-библиотеки, так как бинарник SA-MP 32-битный.
  • Минимальные требования: 1 ГБ RAM, 1 ядро CPU - для небольшого сервера до 50 игроков достаточно.

Для среднего RP-сервера на 100-200 слотов рекомендуется: 2-4 ГБ RAM, 2+ ядра, быстрый диск (NVMe) для логов и баз данных.

Установка на Linux (Ubuntu/Debian)

Шаг 1: подготовка системы

# Добавляем поддержку 32-битных пакетов
sudo dpkg --add-architecture i386
sudo apt update

# Устанавливаем зависимости
sudo apt install -y libc6:i386 libstdc++6:i386 wget unzip screen

Шаг 2: скачивание серверного пакета

Официальные релизы SA-MP Server Packages доступны на сайте samp.com и зеркалах GitHub. Последняя стабильная версия - 0.3.7-R2.

# Создаём папку сервера
mkdir -p /opt/sampserver && cd /opt/sampserver

# Скачиваем серверный пакет (Linux x86)
wget https://github.com/samp-incognito/samp-streamer-plugin/releases/... 
# Используйте официальный архив samp03svr_R2-2-1.tar.gz с сайта SA-MP
# или open.mp server для современной альтернативы

tar -xzf samp03svr_R2-2-1.tar.gz

Структура распакованного архива:

/opt/sampserver/
  samp03svr          - исполняемый файл сервера
  server.cfg         - главный конфиг
  announce            - утилита регистрации на мастер-сервере
  gamemodes/         - папка для .amx игровых режимов
  filterscripts/     - дополнительные скрипты
  plugins/           - плагины (.so для Linux)
  scriptfiles/       - файлы для чтения/записи из скриптов
  logs/              - логи сервера

Шаг 3: права и запуск

chmod +x /opt/sampserver/samp03svr

# Проверочный запуск
cd /opt/sampserver
./samp03svr

Если видите строку SA-MP Dedicated Server и курсор остановился - сервер поднялся. Прерываем Ctrl+C и настраиваем server.cfg.

Запуск через screen (фоновый режим)

screen -S samp
cd /opt/sampserver
./samp03svr

# Отключиться от screen: Ctrl+A, затем D
# Вернуться: screen -r samp

Для продакшн-серверов лучше создать systemd-юнит (см. раздел ниже).

Установка на Windows

  1. Скачайте архив samp03svr_R2-2-1_win32.zip с официального сайта.
  2. Распакуйте в любую папку, например C:\sampserver\.
  3. Для запуска запустите samp-server.exe от имени администратора.
  4. Откройте порт 7777 UDP в брандмауэре Windows: Панель управления - Брандмауэр - Правила для входящих подключений - Создать правило - Порт - UDP 7777.

На Windows сервер лучше оборачивать в NSSM (Non-Sucking Service Manager) для автозапуска как службы Windows.

Настройка server.cfg

Это главный конфиг SA-MP сервера. Все параметры разделены пробелом без знака =.

# Основные настройки
echo Executing Server Config...
lanmode 0
rcon_password YOUR_STRONG_PASSWORD
maxplayers 50
port 7777
hostname My SA-MP Server
gamemode0 freeroam 1
announce 1
chatlogging 0
onfoot_rate 40
incar_rate 40
weapon_rate 40
stream_distance 300.0
stream_rate 1000
maxnpc 0
logtimeformat [%H:%M:%S]
language RU

Подробное описание ключевых параметров

ПараметрЗначениеОписание
lanmode0 / 10 - обычный режим с мастер-сервером, 1 - только локальная сеть
rcon_passwordстрокаПароль RCON-консоли. Обязательно меняйте с changeme
maxplayers1-1000Максимум игроков (разумный лимит 200)
portчислоUDP-порт сервера (по умолчанию 7777)
hostnameстрокаИмя сервера в браузере серверов
gamemode0скрипт таймерИмя .amx файла без расширения и время в секундах
filterscriptsсписокДополнительные скрипты через пробел
pluginsсписокПлагины через пробел (без расширения .so/.dll)
announce0 / 1Регистрация на мастер-сервере SA-MP
onfoot_rateмсЧастота синхронизации пешего игрока (меньше - плавнее, но трафик)
incar_rateмсЧастота синхронизации в машине
stream_distancefloatРадиус стриминга объектов в единицах SA
weburlURLСайт сервера (отображается в браузере)
mapnameстрокаНазвание карты в браузере

Пример конфига для RP-сервера

echo Executing Server Config...
lanmode 0
rcon_password SecurePass2026!
maxplayers 100
port 7777
hostname [RU] MyRP Server | RolePlay
gamemode0 myrpgamemode 1
filterscripts anticheat speedometer
plugins sscanf streamer mysql
announce 1
chatlogging 1
onfoot_rate 40
incar_rate 40
weapon_rate 40
stream_distance 200.0
stream_rate 1000
maxnpc 10
logtimeformat [%H:%M:%S]
language Russian
weburl myserver.ru
mapname San Andreas

Игровые режимы (Pawn)

SA-MP использует язык программирования Pawn для скриптинга. Скомпилированные файлы .amx размещаются в gamemodes/.

Компиляция .pwn в .amx

Компилятор pawncc входит в состав SA-MP Server Package:

# Linux
./pawncc gamemodes/mygamemode.pwn -o gamemodes/mygamemode.amx -i include/

# Windows (в папке сервера)
pawncc.exe gamemodes\mygamemode.pwn -o gamemodes\mygamemode.amx -i include\

Готовые режимы для быстрого старта

  • Bare Minimum - минимальный шаблон без лишнего кода, отличная основа.
  • GFseguro - freeroam-режим с оружием и командами.
  • OpenRP - open-source RP-режим на GitHub, активно поддерживается в 2026.
  • LVDM - deathmatch на Las Venturas.

Режим подключается в server.cfg строкой gamemode0 имя_без_amx 1. Если режимов несколько и нужна ротация, добавьте gamemode1, gamemode2 и т.д.

Filterscripts

Filterscripts - это дополнительные скрипты, работающие параллельно с основным режимом. Удобно для модульных функций: античит, спидометр, система предупреждений.

filterscripts anticheat speedometer vip

Файлы кладутся в filterscripts/, компилируются так же через pawncc.

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

Плагины расширяют возможности SA-MP через нативный C/C++ код. Самые популярные на 2026 год:

ПлагинНазначение
streamerСтриминг объектов, пикапов, текстлейблов свыше лимита SA-MP
sscanfУдобный парсинг строк и аргументов команд
mysql (BlueG / OR-1)Подключение к MySQL/MariaDB
sqlite (встроен)Встроенная поддержка SQLite через нативные функции
whirlpoolХэширование паролей Whirlpool
pawn.cmdОптимизированная обработка команд
Pawn.RakNetНизкоуровневый доступ к пакетам RakNet (для античитов)

Установка плагина (пример: streamer)

# Скачиваем релиз под Linux x86
cd /opt/sampserver/plugins
wget https://github.com/samp-incognito/samp-streamer-plugin/releases/download/v2.9.6/samp-streamer-plugin-2.9.6-linux.tar.gz
tar -xzf samp-streamer-plugin-2.9.6-linux.tar.gz
# В папке появится streamer.so

В server.cfg добавляем:

plugins streamer sscanf mysql

На Linux: указывать без .so. На Windows: без .dll.

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

[22:00:01] Loading plugin: streamer
[22:00:01]  *** Streamer Plugin v2.9.6 by Incognito loaded ***
[22:00:01]  Loading plugin: streamer >> OK

Открытие порта и файрвол

Linux (ufw)

# Открываем UDP 7777
sudo ufw allow 7777/udp

# Если используете нестандартный порт
sudo ufw allow 7778/udp

sudo ufw status

Linux (iptables напрямую)

sudo iptables -A INPUT -p udp --dport 7777 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 7777 -j ACCEPT

# Сохраняем правила
sudo iptables-save > /etc/iptables/rules.v4

Windows

# PowerShell от администратора
netsh advfirewall firewall add rule name="SAMP Server" dir=in action=allow protocol=UDP localport=7777

systemd-юнит для автозапуска (Linux)

Создаём файл /etc/systemd/system/sampserver.service:

[Unit]
Description=SA-MP Dedicated Server
After=network.target

[Service]
Type=simple
User=samp
WorkingDirectory=/opt/sampserver
ExecStart=/opt/sampserver/samp03svr
Restart=on-failure
RestartSec=5
StandardOutput=append:/opt/sampserver/logs/stdout.log
StandardError=append:/opt/sampserver/logs/stderr.log

[Install]
WantedBy=multi-user.target
# Создаём пользователя без root-прав (рекомендуется)
sudo useradd -r -s /bin/false samp
sudo chown -R samp:samp /opt/sampserver

# Активируем и запускаем
sudo systemctl daemon-reload
sudo systemctl enable sampserver
sudo systemctl start sampserver

# Статус
sudo systemctl status sampserver

Мониторинг сервера

Встроенные логи SA-MP

Основной лог сервера - server_log.txt в корне сервера. Там отображается всё: подключения, ошибки скриптов, вывод print() из Pawn-кода.

# Следить за логом в реальном времени
tail -f /opt/sampserver/server_log.txt

SA-MP Server Browser и внешние мониторинги

  • sa-mp.com/servers - официальный браузер серверов, сервер появляется автоматически при announce 1.
  • open.mp browser - альтернативный браузер с большей аудиторией в 2026 году.
  • GameTracker.com - внешний мониторинг с историей онлайна, аптайма и статистикой.
  • Собственный скрипт через SA-MP Query - SA-MP поддерживает простой UDP Query Protocol, можно опрашивать сервер самостоятельно.

Пример UDP-запроса через Python для мониторинга

import socket, struct

def query_samp(ip, port):
    sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    sock.settimeout(2)
    
    ip_parts = [int(x) for x in ip.split('.')]
    packet = b'SAMP'
    packet += bytes(ip_parts)
    packet += struct.pack('<H', port)
    packet += b'i'  # информационный запрос
    
    sock.sendto(packet, (ip, port))
    try:
        data, _ = sock.recvfrom(2048)
        return data
    except socket.timeout:
        return None

result = query_samp('127.0.0.1', 7777)
print('Сервер отвечает' if result else 'Сервер недоступен')

open.mp - современная альтернатива SA-MP

В 2026 году проект open.mp стал де-факто стандартом для новых серверов. Это open-source форк SA-MP 0.3.7 с поддержкой:

  • Современных ОС и 64-битных систем (нет проблем с i386 на Ubuntu 22/24).
  • Улучшенной производительности и большего числа объектов/транспорта.
  • Совместимости с существующими Pawn-скриптами без переписывания.

Установка open.mp аналогична SA-MP, но бинарник называется omp-server. Конфиг - config.json вместо server.cfg, хотя поддерживается и legacy-формат.

# Скачиваем open.mp сервер
wget https://github.com/openmultiplayer/open.mp/releases/latest/download/open.mp-linux-x86.tar.gz
tar -xzf open.mp-linux-x86.tar.gz
cd Server
./omp-server

Частые проблемы и решения

Сервер запускается, но не отображается в браузере серверов

Причины и решения:

  1. announce 0 в server.cfg - измените на announce 1.
  2. Порт 7777 UDP заблокирован - проверьте ufw status или iptables -L.
  3. Сервер за NAT без проброса порта - настройте port forwarding на роутере.
  4. Временные проблемы с мастер-сервером SA-MP - подождите или используйте open.mp.

Ошибка error while loading shared libraries: libstdc++.so.6

sudo apt install libstdc++6:i386

Плагин не загружается: Failed to load plugin

Проверьте:

  • Файл .so в папке plugins/ и имя в server.cfg совпадают (без расширения).
  • Плагин скомпилирован под правильную архитектуру (x86 для SA-MP 0.3.7).
  • Нет конфликта версий с другими плагинами.
# Проверяем зависимости .so файла
ldd plugins/streamer.so

Сервер падает при загрузке скрипта

Ошибки компиляции в .amx часто приводят к падению. Смотрите server_log.txt:

[00:00:01] Script[gamemodes/mygame.amx]: Run time error 19: "File or function is not found"

Перекомпилируйте скрипт с флагом -d3 для отладочной информации:

./pawncc gamemodes/mygame.pwn -o gamemodes/mygame.amx -i include/ -d3

RCON не работает / неверный пароль

  • Убедитесь, что rcon_password в server.cfg не равен changeme.
  • RCON работает через TCP (не UDP) - убедитесь, что TCP 7777 тоже открыт.
  • Подключение к RCON через встроенную команду в игре: /rcon login ПАРОЛЬ.

Оптимизация производительности

Для нагруженных серверов (100+ игроков):

# Снизьте частоту обновлений для экономии трафика и CPU
onfoot_rate 40       # 40 мс стандарт, можно 50-60 без заметной разницы
incar_rate 40
weapon_rate 40

# Увеличьте stream_distance осторожно - влияет на RAM
stream_distance 150.0

# Ограничьте NPC, если не используются
maxnpc 0

# Отключите chatlogging для снижения нагрузки на диск
chatlogging 0

Для плагина streamer при большом числе объектов:

// В OnGameModeInit
Streamer_SetTickRate(50);         // проверять каждые 50 мс
Streamer_SetMaxItems(STREAMER_TYPE_OBJECT, 5000);

Связанные материалы

Если вы занимаетесь игровыми серверами выживания, изучите смежные руководства: настройка сервера Project Zomboid с аналогичной схемой конфигов и управления процессом, сервер Terraria для небольших команд, а также установку и настройку 7 Days to Die - один из самых требовательных к ресурсам выживальщиков.

Заключение

SA-MP сервер в 2026 году - это проверенная временем платформа с огромной базой готовых Pawn-скриптов и плагинов. Базовая установка занимает 15-20 минут: распаковать серверный пакет, настроить server.cfg, открыть UDP 7777 и добавить нужные плагины. Для production-сервера рекомендуется обернуть процесс в systemd, настроить мониторинг через GameTracker или собственный скрипт, а также рассмотреть переход на open.mp как более современную и поддерживаемую альтернативу. Главное - не оставляйте rcon_password по умолчанию и следите за логами при первом запуске.

Pterohost - хостинг для SA-MP серверов с NVMe-дисками, защитой от DDoS-атак и поддержкой 24/7. Промокод 4START даёт -20% на первый заказ. Заказать сервер SAMP