BetterStructures
BetterStructures é um scanner de topologia agnóstico ao gerador que encontra locais de colocação ideais para estruturas personalizadas com base na geometria e características dos blocos. O plugin cola esquemáticos no seu mundo com métodos de adaptação de terreno que preservam a aparência natural do seu mundo.
O plugin usa varredura avançada para medir a compatibilidade do terreno e adapta estruturas para se encaixarem perfeitamente em mundos existentes. Ele suporta pedestais, blocos especiais e colagem inteligente que faz as estruturas parecerem naturais em qualquer ambiente.
Começando
Requisitos
Obrigatório:
- WorldEdit ou FastAsyncWorldEdit (um deve estar instalado)
- Minecraft 1.14+ (Paper recomendado)
Opcional:
- EliteMobs (para encontros com chefes em estruturas)
- WorldGuard (para proteção de região)
- Geradores de mundo personalizados (Terralith, Iris, Terra, TerraformGenerator)
Instalação
- Instale WorldEdit ou FastAsyncWorldEdit no seu servidor
- Baixe BetterStructures e coloque na pasta de plugins
- Baixe pacotes de estruturas:
- Pacotes gratuitos: magmaguy.itch.io (103+ estruturas disponíveis)
- Pacotes premium: patreon.com/magmaguy
- Extraia os arquivos de estrutura baixados para
~/plugins/BetterStructures/imports - Inicie seu servidor ou execute
/betterstructures reload
O plugin processa automaticamente as estruturas importadas e as torna disponíveis para geração.
Início Rápido
Após a instalação, as estruturas aparecem automaticamente no seu mundo com base nas configurações definidas. Para testar a colocação de estruturas ou gerenciar o plugin, use os comandos listados abaixo.
Comandos
Todos os comandos usam a base /betterstructures ou alias /bs.
| Comando | Descrição | Permissão |
|---|---|---|
/betterstructures | Comando principal | Nenhuma |
/betterstructures reload | Recarregar todas as configurações | betterstructures.* |
/betterstructures place <nome> <tipo> | Testar colocação de estrutura na sua localização | betterstructures.* |
/betterstructures lootify | Adicionar itens personalizados às tabelas de saque | betterstructures.* |
/betterstructures setup | Executar processo de configuração | betterstructures.setup |
/betterstructures initialize | Inicializar o plugin | betterstructures.initialize |
/betterstructures generatemodules | Gerar masmorras modulares (velocidade normal) | betterstructures.generatemodules |
/betterstructures generatemodules slowly | Gerar masmorras modulares lentamente (baixo impacto no servidor) | betterstructures.generatemodules.slowly |
/betterstructures generatemodules instantly | Gerar masmorras modulares instantaneamente (alto impacto no servidor) | betterstructures.generatemodules.instantly |
/betterstructures teleport | Teletransportar para localizações de estruturas | betterstructures.* |
/betterstructures version | Exibir versão do plugin | Nenhuma |
/betterstructures silent | Alternar modo silencioso | betterstructures.* |
Permissões
Todas as permissões padrão são op (apenas operadores do servidor).
| Permissão | Descrição | Padrão |
|---|---|---|
betterstructures.setup | Acesso ao comando setup | op |
betterstructures.initialize | Acesso ao comando initialize | op |
betterstructures.generatemodules | Acesso à geração padrão de módulos | op |
betterstructures.generatemodules.slowly | Acesso à geração lenta de módulos | op |
betterstructures.generatemodules.instantly | Acesso à geração instantânea de módulos | op |
Tipos de Estruturas
BetterStructures suporta seis tipos de estruturas, cada uma com diferentes regras de colocação e locais de spawn.
SURFACE
Gera estruturas na superfície do solo, adaptando-se à elevação do terreno. O plugin varre áreas planas ou compatíveis e coloca estruturas com mistura automática de terreno.
Espaçamento padrão: 31 blocos entre estruturas
SKY
Coloca estruturas flutuando no ar em grandes altitudes.
Faixa de altitude:
- Overworld: 80-120 blocos
- End: 80-120 blocos
Espaçamento padrão: 95 blocos entre estruturas
UNDERGROUND_SHALLOW
Gera estruturas em áreas subterrâneas rasas perto da superfície.
Faixa de nível Y (Overworld): 0 a 60
Espaçamento padrão: 22 blocos entre estruturas
UNDERGROUND_DEEP
Cria estruturas em locais subterrâneos profundos, incluindo cavernas profundas e cavernas.
Faixa de nível Y (Overworld): -64 a 0
Espaçamento padrão: 22 blocos entre estruturas
LIQUID_SURFACE
Gera estruturas em superfícies de água ou lava, perfeito para monumentos oceânicos ou bases flutuantes.
Espaçamento padrão: 65 blocos entre estruturas
DUNGEON
Gera masmorras procedurais modulares usando o algoritmo Wave Function Collapse. Essas estruturas conectam múltiplos módulos para criar sistemas subterrâneos complexos.
Espaçamento padrão: 80 blocos entre estruturas
Configuração
Configuração Principal (config.yml)
O arquivo de configuração principal contém configurações globais que se aplicam a todas as estruturas.
Faixas de Nível Y
Controla os limites de altura para geração de estruturas em diferentes dimensões.
# Overworld/Mundos Personalizados
lowestYNormalCustom: -60
highestYNormalCustom: 320
# Nether
lowestYNether: 4
highestYNether: 120
# End
lowestYEnd: 0
highestYEnd: 320
Altitudes de Construção Aérea
Define as faixas de altitude para estruturas baseadas no céu.
# Overworld/Mundos Personalizados
normalCustomAirBuildingMinAltitude: 80
normalCustomAirBuildingMaxAltitude: 120
# End
endAirBuildMinAltitude: 80
endAirBuildMaxAltitude: 120
Espaçamento de Estruturas
Define distâncias mínimas entre estruturas de cada tipo.
distanceSurface: 31 # Estruturas de superfície
distanceShallow: 22 # Subterrâneo raso
distanceDeep: 22 # Subterrâneo profundo
distanceSky: 95 # Estruturas do céu
distanceLiquid: 65 # Superfície líquida
distanceDungeon: 80 # Masmorras
Aleatoriedade de Espaçamento
Adiciona deslocamento aleatório à colocação de estruturas para evitar padrões de grade.
maxOffsetSurface: 5 # ±5 blocos para superfície
maxOffsetShallow: 5 # ±5 blocos para raso
maxOffsetDeep: 5 # ±5 blocos para profundo
maxOffsetSky: 5 # ±5 blocos para céu
maxOffsetLiquid: 5 # ±5 blocos para líquido
maxOffsetDungeon: 18 # ±18 blocos para masmorras
Notificações de Administrador
warnAdminsAboutNewBuildings: true # Notificar admins quando estruturas aparecem
Configuração de Esquemáticos
Cada esquemático tem seu próprio arquivo de configuração em ~/plugins/BetterStructures/schematics/.
Configurações disponíveis:
- isEnabled: Ativar ou desativar este esquemático (padrão: true)
- weight: Probabilidade de seleção quando múltiplos esquemáticos estão disponíveis (padrão: 1.0)
- generatorConfigFilename: Vincula à configuração do gerador que controla onde esta estrutura aparece
- pedestalMaterial: Tipo de bloco usado para pedestais sob a estrutura
- treasureFile: Configuração de tabela de saque personalizada para baús nesta estrutura
Configuração do Gerador
As configurações do gerador controlam onde e quando as estruturas aparecem. Os arquivos estão localizados em ~/plugins/BetterStructures/generators/.
Configurações disponíveis:
- structureType: Um dos seis tipos (SURFACE, SKY, UNDERGROUND_SHALLOW, UNDERGROUND_DEEP, LIQUID_SURFACE, DUNGEON)
- lowestYLevel: Altura mínima de spawn (padrão: -59)
- highestYLevel: Altura máxima de spawn (padrão: 320)
- validWorlds: Lista de nomes de mundos onde esta estrutura pode aparecer (vazio = todos os mundos)
- validWorldEnvironments: Filtrar por tipo de ambiente (NORMAL, NETHER, THE_END)
- validBiomes: Lista de biomas onde a estrutura pode aparecer (suporta formato namespace como
minecraft:plains) - treasureFilename: Referência de tabela de saque para baús nesta estrutura
Configuração de Tesouro
As configurações de tesouro definem tabelas de saque para baús de estruturas. Os arquivos estão localizados em ~/plugins/BetterStructures/treasures/.
Configurações disponíveis:
- mean: Número médio de itens por baú (padrão: 4.0)
- standardDeviation: Variação nas quantidades de itens (padrão: 3.0)
- rawLoot: Pools de itens organizados por nível de raridade
- chestEntries: Itens específicos com faixas de quantidade e chances de spawn
Configuração de encantamento:
Cada material pode ter regras de encantamento:
- minLevel: Nível mínimo de encantamento
- maxLevel: Nível máximo de encantamento
- chance: Probabilidade de aplicar encantamento (0.0 a 1.0)
Blocos Especiais
BetterStructures usa blocos especiais em esquemáticos para controlar o comportamento de colagem e adicionar funcionalidade.
Blocos de Barreira
Blocos de barreira dizem ao plugin para pular a colagem naquele local, preservando a geração original do mundo.
Casos de uso:
- Criar bordas de aparência natural que se misturam com o terreno
- Preservar cavernas ou características existentes
- Arredondar cantos de estruturas para combinar com a paisagem
Blocos de Bedrock
Blocos de bedrock garantem piso sólido sob a estrutura.
Comportamento:
- Se um bloco sólido existe naquele local, deixe-o inalterado
- Se o bloco é ar ou líquido, substitua-o pelo material do pedestal
Casos de uso:
- Criar caminhos definidos sem sobrescrever terreno natural
- Garantir que estruturas tenham fundações estáveis
- Adicionar recursos como trilhos de carrinho de mina ou pontes que requerem blocos sólidos
Placas de Spawn
Placas de spawn criam spawns de mobs em locais específicos nas suas estruturas. As placas são removidas quando a estrutura é colada.
Mobs Vanilla
[spawn]
ZOMBIE
Formato:
- Linha 1:
[spawn] - Linha 2: Tipo de entidade (use nomes da API Spigot como ZOMBIE, SKELETON, CREEPER)
Integração com EliteMobs
[elitemobs]
boss_filename.yml
Formato:
- Linha 1:
[elitemobs] - Linha 2+: Nome do arquivo de configuração do chefe
Cria encontros com chefes com proteção WorldGuard. A região protegida permanece até os jogadores derrotarem o chefe.
Integração com MythicMobs
[mythicmobs]
mob_identifier
5
Formato:
- Linha 1:
[mythicmobs] - Linha 2: ID do mob MythicMobs
- Linha 3: Nível do mob (opcional)
Integração de Plugins
EliteMobs
BetterStructures se integra com EliteMobs para criar arenas de chefes e encontros de combate.
Recursos:
- Spawnar chefes EliteMobs em estruturas usando placas de spawn
- Proteção automática de região durante lutas de chefes
- Remoção de proteção quando o chefe é derrotado
Configuração:
protectEliteMobsRegions: true # Ativar proteção de região EliteMobs
WorldGuard
A integração com WorldGuard fornece proteção de região e controle de colocação.
Recursos:
- Flags personalizadas para colocação de estruturas
- Capacidades de proteção de região
- Compatibilidade com áreas protegidas pelo WorldGuard
WorldEdit / FastAsyncWorldEdit
WorldEdit ou FastAsyncWorldEdit é necessário para operações de colagem de esquemáticos.
Requisitos:
- Instale um (não ambos) desses plugins
- A compatibilidade de versão é crítica - use versões correspondentes ao seu servidor
- FastAsyncWorldEdit é recomendado para estruturas grandes em servidores ocupados
Geradores de Mundo
BetterStructures funciona com geradores de mundo personalizados:
Geradores suportados:
- Terralith
- Iris
- Terra
- TerraformGenerator
Essas integrações permitem a geração de estruturas em biomas personalizados e tipos de terreno.
Ajuste de Desempenho
Ajuste essas configurações em config.yml para otimizar o desempenho do seu servidor.
Velocidade de Colagem de Chunks
modularChunkPastingSpeed: 10
Controla a rapidez com que estruturas modulares são coladas. Valores mais altos colam mais rápido, mas usam mais recursos do servidor.
Valores recomendados:
- Servidores pequenos (1-10 jogadores): 10-15
- Servidores médios (10-50 jogadores): 5-10
- Servidores grandes (50+ jogadores): 3-5
Porcentagem de Uso de Tick
percentageOfTickUsedForPasting: 0.2
Limita a porcentagem de cada tick do servidor usado para operações de colagem. O padrão é 0.2 (20% do tempo de tick).
Valores recomendados:
- Servidores de alto desempenho: 0.3-0.4 (30-40%)
- Servidores padrão: 0.2 (20%)
- Servidores ocupados com problemas de TPS: 0.1-0.15 (10-15%)
Velocidade de Geração de Módulos
Ao usar /betterstructures generatemodules, você tem três opções de velocidade:
Normal: /betterstructures generatemodules
Velocidade de geração equilibrada com impacto moderado no servidor.
Lentamente: /betterstructures generatemodules slowly
Impacto mínimo no servidor, melhor para servidores ocupados ou durante horários de pico.
Instantaneamente: /betterstructures generatemodules instantly
Velocidade máxima, alto impacto no servidor. Use apenas durante períodos de baixo tráfego.
API do Desenvolvedor
BetterStructures fornece dois eventos para desenvolvedores de plugins interagirem com a geração de estruturas.
BuildPlaceEvent
Dispara quando uma estrutura está prestes a ser colocada no mundo.
Pacote: com.magmaguy.betterstructures.api.BuildPlaceEvent
Tipo de evento: Cancelável
Casos de uso:
- Validar colocação de estruturas
- Implementar verificações de permissão personalizadas
- Prevenir colocação em áreas específicas
- Registrar geração de estruturas
Importante: Não modifique o objeto build em si. O evento expõe o objeto FitAnything, mas modificar toda a construção pode causar má adaptação ao terreno. Faça apenas ajustes menores se necessário.
ChestFillEvent
Dispara quando baús em estruturas estão sendo preenchidos com saque.
Pacote: com.magmaguy.betterstructures.api.ChestFillEvent
Tipo de evento: Cancelável
Casos de uso:
- Adicionar itens personalizados ao saque de estruturas
- Modificar ou remover saque gerado
- Implementar lógica de saque personalizada
- Rastrear conteúdo de baús
Uso: Modifique o saque usando os métodos addItem() e removeItem() no inventário snapshot. Não manipule diretamente o contêiner do baú.
Dependência Maven
BetterStructures atualmente não possui um repositório Maven. Para usar a API, importe manualmente o jar do plugin no seu projeto.
<dependency>
<groupId>com.magmaguy</groupId>
<artifactId>BetterStructures</artifactId>
<version>2.0.3</version>
<scope>provided</scope>
</dependency>
Adicione o jar do plugin ao caminho de construção do seu projeto e marque-o como uma dependência fornecida no seu plugin.yml.
Recursos Adicionais
Wiki Oficial do GitHub: github.com/MagmaGuy/BetterStructures/wiki
Downloads de Estruturas:
- Pacotes gratuitos: magmaguy.itch.io
- Pacotes premium: patreon.com/magmaguy
Página do Plugin: spigotmc.org/resources/betterstructures.103241
Suporte: Visite o repositório oficial do GitHub ou a página de recursos do SpigotMC para suporte e relatórios de bugs.