Python-клиент SA:MP 0.3.7 с API для автоматизации ботов.
PyRakSamp подключается к SA:MP-серверам без игрового клиента, работает с RakNet-пакетами и RPC, позволяет создавать собственные скрипты и автоматизировать действия бота.
- Подключение к SA:MP-серверам без игрового клиента
- Работа с RakNet-пакетами и RPC
- Python API для управления ботом
- Система событий и автоматическая загрузка скриптов
scripts/ - Движение по координатам (
MoveToCoord) - Игроки, транспорт, диалоги, TextDraw, пикапы
- Поддержка SOCKS5-прокси
- Логирование с таймстемпами
- Случайные ники и IP
- Python 3.10+
- Только стандартная библиотека Python
Windows — запустить start.bat:
start.batLinux — запустить start.sh (при необходимости сначала сделать исполняемым):
chmod +x start.sh
./start.shЛибо напрямую из корневой папки (работает на любой ОС):
python main.pyПараметры командной строки:
python main.py --ip 127.0.0.1 --port 7777 --nick MyBot
python main.py --config config.ini
python main.py --proxy 127.0.0.1:1080
python main.py --random-nick --random-ipСкрипты из папки scripts/ загружаются автоматически при запуске бота. Создайте .py файл и подпишитесь на события:
from logic.events import emitter
@emitter.on("onShowChat")
def on_chat(bot, message, parsed, packet):
print(f"[CHAT] {message}")
@emitter.on("onShowDialog")
def on_dialog(bot, dialog_id, dialog_style, title, info, button1, button2, parsed, packet):
if dialog_id == 1:
bot.SendDialogResponse(1, 1, 0, "password")PyRakSamp/
├── core/ # Низкоуровневый слой: сеть, протокол, bitstream
├── logic/ # Логика бота: события, менеджеры, движение
├── samp/ # SA:MP-слой: API, сессия, пакеты, парсеры
├── scripts/ # Пользовательские скрипты (авто-загрузка)
├── docs/ # Документация
├── bot.py
├── main.py
├── start.bat # Запуск на Windows
└── start.sh # Запуск на Linux
PyRakSamp находится на стадии beta. API и внутренняя структура могут изменяться в будущих версиях.