Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Referencia de datapacks

La definición del vehículo utiliza el sistema de datapacks de SBW. DedsafioStarships lee sus campos adicionales de vuelo desde el mismo objeto EngineInfo mediante el lector JSON de SBW. La apariencia de los planetas utiliza archivos separados dentro de starship_planets/.

Crear un pack

Minecraft 1.21.1 utiliza el formato de datapack 48. Un pack que sustituye la configuración de la nave y la apariencia orbital de la Tierra tiene esta estructura:

starship-settings/
  pack.mcmeta
  data/
    dedsafiostarships/
      sbw/
        vehicles/
          starship.json
      starship_planets/
        earth.json

Crea pack.mcmeta en la raíz del pack:

{
  "pack": {
    "pack_format": 48,
    "description": "Configuración de vuelo de Starship"
  }
}

Coloca la carpeta en el directorio datapacks/ del mundo. Ejecuta /reload y usa /datapack list para comprobar que el pack está activado. Inicia un vuelo nuevo después de cambiar los ajustes; evita recargar los datos de vuelo durante un viaje.

Sustituir la definición del vehículo

Copia la definición completa del vehículo incluida en el addon a esta ruta de tu pack:

data/dedsafiostarships/sbw/vehicles/starship.json

El original está incluido en esa misma ruta dentro del JAR del mod. En el proyecto se encuentra dentro de src/main/resources/.

Conserva el resto de la definición copiada, incluidos los asientos, las cajas de colisión y el tipo de motor. Edita los campos que necesites dentro de EngineInfo. Un fragmento de EngineInfo por sí solo no es una definición completa del vehículo.

Campos de vuelo

Los nombres de los campos JSON distinguen entre mayúsculas y minúsculas. Las duraciones se miden en ticks, con 20 ticks por segundo a la velocidad normal del servidor. Las velocidades se expresan en bloques por segundo y las alturas corresponden a coordenadas Y del mundo.

Campo de EngineInfoValor predeterminadoSignificado
TakeoffAltitude750Altura objetivo del ascenso. En vuelos planetarios se exige además un mínimo de 128 bloques sobre el límite de construcción del mundo.
TakeoffSpeed10Velocidad de ascenso vertical.
IgnitionTicks40Espera de encendido antes de ascender, incluida la vibración inicial de cámara.
OrbitRevealTicks100Duración de la transición hacia la orientación de viaje orbital.
JumpTicks240Duración mínima del salto. Puede prolongarse mientras se prepara el terreno del destino.
StabilizationTicks80Pausa en la vista orbital del destino después del salto.
ApproachTicks120Duración del giro hasta la orientación de aterrizaje.
LandingSpeed10Velocidad vertical máxima de descenso; la nave reduce la velocidad cerca del suelo.
LandingSearchRadius32Distancia de búsqueda alrededor del punto de llegada preferido. La búsqueda limita este valor a un rango de 8 a 64 bloques.
TerrainEntryAltitude591Altura del descenso en la que ocurre el cambio real al mundo de destino, con un mínimo de 128 bloques sobre la superficie de aterrizaje.
CloudStartAltitude300Referencia inferior de la capa de nubes durante el ascenso.
CloudFadeOutAltitude580Altura en la que comienza a abrirse la capa de nubes durante el ascenso.
CloudFadeOutEndAltitude620Referencia superior de la transición de nubes. La apertura durante la salida continúa por encima de ella.
PlanetTier4Nivel máximo de los planetas de Ad Astra que puede seleccionar la nave.
EngineStartSound"superbwarfare:a_10a_engine_start"Sonido que se reproduce al encender el motor.

Por ejemplo, estos valores dentro del objeto EngineInfo existente hacen que el encendido dure tres segundos y el salto dure al menos dieciséis segundos:

"IgnitionTicks": 60,
"JumpTicks": 320

Estas dos líneas son un ejemplo de edición, no un archivo JSON completo. Conserva el objeto que las contiene y el resto de la configuración del vehículo.

Usa valores numéricos finitos, velocidades y duraciones positivas, y alturas de nubes ordenadas de menor a mayor. Mantén el cambio de dimensión dentro de la capa de nubes del descenso si quieres ocultarlo. Cambiar únicamente la altura de transferencia puede dejar visible el cambio de mundo.

Otros ajustes del vehículo de SBW

Estos campos ya están presentes en la definición completa del vehículo:

CampoValor actualFunción
MaxHealth500Salud del vehículo.
MaxEnergy5000000Capacidad de energía.
EngineInfo.EnergyCostRate128Consumo de energía del motor por tick.
EngineSound"superbwarfare:a_10a_engine"Sonido del motor en marcha.
AllowFreeCamtrueHabilita el comportamiento de cámara libre de SBW.
DestroyInfo.ExplosionDamage800Daño de la explosión al destruirse.
DestroyInfo.ExplosionRadius16Radio de la explosión al destruirse.

El EngineType es AirShip. El addon implementa el vuelo automático sobre ese motor.

Apariencia de los planetas

Para cambiar la vista orbital de la Tierra, sustituye:

data/dedsafiostarships/starship_planets/earth.json

El archivo predeterminado es:

{
  "dimension": "minecraft:overworld",
  "land_color": "83934b",
  "water_color": "165384",
  "atmosphere_color": "4d9be0",
  "sea_level": 0.48,
  "clouds": 0.5
}
CampoFormatoFunción
dimensionIdentificador de dimensión con namespacePlaneta cuya apariencia orbital se quiere modificar.
land_colorCadena hexadecimal RGB de seis dígitos, sin #Color del terreno procedural.
water_colorCadena hexadecimal RGB de seis dígitos, sin #Color del agua procedural.
atmosphere_colorCadena hexadecimal RGB de seis dígitos, sin #Color de la atmósfera.
sea_levelNúmero entre 0 y 1Umbral del agua en la vista procedural del planeta. Si se omite, utiliza 0.
cloudsNúmero entre 0 y 1Cobertura de nubes en la vista orbital del planeta. Si se omite, utiliza 0.

clouds controla la apariencia del planeta desde órbita. Las nubes volumétricas alrededor de la nave utilizan los campos de altura de EngineInfo. Estos archivos no cambian el terreno, el clima ni los océanos reales del mundo.

El addon incluye earth.json, moon.json, mars.json, venus.json, mercury.json y glacio.json. Sustituye el archivo existente del planeta que quieras modificar. Añadir un archivo de apariencia no registra un destino nuevo en Ad Astra.