Saltar al contenido principal

Crear Generadores

Generadores

Los generadores son la parte más poderosa del sistema de configuración de BetterStructures. Por defecto hay 29 generadores que gestionan colectivamente las construcciones distribuidas actualmente por BetterStructures y, aunque puedes crear tus propios generadores, también puedes usar los existentes como atajo.

Los generadores le dicen al plugin dónde exactamente deben aparecer las cosas y definen las tablas de botín. Los generadores predeterminados también están nombrados de manera que debería ser muy fácil adivinar lo que hacen.

Opciones de configuración del generador

ClavePredeterminadoObligatorioDescripción
isEnabledtrueSi el generador está habilitado. Ponerlo en false también impide que se registre cualquier schematic que apunte a este generador, así que es la forma más rápida de desactivar todo un conjunto de estructuras.
structureType-Dónde aparecen las estructuras (ver tabla abajo)
lowestYLevel-59Nivel Y mínimo para la aparición
highestYLevel320Nivel Y máximo para la aparición
validWorldsTodos permitidosLista de mundos donde las estructuras pueden aparecer
validWorldEnvironmentsTodos permitidosNORMAL, NETHER, THE_END, CUSTOM
validBiomesV2Todos los biomasLista de biomas válidos (formato namespace:key)
treasureFilename-Archivo de tesoro para el botín de cofres
generateLootInBarrelstrueSi los barriles encontrados en los schematics de este generador deben llenarse con botín
barrelTreasureFilenametreasure_barrel_food.ymlArchivo de tesoro usado para llenar los barriles de este generador

structureType

Establece qué tipo de estructura es la construcción. ¡Puedes especificar múltiples tipos de estructura para un solo generador!

TipoOverworld / PersonalizadoNetherEndDescripción
SURFACESuperficiePuntos similares a superficieSuperficieAparece en la superficie del mundo
SKYDe 80 a 120 bloques por encima del bloque más altoBolsa de aire encontrada entre la Y 45 y la Y 100De 80 a 120 bloques por encima del bloque más altoAparece en el cielo (configurable en config.yml)
UNDERGROUND_SHALLOWY 0-50Y 60-120Y 0-80Estructuras subterráneas poco profundas
UNDERGROUND_DEEPY -53 a 0Y 5-60Y 0-80Estructuras subterráneas profundas
LIQUID_SURFACEAgua (océanos)Océano de lava en la Y 31No se aplica ninguna comprobación de líquidoAparece en superficies líquidas
DUNGEONUsado para colocación de mazmorras modulares

Los rangos del cielo son desplazamientos aplicados por encima del bloque más alto del mundo en esa columna, no niveles Y absolutos.

Ejemplo de múltiples tipos de estructura
structureType:
- SURFACE
- UNDERGROUND_SHALLOW

Esto permite al mismo generador generar estructuras en múltiples ubicaciones, como tanto en la superficie como en áreas subterráneas poco profundas.

Nota: Hay dos configuraciones subterráneas porque Minecraft tiene mucho espacio subterráneo. Tener ambas asegura una distribución uniforme a través de las profundidades y evita que los jugadores se pierdan estructuras.


Rangos de nivel Y por dimensión

Rangos de altitud predeterminados por dimensión (configurables en config.yml):

DimensiónRango predeterminadoConfiguraciones
Overworld/PersonalizadoY=-60 a Y=320lowestYNormalCustom / highestYNormalCustom
NetherY=4 a Y=120lowestYNether / highestYNether
EndY=0 a Y=320lowestYEnd / highestYEnd
Cielo (Overworld/Personalizado)De 80 a 120 bloques por encima del bloque más altonormalCustomAirBuildingMinAltitude / normalCustomAirBuildingMaxAltitude
Cielo (End)De 80 a 120 bloques por encima del bloque más altoendAirBuildMinAltitude / endAirBuildMaxAltitude

