Saltar al contenido principal

BetterStructures

BetterStructures es un escáner de topología independiente del generador que encuentra ubicaciones óptimas para colocar estructuras personalizadas basándose en la geometría y las características de los bloques. El complemento pega esquemas en tu mundo con métodos de adaptación del terreno que preservan el aspecto natural de tu mundo.

El complemento utiliza escaneo avanzado para medir la compatibilidad del terreno y adapta las estructuras para que se ajusten sin problemas a los mundos existentes. Admite pedestales, bloques especiales y pegado inteligente que hace que las estructuras se vean naturales en cualquier entorno.

Comenzando

Requisitos

Requerido:

  • WorldEdit o FastAsyncWorldEdit (debe estar instalado uno)
  • Minecraft 1.14+ (se recomienda Paper)

Opcional:

  • EliteMobs (para encuentros de jefes en estructuras)
  • WorldGuard (para protección de regiones)
  • Generadores de mundo personalizados (Terralith, Iris, Terra, TerraformGenerator)

Instalación

  1. Instala WorldEdit o FastAsyncWorldEdit en tu servidor
  2. Descarga BetterStructures y colócalo en tu carpeta de complementos
  3. Descarga paquetes de estructuras:
  4. Extrae los archivos de estructura descargados a ~/plugins/BetterStructures/imports
  5. Inicia tu servidor o ejecuta /betterstructures reload

El complemento procesa automáticamente las estructuras importadas y las pone a disposición para su generación.

Inicio Rápido

Después de la instalación, las estructuras aparecen automáticamente en tu mundo según su configuración. Para probar la colocación de estructuras o administrar el complemento, utiliza los comandos que se enumeran a continuación.

Comandos

Todos los comandos utilizan la base /betterstructures o alias /bs.

ComandoDescripciónPermiso
/betterstructuresComando principalNinguno
/betterstructures reloadRecargar todas las configuracionesbetterstructures.*
/betterstructures place <name> <type>Probar la colocación de estructura en tu ubicaciónbetterstructures.*
/betterstructures lootifyAgregar elementos personalizados a las tablas de botínbetterstructures.*
/betterstructures setupEjecutar el proceso de configuraciónbetterstructures.setup
/betterstructures initializeInicializar el complementobetterstructures.initialize
/betterstructures generatemodulesGenerar mazmorras modulares (velocidad normal)betterstructures.generatemodules
/betterstructures generatemodules slowlyGenerar mazmorras modulares lentamente (bajo impacto en el servidor)betterstructures.generatemodules.slowly
/betterstructures generatemodules instantlyGenerar mazmorras modulares instantáneamente (alto impacto en el servidor)betterstructures.generatemodules.instantly
/betterstructures teleportTeletransportarse a ubicaciones de estructurasbetterstructures.*
/betterstructures versionMostrar versión del complementoNinguno
/betterstructures silentAlternar modo silenciosobetterstructures.*

Permisos

Todos los permisos tienen como valor predeterminado op (solo operadores del servidor).

PermisoDescripciónPor Defecto
betterstructures.setupAcceso al comando de configuraciónop
betterstructures.initializeAcceso al comando de inicializaciónop
betterstructures.generatemodulesAcceso a la generación de módulos estándarop
betterstructures.generatemodules.slowlyAcceso a la generación lenta de módulosop
betterstructures.generatemodules.instantlyAcceso a la generación instantánea de módulosop

Tipos de Estructura

BetterStructures admite seis tipos de estructura, cada uno con diferentes reglas de colocación y ubicaciones de aparición.

SURFACE

Genera estructuras en la superficie del terreno, adaptándose a la elevación del terreno. El complemento escanea áreas planas o compatibles y coloca estructuras con mezcla automática del terreno.

Espaciado predeterminado: 31 bloques entre estructuras

SKY

Coloca estructuras flotando en el aire a grandes altitudes.

Rango de altitud:

  • Overworld: 80-120 bloques
  • End: 80-120 bloques

Espaciado predeterminado: 95 bloques entre estructuras

UNDERGROUND_SHALLOW

