Загрузка данных


Ты — senior Java-разработчик, специализирующийся на Minecraft Fabric, модификациях Minecraft и реверс-инжиниринге открытых исходных проектов.

ЦЕЛЬ

Найди оригинальный open-source проект Baritone, изучи его архитектуру и создай полноценную русифицированную версию для Minecraft Java Edition 1.21.1 на Fabric.

Название проекта: Baritone RU.

Главная задача — сохранить возможности оригинального Baritone, обеспечить совместимость с Fabric 1.21.1 и создать удобный графический интерфейс, чтобы игрок мог управлять функциями мода без необходимости запоминать команды.

1. ИССЛЕДОВАНИЕ ИСХОДНИКОВ

1. Найди официальный репозиторий Baritone на GitHub.
2. Изучи лицензию проекта и соблюдай её требования.
3. Проанализируй архитектуру, зависимости, систему навигации, поиска блоков, добычи ресурсов и строительства.
4. Проверь поддержку Minecraft 1.21.1 и Fabric.
5. Если подходящей версии нет, адаптируй исходный код под целевую версию.
6. Определи несовместимые API, методы Minecraft, зависимости и Mixin-интеграции.
7. Не переписывай рабочие алгоритмы без необходимости.

Не ограничивайся анализом. После исследования приступай к реализации.

2. СОВМЕСТИМОСТЬ

Целевая конфигурация:

- Minecraft Java Edition 1.21.1.
- Fabric Loader.
- Fabric API.
- Java 21.
- Gradle.
- Yarn mappings, совместимые с Minecraft 1.21.1.
- Mixin, если он необходим исходной архитектуре.

Требования:

- Исправь несовместимые импорты и вызовы API.
- Адаптируй точки внедрения Mixin.
- Проверь регистрацию клиента и экранов.
- Убедись, что мод не конфликтует с обычным игровым интерфейсом.
- Сохрани оригинальную функциональность поиска пути и автоматизации.
- Устрани ошибки компиляции и запуска.

Не обновляй Minecraft до другой версии ради упрощения работы.

3. ПОЛНОСТЬЮ РУССКИЙ ИНТЕРФЕЙС

Переведи на русский:

- Названия всех функций.
- Настройки и переключатели.
- Категории блоков и действий.
- Подсказки и описания.
- Сообщения об ошибках.
- Уведомления о выполнении задач.
- Статусы навигации.
- Названия параметров и режимов.
- Сообщения в чате, которые выводит мод.

Используй стандартную систему локализации Minecraft Fabric: "assets/<modid>/lang/ru_ru.json".

По возможности добавь "en_us.json" для английского языка.

Перевод должен быть естественным и понятным. Не оставляй английские надписи в пользовательском интерфейсе, кроме общепринятых технических обозначений.

Внутренние имена методов и классов можно оставить на английском.

4. ГРАФИЧЕСКИЙ ИНТЕРФЕЙС

Создай полноценное GUI, которое открывается назначенной клавишей, например Right Shift.

Интерфейс должен выглядеть современно и органично вписываться в Minecraft.

Главный экран

Разделы боковой панели:

Обзор

- Текущая задача.
- Статус автоматизации.
- Цель и координаты.
- Расстояние до цели.
- Текущий режим работы.
- Кнопки «Запустить», «Приостановить», «Остановить».

Навигация

- Поля X, Y, Z.
- Кнопка «Идти к координатам».
- Выбор блока или объекта назначения.
- Поиск ближайших доступных целей.
- Отображение текущего маршрута, если это возможно.

Добыча

- Выбор ресурсов из списка.
- Поиск блоков по русскому названию.
- Настройка глубины и области поиска, если поддерживается движком.
- Запуск и остановка добычи.
- Отображение найденных целей и статуса задачи.

Строительство

- Загрузка схем.
- Поддерживаемые форматы схем оригинального проекта.
- Выбор файла.
- Просмотр статуса строительства.
- Приостановка и продолжение.
- Проверка доступных материалов, если поддерживается.

Блоки и поиск

- Поиск блоков по названию.
- Фильтры по категориям.
- Поиск ближайших экземпляров.
- Отображение координат найденных блоков.

Настройки

- Настройки навигации.
- Настройки добычи.
- Настройки строительства.
- Настройки поиска пути.
- Настройки поведения и автоматизации.
- Горячие клавиши.
- Язык интерфейса.
- Сброс настроек.

Показывай только те настройки и возможности, которые действительно реализованы в коде.

Требования к интерфейсу

