Pular para o conteúdo principal

O que são Masmorras Modulares?

Masmorras modulares são um sistema de masmorras introduzido no BetterStructures 2.0.0 e posteriores. Em vez de gerar como um schematic fixo, masmorras modulares são montadas dinamicamente a partir de módulos menores feitos à mão. Esta abordagem permite masmorras grandes e com múltiplos andares que parecem únicas em cada mundo, ao mesmo tempo que se encaixam perfeitamente no Minecraft vanilla.


Como são geradas as masmorras modulares

  • Módulos Cada módulo é tipicamente construído em tamanho configurável (padrão 16x16x16 blocos, embora alguns pacotes de conteúdo usem 32x16x32 ou outras dimensões). Os módulos são projetados com pontos de conexão padronizados usando um sistema de tags de borda para que possam se conectar a outros módulos sem lacunas ou sobreposições. As dimensões de uma masmorra são definidas usando as opções de configuração moduleSizeXZ e moduleSizeY na configuração do gerador de módulos. Módulos podem conter corredores, salas, escadas ou espaços de encontros especiais.

  • Processo de geração Quando uma masmorra modular é gerada em um novo chunk, o BetterStructures usa um algoritmo Wave Function Collapse (WFC) para montar proceduralmente os módulos do pool disponível. O sistema seleciona aleatoriamente módulos compatíveis com base na correspondência de tags de borda e os "costura" juntos em uma masmorra completa. O tempo de geração varia com base no desempenho do servidor, tamanho da masmorra (raio), alcance vertical, contagem de módulos e complexidade de restrições. O sistema usa distribuição de carga para prevenir lag no servidor durante a geração.

  • Tamanho da masmorra Masmorras podem ser configuradas para gerar em vários tamanhos usando o parâmetro de raio. Valores de raio maiores criam masmorras significativamente maiores que podem abranger centenas de blocos. A maioria das masmorras inclui múltiplos andares, conectados por módulos de escada ou poços verticais. As conexões verticais entre andares são alcançadas por meio de módulos com upIsPassable e downIsPassable definidos como true.


Variedade e integração de pacotes

  • Free Pack O Dungeoneering Modules Free Pack inclui 15 módulos. Funciona como uma masmorra completamente jogável por si só.

  • Premium Pack O Dungeoneering Modules Premium Pack adiciona 38 módulos adicionais. Quando combinado com o Free Pack, ambos os conjuntos se entrelaçam em um único sistema de masmorras com um pool de módulos muito maior. Isso reduz a repetição e aumenta a variedade nos layouts gerados.

  • Integração de Props Se você também instalar o BetterStructures Prop Pack (via FreeMinecraftModels), as masmorras modulares exibirão props de modelos personalizados ao longo das construções, como mostrado nas nossas capturas de tela de demonstração. Sem o pacote de props, as masmorras ainda funcionarão normalmente, mas sem os modelos decorativos.


Integração com EliteMobs

Embora a maior parte da masmorra dependa apenas do BetterStructures e mobs vanilla do Minecraft, algumas masmorras apresentam encontros com chefes:

  • Se EliteMobs e FreeMinecraftModels estiverem ambos instalados → luta completa contra chefe personalizado com modelo.
  • Se apenas FreeMinecraftModels estiver instalado → o modelo do chefe aparece como um prop decorativo.
  • Se nenhum estiver instalado → a sala do chefe estará simplesmente vazia.

O sistema usa um sistema de spawn baseado em placas com tags especiais como [spawn] e [pool: poolname] para colocar chefes em áreas designadas. Os níveis dos chefes escalam com base na distância do centro da masmorra, proporcionando desafio apropriado ao longo da estrutura.

Se o EliteMobs não estiver instalado mas um pacote de conteúdo o exigir, os administradores receberão uma mensagem de aviso.

Este design mantém as masmorras modulares compatíveis com configurações vanilla, ao mesmo tempo que oferece integração mais profunda para utilizadores com plugins adicionais.


Integração com MythicMobs

BetterStructures também suporta integração com MythicMobs para encontros personalizados de mobs dentro de masmorras modulares.

Quando o MythicMobs está instalado, pacotes de estruturas podem spawnar MythicMobs personalizados como parte da geração de masmorras. Isso permite encontros de mobs mais sofisticados e lutas contra chefes além do que o Minecraft vanilla ou EliteMobs oferecem.

