VESTALua API documentation
Вернуться к продуктуEN

Vesta Lua API 1.0

Lua API позволяет локальным скриптам читать уже опубликованное состояние Vesta, добавлять настройки и overlay-графику, менять конфигурацию и использовать внешний input gateway. Скрипты не получают адреса CS2 и не создают дополнительные циклы чтения памяти.

Установка

При первом запуске создаётся %TEMP%\vesta\lua:

lua/
  scripts/     -- одиночные .lua или пакеты
  modules/     -- общие Lua-модули, только исходники .lua
  data/        -- private JSON storage скриптов
  logs/

Скрипты управляются в Misc -> Lua API: список с включением, настройками, перезагрузкой и удалением (в корзину), кнопки импорта .lua и открытия папки scripts. Импорт атомарно копирует файл и сразу обновляет runtime.

Песочница

Каждый скрипт работает в песочнице и видит только API Vesta и безопасную часть стандартной библиотеки:

Данные скрипт хранит через vesta.storage. Единственное исключение — встроенный веб-радар (lua/scripts/Vesta Web Radar.lua из репозитория): Vesta узнаёт его по SHA-256 текста (CRLF приводится к LF), вшитому в сборку, и только ему даёт полный доступ (io, os, запуск своего PowerShell-помощника). Любое изменение файла радара требует новой сборки Vesta, иначе он работает в песочнице.

Минимальный пример

vesta.ui.toggle("enabled", "Player counter", true)

vesta.events.on("frame", function(frame)
    if not vesta.ui.get("enabled") then return end
    vesta.draw.text(30, 90, "Players: " .. #frame.players, 255, 255, 255, 255)
end)

См. lifecycle, game snapshot, events, config, UI/draw, input, storage/modules, проверка runtime, пример Web Radar и полный reference.