Руководство по сборке
Модификация, работающая только на стороне клиента, для проецирования фигур, таких как круги и сферы, в игровой мир. Работает как в одиночной игре, так и в мультиплеере, даже если на сервере не установлен данный мод.

Краткое руководство по использованию
Использование
Нажатие клавиши 'Open Build Guide' (по умолчанию: 'B') открывает графический интерфейс Build Guide, изначально находящийся на под-интерфейсе 'Shape'. Переключение чекбокса 'Enable' в левом верхнем углу определяет, будет ли отображаться фигура. Чуть ниже этого чекбокса находятся две кнопки для переключения между доступными фигурами (список в разделе 'Shapes' данного руководства). Кнопка 'Set origin' устанавливает местоположение маленького куба (по умолчанию красного) у ваших ног. Этот куб является основой для фигуры (например, началом линии или центром круга). Позицию точки отсчета также можно изменить с помощью текстовых полей и кнопки ниже 'Set origin'. В середине или справа в интерфейсе находится список свойств выбранной фигуры, таких как радиус или ориентация. Некоторые свойства допускают отрицательные значения, что позволяет, например, отразить фигуру вдоль отрицательной оси.
Кнопка 'Visualization' открывает под-интерфейс с ползунками для изменения цветов большего куба фигуры (по умолчанию белого) и меньшего куба точки отсчета (по умолчанию красного). Здесь также есть опция 'Depth test'; ее отключение позволяет видеть фигуру сквозь блоки.
Нажатие 'Shape list' позволяет использовать несколько фигур одновременно. В этом под-интерфейсе кнопка 'Add' добавляет экземпляр фигуры, показанной выше. Добавляемую фигуру также можно переключать. Каждая фигура в списке имеет свою собственную точку отсчета, по умолчанию расположенную у ваших ног при добавлении. Щелчок по фигуре в списке в центре экрана выделяет ее (черная полоса). Выделенную фигуру можно изменять в интерфейсе 'Shape'. Отключение чекбокса 'Visible' временно скрывает выбранную фигуру и исключает ее из подсчета общего количества блоков. Кнопка 'Delete' удаляет выбранную фигуру. Кнопки и поля 'Global origin' смещают точку отсчета выбранной фигуры аналогично обычным кнопкам в главном интерфейсе, но точки отсчета невыбранных фигур также смещаются относительно, сохраняя относительное положение.
Все фигуры и их настройки привязаны к названию мира (одиночная игра) или IP-адресу сервера (мультиплеер) и измерению. Фигуры можно сохранять между перезапусками клиента, включив опцию конфигурации `persistenceEnabled`. В противном случае фигуры будут потеряны при закрытии клиента.
Фигуры (Shapes)
Catenary: Цепная линия между двумя точками с длиной дуги (длиной веревки), равной расстоянию между этими точками плюс заданное дополнительное расстояние.
Circle: Круг, который может располагаться вокруг любой из трех осей и может быть наложен для формирования стен или труб.
Cone: Конус, направленный вдоль любой из трех осей, с заданным радиусом и высотой.
Cuboid: Полый прямоугольный параллелепипед с включаемыми/выключаемыми стенками.
Ellipse: Эллипс, который может располагаться вокруг любой из трех осей и может быть наложен для формирования стен или труб.
Ellipsoid: Эллипсоид, который также можно преобразовать в один из шести возможных куполов, направленных вдоль оси.
Grid: Сетка блоков с заданным размером шага и количеством шагов по каждой из трех осей.
Line: Линия в одном из шести направлений вдоль оси.
Parabola: Парабола с заданной полушириной и высотой, направленная в заданном направлении и повернутая на заданный угол.
Paraboloid: Параболоид, направленный вдоль любой из трех осей, с двумя заданными полуширинами и высотой.
Polygon: Треугольник, квадрат, пятиугольник, шестиугольник и т.д. Может вращаться вокруг любой из трех осей и накладываться для формирования стен или труб.
Polygonal pyramid: Пирамида с основанием в виде многоугольника. Может вращаться вокруг любой из трех осей.
Sphere: Сфера, которую также можно преобразовать в один из шести возможных куполов, направленных вдоль оси.
Torus: Фигура, похожая на пончик, с настраиваемым радиусом и толщиной, которая может располагаться вокруг любой из трех осей.
Полное руководство по использованию
Графический интерфейс Build Guide
Доступен через назначенную клавишу (по умолчанию 'B'). Интерфейс разделен на четыре под-интерфейса: 'Shape', 'Visualization', 'Shape list' и 'Configuration'. Вверху слева глобальный чекбокс 'Enable' включает/отключает отображение фигур. Также существует клавиша 'Toggle enabled' (по умолчанию не назначена) как альтернатива чекбоксу. Вверху отображается общее количество блоков для выбранной фигуры и всех фигур. Кнопка 'X' вверху справа закрывает интерфейс.
Под-интерфейс 'Shape'
Разделен на три секции: 'Shape', 'Origin', 'Shape properties'.
Shape: Определяет отображаемую фигуру. Кнопки-стрелки переключают доступные фигуры.
Origin: Управляет позицией маленького красного куба (точки отсчета фигуры). Кнопка 'Set origin' перемещает его к ногам игрока. Поля и кнопки 'X', 'Y', 'Z' позволяют точно задать координаты.
Shape properties: Содержит параметры выбранной фигуры (радиус, длина, ориентация и т.д.).
Под-интерфейс 'Visualization'
Две группы ползунков управляют цветом (RGBA) блоков фигуры (левая группа) и блока точки отсчета (правая группа). Кнопка 'Set' применяет цвета, 'Default' возвращает стандартные цвета (белый и красный). Чекбокс 'Depth test' определяет, будут ли блоки фигуры скрываться за другими блоками мира.
Под-интерфейс 'Shape List'
Позволяет работать с несколькими фигурами.
Add new shape: Переключение и кнопка 'Add' добавляет новую фигуру (точка отсчета - у ног игрока).
Selected shape: Чекбокс 'Visible' скрывает/показывает выбранную фигуру. Кнопка 'Delete' удаляет ее.
Global origin: Кнопки и поля смещают точку отсчета выбранной фигуры. Точки отсчета других фигур смещаются относительно, сохраняя их взаимное расположение. Кнопка 'Set global origin' имеет клавишу-аналог.
Shapes: Список активных фигур. Щелчок по фигуре выделяет ее. Цвета в 'Visualization' применяются только к выбранной фигуре. 'Depth test' глобальный (влияет на все фигуры).
Под-интерфейс 'Configuration'
Прямой интерфейс для редактирования файла конфигурации. Изменения вступают в силу мгновенно.
Фигуры (Shapes) - Детали
Большинство фигур по умолчанию имеют нечетный размер из-за центра на блоке. Чекбокс 'Even mode' позволяет использовать четные размеры (сдвигая точку отсчета). Отрицательные значения параметров могут отражать фигуру.
Catenary: Точки определяются точкой отсчета и смещением ('Delta X/Y/Z'). Кнопка 'Set endpoint' устанавливает вторую точку у ног. 'Additional distance' (≥1) - добавка к длине дуги.
Circle: 'Direction' - ось вращения. 'Radius' - радиус (целое >0). 'Depth' - глубина (высота цилиндра).
Cone: 'Direction' - ось направления. 'Radius' - радиус основания (целое >0). 'Height' - высота (может быть отрицательной).
Cuboid: 'X', 'Y', 'Z' - размеры сторон (целые >0). 'Walls' - включенные стенки (X, Y, Z, '-' - каркас). Можно выбрать угол или центр как точку отсчета.
Ellipse: Аналогична кругу, но использует две полуоси.
Ellipsoid: Аналогична сфере, но использует три полуоси. Поддерживает режимы куполов.
Grid: 'Steps' - количество блоков, 'Step size' - расстояние между ними по осям.
Line: Определяется точкой отсчета и смещением ('Delta X/Y/Z'). Кнопка 'Set endpoint'.
Parabola: 'Half-width' - полуширина, 'Height' - высота. 'Direction' - направление, 'Rotation' - угол поворота. 'Depth' - глубина (слои).
Paraboloid: Две полуширины. 'Direction' определяет ось и вращение.
Polygon: 'Sides' - количество сторон (≥3). 'Radius' - расстояние от центра до стороны (целое >0). 'Direction' - ось вращения. 'Rotation' - поворот (кратно 90°). 'Height' - высота.
Polygonal pyramid: Аналогична многоугольнику, но параметр 'Height' задает высоту пирамиды.
Sphere: 'Radius' - радиус (целое >0). 'Dome' - режим купола ('-' - выкл.).
Torus: 'Direction' - ось вращения. 'Outer radius' - радиус кольца (целое >0). 'Inner radius' - радиус трубы (целое >0). 'Outer radius' ≥ 'Inner radius'.
Переход между мирами, серверами и измерениями
Состояние мода (фигуры, настройки) уникально для каждой комбинации мир/сервер и измерение. Опция конфигурации `persistenceEnabled` сохраняет состояние между перезапусками клиента (экспериментально, возможны проблемы на Forge). Восстановление происходит при открытии интерфейса.
Требования
Начиная с версии мода 0.3.3, файлы .jar работают как для Forge, так и для Fabric, при соблюдении соответствующих требований ниже. Порты для версий Minecraft ниже указанных минимальных не планируются.
Версии, обозначенные как, например, 1.21/1.21.1, собраны на 1.21, но должны работать на 1.21.1.
Forge 1.17.1: Minecraft Forge 37.1.1 или выше.
Forge 1.18/1.18.1/1.18.2: Minecraft Forge 38.0.17 или выше.
Forge 1.19/1.19.1/1.19.2: Minecraft Forge 41.1.0 или выше.
Forge 1.19.3: Minecraft Forge 44.1.23 или выше.
Forge 1.19.4: Minecraft Forge 45.4.0 или выше.
Forge 1.20/1.20.1: Minecraft Forge 46.0.14 или выше.
Forge 1.20.2/1.20.3: Minecraft Forge 48.1.0 или выше.
Forge 1.20.4/1.20.5: Minecraft Forge 49.2.0 или выше.
Forge 1.20.6: Minecraft Forge 50.2.0 или выше.
Forge 1.21/1.21.1: Minecraft Forge 51.0.33 или выше.
Forge 1.21.3: Minecraft Forge 53.1.1 или выше.
Forge 1.21.4: Minecraft Forge 54.1.4 или выше.
Forge 1.21.5: Minecraft Forge 55.0.23 или выше.
Forge 1.21.8: Minecraft Forge 58.0.0 или выше.
Fabric 1.17.1: Fabric Loader 0.16.14 или выше и Fabric API 0.46.1 или выше.
Fabric 1.18/1.18.1/1.18.2: Fabric Loader 0.16.14 или выше и Fabric API 0.44.0 или выше.
Fabric 1.19/1.19.1/1.19.2: Fabric Loader 0.16.14 или выше и Fabric API 0.58.0 или выше.
Fabric 1.19.3: Fabric Loader 0.16.14 или выше и Fabric API 0.76.1 или выше.
Fabric 1.19.4: Fabric Loader 0.16.14 или выше и Fabric API 0.87.2 или выше.
Fabric 1.20/1.20.1: Fabric Loader 0.16.14 или выше и Fabric API 0.83.0 или выше.
Fabric 1.20.2/1.20.3: Fabric Loader 0.16.14 или выше и Fabric API 0.91.6 или выше.
Fabric 1.20.4/1.20.5: Fabric Loader 0.16.14 или выше и Fabric API 0.97.2 или выше.
Fabric 1.20.6: Fabric Loader 0.16.14 или выше и Fabric API 0.100.8 или выше.
Fabric 1.21/1.21.1: Fabric Loader 0.16.14 или выше и Fabric API 0.102.0 или выше.
Fabric 1.21.3: Fabric Loader 0.16.14 или выше и Fabric API 0.114.0 или выше.
Fabric 1.21.4: Fabric Loader 0.16.14 или выше и Fabric API 0.119.3 или выше.
Fabric 1.21.5: Fabric Loader 0.16.14 или выше и Fabric API 0.125.0 или выше.
Fabric 1.21.8: Fabric Loader 0.16.14 или выше и Fabric API 0.129.0 или выше.
NeoForge 1.21/1.21.1: NeoForge 21.0.167 или выше.
NeoForge 1.21.3: NeoForge 21.3.76 или выше.
NeoForge 1.21.4: NeoForge 21.4.147 или выше.
NeoForge 1.21.5: NeoForge 21.5.74 или выше.
NeoForge 1.21.8: NeoForge 21.8.10 или выше.
Совместимость
Совместимость с шейдерами через Optifine не гарантируется. Шейдеры в Optifine могут нарушать проекции из-за проблемы, вероятно, на стороне Optifine. Не-шейдерные функции Optifine работают нормально.
Мод предназначен для работы только на стороне клиента. Установка на сервер не рекомендуется, но предприняты меры для предотвращения немедленных сбоев сервера. Клиенты без мода (или с неправильной версией) не должны блокироваться, однако это поведение не поддерживается и не гарантируется.
Конфигурация
Файл конфигурации находится в папке `config` вашей игровой директории и называется `buildguide.cfg`. Для редактирования также можно использовать под-интерфейс 'Configuration'. Доступные опции:
debugGenerationTimingsEnabled (по умолчанию: false)
Отладочная опция для вывода времени генерации фигур в журналы.
asyncEnabled (по умолчанию: true)
При включении фигуры генерируются асинхронно (в фоновом режиме без блокировки клиента). Может вызывать мерцание проекций. При дискомфорте рекомендуется отключить.
shapeListRandomColorsDefaultEnabled (по умолчанию: false)
Если включено, новые фигуры в списке получают случайные цвета вместо стандартных белого и красного.
persistenceEnabled (по умолчанию: false)
Экспериментальная опция. При включении фигуры и состояния сохраняются в файл для восстановления после перезапуска клиента (на Forge возможны проблемы).
Модпаки
Можно свободно добавлять в модпаки!