Se o MythicMobs não estiver instalado, o plugin notificará os administradores com permissões apropriadas e fornecerá um link de download.


Integração com FMM

Masmorras modulares também podem aproveitar props do FreeMinecraftModels (FMM) durante a criação.

  • Se o FMM estiver instalado, quaisquer props colocados pelo criador do módulo aparecerão na masmorra gerada.
  • Os props são puramente decorativos e não afetam a jogabilidade, mas melhoram a fidelidade visual e a imersão do ambiente.
  • Se o FMM não estiver instalado, a masmorra ainda será gerada normalmente, mas esses props personalizados não serão exibidos.

Isso garante que os criadores possam projetar masmorras com detalhes extras mantendo a compatibilidade para jogadores que não têm o FMM instalado.



Dimensões dos Módulos

Importante: O tamanho do módulo é configurável, não fixo.

Cada gerador de módulos define seu tamanho padrão de módulo usando:

  • moduleSizeXZ: Largura e profundidade em blocos (padrão: 16)
  • moduleSizeY: Altura em blocos (padrão: 16)

Tamanho padrão: 16×16×16 blocos Alternativa comum: 32×16×32 blocos (usado em alguns pacotes de conteúdo)

Para criadores de módulos:

  1. Verifique a configuração do seu gerador para os valores de moduleSizeXZ e moduleSizeY
  2. Construa TODOS os módulos para esse gerador com essas dimensões exatas
  3. Tamanhos incompatíveis causarão falhas de conexão

Definindo dimensões personalizadas: No arquivo de configuração do gerador de módulos:

moduleSizeXZ: 32  # Largura e profundidade
moduleSizeY: 16 # Altura

Nota: Todos os módulos em um gerador devem usar as mesmas dimensões. Você não pode misturar módulos 16×16×16 e 32×16×32 no mesmo sistema de masmorras.


Campos de Configuração do Gerador de Módulos

Além de moduleSizeXZ e moduleSizeY, a configuração do gerador de módulos suporta os seguintes campos:

CampoPadrãoDescrição
radius1Raio da masmorra em chunks
edgesfalseSe módulos de borda são gerados
startModuleLista de módulo(s) inicial(is) para geração
minChunkY0Limite vertical mínimo do chunk
maxChunkY0Limite vertical máximo do chunk
moduleSizeXZ16Largura e profundidade dos módulos em blocos
moduleSizeY16Altura dos módulos em blocos
debugfalseAtiva o modo de depuração para resolução de problemas de geração
useGradientLevelsfalseAtiva escalonamento de nível baseado em gradiente para entidades spawnadas
spawnPoolSuffixSufixo adicionado aos nomes dos pools de spawn para este gerador
isWorldGenerationfalseSe este gerador é usado para geração de mundo
treasureFileArquivo de configuração de tesouro
validWorldsLista de nomes de mundos válidos onde a masmorra pode ser gerada
validWorldEnvironmentsLista de ambientes de mundo válidos
centerModuleAltitude0Altitude para o módulo central

Campos de Configuração por Módulo

Cada módulo individual pode definir os seguintes campos de configuração:

CampoPadrãoDescrição
isEnabledtrueSe este módulo está ativado
weight100Peso de seleção para este módulo durante a geração
repetitionPenalty0Penalidade aplicada quando este módulo é selecionado várias vezes
noRepeatfalseImpede a repetição deste módulo
northIsPassabletrueSe a face norte permite conexões
southIsPassabletrueSe a face sul permite conexões
eastIsPassabletrueSe a face leste permite conexões
westIsPassabletrueSe a face oeste permite conexões
upIsPassabletrueSe a face superior permite conexões
downIsPassabletrueSe a face inferior permite conexões
enforceVerticalRotationfalseImpõe restrições de rotação vertical
enforceHorizontalRotationfalseImpõe restrições de rotação horizontal
minY-4Nível Y mínimo para este módulo
maxY20Nível Y máximo para este módulo
biomedefaultRequisito de bioma para este módulo
minecraftBiomenullRequisito de bioma do Minecraft para este módulo
treasureFileArquivo de configuração de tesouro para este módulo
bordersMapa de tags de borda definindo compatibilidade de conexão
cloneConfigClonar configurações de outro arquivo de configuração de módulo
compoundModuleVincula este módulo como parte de um módulo composto (multi-partes)
isAutomaticallyPlacedtrueSe o módulo é colocado automaticamente durante a geração