Этот проект с открытым исходным кодом, написанный на Rust, генерирует любую выбранную локацию из реального мира в Minecraft Java Edition с высоким уровнем детализации.
Используя геопространственные данные OpenStreetMap и применяя мощные возможности Rust, Arnis предоставляет эффективное и надежное решение для создания сложных и точных миров Minecraft, отражающих реальную географию и архитектуру.
Arnis разработан для обработки больших объемов данных и создания насыщенных, захватывающих сред, которые привносят реальные города, достопримечательности и природные особенности во вселенную Minecraft. Хотите ли вы воссоздать свой родной город, исследовать городскую среду или просто построить что-то уникальное и реалистичное, Arnis генерирует ваше видение.
Использование
$IMAGE2$
Выберите свою область в Arnis с помощью инструмента прямоугольника и выберите свой мир Minecraft - затем просто нажмите «Начать генерацию»! Мир всегда будет генерироваться, начиная с координат Minecraft 0 0 0 (/tp 0 0 0).
Если вы решили выбрать собственный мир, обязательно заранее сгенерируйте новый плоский мир в Minecraft.
Minecraft версии 1.16.5 и ниже в настоящее время не поддерживается, но мы работаем над этим! Для наилучших результатов используйте Minecraft версии 1.21.4.
Необработанные данные, полученные из API (см. FAQ) , включают каждый элемент (здания, стены, фонтаны, сельскохозяйственные угодья и т. д.) с соответствующими угловыми координатами (узлами) и описательными тегами. При запуске Arnis автоматически выполняются следующие шаги для генерации мира Minecraft:
Конвейер переработки
- - Извлечение данных из API Overpass: скрипт извлекает геопространственные данные для требуемой ограничивающей рамки из API Overpass.
- - Анализ необработанных данных: необработанные данные анализируются для извлечения важной информации, такой как узлы, пути и отношения. Узлы преобразуются в координаты Minecraft, а отношения обрабатываются аналогично путям, гарантируя правильную обработку всех соответствующих элементов. Отношения и пути объединяют несколько узлов в один определенный объект.
- - Приоритизация и сортировка элементов: элементы (узлы, пути, отношения) сортируются по приоритету для создания системы слоев, которая гарантирует, что определенные типы элементов (например, входы и здания) генерируются в правильном порядке, чтобы избежать конфликтов и перекрывающихся структур.
- - Генерация мира Minecraft: Мир Minecraft генерируется с использованием ряда процессоров элементов (generate_buildings, generate_highways, generate_landuse и т. д.), которые интерпретируют теги и узлы каждого элемента для размещения соответствующих блоков в мире Minecraft. Эти процессоры обрабатывают логику создания 3D-структур, дорог, природных образований и т. д., как указано в обработанных данных.
- - Генерация слоя земли: слой земли генерируется на основе предоставленных масштабных коэффициентов, чтобы обеспечить базу для всего мира Minecraft. Этот шаг гарантирует, что все области имеют соответствующую основу (например, слои травы и грязи).
- - Сохранение мира Minecraft: все измененные фрагменты сохраняются обратно в файлы регионов Minecraft.
Часто задаваемые вопросы
- - Разве это не было написано на Python раньше?
Да! Arnis изначально был разработан на Python, что выиграло от дружелюбия Python к открытому исходному коду и простоты чтения. Вот почему мы стремимся к ясному, хорошо документированному коду в порте Rust этого проекта, чтобы найти правильный баланс. Я решил перенести проект на Rust, чтобы узнать больше о языке и еще больше повысить производительность алгоритма. Мы приближались к пределам оптимизации в Python, а возможности Rust позволяют добиться еще лучшей производительности и эффективности. Старая реализация Python все еще доступна в ветке python-legacy. - - Откуда берутся данные?
Географические данные берутся из OpenStreetMap (OSM) 1 , бесплатного совместного картографического проекта, который служит альтернативой с открытым исходным кодом коммерческим картографическим сервисам. Доступ к данным осуществляется через API Overpass, который запрашивает базу данных OSM. - - Как работает генерация мира Minecraft?
Скрипт использует пакет fastnbt cargo для взаимодействия с форматом мира Minecraft. Эта библиотека позволяет Arnis манипулировать файлами регионов Minecraft, позволяя генерировать реальные локации. Раздел «Конвейер обработки» немного углубляется в детали и этапы самого процесса генерации. - - Откуда взялось название?
Проект назван в честь самого маленького города Германии, Арнис 2. Небольшой размер города сделал его идеальным тестовым примером для эффективной разработки и отладки алгоритма. - - У меня не установлен Minecraft, но я хочу сгенерировать мир для своих детей. Как?
При выборе мира нажмите «Выбрать существующий мир» и выберите папку. Мир будет сгенерирован там. - Какую версию Minecraft мне использовать?
Пожалуйста, используйте версию Minecraft 1.21.4 для наилучших результатов. Minecraft версии 1.16.5 и ниже в настоящее время не поддерживается, но мы работаем над этим! - Генерация завершилась, но в мире ничего нет!
Обязательно телепортируйтесь в начальную точку генерации (/tp 0 0 0). Если ничего нет, вам, возможно, придется немного продвинуться в положительном направлении X и положительном направлении Z.
Установка Мод Arnis - постройка городов
- 1.Убедись, что у тебя установлен Minecraft Forge.
- 2.Скачате мод для своей версии игры.
- 3.Закиньте его в папку moPixelsee, которая расположена в папке с игрой.
Будьте первым, кто оставит свое мнение!