Genera estructuras en áreas subterráneas poco profundas cerca de la superficie.

Rango de nivel Y (Overworld): 0 a 60

Espaciado predeterminado: 22 bloques entre estructuras

UNDERGROUND_DEEP

Crea estructuras en ubicaciones profundas bajo tierra, incluyendo cuevas profundas y cavernas.

Rango de nivel Y (Overworld): -64 a 0

Espaciado predeterminado: 22 bloques entre estructuras

LIQUID_SURFACE

Genera estructuras en superficies de agua o lava, perfectas para monumentos oceánicos o bases flotantes.

Espaciado predeterminado: 65 bloques entre estructuras

DUNGEON

Genera mazmorras procedimentales modulares utilizando el algoritmo Wave Function Collapse. Estas estructuras conectan múltiples módulos para crear sistemas subterráneos complejos.

Espaciado predeterminado: 80 bloques entre estructuras

Configuración

Configuración Principal (config.yml)

El archivo de configuración principal contiene configuraciones globales que se aplican a todas las estructuras.

Rangos de Nivel Y

Controla los límites de altura para la generación de estructuras en diferentes dimensiones.

# Overworld/Mundos Personalizados
lowestYNormalCustom: -60
highestYNormalCustom: 320

# Nether
lowestYNether: 4
highestYNether: 120

# End
lowestYEnd: 0
highestYEnd: 320

Altitudes de Construcción Aérea

Establece los rangos de altitud para estructuras basadas en el cielo.

# Overworld/Mundos Personalizados
normalCustomAirBuildingMinAltitude: 80
normalCustomAirBuildingMaxAltitude: 120

# End
endAirBuildMinAltitude: 80
endAirBuildMaxAltitude: 120

Espaciado de Estructura

Define distancias mínimas entre estructuras de cada tipo.

distanceSurface: 31        # Estructuras de superficie
distanceShallow: 22 # Subterráneo poco profundo
distanceDeep: 22 # Subterráneo profundo
distanceSky: 95 # Estructuras de cielo
distanceLiquid: 65 # Superficie líquida
distanceDungeon: 80 # Mazmorras

Aleatorización de Espaciado

Agrega un desplazamiento aleatorio a la colocación de estructuras para evitar patrones de cuadrícula.

maxOffsetSurface: 5        # ±5 bloques para superficie
maxOffsetShallow: 5 # ±5 bloques para poco profundo
maxOffsetDeep: 5 # ±5 bloques para profundo
maxOffsetSky: 5 # ±5 bloques para cielo
maxOffsetLiquid: 5 # ±5 bloques para líquido
maxOffsetDungeon: 18 # ±18 bloques para mazmorras

Notificaciones de Administrador

warnAdminsAboutNewBuildings: true  # Notificar a los administradores cuando aparezcan estructuras

Configuración de Esquema

Cada esquema tiene su propio archivo de configuración en ~/plugins/BetterStructures/schematics/.

Configuraciones disponibles:

  • isEnabled: Habilitar o deshabilitar este esquema (predeterminado: true)
  • weight: Probabilidad de selección cuando hay varios esquemas disponibles (predeterminado: 1.0)
  • generatorConfigFilename: Vincula a la configuración del generador que controla dónde aparece esta estructura
  • pedestalMaterial: Tipo de bloque utilizado para pedestales debajo de la estructura
  • treasureFile: Configuración de tabla de botín personalizada para cofres en esta estructura

Configuración del Generador

Las configuraciones del generador controlan dónde y cuándo aparecen las estructuras. Los archivos se encuentran en ~/plugins/BetterStructures/generators/.

Configuraciones disponibles:

  • structureType: Uno de los seis tipos (SURFACE, SKY, UNDERGROUND_SHALLOW, UNDERGROUND_DEEP, LIQUID_SURFACE, DUNGEON)
  • lowestYLevel: Altura de aparición mínima (predeterminado: -59)
  • highestYLevel: Altura de aparición máxima (predeterminado: 320)
  • validWorlds: Lista de nombres de mundos donde puede aparecer esta estructura (vacío = todos los mundos)
  • validWorldEnvironments: Filtrar por tipo de ambiente (NORMAL, NETHER, THE_END)
  • validBiomes: Lista de biomas donde puede aparecer la estructura (admite formato de espacio de nombres como minecraft:plains)
  • treasureFilename: Referencia de tabla de botín para cofres en esta estructura

