Saltar para o conteúdo principal

Configuração do BetterStructures

Esta página descreve os dois ficheiros gerais de configuração escritos em plugins/BetterStructures. Para configurações do conteúdo, consulte Criar geradores, Criar estruturas, Criar tesouros e Masmorras modulares.

Ambos são relidos na thread do servidor por /bs reload. Não é necessário reiniciar o servidor para aplicar alterações nestes ficheiros.

Organização das pastas​

CaminhoConteúdo
config.ymlDefinições gerais descritas abaixo
ValidWorlds.ymlAtivação por mundo, descrita abaixo
schematics/Estruturas .schem e configurações .yml geradas, pesquisadas recursivamente
modules/Módulos de masmorras .schem e configurações .yml geradas, pesquisados recursivamente
generators/Configurações de geradores
module_generators/Configurações de geradores modulares
treasures/Configurações de tesouros e tabelas de saque
spawn_pools/Conjuntos de aparecimento usados pelas placas [pool: name]
content_packages/Descritores usados pelo menu e pelos comandos de transferência
components/Criada vazia no arranque para componentes auxiliares do conteúdo
imports/Importações manuais de conteúdo
.schematic_cache/Cache gerida de schematics convertidos; pode ser eliminada com segurança

config.yml

Espaçamento das estruturas​

O BetterStructures coloca estruturas numa grelha em losango baseada na seed, com uma grelha por tipo de estrutura. As distâncias definem o espaçamento entre pontos; os desvios deslocam aleatoriamente cada ponto para tornar as colocações menos regulares.

Ambos são medidos em chunks, não em blocos. distanceSurface: 27 corresponde aproximadamente a uma estrutura de superfície a cada 27 chunks, cerca de 432 blocos.

ChavePredefiniçãoDescrição
distanceSurface27Espaçamento para SURFACE
distanceShallow22Espaçamento para UNDERGROUND_SHALLOW
distanceDeep22Espaçamento para UNDERGROUND_DEEP
distanceSky90Espaçamento para SKY
distanceLiquid60Espaçamento para LIQUID_SURFACE
distanceDungeonV280Espaçamento para DUNGEON
maxOffsetSurface5Desvio aleatório dos pontos de superfície
maxOffsetShallow5Desvio aleatório dos pontos subterrâneos pouco profundos
maxOffsetDeep5Desvio aleatório dos pontos subterrâneos profundos
maxOffsetSky5Desvio aleatório dos pontos aéreos
maxOffsetLiquid5Desvio aleatório dos pontos à superfície de líquidos
maxOffsetDungeonV218Desvio aleatório dos pontos de masmorras

Distâncias menores produzem mais estruturas. Desvios menores tornam a grelha mais evidente; desvios maiores tornam as posições menos previsíveis.

Validação: as distâncias devem ser pelo menos 1. Os desvios devem ficar entre 0 e 1073741823, o maior valor seguro para o gerador aleatório de posições. Um valor inválido gera um aviso, é substituído pela predefinição no config.yml e a geração continua com esse valor.

Os desvios derivam da seed do mundo e do nome do tipo de estrutura. A mesma seed produz a mesma distribuição após cada reinício.

Proteção do spawn​

ChavePredefiniçãoDescrição
spawnProtectionRadius100Distância mínima em blocos a partir de 0, 0, dentro da qual não são colocadas estruturas. Aplica-se a todos os mundos. Use 0 para desativar.

A distância é medida a partir da origem do mundo, não do seu ponto de spawn.

Limites de altitude​

Estas opções limitam a posição de estruturas subterrâneas por dimensão. Se a âncora ficar fora do intervalo, é ajustada para dentro dele.

ChavePredefiniçãoDescrição
lowestYNormalCustom-60Y mínimo em mundos NORMAL e CUSTOM
highestYNormalCustom320Y máximo em mundos NORMAL e CUSTOM
lowestYNether4Y mínimo no Nether
highestYNether120Y máximo no Nether
lowestYEnd0Y mínimo no End
highestYEnd320Y máximo no End

As estruturas aéreas usam opções próprias: desvios acima do bloco mais alto da coluna, e não coordenadas Y absolutas. Cada colocação sorteia um valor entre o mínimo e o máximo.

ChavePredefiniçãoDescrição
normalCustomAirBuildingMinAltitude80Desvio aéreo mínimo em NORMAL e CUSTOM
normalCustomAirBuildingMaxAltitude120Desvio aéreo máximo em NORMAL e CUSTOM
endAirBuildMinAltitude80Desvio aéreo mínimo no End
endAirBuildMaxAltitude120Desvio aéreo máximo no End

O Nether ignora estas quatro opções. As estruturas aéreas são colocadas numa bolsa de ar encontrada entre Y 45 e Y 100.

Desempenho​

