Saltar para o conteúdo principal

Criar geradores

Geradores​

Os geradores são a parte mais abrangente da configuração BetterStructures. Os 29 geradores predefinidos gerem, em conjunto, as construções distribuídas atualmente. Pode criar os seus ou reutilizar os existentes.

Os geradores determinam onde aparecem as estruturas e definem as tabelas de saque. Os nomes dos geradores predefinidos indicam a respetiva função.

Opções de configuração​

ChavePredefiniçãoObrigatóriaDescrição
isEnabledtrue❌Ativa o gerador. Com false, os schematics associados também deixam de ser registados, permitindo desativar rapidamente um conjunto inteiro de estruturas.
structureType-✅Local de aparecimento das estruturas; consulte a tabela abaixo
lowestYLevel-59❌Y mínimo de aparecimento
highestYLevel320❌Y máximo de aparecimento
validWorldsTodos permitidos❌Mundos onde as estruturas podem aparecer
validWorldEnvironmentsTodos permitidos❌NORMAL, NETHER, THE_END, CUSTOM
validBiomesV2Varia conforme o gerador predefinido❌Biomas válidos no formato namespace:key; uma lista efetiva vazia permite todos os biomas
treasureFilename-❌Ficheiro de tesouro para os baús
generateLootInBarrelstrue❌Preenche com saque os barris encontrados nos schematics deste gerador
barrelTreasureFilenametreasure_barrel_food.yml❌Ficheiro de tesouro usado nos barris deste gerador

structureType​

Define o tipo da construção. Um gerador pode usar vários tipos de estrutura!

TipoOverworld / PersonalizadoNetherEndDescrição
SURFACESuperfíciePontos semelhantes à superfícieSuperfícieAparece à superfície do mundo
SKY80–120 blocos acima do bloco mais altoBolsa de ar entre Y 45 e Y 10080–120 blocos acima do bloco mais altoAparece no céu; configurável em config.yml
UNDERGROUND_SHALLOWY inicial 0-49Procura uma região sólida em Y 60-119Procura uma região sólida em Y 0-79Estruturas subterrâneas pouco profundas
UNDERGROUND_DEEPY inicial -53 a -1Procura descendente de uma região sólida em Y 60-6Começa em Y 0 antes dos ajustes de desvio e limitesEstruturas subterrâneas profundas
LIQUID_SURFACELíquido no bloco mais altoLava em Y 31 com ar por cimaSem verificação inicial de líquido; a adequação do terreno continua a ser verificadaAparece à superfície de líquidos
DUNGEON✅✅✅Reservado ao sistema separado de geradores de módulos; este tipo, por si só, não transforma um schematic numa masmorra modular

Os intervalos aéreos são desvios acima do bloco mais alto da coluna, não coordenadas Y absolutas. Os intervalos subterrâneos descrevem a seleção ou procura inicial, antes dos ajustes de desvio do schematic e dos limites da dimensão. A procura aérea no Nether percorre Y 45-99.

Exemplo com vários tipos de estrutura
structureType:
- SURFACE
- UNDERGROUND_SHALLOW

O mesmo gerador pode assim criar estruturas em vários locais, por exemplo à superfície e em zonas subterrâneas pouco profundas.

Existem duas opções subterrâneas devido à extensão do subsolo Minecraft. Usar ambas distribui melhor as estruturas entre profundidades e facilita a sua descoberta.


Intervalos de Y por dimensão​

Intervalos predefinidos, configuráveis em config.yml:

DimensãoIntervalo predefinidoOpções
Overworld/PersonalizadoY=-60 a Y=320lowestYNormalCustom / highestYNormalCustom
NetherY=4 a Y=120lowestYNether / highestYNether
EndY=0 a Y=320lowestYEnd / highestYEnd
Céu, Overworld/Personalizado80 a 120 blocos acima do bloco mais altonormalCustomAirBuildingMinAltitude / normalCustomAirBuildingMaxAltitude
Céu, End80 a 120 blocos acima do bloco mais altoendAirBuildMinAltitude / endAirBuildMaxAltitude

lowestYLevel e highestYLevel do gerador filtram as posições candidatas da âncora. Não substituem os limites subterrâneos da dimensão nem redefinem os desvios aéreos.