Configuración de Tesoro

Las configuraciones de tesoro definen tablas de botín para cofres de estructura. Los archivos se encuentran en ~/plugins/BetterStructures/treasures/.

Configuraciones disponibles:

  • mean: Número promedio de elementos por cofre (predeterminado: 4.0)
  • standardDeviation: Variación en cantidades de artículos (predeterminado: 3.0)
  • rawLoot: Grupos de elementos organizados por nivel de rareza
  • chestEntries: Elementos específicos con rangos de cantidad y probabilidades de aparición

Configuración de encantamiento:

Cada material puede tener reglas de encantamiento:

  • minLevel: Nivel de encantamiento mínimo
  • maxLevel: Nivel de encantamiento máximo
  • chance: Probabilidad de aplicar encantamiento (0.0 a 1.0)

Bloques Especiales

BetterStructures utiliza bloques especiales en esquemas para controlar el comportamiento del pegado y agregar funcionalidad.

Bloques de Barrera

Los bloques de barrera le indican al complemento que omita el pegado en esa ubicación, preservando la generación del mundo original.

Casos de uso:

  • Crear bordes con aspecto natural que se mezclen con el terreno
  • Preservar cuevas u otros elementos existentes
  • Redondear esquinas de estructuras para que coincidan con el paisaje

Bloques de Roca Madre

Los bloques de roca madre garantizan un piso sólido bajo la estructura.

Comportamiento:

  • Si existe un bloque sólido en esa ubicación, déjalo sin cambios
  • Si el bloque es aire o líquido, reemplázalo con el material del pedestal

Casos de uso:

  • Crear caminos definidos sin anular la generación del terreno natural
  • Asegurar que las estructuras tengan cimientos estables
  • Agregar características como rieles de carrito de mina o puentes que requieren bloques sólidos

Letreros de Aparición

Los letreros de aparición crean apariciones de mobs en ubicaciones específicas de tus estructuras. Los letreros se eliminan cuando se pega la estructura.

Mobs Vanilla

[spawn]
ZOMBIE

Formato:

  • Línea 1: [spawn]
  • Línea 2: Tipo de entidad (utiliza nombres de API de Spigot como ZOMBIE, SKELETON, CREEPER)

Integración de EliteMobs

[elitemobs]
boss_filename.yml

Formato:

  • Línea 1: [elitemobs]
  • Línea 2+: Nombre de archivo de configuración de jefe

Crea encuentros de jefes con protección de WorldGuard. La región protegida permanece hasta que los jugadores derroten al jefe.

Integración de MythicMobs

[mythicmobs]
mob_identifier
5

Formato:

  • Línea 1: [mythicmobs]
  • Línea 2: ID de mob de MythicMobs
  • Línea 3: Nivel de mob (opcional)

Integración de Complementos

EliteMobs

BetterStructures se integra con EliteMobs para crear arenas de jefes y encuentros de combate.

Características:

  • Genera jefes de EliteMobs en estructuras usando letreros de aparición
  • Protección automática de región durante peleas de jefes
  • Eliminación de protección cuando el jefe es derrotado

Configuración:

protectEliteMobsRegions: true  # Habilitar protección de región de EliteMobs

WorldGuard

La integración de WorldGuard proporciona protección de regiones y control de colocación.

Características:

  • Banderas personalizadas para colocación de estructuras
  • Capacidades de protección de región
  • Compatibilidad con áreas protegidas por WorldGuard

WorldEdit / FastAsyncWorldEdit

WorldEdit o FastAsyncWorldEdit es requerido para operaciones de pegado de esquemas.