Estos valores predeterminados pueden ser anulados por generador usando lowestYLevel y highestYLevel.

Las dos filas de cielo son desplazamientos que se suman al bloque más alto de la columna, no niveles Y absolutos. Tanto los desplazamientos del cielo del Overworld/Personalizado como los del End se sortean al azar entre su mínimo y su máximo en cada colocación.

El Nether ignora por completo esos desplazamientos: en lugar de construir por encima del bloque más alto, BetterStructures escanea la columna entre la Y 45 y la Y 100 buscando una bolsa de aire de al menos 20 bloques de alto y coloca la estructura dentro de ella. Si no existe tal bolsa, no aparece nada en ese chunk.


Soporte de biomas personalizados

BetterStructures soporta automáticamente biomas personalizados de generadores de mundo como Terralith, Iris, Terra y TerraformGenerator.

Cuando especificas un bioma vanilla en validBiomesV2, el plugin incluye automáticamente biomas personalizados compatibles:

validBiomesV2:
- minecraft:plains
- minecraft:forest

Esto genera estructuras en los biomas vanilla Y todos los biomas personalizados mapeados a estos tipos (p.ej., terralith:blooming_plains).

Dónde viven realmente los mapeos

La tabla de correspondencia entre biomas personalizados y biomas vanilla no se almacena en BetterStructures. Es una única tabla fija dentro de MagmaCore, la biblioteca compartida incluida en BetterStructures, y se comparte con los demás plugins de MagmaGuy que la necesitan.

Eso tiene dos consecuencias prácticas:

  1. Las largas listas de biomas que ves en los archivos generator_surface_*.yml distribuidos son salida generada, no la fuente de verdad. Al cargar, BetterStructures lee validBiomesV2, busca cada entrada minecraft: en la tabla de MagmaCore, añade los biomas personalizados que se correspondan con ella y después vuelve a escribir la lista expandida directamente en el archivo del generador. Así que un generador que escribiste con dos líneas puede volver con cien. Editar esa lista expandida solo afecta a ese generador concreto, y cualquier entrada minecraft: que dejes ahí se volverá a expandir en la siguiente carga.
  2. Añadir soporte para un nuevo bioma personalizado para todo el mundo es un cambio en MagmaCore, no un cambio de configuración. Si un generador de mundos incluye un bioma que BetterStructures no reconoce, añadirlo al validBiomesV2 de un generador es una solución local para ese único generador. Conseguir que se mapee correctamente significa que se añada a la tabla de correspondencias de MagmaCore, lo cual es un cambio de código: abre una petición en lugar de intentar resolverlo en los archivos yml.

Aun así puedes nombrar directamente un bioma personalizado en validBiomesV2 (cualquier cosa que ya contenga un : se toma tal cual y no se expande más), que es lo correcto para un generador puntual que solo deba aparecer en un bioma personalizado concreto.

Los biomas que MagmaCore mapea a nothing se excluyen deliberadamente: son biomas personalizados considerados inadecuados para estructuras, y ningún bioma vanilla los incorporará.


treasureFilename

Establece el archivo de tesoro para el botín de cofres. Esto se aplica a todas las construcciones que usan este generador, a menos que se anule en la configuración del schematic.


generateLootInBarrels y barrelTreasureFilename

BetterStructures ahora trata los barriles como un segundo contenedor de botín junto a los cofres.

  • generateLootInBarrels (predeterminado true) alterna si los barriles dentro de las estructuras colocadas por este generador se llenan. Establécelo en false para dejar los barriles intactos.
  • barrelTreasureFilename (predeterminado treasure_barrel_food.yml) selecciona qué archivo de tesoro se sortea al llenar esos barriles. El predeterminado incluye una tabla de botín ligera centrada en comida, pero puedes apuntarlo a cualquier archivo de tesoro.

Ambas opciones pueden anularse por schematic con el campo barrelTreasureFilename correspondiente en la configuración del schematic.