CS2 Lua API

Введение

Lua API RezTOP для CS2 позволяет писать свои скрипты: рисовать поверх игры, читать данные игроков и оружия, добавлять вкладки в меню, менять команду движения и реагировать на события игры.

Скрипты пишутся на Lua 5.1 и выполняются в LuaJIT 2.1. Дополнительно доступны функции совместимости с Lua 5.2: rawlen, table.pack, table.unpack, метаметоды __pairs и __ipairs. Наша сборка LuaJIT также понимает дополнительный синтаксис (continue, +=, ?., битовые операторы и др.) — см. страницу «Расширенный синтаксис».

Что есть в API#

Раздел Что внутри
События подписка на кадр, движение, выстрелы, сущности, игровые события
render рисование фигур, текста и картинок, перевод координат мира в экран
entity игроки, оружие, любые сущности игры и их поля
trace трассы лучей и пуль, проверка видимости
ui своя вкладка в меню: переключатели, ползунки, списки, цвета
esp свои элементы в редакторе ESP
database данные, которые переживают перезапуск игры
utils, globals, console время, клавиши, консоль, глобальные переменные игры
panorama выполнение JavaScript интерфейса игры
Типы vector, angle, vector2, color, cmd

Соглашения в документации#

  • Необязательный параметр помечен ?: thickness?: number. Значение по умолчанию указано в описании.
  • vector, angle, vector2, color — значения математических типов. Их создают одноимённые конструкторы: vector(1, 2, 3), color(255, 0, 0, 255).
  • entity — объект сущности игры (игрок, оружие и т. п.).
  • Числа проверяются строго: строка "5" вместо числа даёт ошибку bad argument #N ... (number expected, got string).
  • Целые аргументы усекаются до 32-битного целого.