Requisitos:

  • Instala uno (no ambos) de estos complementos
  • La compatibilidad de versión es crítica - utiliza versiones que coincidan con tu servidor
  • Se recomienda FastAsyncWorldEdit para estructuras grandes en servidores ocupados

Generadores de Mundo

BetterStructures funciona con generadores de mundo personalizados:

Generadores compatibles:

  • Terralith
  • Iris
  • Terra
  • TerraformGenerator

Estas integraciones habilitan la generación de estructuras en biomas personalizados y tipos de terreno.

Ajuste de Rendimiento

Ajusta estas configuraciones en config.yml para optimizar el rendimiento de tu servidor.

Velocidad de Pegado de Fragmentos

modularChunkPastingSpeed: 10

Controla la velocidad de pegado de estructuras modulares. Los valores más altos pegan más rápido pero utilizan más recursos del servidor.

Valores recomendados:

  • Servidores pequeños (1-10 jugadores): 10-15
  • Servidores medianos (10-50 jugadores): 5-10
  • Servidores grandes (50+ jugadores): 3-5

Porcentaje de Uso de Tick

percentageOfTickUsedForPasting: 0.2

Limita el porcentaje de cada tick de servidor utilizado para operaciones de pegado. El valor predeterminado es 0.2 (20% del tiempo de tick).

Valores recomendados:

  • Servidores de alto rendimiento: 0.3-0.4 (30-40%)
  • Servidores estándar: 0.2 (20%)
  • Servidores ocupados con problemas de TPS: 0.1-0.15 (10-15%)

Velocidad de Generación de Módulos

Cuando se usa /betterstructures generatemodules, tienes tres opciones de velocidad:

Normal: /betterstructures generatemodules Velocidad de generación equilibrada con impacto moderado en el servidor.

Lentamente: /betterstructures generatemodules slowly Impacto mínimo en el servidor, mejor para servidores ocupados u horas pico.

Instantáneamente: /betterstructures generatemodules instantly Velocidad máxima, alto impacto en el servidor. Utilizar solo durante períodos de bajo tráfico.

API del Desarrollador

BetterStructures proporciona dos eventos para que los desarrolladores de complementos interactúen con la generación de estructuras.

BuildPlaceEvent

Se activa cuando una estructura está a punto de ser colocada en el mundo.

Paquete: com.magmaguy.betterstructures.api.BuildPlaceEvent

Tipo de evento: Cancelable

Casos de uso:

  • Validar la colocación de estructuras
  • Implementar verificaciones de permiso personalizadas
  • Prevenir la colocación en áreas específicas
  • Registrar la generación de estructuras

Importante: No modifiques el objeto de compilación en sí. El evento expone el objeto FitAnything, pero modificar toda la compilación puede causar un ajuste de terreno deficiente. Solo realiza ajustes menores si es necesario.

ChestFillEvent

Se activa cuando se completan los cofres en estructuras con botín.

Paquete: com.magmaguy.betterstructures.api.ChestFillEvent

Tipo de evento: Cancelable

Casos de uso:

  • Agregar elementos personalizados al botín de estructura
  • Modificar o eliminar botín generado
  • Implementar lógica de botín personalizada
  • Rastrear contenidos de cofres

Uso: Modifica el botín usando los métodos addItem() y removeItem() en el inventario de instantánea. No manipules directamente el contenedor del cofre.

Dependencia Maven

BetterStructures actualmente no tiene un repositorio Maven. Para usar la API, importa manualmente el jar del complemento en tu proyecto.

<dependency>
<groupId>com.magmaguy</groupId>
<artifactId>BetterStructures</artifactId>
<version>2.0.3</version>
<scope>provided</scope>
</dependency>

Agrega el jar del complemento a la ruta de compilación de tu proyecto y márcalo como una dependencia proporcionada en tu plugin.yml.

Recursos Adicionales

Wiki oficial de GitHub: github.com/MagmaGuy/BetterStructures/wiki

Descargas de Estructura:

Página del Complemento: spigotmc.org/resources/betterstructures.103241

Soporte: Visita el repositorio oficial de GitHub o la página de recursos de SpigotMC para obtener soporte e informes de errores.