> For the complete documentation index, see [llms.txt](https://docs.quickclient.cc/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.quickclient.cc/readme.md).

# Скрипты QuickClient

Скрипт QuickClient — это обычный Java-класс, унаследованный от `hex.script.api.Script`, упакованный в `.jar` вместе со своими ресурсами. Клиент компилирует исходники сам, во время игры: положил jar в папку — через секунду скрипт уже в меню.

Из скрипта можно:

* завести **модуль** с настройками, биндом и описанием, который выглядит в меню как родной;
* **реагировать на игру** — тики, пакеты, клавиши, чат, звуки, открытие экранов;
* **читать мир** — блоки, сущности, игрока, инвентарь, контейнеры, таб и скорборд;
* **действовать** — бить, использовать предметы, крутить голову, слать пакеты, переключать слоты;
* **рисовать** — HUD поверх игры, фигуры и меши в мире, свои шейдеры и шрифты;
* добавлять **свои команды** с префиксом `.`.

## Где лежат скрипты

```
.minecraft/Hex/scripts/
  .api/                  — SDK: script-api.jar и исходники с javadoc
  .data/<скрипт>/        — сохранённые настройки и конфиги скрипта
  resources/             — пак ресурсов, который клиент собирает из jar-ников
  MyScript.jar           — сам скрипт
```

Внутри jar две папки:

```
MyScript.jar
  java/       — исходники .java, пакеты как обычно
  resources/  — картинки, шрифты, данные скрипта
```

Клиент читает jar целиком и сразу закрывает файл, поэтому его можно подменять прямо в игре. Когда файл перестаёт меняться, скрипты перезагружаются сами. Вручную — командой `.script reload`.

## Управление

Вкладка **Скрипты** в меню клиента: строка на скрипт с переключателем, файлом и числом настроек. Кнопка «···» открывает настройки, перезагрузку и папку скриптов. Иконка консоли в шапке показывает журнал: загрузку, включение и всё, что упало внутри скрипта.

Из чата:

| Команда                                    | Что делает                                  |
| ------------------------------------------ | ------------------------------------------- |
| `.script list`                             | список скриптов и их состояние              |
| `.script reload`                           | перечитать папку и пересобрать всё          |
| `.script toggle <имя>`                     | включить или выключить                      |
| `.script settings <имя>`                   | показать настройки и их значения            |
| `.script set <имя> <настройка> <значение>` | задать значение настройки                   |
| `.script dir`                              | открыть папку скриптов                      |
| `.script check`                            | проверить, что API скриптов и SDK совпадают |

## С чего начать

1. [Первый скрипт](/start/first-script.md) — минимальный jar и что в нём должно быть.
2. [Как живёт скрипт](/start/lifecycle.md) — колбэки, состояние, что доступно.
3. [Проект в IDE](/start/ide.md) — подключить SDK, собрать jar.
4. [Разработка через ИИ-агента](/start/ai.md) — встроенный MCP-сервер: агент сам пишет, компилирует и читает консоль.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.quickclient.cc/readme.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
