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
| Clave | Predeterminado | Obligatorio | Descripción |
|---|---|---|---|
isEnabled | true | ❌ | Si 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 | -59 | ❌ | Nivel Y mínimo para la aparición |
highestYLevel | 320 | ❌ | Nivel Y máximo para la aparición |
validWorlds | Todos permitidos | ❌ | Lista de mundos donde las estructuras pueden aparecer |
validWorldEnvironments | Todos permitidos | ❌ | NORMAL, NETHER, THE_END, CUSTOM |
validBiomesV2 | Todos los biomas | ❌ | Lista de biomas válidos (formato namespace:key) |
treasureFilename | - | ❌ | Archivo de tesoro para el botín de cofres |
generateLootInBarrels | true | ❌ | Si los barriles encontrados en los schematics de este generador deben llenarse con botín |
barrelTreasureFilename | treasure_barrel_food.yml | ❌ | Archivo 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!
| Tipo | Overworld / Personalizado | Nether | End | Descripción |
|---|---|---|---|---|
SURFACE | Superficie | Puntos similares a superficie | Superficie | Aparece en la superficie del mundo |
SKY | De 80 a 120 bloques por encima del bloque más alto | Bolsa de aire encontrada entre la Y 45 y la Y 100 | De 80 a 120 bloques por encima del bloque más alto | Aparece en el cielo (configurable en config.yml) |
UNDERGROUND_SHALLOW | Y 0-50 | Y 60-120 | Y 0-80 | Estructuras subterráneas poco profundas |
UNDERGROUND_DEEP | Y -53 a 0 | Y 5-60 | Y 0-80 | Estructuras subterráneas profundas |
LIQUID_SURFACE | Agua (océanos) | Océano de lava en la Y 31 | No se aplica ninguna comprobación de líquido | Aparece en superficies líquidas |
DUNGEON | ✅ | ✅ | ✅ | Usado 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ón | Rango predeterminado | Configuraciones |
|---|---|---|
| Overworld/Personalizado | Y=-60 a Y=320 | lowestYNormalCustom / highestYNormalCustom |
| Nether | Y=4 a Y=120 | lowestYNether / highestYNether |
| End | Y=0 a Y=320 | lowestYEnd / highestYEnd |
| Cielo (Overworld/Personalizado) | De 80 a 120 bloques por encima del bloque más alto | normalCustomAirBuildingMinAltitude / normalCustomAirBuildingMaxAltitude |
| Cielo (End) | De 80 a 120 bloques por encima del bloque más alto | endAirBuildMinAltitude / 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:
- Las largas listas de biomas que ves en los archivos
generator_surface_*.ymldistribuidos son salida generada, no la fuente de verdad. Al cargar, BetterStructures leevalidBiomesV2, busca cada entradaminecraft: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 entradaminecraft:que dejes ahí se volverá a expandir en la siguiente carga. - 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
validBiomesV2de 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(predeterminadotrue) alterna si los barriles dentro de las estructuras colocadas por este generador se llenan. Establécelo enfalsepara dejar los barriles intactos.barrelTreasureFilename(predeterminadotreasure_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.