Документация
Скрипты
К скриптам
Справочник

client

Логи, нотификации, звук, сервер, силент-ротация и сведения о клиенте.

Разбор с примерами — Клиент и сервер.

Сообщения

client.log(...) -> nil
Пишет в лог клиента
client.notify(msg, [duration]) -> nil
Нотификация в HUD
client.chat(text) -> nil
Сообщение в чат (только локально)
client.title(title, [subtitle], [fade_in=10], [stay=40], [fade_out=10])
Показывает титл по центру экрана только вам
client.actionbar(text)
Текст над хотбаром, как у серверного actionbar
client.play_sound(id [, volume, pitch]) -> nil
Звук клиента

О клиенте

client.namestring
Имя скрипта (без .lua)
client.versionstring = "2.0"
Версия API
client.mc_versionstring
Версия Minecraft, например 1.21.11
client.user() -> string
Логин текущего пользователя
client.time() -> number
System.currentTimeMillis()
client.delta() -> number
Время кадра в секундах
client.fps() -> number
client.memory() -> table
used, max в мегабайтах и percent
client.language() -> string
Код языка игры: ru_ru, en_us
client.clipboard([text]) -> string | nil
Без аргумента читает буфер обмена, с аргументом пишет

Экран и окно

client.in_game() -> bool
Игрок в мире и никакой экран не открыт
client.screen() -> table | nil
Открытый экран: class, title, chat, container, inventory, pause. nil — экрана нет
client.close_screen()
Закрывает любой экран; контейнеры — с уведомлением сервера
client.window() -> table
width, height, scaled_width, scaled_height, fullscreen, focused
client.paused() -> boolean
Игра на паузе (только одиночная игра)
client.gui_scale() -> number
Текущий GUI scale
client.hud_editor() -> boolean
Открыт ли редактор HUD
client.mouse() -> x, y
Курсор в координатах интерфейса

Камера

client.fov() -> number
Поле зрения из настроек, в градусах
client.sensitivity() -> number
Чувствительность мыши 0..1 — пригодится для плавной силент-ротации
client.perspective() -> string
first, back или front
client.set_perspective("first"|"back"|"front") -> boolean
Переключает вид камеры, как F5

Клавиши

client.key_code(name) -> number | nil
Код клавиши по имени: "r", "left.shift", "f5". Для сравнения с ev.key
client.key_down(code) -> boolean
Как key_held, но работает и при открытом экране
client.key_held(glfwKey) -> bool
Зажата ли клавиша прямо сейчас
client.bind_name(code) -> string
Читаемое имя клавиши: R, MOUSE 4, None

Сервер

client.server() -> string|nil
Адрес текущего сервера
client.server_name() -> string
Распознанный сервер: FunTime, HolyWorld, SpookyTime… или Vanilla
client.brand() -> string | nil
Бренд ядра сервера из пакета brand
client.singleplayer() -> boolean
client.ping() -> number
Пинг локального игрока, мс
client.tps() -> number
TPS сервера по времени между пакетами, 20 — норма
client.online() -> number
Сколько игроков в таб-листе
client.tab_list() -> { entry }
Таб-лист: name, display (с префиксом), ping, gamemode
client.in_pvp() -> boolean
Игрок в режиме боя (КТ) по сообщениям сервера
client.anarchy() -> number
Номер анархии на серверах, где он есть; 0 — не определён
client.disconnect([reason])
Отключиться от сервера с причиной на экране

Друзья

client.friends() -> table
Список друзей клиента
client.is_friend(name) -> boolean
Проверка ника по списку друзей

Силент-ротация

client.silent.set(yaw, pitch, [visible])
Подменить отправляемый поворот. Заменяет убранное событие rotation
client.silent.set_yaw(yaw)
client.silent.set_pitch(pitch)
client.silent.set_visible(bool)
true — поворот виден на модели: от третьего лица (F5) и другим игрокам. false — только в пакете
client.silent.visible() -> bool
client.silent.enabled() -> bool
Активна ли подмена от этого скрипта
client.silent.get() -> { yaw, pitch }
client.silent.clear()
Отпустить поворот. Вызывается автоматически при выключении скрипта

Модули (устаревшее)

client.modules.enabled(name) -> bool
client.modules.toggle(name)
client.modules.set(name, bool)
client.modules.list() -> { {name, category, enabled} }