ChavePredefiniçãoDescrição
percentageOfTickUsedForPasting0.2Parcela de cada tick que pode ser usada para colocar blocos, entre 0.01, 1%, e 1, 100%. Valores baixos reduzem o lag, mas tornam mais visível a construção gradual.
percentageOfTickUsedForPregeneration0.1Parcela de cada tick usada por /bs pregenerate, também entre 0.01 e 1
pregenerationTPSPauseThreshold12.0Pausa a pré-geração abaixo deste TPS
pregenerationTPSResumeThreshold14.0Retoma a pré-geração neste TPS ou acima. Mantenha-o superior ao limiar de pausa para evitar alternâncias rápidas.
modularChunkPastingSpeed10Sem utilização atual. Continua a ser escrito em config.yml, mas nenhum código o lê; alterá-lo não tem efeito.

Administração e integração​

ChavePredefiniçãoDescrição
warnAdminsAboutNewBuildingstrueSe os jogadores online com betterstructures.warn (operadores por predefinição) recebem uma mensagem clicável de teleporte quando uma estrutura termina de ser colada ou uma masmorra modular começa a ser gerada, em qualquer ponto do servidor. /bs silent altera e guarda este valor.
setupDonefalseIndica se a configuração inicial terminou. Defina false e recarregue para voltar a apresentar a orientação de /bs initialize.
protectEliteMobsRegionstrueCria proteção WorldGuard para áreas de combate com EliteMobs. Exige WorldGuard e EliteMobs.
regionProtectedMessage&8[BetterStructures] &cDefeat the zone's bosses to edit blocks!Mensagem ao tentar editar blocos numa dessas regiões protegidas
nightbreak.autoDownloadPluginUpdatesfalseTransfere atualizações do plugin e do conteúdo automaticamente no arranque. Corresponde ao botão de Atualizações automáticas em /bs setup. O conteúdo e as atualizações do plugin transferidos são usados após o próximo reinício, a menos que nightbreak.applyPluginUpdatesWithoutRestart aplique a atualização do plugin antes.
nightbreak.applyPluginUpdatesWithoutRestartneverQuando é aplicada uma atualização do plugin transferida. never aguarda o próximo reinício. when-empty aplica-a na próxima vez que não houver jogadores online, verificando a cada 30 segundos. immediately aplica-a assim que for transferida. Qualquer outro valor conta como never. Aplicar uma atualização recarrega o BetterStructures e os plugins do MagmaGuy que dependem dele, pelo que os bosses, arenas e instâncias de masmorras em curso terminam. Um plugin de outro autor que dependa do BetterStructures impede a substituição. /bs applypluginupdate aplica uma atualização preparada a pedido.

ValidWorlds.yml

Este ficheiro determina em que mundos o BetterStructures gera conteúdo.

New worlds spawn structures: true
Valid worlds v2:
world: true
world_nether: true
world_the_end: true
ChavePredefiniçãoDescrição
New worlds spawn structurestrueAtiva por predefinição os mundos ainda desconhecidos pelo BetterStructures
Valid worlds v2preenchido automaticamenteUma entrada worldname: true/false por mundo. Use false para impedir toda a geração de estruturas nesse mundo.

Ao atualizar, um ValidWorlds.yml que contenha a chave antiga Valid worlds é movido intacto para plugins/MagmaCore/outdated files/BetterStructures/<archive batch>/ValidWorlds.yml. O BetterStructures gera um ficheiro de substituição com as predefinições atuais dos mundos. Reveja as escolhas anteriores no arquivo e volte a aplicar as pretendidas em Valid worlds v2; depois execute /bs reload. Não volte a colocar o ficheiro antigo sem o alterar, pois continuará a corresponder ao formato retirado.

Comportamento automático​

  • Mundos novos são registados ao carregar. A entrada é escrita imediatamente com o valor de New worlds spawn structures.
  • Mundos geridos pelo EliteMobs são excluídos. O hub da guilda de aventureiros e as cópias de masmorras instanciadas recebem false, mesmo com New worlds spawn structures: true. Os seus chunks vazios contam como novos e anteriormente recebiam estruturas indesejadas. A entrada continua editável, podendo definir true deliberadamente.
  • Escolhas no formato atual são preservadas. O BetterStructures não deduz o proprietário pelo prefixo em_ nem altera opções já existentes em Valid worlds v2. Usa o registo de mundos EliteMobs para as predefinições dos novos mundos. Um mundo EliteMobs explicitamente ativo mantém-se ativo e gera um aviso para o administrador decidir. Os ficheiros antigos com Valid worlds seguem o processo de arquivamento e regeneração descrito acima.
  • Entradas sem mundo são removidas. No arranque e cerca de dez segundos após descarregar um mundo, são eliminadas entradas cujo mundo não esteja carregado nem exista no disco, evitando crescimento indefinido do ficheiro.