Авторы:
Благодарность:
Требования:
Мультиязычность:
Ernest Manukyan (kukson777)
Благодарность:
Командам ReHLDS, ReGameDLL и ReAPI, авторам AssemblyScript и WAMR.
Требования:
- Counter-Strike 1.6 на HLDS, Windows или Linux; рекомендуется ReHLDS
- Metamod и AMX Mod X 1.9 или новее
- ReGameDLL и ReAPI — для событий, которые есть только у них; без них работает и на обычном HLDS
- Для разработки: Node.js или Bun
Мультиязычность:
- EN
- RU
amxts — фреймворк для плагинов AMX Mod X на TypeScript. Плагин пишется как обычный TypeScript — с типами, классами,
Что умеет
Ссылки
async/await, подсказками и проверкой ошибок в редакторе — компилируется в машинный код (AssemblyScript → WebAssembly → AOT) и работает на сервере рядом с плагинами на Pawn. Pawn-плагины трогать не нужно: они работают как раньше.Что умеет
- Игроки, сущности и события в понятных именах:
player.health,player.money,server.players,server.addEventListener("killed", …) - Команды с типизированными аргументами:
/kick <target> [reason]— игрок находится по имени или #userid - Меню AMX Mod X как объекты: пункты с
visible,enabled,onSelect fetchиuseFetchкак в браузере: HTTPS, таймауты, повторы — в своём потоке, игра не ждёт- FTP, FTPS и SFTP — модуль
@amxts/ftp - Боты:
server.addBot, движение, команды - Сообщения игры по именам с типами полей:
server.addMessageListener("death", …) - Ошибки с трассировкой по вашему TypeScript: файл, строка и сама строка кода
- Горячая перезагрузка:
amxts devпересобирает и перезагружает только изменённый плагин, открытое меню не закрывается - Работает на ReHLDS и на обычном HLDS, Windows и Linux
JavaScript:
plugin({ name: "Hello", version: "1.0.0", author: "me" });
server.addCommand("/hp", ({ player }) => {
print(player, `${player.name}, your HP: ${player.health}`);
});
const shop = new Menu("Shop");
shop.addItem({
title: "Armor - $1000",
enabled: ({ player }) => player.money >= 1000,
onSelect: ({ player }) => {
player.armor = 100;
player.money -= 1000;
},
});
server.addCommand("/shop", ({ player }) => shop.show(player));
Ссылки
- Документация: amxts.github.io/docs
- Официальные модули: amxts.github.io/modules
- Список изменений: amxts.github.io/changelog