Первый скрипт Easy Universal
Язык — AngelScript, расширение .as. Lua и скрипты другого SDK не совместимы
автоматически. SDK 0.3 и совместимость API 0.1/0.2 описаны в API.md;
точные объявления — declarations.as. Process toolkit — PROCESS_API_RU.md.
Создать и запустить
Сохраните следующий код в UTF-8 файле hello.as:
void on_frame() {
render::text(24, 24, "Hello, Easy!", 0xff994dff);
render::circle(screen::width() / 2, screen::height() / 2, 30, 0xffffffff);
}
Откройте клиент → Add .as → выберите файл → Source → Load script. Импорт
копирует код в отдельный пакет; исходный файл не изменяется. Это пример для
собственного окна: доступ к памяти, администратор и запущенная игра не нужны.
Stop завершает сессию. Не запускайте неизвестные скрипты.
Редактор
Save / Ctrl+S сохраняет без запуска. Save + Reload / Ctrl+Shift+S доступен
для текущего работающего пакета. Обычный Reload перечитывает сохранённый файл,
а не несохранённый буфер. Ctrl+F / F3 ищут текст с учётом регистра; Ctrl+L
позволяет перейти к строке. F4 / Go to error переходят к последней ошибке.
Details содержит файл, строку, колонку и текст сообщения.
Если файл изменился снаружи, Save откажется перезаписывать его. Скопируйте
свои правки перед Reopen. Ошибка компиляции или callback останавливает сессию;
автоматического отката на старый код нет.
Подключить разрешённое тестовое приложение
Импортируйте process-inspector.as, нажмите Select рядом с PID, найдите своё
приложение по имени или PID и подтвердите выбор. Затем отдельно включите
Read selected process. Смена PID снимает разрешения. Overlay selected window
опционален: это собственное прозрачное окно, не инжект и не Discord Overlay.
Выбор из списка означает только, что процесс существует. Он не гарантирует
доступ к памяти или окно для оверлея. После перезапуска приложения снова
выберите PID. Не отключайте защиту и не повышайте права вслепую при отказе.
Типичные ошибки
- Нет доступа: проверьте
process_readв manifest и явное разрешение клиента. - Процесс завершился: остановите сессию и выберите новый экземпляр.
- Ошибка чтения: проверяйте возвращаемый bool и
process::last_error();
результаты неудачного чтения очищаются. Не используйте старые значения.
- Script error: смотрите Details, исправьте указанный файл/строку и сохраните.
- Callback limit / watchdog: уменьшите работу за кадр; чтения ограничены
256 операциями / 1 МиБ на callback, отдельное чтение — 64 КиБ.
- Нет картинки: рисуйте только в on_frame, проверьте permission
render;
обычное окно вывода и overlay выбранного окна — разные режимы.
Поддержка приложений
Общий runtime не знает сущности, координаты или формат данных всех игр.
Для каждого приложения нужен совместимый адаптер с разрешённым источником
данных. Для War Thunder добавлен адаптер локальной телеметрии собственных
приборов: WAR_THUNDER.md. Его работа в игре ещё не проверена. Для Fortnite
готового адаптера нет. Повышение прав не обеспечивает доступ к защищённым
процессам. Обход античита, kernel-компоненты и автоматизация ввода отсутствуют.
Облачный каталог и семантическое автодополнение остаются отдельными этапами.
Source уже поддерживает многофайловые пакеты, лексическую подсветку AngelScript
и задержанные подсказки деклараций из API_SCHEMA; текущий редактор не выполняет
семантический анализ и не доверяет автору пакета.