As duas linhas aéreas indicam desvios somados ao bloco mais alto da coluna, não Y absoluto. No Overworld/Personalizado e no End, cada colocação sorteia o desvio entre o mínimo e o máximo.

O Nether ignora estes desvios. O BetterStructures procura, entre Y 45 e Y 100, uma bolsa de ar com pelo menos 20 blocos de altura e coloca a estrutura no seu interior. Sem uma bolsa adequada, nada aparece nesse chunk.


Biomas personalizados​

O BetterStructures suporta automaticamente biomas personalizados de geradores como Terralith, Iris, Terra e TerraformGenerator.

Ao indicar um bioma vanilla em validBiomesV2, os biomas personalizados compatíveis são incluídos automaticamente:

validBiomesV2:
- minecraft:plains
- minecraft:forest

Isto permite estruturas nos biomas vanilla E nos biomas personalizados associados, sujeitas às restantes verificações de colocação. Por exemplo, terralith:brushland está associado a plains.

Uma lista validBiomesV2 vazia ou ausente mantém a seleção de biomas incorporada num gerador predefinido; não elimina as suas restrições. Um gerador personalizado novo sem biomas incorporados tem uma lista efetiva vazia e permite todos os biomas. Use uma lista explícita não vazia para substituir a seleção de uma predefinição. Os nomes da enumeração vanilla sem namespace são aceites, mas namespace:key é mais claro; as entradas com namespace são convertidas para minúsculas sem verificar se o bioma existe.

Onde estão definidas as correspondências​

A tabela que associa biomas personalizados a biomas vanilla não está no BetterStructures. Está definida no código do MagmaCore, a biblioteca incorporada, e é partilhada com os outros plugins do MagmaGuy que dela precisam.

Há duas consequências práticas:

  1. As listas extensas em generator_surface_*.yml são resultados gerados, não a definição original. Ao carregar, o BetterStructures lê validBiomesV2, procura cada entrada minecraft: na tabela MagmaCore, acrescenta os biomas personalizados correspondentes e volta a escrever a lista expandida no ficheiro do gerador. Duas linhas podem tornar-se uma centena. Editar a lista afeta apenas esse gerador; entradas minecraft: conservadas voltam a ser expandidas no próximo carregamento.
  2. Adicionar suporte global a um novo bioma exige alterar o MagmaCore, não uma configuração. Acrescentar um bioma desconhecido a validBiomesV2 resolve apenas esse gerador. Para uma correspondência comum, é necessário adicioná-lo à tabela MagmaCore através de uma alteração de código; abra um pedido em vez de tentar resolver o suporte global nos YAML.

Pode indicar diretamente um bioma personalizado em validBiomesV2. Namespaces diferentes de minecraft: são mantidos sem expansão adicional, o que é adequado para um gerador destinado apenas a um bioma personalizado específico.

Biomas associados a nothing pelo MagmaCore são excluídos deliberadamente por serem considerados inadequados para estruturas. Nenhum bioma vanilla os inclui.


treasureFilename​

Define o ficheiro de tesouro dos baús. Aplica-se a todas as construções do gerador, exceto se a configuração do schematic o substituir.

O gerador continua a precisar de uma configuração de tesouro válida para preencher os baús. Uma substituição no schematic não compensa um ficheiro de tesouro ausente ou inválido no gerador. Substituições inválidas produzem um aviso e usam a tabela do gerador.


generateLootInBarrels e barrelTreasureFilename​

O BetterStructures também trata os barris como contentores de saque.

  • generateLootInBarrels, predefinido como true, controla o preenchimento dos barris nas estruturas deste gerador. Use false para não os alterar.
  • barrelTreasureFilename, predefinido como treasure_barrel_food.yml, escolhe a tabela sorteada para os barris. A predefinição usa uma tabela simples de alimentos, mas pode indicar qualquer ficheiro de tesouro.

barrelTreasureFilename do schematic pode substituir a tabela. O gerador precisa de generateLootInBarrels: true e de uma configuração válida de tesouro para barris; uma substituição no schematic não contorna nenhum destes requisitos. Substituições inválidas produzem um aviso e usam a tabela do gerador.