Что значит создание пользовательских биомов в майнкрафте пе
Здравствуйте. Добрый день. Думаю, достал уже Вас с вопросами) Но помогите, пожалуйста)
Я снова попытался разобраться в генерации биомов и, покопавшись в коде игры, мало, что понял. Моя цель - разобраться, как же игра выбирает, где, какой биом расположить и как она устанавливает размеры.
Что я понял?
Эту роль на себя точно берет ChunkManager (он же BiomeProvider в новых версиях). Казалось бы, уже нашел, как это происходит, но нет: этот класс оказывается "самозванцем", он просто обращается к какому-то странному классу под названием GenLayer, в основном к таинственной функции getInts (Forge дает непонятное объяснение, но я полагаю, что она уже возвращает готовые ID биомов, а сама функция содержит непонятный код). Хорошо, тогда я решил разобраться, откуда появляются эти странные GenLayer'ы. И прокрутил до конструктора, зашел в код метода GenLayer.initializeAllBiomeGenerators(seed, worldTypeIn, settings), и был поражен:
До чего же непонятный и страшный код! Какая-то система наследования (переменная parent в каждом GenLayer'е говорит об этом), каждый GenLayer вызывает своего "отца" и на основе результатов "отцовского" GenLayer'а что-то делает. В общем, я так и ничего не понял. Причем где-то даже обнаружил еще один таинственный класс: BiomeCache. Но он хоть оказался более понятным, чем GenLayer, однако я не понял, для чего он.
Прошу ответить на несколько вопросов, если не сложно:
1) Что за GenLayer? Вообще, что означает его название: "генераторный слой"? Что он делает? Как работает его функция getInts?
2) Для чего BiomeCache? Я хоть понял, что он делает, но зачем?
3) Как Minecraft понимает, что рядом, например, пустынный биом и надо сгенерировать поэтому саванну или другой жаркий биом именно, а не, например, тайгу?
4) Как вообще работает распределение биомов в Minecraft? На каком алгоритме?
Или киньте, пожалуйста, гайд на 1.7-1.12, где объясняется, что делает этот GenLayer и т. д.
Настраиваемый (тип мира)
Содержание
Что значит создание пользовательских биомов в майнкрафте пе
Для создания биома в MCreator нам понадобится нажать add new mod element.(См изображение 1)
Теперь требуется выбрать Biome и вбить любое нужное вам название в строку для текста.(См изображение 2).
Отлично,я вбил название WikiaTutor потому и биом назову WikiaTutor.(См ниже,ввод названия).
Теперь после нажатия клавиши OK мы попадаем на страницу настройки биома.(См изображение 3).
Мы видим некое количество пунктов.А именно 6 пунктов для настройки нашего биома. Теперь подробнее:
Ground Block - блок который будет на поверхности биома,то есть как трава в умеренных биомах майнкрафта.
Underground block - вторичный блок как земля в умеренных биомах майнкрафта.
Generate lakes - создавать озера в вашем биоме или нет?(Если да то поставить галочку).
Tree generator - уже более сложно настраивать, здесь мы видим 3 пункта, а именно:
- Vanilla trees - стандартные деревья майнкрафта. В вашем биоме просто будут обыкновенные игровые деревья.
- Custom tree blocks - позволит вам создать дерево из любых блоков которые вы укажете в слотах,см подробнее ниже.
- Schematic for trees - позволяет загрузить файл .schematic вместо деревьев.
Теперь подробнее о custom tree blocks:
- Minimal tree height - минимальная высота дерева(исчисляется в блоках).
- Spawn vines - создание лозы на деревьях как в биоме джунглей.(Если хотите лозу то поставьте галочку).
- Block of vines - из какого блока будет лоза(Если галочка в Spawn vines не стоит то лоза просто не будет появляться даже если вы ее укажете). Например если поставить паутину то вместо лозы деревья будут окутаны паутиной.Так-же можно создать свой блок для лозы и использовать его.
- Block of stem - блок который будет столбом вашего дерева,например в обычном майнкрафте это Древесина .Ограничений нету и вы можете установить свой блок или что либо(можно установить все вплоть до железа или стекла).
- Block of branch - блок который будет кроной вашего дерева,как в обычном майнкрафте листва.Вы можете создать свой блок листвы,или другой и установить его.Снова хочу заметить что кроной может выступить ЛЮБОЙ блок на ваш выбор.
- Block of fruit - блок который должен служить плодами как какао бобы на тропическом дереве,не экспериментировал или оставлял пустым поэтому если кто знает то пишите где он может использоваться.
Я в целях эксперимента поставил столб дерева из золота а ветки из листвы, слот плода заполняю какао бобами и поставил обычную траву как Ground и песок душ как Underground.Кликаю NEXT чтобы перейти на следующую вкладку.(См изображение 4).
А здесь мы видим всего 4 пункта,и так по порядку:
Обычно я ничего не меняю в этой вкладке,ибо биомы и так получаются красивыми но розяснение строк напишу.
Всего здесь 14 редактируемых полей,и так подробнее:
- Tree per chunk - количество деревьев в чанке.
- Grass per chunk - уровень растительности в чанке (10 - норма, 3 - мало, 20 - много).
- Flowers per chunk - количество цветков в чанке.
- Mushrooms per chunk - количество грибов в чанке.
- Sand per chunk - количество песка в чанке.
- Reeds per chunk - количество тростника в чанке.
- Cacti per chunk - количество кактусов в чанке.
- Deadbushes per chunk - количество сухих кустов в чанке.
- Rining posibility - Дождливость в биоме, 0 - без дождей, 0,5 - бывают дожди, 1 - частая дождливость.(возможно не точная информация).
- Minimum height difference - Минимальная разность высот.
- Maximum height difference - Максимальная разность высот.
Отлично,первые 11 есть, теперь остальное:
Biome gen properties - настройки генерации биома(просто заголовок куска интерфейса.
- Biome weight - редкость биома. Стандартная 10,чем меньше число тем реже ваш биом будет встречаться.
- Biome type - тип биома. WARM - теплый,DESERT - пустыня,ICY - ледяной,COOL - холодный.
Теперь последняя вкладка на странице.
Entities to spawn in this biome - Существа которые будут спавнится в биоме.
Настройки [ ]
Базовые настройки [ ]
Есть 19 вариантов настроек, которые влияют на генерацию структур и на остальное окружение.
Настройки генерации руд [ ]
Следующие параметры изменяют частоту генерации руд и их высоту. Изумрудная руда генерируется по особым правилам, которые нельзя изменить: руда появляется в горных биомах и размер жилы равен 1. На руды Нижнего мира (гравий, песок душ, кварцевую руду, светокамень) повлиять тоже нельзя.
- ↑ 1,01,1 Лазурит генерируется иначе: вместо минимальной и максимальной высоты используется центральная высота и широта распределения. По умолчанию эти значения равны 16, значит, лазурит появится на высоте от 0 до 32, чаще всего на уровне 16.
- ↑ 2,02,1 Если слайдер сдвинуть, значение 256 невозможно выставить снова (ошибка). Сбросьте значения или отредактируйте код предустановки.
Дополнительные настройки [ ]
Есть 16 вариантов дополнительных настроек, которые влияют на различные аспекты генерации мира. Эти параметры находятся на двух страницах.
Создание своего биома.
Нечасто, но все же возникают вопросы о том, как создать свой биом в игре в принципе и в 1.12+ в частности, так как там создание биома немножечко отличается даже от 1.11.2. Давайте сегодня раз и навсегда отрубим это дело одним тутором.
Для начала создадим класс BiomeInit - в нем мы создадим переменную типа Biome, зарегистрируем его, и добавим различных параметров.
Итак, теперь нам этот класс с инициализацией нужно подключить к моду. Я не понял куда лучше его вставлять, в ClientProxy или в Server, поэтому решил зарегистрировать в методе preInit главного класса.
Собственно, почти все готово, осталось только создать собственно сам биом.
Читайте также: