
Starter Structure
Мод Starter Structure позволяет автоматически генерировать постройку в точке появления при создании нового мира. Поддерживает схемы из структурированных блоков и WorldEdit. Просто поместите schematics в папку конфига.
Starter Structure - это мод для Minecraft, который решает проблему пустых начальных точек в новых мирах. Вместо того чтобы бегать по бесконечной стартовой локации в поисках первого дерева и укрытия на ночь, вы получаете готовую структуру прямо на спавне. Базовую базу, деревню, торговый пост или что-то более хитрое - выбор за вами.
Как это работает?
Все просто: при генерации мира мод заглядывает в папку ./config/starterstructure/schematics, выбирает оттуда одну схему (schematic) и ставит её прямо в точке появления. Поддерживаются два формата:
- Схемы из структурированных блоков (.nbt) - они сохраняют данные о сущностях, что позволяет спавнить мобов прямо в постройке
- Схемы WorldEdit (.schem / .schematic) - не сохраняют сущности, но зато позволяют указать точное место появления игрока с помощью табличек. Важный момент: сам WorldEdit для работы мода не нужен, он требуется только для создания схемы. Создали, скопировали файл в папку Starter Structure - и можете удалять WorldEdit.
Для обоих типов поддерживаются кастомные NBT-данные.
Если в папке schematics лежит несколько файлов, мод выберет один случайным образом. Так можно сделать стартовую локацию непредсказуемой.
Настройки конфигурации
Все параметры выставляются в конфиге. Вот что там можно регулировать:
- shouldGenerateStructure (true) - включать или нет генерацию схемы при создании мира.
- forceExactSpawn (true) - обычно игрок спавнится в случайном радиусе вокруг точки. С этой опцией он будет появляться строго в указанных координатах (на ближайшем свободном блоке).
- ignoreTreesDuringStructurePlacement (true) - если на месте будущей постройки растут деревья, мод проигнорирует их блоки (листву и стволы) и поставит схему поверх них.
- generationIgnoreJigsawAndStructureBlocks (true) - в некоторых схемах могут быть лишние структурные блоки или jigsaw-блоки, которые при генерации лучше не ставить.
- protectStructureBlocks (true) - защита блоков постройки от разрушения (гриферы не пройдут).
- protectSpawnedEntities (true) - сущности, появившиеся внутри постройки, тоже получают защиту от урона.
- playersInCreativeModeIgnoreProtection (true) - если нужно что-то поменять в постройке, можно зайти в креатив и разрушить защиту.
- playersInCreativeModeIgnoreEntityProtection (false) - защита сущностей в креативе по умолчанию остается, но можно отключить.
- preventSpawnedEntityMovement (false) - мобы внутри постройки не смогут отходить от своих точек появления. Пригодится для создания неподвижных NPC.
- spawnNonSignEntitiesFromSupportedSchematics (true) - спавнить ли сущностей из схем структурированных блоков (тех, что не используют таблички).
- shouldUseStructurePosition (false) и координаты X/Y/Z - точное размещение схемы по координатам. Полезно, если нужно гарантировать, что постройка появится в конкретном месте.
- shouldUseStructureOffset и сдвиги X/Y/Z - сдвиг относительно стандартного размещения. Например, если схема всегда ставится на один блок выше, можно задать сдвиг по Y равный -1.
- shouldUseSpawnCoordinates и координаты X/Y/Z - переназначение точки появления игрока в кастомные координаты.
- shouldUseSpawnCoordOffsets и сдвиги X/Y/Z - сдвиг точки появления относительно схемы. Удобно, если нужно, чтобы игрок появлялся не в самом центре постройки, а сбоку.
Как создать схему WorldEdit?
Инструкция на случай, если захочется сделать свою первую схему:
- Возьмите топорик командой
//wand. - ЛКМ по блоку - установка первой угловой точки.
- ПКМ по блоку на противоположном конце области - установка второй угловой точки. Временные блоки лучше ломать потом.
- Встаньте туда, где хотите, чтобы появлялся игрок, и выполните
//copy. - Сохраните:
//schematic save название-схемы. - Файл появится в
./config/worldedit/schematics. Скопируйте его в./config/starterstructure/schematics.
Готово! При следующем создании мира Starter Structure возьмет эту схему и поставит её на спавне.
Как заспавнить мобов через таблички?
Для спавна обычных мобов (без кастомных данных) достаточно поставить в схеме табличку с текстом:
[Entity]
modid:entityid
Например, minecraft:villager вызовет появление жителя. Пустая строка между [Entity] и ID сущности - норм, новые строки игнорируются.
Для более сложных сущностей (с именем, предметами, эффектами) нужно:
- Создать файл с NBT-данными в папке
./config/starterstructure/signdata/. Имя файла может быть любым, напримерcustom_zombie.txt. - На табличке в схеме написать:
[NBT]
custom_zombie
- В файл
custom_zombie.txtпоместить NBT-данные. Фактически это содержимое команды/summon. Можно сгенерировать команду на сайте MCStacker и просто скопировать все, что идет после/summon, в файл. Мод сам удалит команду/summonи извлечет корректные NBT-данные с ID сущности.
Совместимость и требования
Мод работает на Fabric (и его ответвлениях вроде Quilt). Для работы требуется Collective (библиотека-мод от того же автора, Serilum). WorldEdit для работы самого мода не нужен, он используется только на этапе создания схемы.
Скачать Starter Structure на Майнкрафт и попробовать в деле - хорошая идея, если надоело каждый раз начинать с пустого поля и кулаков. А если дополнить мод набором кастомных готовых построек - можно собрать целый модпак с уникальным стартом.
Важно знать
- Можно ли на сервере? Да, мод отлично подходит для серверов. Более того, он решает проблему гриферства: блоки стартовой постройки защищены, а мобы не умирают от первого чиха. Администратор может настроить координаты и защиту под свои нужды.
- Не вылетит ли мод при загрузке схемы со сложными постройками? Нет, мод тестировался на разных объемах и форматах. Единственное - если в схеме много сущностей, может чуть подтормаживать при спавне.
- Как сбросить схему? Просто удалите или замените файл в папке schematics. При следующем создании мира мод выберет новую или не сгенерирует структуру вообще (если папка пуста).
- Работает с другими модами на генерацию? В основном да, но если у вас моды, которые тоже генерируют структуры на спавне, возможны пересечения. Рекомендуется настраивать вместе с такими модами через конфиг и тестировать.
Starter Structure - вещь вроде простая, но на практике экономит кучу времени. Особенно когда играешь с друзьями и хочется, чтобы у всех была база прямо с порога. Ну и схемы можно создавать красивые, а не коробки из дерева.