- Русский язык по умолчанию.
- Удобная навигация между разделами.
- Прокручиваемые списки.
- Поля ввода с проверкой значений.
- Переключатели, кнопки и выпадающие списки.
- Понятные сообщения об ошибках.
- Отображение текущей задачи.
- Возможность остановить любую выполняющуюся задачу.
- Подтверждение потенциально опасных действий.
- Сохранение настроек между запусками игры.
- Корректная работа при разных разрешениях экрана.
- Поддержка масштабирования GUI.
- Отсутствие блокировки игрового потока при поиске пути.

Не делай интерфейс в виде браузерной страницы. Это должно быть нативное внутриигровое GUI Minecraft.

Если для реализации удобного интерфейса требуется дополнительная библиотека, сначала оцени возможность использования стандартных GUI API Minecraft. Добавляй зависимости только при реальной необходимости.

5. УПРАВЛЕНИЕ БЕЗ КОМАНД

Основные действия должны быть доступны через графический интерфейс.

Например, вместо ручного ввода команды перемещения игрок:

1. Открывает меню.
2. Выбирает раздел «Навигация».
3. Указывает координаты.
4. Нажимает «Начать движение».

Вместо ручного ввода команды поиска:

1. Открывает раздел «Добыча».
2. Выбирает ресурс.
3. Настраивает доступные параметры.
4. Нажимает «Начать добычу».

Вместо запоминания команд остановки игрок нажимает кнопку «Остановить» в меню.

При этом:

- Сохрани поддержку оригинальных команд Baritone для опытных пользователей.
- Не дублируй алгоритмы автоматизации в GUI.
- Интерфейс должен вызывать существующие API или внутренние механизмы Baritone.
- Не запускай несколько конфликтующих задач одновременно.
- Обеспечь корректную отмену текущих задач.
- Обрабатывай недоступные цели и ошибки поиска пути.

6. АРХИТЕКТУРА

Организуй код так, чтобы GUI не зависел напрямую от реализации алгоритмов навигации.

Предусмотри отдельные компоненты:

- Инициализация мода.
- Регистрация клавиш.
- Управление GUI.
- Локализация.
- Сервис выполнения задач.
- Сохранение пользовательских настроек.
- Адаптер к API Baritone.
- Обработка ошибок.

Соблюдай существующую архитектуру оригинального проекта, если её можно использовать без существенных изменений.

Не создавай огромный монолитный класс.

7. ТЕСТИРОВАНИЕ

Обязательно:

1. Собери проект через Gradle.
2. Исправь все ошибки компиляции.
3. Проверь регистрацию мода и GUI.
4. Проверь загрузку русской локализации.
5. Проверь открытие и закрытие меню.
6. Проверь обработку координат.
7. Проверь запуск и отмену задач.
8. Добавь тесты там, где это технически возможно.
9. Проверь совместимость зависимостей.
10. Убедись, что итоговый JAR создаётся для Minecraft 1.21.1 и Fabric.

Не объявляй тест успешным, если фактически его не запускал.

Если полноценный запуск Minecraft в текущем окружении невозможен, явно укажи это в итоговом отчёте.

8. РАБОТА С ПРОЕКТОМ

Работай непосредственно с файлами проекта.

Если рабочая папка пустая:

- Найди официальный репозиторий.
- Клонируй его в рабочую папку.
- Изучи структуру.
- Приступай к изменениям.

Если проект уже существует:

- Сначала изучи его структуру и состояние Git.
- Не перезаписывай пользовательские изменения.
- Не удаляй нужные файлы и конфигурации.

Не ограничивайся генерацией плана, примеров кода или инструкций. Реализуй изменения в исходниках.

Не задавай вопросы по каждой мелочи. Принимай обоснованные технические решения самостоятельно.

9. ИТОГОВЫЙ РЕЗУЛЬТАТ

В конце предоставь:

- Список реализованных функций.
- Список основных изменений архитектуры.
- Информацию о совместимости.
- Результаты сборки и тестирования.
- Известные ограничения.
- Путь к готовому JAR-файлу.
- Инструкцию по установке мода.
- Список горячих клавиш.
- Инструкцию по использованию GUI.

Критерий готовности: Baritone RU собирается для Minecraft 1.21.1 на Fabric, сохраняет основные возможности оригинального Baritone, имеет полноценный русскоязычный внутриигровой интерфейс и позволяет выполнять основные действия через меню, а не через ручной ввод команд.

Начни с изучения репозитория и окружения, затем последовательно реализуй проект, собирай его и исправляй обнаруженные ошибки.