Установка#
amxpy состоит из двух частей: модуля AMX Mod X на сервере и Python-пакета на вашей машине, которым вы пишете, проверяете и ставите плагины.
Что нужно серверу#
| Компонент | Зачем |
|---|---|
| Linux, 32-битный HLDS или ReHLDS | на нём запускается всё остальное |
| Metamod-R или Metamod | загружает AMX Mod X |
| AMX Mod X 1.9 или новее | загружает модуль amxpy |
| ReGameDLL | игровые события: спавн, урон, раунды, покупки, бомба |
Без ReGameDLL работают плагины, команды, чат, меню, HUD и события подключения, но не игровые события. Смена ника требует API ReGameDLL 5.3+, гранаты и бомба — 5.5+.
Модуль на сервер#
- Скачайте
amxpy-<версия>-linux-i386.tar.gzсо страницы последнего релиза. В архиве — модуль, CPython 3.14 и amxpy; серверу нужен Linux с glibc 2.31 или новее (Debian 11+, Ubuntu 20.04+). Собрать архив самому — раздел «Сборка из исходников» README. -
Распакуйте архив в папку мода:
-
Добавьте строку
amxpyвcstrike/addons/amxmodx/configs/modules.ini. -
Перезапустите сервер и проверьте в консоли:
Плагины лежат в cstrike/addons/amxpy/plugins/ (пакеты .amxpy), а их список — в
cstrike/addons/amxpy/plugins.ini. Руками туда ничего класть не нужно: это делает
amxpy deploy.
Сервер в Docker
Для контейнера шаги 2–4 выполняет scripts/deploy-docker.sh <контейнер> <путь к cstrike>.
Исходный modules.ini он сохраняет в build/deploy-backup/.
Пакет для разработки#
Нужен Python 3.14: байткод плагинов привязан к версии CPython, а на сервере работает именно 3.14.
python3.14 -m venv .venv
source .venv/bin/activate
pip install "amxpy[dev] @ git+https://github.com/KotyaraKryt/amxpy@v0.1.0"
amxpy --help
[dev] добавляет pytest и flake8. Ставьте ту же версию, что и модуль на сервере.
Из исходников amxpy
Если вы правите сам amxpy, ставьте его из клона в режиме compat — иначе Pylance не увидит пакет:
pip install -e '/путь/к/amxpy[dev]' --config-settings editable_mode=compat.
Если забыли, amxpy init это заметит и напишет команду.
Окружение — внутри проекта
Создавайте .venv в папке проекта: тогда amxpy init пропишет интерпретатор как
${workspaceFolder}/.venv/..., и настройки VS Code будут работать на любой машине.
Вместе с пакетом ставятся:
- утилита
amxpy— проект, сборка, установка на сервер и RCON (команды); - компилятор amxpyc — проверяет плагин до запуска (диагностики);
amxpy.testingи фикстура pytestserver— сервер в памяти для тестов (тестирование).
Дальше — первый плагин.