mirror of
https://github.com/Outer-Wilds-New-Horizons/new-horizons.git
synced 2025-12-11 20:15:44 +01:00
3865 lines
127 KiB
JSON
3865 lines
127 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-04/schema#",
|
|
"title": "Celestial Body Schema",
|
|
"type": "object",
|
|
"description": "Describes a celestial body to generate",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "Unique name of your planet",
|
|
"minLength": 1
|
|
},
|
|
"starSystem": {
|
|
"type": "string",
|
|
"description": "Unique star system containing your planet. If you set this to be a custom solar system remember to add a Spawn module to one of the bodies, or else you can't get to the system.",
|
|
"default": "SolarSystem"
|
|
},
|
|
"AsteroidBelt": {
|
|
"description": "Generate asteroids around this body",
|
|
"$ref": "#/definitions/AsteroidBeltModule"
|
|
},
|
|
"Atmosphere": {
|
|
"description": "Describes this Body's atmosphere",
|
|
"$ref": "#/definitions/AtmosphereModule"
|
|
},
|
|
"Base": {
|
|
"description": "Base Properties of this Body",
|
|
"$ref": "#/definitions/BaseModule"
|
|
},
|
|
"Bramble": {
|
|
"description": "Add bramble nodes to this planet and/or make this planet a bramble dimension",
|
|
"$ref": "#/definitions/BrambleModule"
|
|
},
|
|
"canShowOnTitle": {
|
|
"type": "boolean",
|
|
"description": "Should this planet ever be shown on the title screen?",
|
|
"default": true
|
|
},
|
|
"Cloak": {
|
|
"description": "Add a cloaking field to this planet",
|
|
"$ref": "#/definitions/CloakModule"
|
|
},
|
|
"destroy": {
|
|
"type": "boolean",
|
|
"description": "`true` if you want to delete this planet"
|
|
},
|
|
"FocalPoint": {
|
|
"description": "Make this body into a focal point (barycenter)",
|
|
"$ref": "#/definitions/FocalPointModule"
|
|
},
|
|
"Funnel": {
|
|
"description": "Add funnel from this planet to another",
|
|
"$ref": "#/definitions/FunnelModule"
|
|
},
|
|
"HeightMap": {
|
|
"description": "Generate the surface of this planet using a heightmap",
|
|
"$ref": "#/definitions/HeightMapModule"
|
|
},
|
|
"isQuantumState": {
|
|
"type": "boolean",
|
|
"description": "Does this config describe a quantum state of a custom planet defined in another file?"
|
|
},
|
|
"isStellarRemnant": {
|
|
"type": "boolean",
|
|
"description": "Does this config describe a stellar remnant of a custom star defined in another file?"
|
|
},
|
|
"Lava": {
|
|
"description": "Add lava to this planet",
|
|
"$ref": "#/definitions/LavaModule"
|
|
},
|
|
"Orbit": {
|
|
"description": "Describes this Body's orbit (or lack there of)",
|
|
"$ref": "#/definitions/OrbitModule"
|
|
},
|
|
"ProcGen": {
|
|
"description": "Procedural Generation",
|
|
"$ref": "#/definitions/ProcGenModule"
|
|
},
|
|
"Props": {
|
|
"description": "Spawn various objects on this body",
|
|
"$ref": "#/definitions/PropModule"
|
|
},
|
|
"ReferenceFrame": {
|
|
"description": "Reference frame properties of this body",
|
|
"$ref": "#/definitions/ReferenceFrameModule"
|
|
},
|
|
"removeChildren": {
|
|
"type": "array",
|
|
"description": "A list of paths to child GameObjects to destroy on this planet",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"Rings": {
|
|
"type": "array",
|
|
"description": "Create rings around the planet",
|
|
"items": {
|
|
"$ref": "#/definitions/RingModule"
|
|
}
|
|
},
|
|
"Sand": {
|
|
"description": "Add sand to this planet",
|
|
"$ref": "#/definitions/SandModule"
|
|
},
|
|
"ShipLog": {
|
|
"description": "Add ship log entries to this planet and describe how it looks in map mode",
|
|
"$ref": "#/definitions/ShipLogModule"
|
|
},
|
|
"ShockEffect": {
|
|
"description": "Settings for shock effect on planet when the nearest star goes supernova",
|
|
"$ref": "#/definitions/ShockEffectModule"
|
|
},
|
|
"Spawn": {
|
|
"description": "Spawn the player at this planet",
|
|
"$ref": "#/definitions/SpawnModule"
|
|
},
|
|
"Star": {
|
|
"description": "Make this body a star",
|
|
"$ref": "#/definitions/StarModule"
|
|
},
|
|
"Water": {
|
|
"description": "Add water to this planet",
|
|
"$ref": "#/definitions/WaterModule"
|
|
},
|
|
"Volumes": {
|
|
"description": "Add various volumes on this body",
|
|
"$ref": "#/definitions/VolumesModule"
|
|
},
|
|
"extras": {
|
|
"type": "object",
|
|
"description": "Extra data that may be used by extension mods",
|
|
"additionalProperties": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"$schema": {
|
|
"type": "string",
|
|
"description": "The schema to validate with"
|
|
}
|
|
},
|
|
"definitions": {
|
|
"AsteroidBeltModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"amount": {
|
|
"type": "integer",
|
|
"description": "Amount of asteroids to create.",
|
|
"format": "int32",
|
|
"default": -1,
|
|
"maximum": 200.0,
|
|
"minimum": -1.0
|
|
},
|
|
"inclination": {
|
|
"type": "number",
|
|
"description": "Angle between the rings and the equatorial plane of the planet.",
|
|
"format": "float"
|
|
},
|
|
"innerRadius": {
|
|
"type": "number",
|
|
"description": "Lowest distance from the planet asteroids can spawn",
|
|
"format": "float",
|
|
"minimum": 0.0
|
|
},
|
|
"longitudeOfAscendingNode": {
|
|
"type": "number",
|
|
"description": "Angle defining the point where the rings rise up from the planet's equatorial plane if inclination is nonzero.",
|
|
"format": "float"
|
|
},
|
|
"maxSize": {
|
|
"type": "number",
|
|
"description": "Maximum size of the asteroids.",
|
|
"format": "float",
|
|
"default": 50,
|
|
"minimum": 0.0
|
|
},
|
|
"minSize": {
|
|
"type": "number",
|
|
"description": "Minimum size of the asteroids.",
|
|
"format": "float",
|
|
"default": 20,
|
|
"minimum": 0.0
|
|
},
|
|
"outerRadius": {
|
|
"type": "number",
|
|
"description": "Greatest distance from the planet asteroids can spawn",
|
|
"format": "float",
|
|
"minimum": 0.0
|
|
},
|
|
"procGen": {
|
|
"description": "How the asteroids are generated",
|
|
"$ref": "#/definitions/ProcGenModule"
|
|
},
|
|
"randomSeed": {
|
|
"type": "integer",
|
|
"description": "Number used to randomize asteroid positions",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"ProcGenModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"color": {
|
|
"$ref": "#/definitions/MColor"
|
|
},
|
|
"scale": {
|
|
"type": "number",
|
|
"format": "float",
|
|
"minimum": 0.0
|
|
}
|
|
}
|
|
},
|
|
"MColor": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"r": {
|
|
"type": "integer",
|
|
"description": "The red component of this colour from 0-255, higher values will make the colour glow if applicable.",
|
|
"format": "int32",
|
|
"maximum": 2147483647.0,
|
|
"minimum": 0.0
|
|
},
|
|
"g": {
|
|
"type": "integer",
|
|
"description": "The green component of this colour from 0-255, higher values will make the colour glow if applicable.",
|
|
"format": "int32",
|
|
"maximum": 2147483647.0,
|
|
"minimum": 0.0
|
|
},
|
|
"b": {
|
|
"type": "integer",
|
|
"description": "The blue component of this colour from 0-255, higher values will make the colour glow if applicable.",
|
|
"format": "int32",
|
|
"maximum": 2147483647.0,
|
|
"minimum": 0.0
|
|
},
|
|
"a": {
|
|
"type": "integer",
|
|
"description": "The alpha (opacity) component of this colour",
|
|
"format": "int32",
|
|
"default": 255,
|
|
"maximum": 255.0,
|
|
"minimum": 0.0
|
|
}
|
|
}
|
|
},
|
|
"AtmosphereModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"atmosphereTint": {
|
|
"description": "Colour of atmospheric shader on the planet.",
|
|
"$ref": "#/definitions/MColor"
|
|
},
|
|
"atmosphereSunIntensity": {
|
|
"type": "number",
|
|
"description": "How intense should the sun appear in the sky.\nAlso affects general atmosphere brightness.\nDefault value of 1 matches Timber Hearth.\nIf not set, this will be determined based off the distance to the sun.",
|
|
"format": "float",
|
|
"minimum": 0.0
|
|
},
|
|
"clouds": {
|
|
"description": "Describes the clouds in the atmosphere",
|
|
"$ref": "#/definitions/CloudInfo"
|
|
},
|
|
"fogDensity": {
|
|
"type": "number",
|
|
"description": "How dense the fog is, if you put fog.",
|
|
"format": "float",
|
|
"maximum": 1.0,
|
|
"minimum": 0.0
|
|
},
|
|
"fogSize": {
|
|
"type": "number",
|
|
"description": "Radius of fog sphere, independent of the atmosphere. This has to be set for there to be fog.",
|
|
"format": "float",
|
|
"minimum": 0.0
|
|
},
|
|
"fogTint": {
|
|
"description": "Colour of fog on the planet, if you put fog.",
|
|
"$ref": "#/definitions/MColor"
|
|
},
|
|
"hasOxygen": {
|
|
"type": "boolean",
|
|
"description": "Lets you survive on the planet without a suit."
|
|
},
|
|
"hasTrees": {
|
|
"type": "boolean",
|
|
"description": "Does this planet have trees? This will change the notification from \"Oxygen tank refilled\" to \"Trees detected, oxygen tank refilled\"."
|
|
},
|
|
"hasRain": {
|
|
"type": "boolean",
|
|
"description": "Does this planet have rain?"
|
|
},
|
|
"hasSnow": {
|
|
"type": "boolean",
|
|
"description": "Does this planet have snow?"
|
|
},
|
|
"size": {
|
|
"type": "number",
|
|
"description": "Scale height of the atmosphere",
|
|
"format": "float"
|
|
},
|
|
"useAtmosphereShader": {
|
|
"type": "boolean",
|
|
"description": "Whether we use an atmospheric shader on the planet. Doesn't affect clouds, fog, rain, snow, oxygen, etc. Purely\nvisual."
|
|
},
|
|
"hasShockLayer": {
|
|
"type": "boolean",
|
|
"description": "Whether this atmosphere will have flames appear when your ship goes a certain speed.",
|
|
"default": true
|
|
},
|
|
"minShockSpeed": {
|
|
"type": "number",
|
|
"description": "Minimum speed that your ship can go in the atmosphere where flames will appear.",
|
|
"format": "float",
|
|
"default": 100.0
|
|
},
|
|
"maxShockSpeed": {
|
|
"type": "number",
|
|
"description": "Maximum speed that your ship can go in the atmosphere where flames will appear at their brightest.",
|
|
"format": "float",
|
|
"default": 300.0
|
|
}
|
|
}
|
|
},
|
|
"CloudInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"cloudsPrefab": {
|
|
"description": "Should these clouds be based on Giant's Deep's banded clouds, or the Quantum Moon's non-banded clouds?",
|
|
"$ref": "#/definitions/CloudPrefabType"
|
|
},
|
|
"capPath": {
|
|
"type": "string",
|
|
"description": "Relative filepath to the cloud cap texture, if the planet has clouds."
|
|
},
|
|
"fluidType": {
|
|
"description": "Fluid type for sounds/effects when colliding with this cloud.",
|
|
"default": "cloud",
|
|
"$ref": "#/definitions/FluidType"
|
|
},
|
|
"hasLightning": {
|
|
"type": "boolean",
|
|
"description": "Add lightning to this planet like on Giant's Deep."
|
|
},
|
|
"innerCloudRadius": {
|
|
"type": "number",
|
|
"description": "Radius from the center to the inner layer of the clouds.",
|
|
"format": "float"
|
|
},
|
|
"lightningGradient": {
|
|
"type": "array",
|
|
"description": "Colour gradient of the lightning, time is in seconds.",
|
|
"items": {
|
|
"$ref": "#/definitions/MGradient"
|
|
}
|
|
},
|
|
"outerCloudRadius": {
|
|
"type": "number",
|
|
"description": "Radius from the center to the outer layer of the clouds.",
|
|
"format": "float"
|
|
},
|
|
"rampPath": {
|
|
"type": "string",
|
|
"description": "Relative filepath to the cloud ramp texture, if the planet has clouds. If you don't put anything here it will be\nauto-generated."
|
|
},
|
|
"texturePath": {
|
|
"type": "string",
|
|
"description": "Relative filepath to the cloud texture, if the planet has clouds."
|
|
},
|
|
"tint": {
|
|
"description": "Colour of the inner cloud layer.",
|
|
"$ref": "#/definitions/MColor"
|
|
},
|
|
"unlit": {
|
|
"type": "boolean",
|
|
"description": "If the top layer shouldn't have shadows. Set to true if you're making a brown dwarf for example."
|
|
},
|
|
"rotationSpeed": {
|
|
"type": "number",
|
|
"description": "How fast the clouds will rotate relative to the planet in degrees per second.",
|
|
"format": "float",
|
|
"default": 0.0
|
|
}
|
|
}
|
|
},
|
|
"CloudPrefabType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"GiantsDeep",
|
|
"QuantumMoon",
|
|
"Basic",
|
|
"Transparent"
|
|
],
|
|
"enum": [
|
|
"giantsDeep",
|
|
"quantumMoon",
|
|
"basic",
|
|
"transparent"
|
|
]
|
|
},
|
|
"FluidType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"None",
|
|
"Water",
|
|
"Cloud",
|
|
"Sand",
|
|
"Plasma"
|
|
],
|
|
"enum": [
|
|
"none",
|
|
"water",
|
|
"cloud",
|
|
"sand",
|
|
"plasma"
|
|
]
|
|
},
|
|
"MGradient": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"time": {
|
|
"type": "number",
|
|
"format": "float"
|
|
},
|
|
"tint": {
|
|
"$ref": "#/definitions/MColor"
|
|
}
|
|
}
|
|
},
|
|
"BaseModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"ambientLight": {
|
|
"type": "number",
|
|
"description": "The intensity of light the dark side of the body should have. Timber Hearth has `1.4` for reference",
|
|
"format": "float"
|
|
},
|
|
"centerOfSolarSystem": {
|
|
"type": "boolean",
|
|
"description": "Set this to true if you are replacing the sun with a different body. Only one object in a star system should ever\nhave this set to true."
|
|
},
|
|
"cometTailRotation": {
|
|
"description": "If it has a comet tail, it'll be oriented according to these Euler angles.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"gravityFallOff": {
|
|
"description": "How gravity falls off with distance. Most planets use linear but the sun and some moons use inverseSquared.",
|
|
"default": "linear",
|
|
"$ref": "#/definitions/GravityFallOff"
|
|
},
|
|
"groundSize": {
|
|
"type": "number",
|
|
"description": "Radius of a simple sphere used as the ground for the planet. If you want to use more complex terrain, leave this as\n0.",
|
|
"format": "float"
|
|
},
|
|
"hasCometTail": {
|
|
"type": "boolean",
|
|
"description": "If you want the body to have a tail like the Interloper."
|
|
},
|
|
"hasMapMarker": {
|
|
"type": "boolean",
|
|
"description": "If the body should have a marker on the map screen."
|
|
},
|
|
"invulnerableToSun": {
|
|
"type": "boolean",
|
|
"description": "Can this planet survive entering a star?"
|
|
},
|
|
"showMinimap": {
|
|
"type": "boolean",
|
|
"description": "Do we show the minimap when walking around this planet?",
|
|
"default": true
|
|
},
|
|
"soiOverride": {
|
|
"type": "number",
|
|
"description": "An override for the radius of the planet's gravitational sphere of influence. Optional",
|
|
"format": "float"
|
|
},
|
|
"surfaceGravity": {
|
|
"type": "number",
|
|
"description": "The acceleration due to gravity felt as the surfaceSize. Timber Hearth has 12 for reference",
|
|
"format": "float"
|
|
},
|
|
"surfaceSize": {
|
|
"type": "number",
|
|
"description": "A scale height used for a number of things. Should be the approximate radius of the body.",
|
|
"format": "float"
|
|
},
|
|
"gravityVolumePriority": {
|
|
"type": "integer",
|
|
"description": "Optional. You can force this planet's gravity to be felt over other gravity/zero-gravity sources by increasing this number.",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"MVector3": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"x": {
|
|
"type": "number",
|
|
"format": "float"
|
|
},
|
|
"y": {
|
|
"type": "number",
|
|
"format": "float"
|
|
},
|
|
"z": {
|
|
"type": "number",
|
|
"format": "float"
|
|
}
|
|
}
|
|
},
|
|
"GravityFallOff": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Linear",
|
|
"InverseSquared"
|
|
],
|
|
"enum": [
|
|
"linear",
|
|
"inverseSquared"
|
|
]
|
|
},
|
|
"BrambleModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"dimension": {
|
|
"description": "Defining this value will make this body a bramble dimension. Leave it null to not do that.",
|
|
"$ref": "#/definitions/BrambleDimensionInfo"
|
|
},
|
|
"nodes": {
|
|
"type": "array",
|
|
"description": "Place nodes/seeds that take you to other bramble dimensions",
|
|
"items": {
|
|
"$ref": "#/definitions/BrambleNodeInfo"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"BrambleDimensionInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"fogTint": {
|
|
"description": "The color of the fog inside this dimension. \nLeave blank for the default grayish color: (84, 83, 73)",
|
|
"$ref": "#/definitions/MColor"
|
|
},
|
|
"fogDensity": {
|
|
"type": "number",
|
|
"description": "The density of the fog inside this dimension. The default is 6.",
|
|
"format": "float",
|
|
"default": 6.0
|
|
},
|
|
"linksTo": {
|
|
"type": "string",
|
|
"description": "The name of the *node* that the player is taken to when exiting this dimension."
|
|
},
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "The internal radius (in meters) of the dimension. \nThe default is 750 for the Hub, Escape Pod, and Angler Nest dimensions, and 500 for the others.",
|
|
"format": "float",
|
|
"default": 750.0
|
|
},
|
|
"vinePrefab": {
|
|
"description": "The dimension the vines will be copied from.\nOnly a handful are available due to batched colliders.",
|
|
"default": "hub",
|
|
"$ref": "#/definitions/VinePrefabType"
|
|
},
|
|
"allowedEntrances": {
|
|
"type": "array",
|
|
"description": "An array of integers from 0-5. By default, all entrances are allowed. To force this dimension to warp players in from only one point (like the anglerfish nest dimension in the base game) set this value to [3], [5], or similar. Values of 0-5 only.",
|
|
"items": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"VinePrefabType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"None",
|
|
"Hub",
|
|
"Cluster",
|
|
"SmallNest",
|
|
"ExitOnly"
|
|
],
|
|
"enum": [
|
|
"none",
|
|
"hub",
|
|
"cluster",
|
|
"smallNest",
|
|
"exitOnly"
|
|
]
|
|
},
|
|
"BrambleNodeInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"position": {
|
|
"description": "The physical position of the node",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"rotation": {
|
|
"description": "The physical rotation of the node",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"scale": {
|
|
"type": "number",
|
|
"description": "The physical scale of the node, as a multiplier of the original size. \nNodes are 150m across, seeds are 10m across.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"linksTo": {
|
|
"type": "string",
|
|
"description": "The name of the planet that hosts the dimension this node links to"
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of this node. Only required if this node should serve as an exit."
|
|
},
|
|
"isSeed": {
|
|
"type": "boolean",
|
|
"description": "Set this to true to make this node a seed instead of a node the player can enter",
|
|
"default": false
|
|
},
|
|
"fogTint": {
|
|
"description": "The color of the fog inside the node. \nLeave blank for the default yellowish white color: (255, 245, 217, 255)",
|
|
"$ref": "#/definitions/MColor"
|
|
},
|
|
"lightTint": {
|
|
"description": "The color of the light from the node. Alpha controls brightness.\nLeave blank for the default white color.",
|
|
"$ref": "#/definitions/MColor"
|
|
},
|
|
"hasFogLight": {
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
],
|
|
"description": "Should this node have a point of light from afar? \nBy default, nodes will have a foglight, while seeds won't, and neither will if not in a dimension."
|
|
},
|
|
"possibleExits": {
|
|
"type": "array",
|
|
"description": "An array of integers from 0-5. By default, all exits are allowed. To force this node to warp players out from only one hole set this value to [3], [5], or similar. Values of 0-5 only.",
|
|
"items": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
},
|
|
"preventRecursionCrash": {
|
|
"type": "boolean",
|
|
"description": "If your game hard crashes upon entering bramble, it's most likely because you have indirectly recursive dimensions, i.e. one leads to another that leads back to the first one.\nSet this to true for one of the nodes in the recursion to fix this, at the cost of it no longer showing markers for the scout, ship, etc.",
|
|
"default": false
|
|
}
|
|
}
|
|
},
|
|
"CloakModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "Radius of the cloaking field around the planet. It's a bit finicky so experiment with different values. If you\ndon't want a cloak, leave this as 0.",
|
|
"format": "float"
|
|
},
|
|
"audio": {
|
|
"type": "string",
|
|
"description": "The audio that will play when entering the cloaking field. Can be a path to a .wav/.ogg/.mp3 file, or taken from the AudioClip list."
|
|
}
|
|
}
|
|
},
|
|
"FocalPointModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"primary": {
|
|
"type": "string",
|
|
"description": "Name of the primary planet in this binary system"
|
|
},
|
|
"secondary": {
|
|
"type": "string",
|
|
"description": "Name of the secondary planet in this binary system"
|
|
}
|
|
}
|
|
},
|
|
"FunnelModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"curve": {
|
|
"type": "array",
|
|
"description": "Scale this object over time",
|
|
"items": {
|
|
"$ref": "#/definitions/TimeValuePair"
|
|
}
|
|
},
|
|
"target": {
|
|
"type": "string",
|
|
"description": "The planet the funnel will flow to"
|
|
},
|
|
"tint": {
|
|
"description": "Tint of the funnel",
|
|
"$ref": "#/definitions/MColor"
|
|
},
|
|
"type": {
|
|
"description": "Type of fluid the funnel transfers",
|
|
"default": "sand",
|
|
"$ref": "#/definitions/FunnelType"
|
|
}
|
|
}
|
|
},
|
|
"TimeValuePair": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"time": {
|
|
"type": "number",
|
|
"description": "A specific point in time",
|
|
"format": "float"
|
|
},
|
|
"value": {
|
|
"type": "number",
|
|
"description": "The value for this point in time",
|
|
"format": "float"
|
|
}
|
|
}
|
|
},
|
|
"FunnelType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Sand",
|
|
"Water",
|
|
"Lava",
|
|
"Star"
|
|
],
|
|
"enum": [
|
|
"sand",
|
|
"water",
|
|
"lava",
|
|
"star"
|
|
]
|
|
},
|
|
"HeightMapModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"heightMap": {
|
|
"type": "string",
|
|
"description": "Relative filepath to the texture used for the terrain height."
|
|
},
|
|
"maxHeight": {
|
|
"type": "number",
|
|
"description": "The highest points on your planet will be at this height.",
|
|
"format": "float",
|
|
"minimum": 0.0
|
|
},
|
|
"minHeight": {
|
|
"type": "number",
|
|
"description": "The lowest points on your planet will be at this height.",
|
|
"format": "float",
|
|
"minimum": 0.0
|
|
},
|
|
"stretch": {
|
|
"description": "The scale of the terrain.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"textureMap": {
|
|
"type": "string",
|
|
"description": "Relative filepath to the texture used for the terrain."
|
|
},
|
|
"resolution": {
|
|
"type": "integer",
|
|
"description": "Resolution of the heightmap.\nHigher values means more detail but also more memory/cpu/gpu usage.\nThis value will be 1:1 with the heightmap texture width, but only at the equator.",
|
|
"format": "int32",
|
|
"default": 204,
|
|
"maximum": 2000.0,
|
|
"minimum": 4.0
|
|
},
|
|
"emissionMap": {
|
|
"type": "string",
|
|
"description": "Relative filepath to the texture used for emission. Optional."
|
|
},
|
|
"emissionColor": {
|
|
"description": "Color multiplier of the emission texture. Defaults to white.",
|
|
"$ref": "#/definitions/MColor"
|
|
}
|
|
}
|
|
},
|
|
"LavaModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"curve": {
|
|
"type": "array",
|
|
"description": "Scale this object over time",
|
|
"items": {
|
|
"$ref": "#/definitions/TimeValuePair"
|
|
}
|
|
},
|
|
"size": {
|
|
"type": "number",
|
|
"description": "Size of the lava sphere",
|
|
"format": "float"
|
|
},
|
|
"tint": {
|
|
"description": "Tint of the lava",
|
|
"$ref": "#/definitions/MColor"
|
|
}
|
|
}
|
|
},
|
|
"OrbitModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"staticPosition": {
|
|
"description": "Specify this if you want the body to remain stationary at a given location (ie not orbit its parent). Required for Bramble dimensions",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"primaryBody": {
|
|
"type": "string",
|
|
"description": "The name of the body this one will orbit around"
|
|
},
|
|
"isMoon": {
|
|
"type": "boolean",
|
|
"description": "Is this the moon of a planet? Used for determining when its name is shown on the map."
|
|
},
|
|
"axialTilt": {
|
|
"type": "number",
|
|
"description": "The angle between the normal to the orbital plane and its axis of rotation.",
|
|
"format": "float"
|
|
},
|
|
"siderealPeriod": {
|
|
"type": "number",
|
|
"description": "Rotation period in minutes.",
|
|
"format": "float"
|
|
},
|
|
"isTidallyLocked": {
|
|
"type": "boolean",
|
|
"description": "Should the body always have one side facing its primary?"
|
|
},
|
|
"alignmentAxis": {
|
|
"description": "If it is tidally locked, this direction will face towards the primary. Ex: Interloper uses `0, -1, 0`. Most planets\nwill want something like `-1, 0, 0`.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"showOrbitLine": {
|
|
"type": "boolean",
|
|
"description": "Referring to the orbit line in the map screen.",
|
|
"default": true
|
|
},
|
|
"dottedOrbitLine": {
|
|
"type": "boolean",
|
|
"description": "Should the orbit line be dotted?"
|
|
},
|
|
"isStatic": {
|
|
"type": "boolean",
|
|
"description": "Is the body meant to stay in one place without moving? If staticPosition is not set, the initial position\nwill be determined using its orbital parameters."
|
|
},
|
|
"tint": {
|
|
"description": "Colour of the orbit-line in the map view.",
|
|
"$ref": "#/definitions/MColor"
|
|
},
|
|
"trackingOrbitLine": {
|
|
"type": "boolean",
|
|
"description": "Should we just draw a line behind its orbit instead of the entire circle/ellipse?"
|
|
},
|
|
"semiMajorAxis": {
|
|
"type": "number",
|
|
"description": "The semi-major axis of the ellipse that is the body's orbit. For a circular orbit this is the radius.",
|
|
"format": "float",
|
|
"default": 5000.0,
|
|
"minimum": 0.0
|
|
},
|
|
"inclination": {
|
|
"type": "number",
|
|
"description": "The angle (in degrees) between the body's orbit and the plane of the star system",
|
|
"format": "float"
|
|
},
|
|
"longitudeOfAscendingNode": {
|
|
"type": "number",
|
|
"description": "An angle (in degrees) defining the point where the orbit of the body rises above the orbital plane if it has\nnonzero inclination.",
|
|
"format": "float"
|
|
},
|
|
"eccentricity": {
|
|
"type": "number",
|
|
"description": "At 0 the orbit is a circle. The closer to 1 it is, the more oval-shaped the orbit is.",
|
|
"format": "float",
|
|
"maximum": 1.0,
|
|
"minimum": 0.0
|
|
},
|
|
"argumentOfPeriapsis": {
|
|
"type": "number",
|
|
"description": "An angle (in degrees) defining the location of the periapsis (the closest distance to it's primary body) if it has\nnonzero eccentricity.",
|
|
"format": "float"
|
|
},
|
|
"trueAnomaly": {
|
|
"type": "number",
|
|
"description": "Where the planet should start off in its orbit in terms of the central angle.",
|
|
"format": "float"
|
|
}
|
|
}
|
|
},
|
|
"PropModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"details": {
|
|
"type": "array",
|
|
"description": "Place props in predefined positions on the planet",
|
|
"items": {
|
|
"$ref": "#/definitions/DetailInfo"
|
|
}
|
|
},
|
|
"dialogue": {
|
|
"type": "array",
|
|
"description": "Add dialogue triggers to this planet",
|
|
"items": {
|
|
"$ref": "#/definitions/DialogueInfo"
|
|
}
|
|
},
|
|
"entryLocation": {
|
|
"type": "array",
|
|
"description": "Add ship log entry locations on this planet",
|
|
"items": {
|
|
"$ref": "#/definitions/EntryLocationInfo"
|
|
}
|
|
},
|
|
"geysers": {
|
|
"type": "array",
|
|
"description": "Add Geysers to this planet",
|
|
"items": {
|
|
"$ref": "#/definitions/GeyserInfo"
|
|
}
|
|
},
|
|
"nomaiText": {
|
|
"type": "array",
|
|
"description": "Add translatable text to this planet",
|
|
"items": {
|
|
"$ref": "#/definitions/NomaiTextInfo"
|
|
}
|
|
},
|
|
"proxyDetails": {
|
|
"type": "array",
|
|
"description": "Details which will be shown from 50km away. Meant to be lower resolution.",
|
|
"items": {
|
|
"$ref": "#/definitions/DetailInfo"
|
|
}
|
|
},
|
|
"rafts": {
|
|
"type": "array",
|
|
"description": "Add rafts to this planet",
|
|
"items": {
|
|
"$ref": "#/definitions/RaftInfo"
|
|
}
|
|
},
|
|
"scatter": {
|
|
"type": "array",
|
|
"description": "Scatter props around this planet's surface",
|
|
"items": {
|
|
"$ref": "#/definitions/ScatterInfo"
|
|
}
|
|
},
|
|
"slideShows": {
|
|
"type": "array",
|
|
"description": "Add slideshows (from the DLC) to the planet",
|
|
"items": {
|
|
"$ref": "#/definitions/ProjectionInfo"
|
|
}
|
|
},
|
|
"quantumGroups": {
|
|
"type": "array",
|
|
"description": "A list of quantum groups that props can be added to. An example of a group would be a list of possible locations for a QuantumSocketedObject.",
|
|
"items": {
|
|
"$ref": "#/definitions/QuantumGroupInfo"
|
|
}
|
|
},
|
|
"tornados": {
|
|
"type": "array",
|
|
"description": "Add tornadoes to this planet",
|
|
"items": {
|
|
"$ref": "#/definitions/TornadoInfo"
|
|
}
|
|
},
|
|
"volcanoes": {
|
|
"type": "array",
|
|
"description": "Add volcanoes to this planet",
|
|
"items": {
|
|
"$ref": "#/definitions/VolcanoInfo"
|
|
}
|
|
},
|
|
"singularities": {
|
|
"type": "array",
|
|
"description": "Add black/white-holes to this planet",
|
|
"items": {
|
|
"$ref": "#/definitions/SingularityModule"
|
|
}
|
|
},
|
|
"signals": {
|
|
"type": "array",
|
|
"description": "Add signalscope signals to this planet",
|
|
"items": {
|
|
"$ref": "#/definitions/SignalInfo"
|
|
}
|
|
},
|
|
"remotes": {
|
|
"type": "array",
|
|
"description": "Add projection pools/platforms, whiteboards, and stones to this planet",
|
|
"items": {
|
|
"$ref": "#/definitions/RemoteInfo"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"DetailInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of the detail"
|
|
},
|
|
"alignToNormal": {
|
|
"type": "boolean",
|
|
"description": "Do we override rotation and try to automatically align this object to stand upright on the body's surface?"
|
|
},
|
|
"assetBundle": {
|
|
"type": "string",
|
|
"description": "Relative filepath to an asset-bundle to load the prefab defined in `path` from"
|
|
},
|
|
"path": {
|
|
"type": "string",
|
|
"description": "Either the path in the scene hierarchy of the item to copy or the path to the object in the supplied asset bundle"
|
|
},
|
|
"position": {
|
|
"description": "Position of this prop relative to the body's center",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"removeChildren": {
|
|
"type": "array",
|
|
"description": "A list of children to remove from this detail",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"removeComponents": {
|
|
"type": "boolean",
|
|
"description": "Do we reset all the components on this object? Useful for certain props that have dialogue components attached to\nthem."
|
|
},
|
|
"rotation": {
|
|
"description": "Rotate this prop",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"scale": {
|
|
"type": "number",
|
|
"description": "Scale the prop",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"stretch": {
|
|
"description": "Scale each axis of the prop. Overrides `scale`.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"quantumGroupID": {
|
|
"type": "string",
|
|
"description": "If this value is not null, this prop will be quantum. Assign this field to the id of the quantum group it should be a part of. The group it is assigned to determines what kind of quantum object it is"
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The path (not including the root planet object) of the parent of this game object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional and rotational coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"keepLoaded": {
|
|
"type": "boolean",
|
|
"description": "Should this detail stay loaded even if you're outside the sector (good for very large props)"
|
|
},
|
|
"hasPhysics": {
|
|
"type": "boolean",
|
|
"description": "Should this object dynamically move around?"
|
|
},
|
|
"physicsMass": {
|
|
"type": "number",
|
|
"description": "The mass of the physics object.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"physicsRadius": {
|
|
"type": "number",
|
|
"description": "The radius that the added sphere collider will use for physics collision.",
|
|
"format": "float",
|
|
"default": 0.5
|
|
}
|
|
}
|
|
},
|
|
"DialogueInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"blockAfterPersistentCondition": {
|
|
"type": "string",
|
|
"description": "Prevents the dialogue from being created after a specific persistent condition is set. Useful for remote dialogue\ntriggers that you want to have happen only once."
|
|
},
|
|
"lookAtRadius": {
|
|
"type": "number",
|
|
"description": "If a pathToAnimController is supplied, if you are within this distance the character will look at you. If it is set\nto 0, they will only look at you when spoken to.",
|
|
"format": "float"
|
|
},
|
|
"pathToAnimController": {
|
|
"type": "string",
|
|
"description": "If this dialogue is meant for a character, this is the relative path from the planet to that character's\nCharacterAnimController, TravelerController, TravelerEyeController (eye of the universe), FacePlayerWhenTalking, or SolanumAnimController.\n\nIf none of those components are present it will add a FacePlayerWhenTalking component."
|
|
},
|
|
"position": {
|
|
"description": "When you enter into dialogue, you will look here.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "Radius of the spherical collision volume where you get the \"talk to\" prompt when looking at. If you use a\nremoteTriggerPosition, you can set this to 0 to make the dialogue only trigger remotely.",
|
|
"format": "float"
|
|
},
|
|
"remoteTriggerPosition": {
|
|
"description": "Allows you to trigger dialogue from a distance when you walk into an area.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"range": {
|
|
"type": "number",
|
|
"description": "Distance from radius the prompt appears",
|
|
"format": "float",
|
|
"default": 2.0
|
|
},
|
|
"remoteTriggerRadius": {
|
|
"type": "number",
|
|
"description": "The radius of the remote trigger volume.",
|
|
"format": "float"
|
|
},
|
|
"remoteTriggerPrereqCondition": {
|
|
"type": "string",
|
|
"description": "If setting up a remote trigger volume, this conditions must be met for it to trigger. Note: This is a dialogue condition, not a persistent condition."
|
|
},
|
|
"xmlFile": {
|
|
"type": "string",
|
|
"description": "Relative path to the xml file defining the dialogue."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional and rotational coordinates are relative to the animation controller instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "Optionally rename the dialogue object. The remote trigger volume will be renamed to have this as a prefix."
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "Optionally set the parent object that the dialogue and remote trigger will be attached to"
|
|
},
|
|
"flashlightToggle": {
|
|
"description": "What type of flashlight toggle to do when dialogue is interacted with",
|
|
"default": "none",
|
|
"$ref": "#/definitions/FlashlightToggle"
|
|
}
|
|
}
|
|
},
|
|
"FlashlightToggle": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"TurnOff",
|
|
"TurnOffThenOn",
|
|
"None"
|
|
],
|
|
"enum": [
|
|
"turnOff",
|
|
"turnOffThenOn",
|
|
"none"
|
|
]
|
|
},
|
|
"EntryLocationInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"cloaked": {
|
|
"type": "boolean",
|
|
"description": "Whether this location is cloaked"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"description": "ID of the entry this location relates to"
|
|
},
|
|
"position": {
|
|
"description": "The position of this entry location",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional and rotational coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this object"
|
|
}
|
|
}
|
|
},
|
|
"GeyserInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"position": {
|
|
"description": "Position of the geyser",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"offset": {
|
|
"type": "number",
|
|
"description": "Vertical offset of the geyser. From 0, the bubbles start at a height of 10, the shaft at 67, and the spout at 97.5.",
|
|
"format": "float",
|
|
"default": -97.5
|
|
},
|
|
"force": {
|
|
"type": "number",
|
|
"description": "Force of the geyser on objects",
|
|
"format": "float",
|
|
"default": 55.0
|
|
},
|
|
"activeDuration": {
|
|
"type": "number",
|
|
"description": "Time in seconds eruptions last for",
|
|
"format": "float",
|
|
"default": 10.0
|
|
},
|
|
"inactiveDuration": {
|
|
"type": "number",
|
|
"description": "Time in seconds between eruptions",
|
|
"format": "float",
|
|
"default": 19.0
|
|
},
|
|
"tint": {
|
|
"description": "Color of the geyser. Alpha sets the particle density.",
|
|
"$ref": "#/definitions/MColor"
|
|
},
|
|
"disableBubbles": {
|
|
"type": "boolean",
|
|
"description": "Disable the individual particle systems of the geyser"
|
|
},
|
|
"disableShaft": {
|
|
"type": "boolean",
|
|
"description": "Disable the individual particle systems of the geyser"
|
|
},
|
|
"disableSpout": {
|
|
"type": "boolean",
|
|
"description": "Disable the individual particle systems of the geyser"
|
|
},
|
|
"volume": {
|
|
"type": "number",
|
|
"description": "Loudness of the geyser",
|
|
"format": "float",
|
|
"default": 0.7
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this object"
|
|
}
|
|
}
|
|
},
|
|
"NomaiTextInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"arcInfo": {
|
|
"type": "array",
|
|
"description": "Additional information about each arc in the text",
|
|
"items": {
|
|
"$ref": "#/definitions/NomaiTextArcInfo"
|
|
}
|
|
},
|
|
"normal": {
|
|
"description": "The normal vector for this object. Used for writing on walls and positioning computers.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"position": {
|
|
"description": "Position of the root of this text",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"rotation": {
|
|
"description": "The euler angle rotation of this object. Not required if setting the normal. Computers and cairns will orient\nthemselves to the surface of the planet automatically.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"seed": {
|
|
"type": "integer",
|
|
"description": "The random seed used to pick what the text arcs will look like.",
|
|
"format": "int32"
|
|
},
|
|
"type": {
|
|
"description": "The type of object this is.",
|
|
"default": "wall",
|
|
"$ref": "#/definitions/NomaiTextType"
|
|
},
|
|
"location": {
|
|
"description": "The location of this object. ",
|
|
"default": "unspecified",
|
|
"$ref": "#/definitions/NomaiTextLocation"
|
|
},
|
|
"xmlFile": {
|
|
"type": "string",
|
|
"description": "The relative path to the xml file for this object."
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional and rotational coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this object"
|
|
}
|
|
}
|
|
},
|
|
"NomaiTextArcInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"mirror": {
|
|
"type": "boolean",
|
|
"description": "Whether to flip the spiral from left-curling to right-curling or vice versa."
|
|
},
|
|
"position": {
|
|
"description": "The local position of this object on the wall.",
|
|
"$ref": "#/definitions/MVector2"
|
|
},
|
|
"type": {
|
|
"description": "The type of text to display.",
|
|
"default": "adult",
|
|
"$ref": "#/definitions/NomaiTextArcType"
|
|
},
|
|
"variation": {
|
|
"type": "integer",
|
|
"description": "Which variation of the chosen type to place. If not specified, a random variation will be selected based on the seed provided in the parent module.",
|
|
"format": "int32",
|
|
"default": -1
|
|
},
|
|
"zRotation": {
|
|
"type": "number",
|
|
"description": "The z euler angle for this arc.",
|
|
"format": "float",
|
|
"maximum": 360.0,
|
|
"minimum": 0.0
|
|
}
|
|
}
|
|
},
|
|
"MVector2": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"x": {
|
|
"type": "number",
|
|
"format": "float"
|
|
},
|
|
"y": {
|
|
"type": "number",
|
|
"format": "float"
|
|
}
|
|
}
|
|
},
|
|
"NomaiTextArcType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Adult",
|
|
"Child",
|
|
"Stranger"
|
|
],
|
|
"enum": [
|
|
"adult",
|
|
"child",
|
|
"stranger"
|
|
]
|
|
},
|
|
"NomaiTextType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Wall",
|
|
"Scroll",
|
|
"Computer",
|
|
"Cairn",
|
|
"Recorder",
|
|
"PreCrashRecorder",
|
|
"PreCrashComputer",
|
|
"Trailmarker",
|
|
"CairnVariant"
|
|
],
|
|
"enum": [
|
|
"wall",
|
|
"scroll",
|
|
"computer",
|
|
"cairn",
|
|
"recorder",
|
|
"preCrashRecorder",
|
|
"preCrashComputer",
|
|
"trailmarker",
|
|
"cairnVariant"
|
|
]
|
|
},
|
|
"NomaiTextLocation": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"UNSPECIFIED",
|
|
"A",
|
|
"B"
|
|
],
|
|
"enum": [
|
|
"unspecified",
|
|
"a",
|
|
"b"
|
|
]
|
|
},
|
|
"RaftInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"position": {
|
|
"description": "Position of the raft",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"acceleration": {
|
|
"type": "number",
|
|
"description": "Acceleration of the raft. Default acceleration is 5.",
|
|
"format": "float",
|
|
"default": 5.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional and rotational coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this object"
|
|
}
|
|
}
|
|
},
|
|
"ScatterInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"assetBundle": {
|
|
"type": "string",
|
|
"description": "Relative filepath to an asset-bundle"
|
|
},
|
|
"count": {
|
|
"type": "integer",
|
|
"description": "Number of props to scatter",
|
|
"format": "int32"
|
|
},
|
|
"offset": {
|
|
"description": "Offset this prop once it is placed",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"path": {
|
|
"type": "string",
|
|
"description": "Either the path in the scene hierarchy of the item to copy or the path to the object in the supplied asset bundle"
|
|
},
|
|
"rotation": {
|
|
"description": "Rotate this prop once it is placed",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"scale": {
|
|
"type": "number",
|
|
"description": "Scale this prop once it is placed",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"stretch": {
|
|
"description": "Scale each axis of the prop. Overrides `scale`.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"seed": {
|
|
"type": "integer",
|
|
"description": "The number used as entropy for scattering the props",
|
|
"format": "int32"
|
|
},
|
|
"minHeight": {
|
|
"type": [
|
|
"null",
|
|
"number"
|
|
],
|
|
"description": "The lowest height that these object will be placed at (only relevant if there's a heightmap)",
|
|
"format": "float"
|
|
},
|
|
"maxHeight": {
|
|
"type": [
|
|
"null",
|
|
"number"
|
|
],
|
|
"description": "The highest height that these objects will be placed at (only relevant if there's a heightmap)",
|
|
"format": "float"
|
|
},
|
|
"preventOverlap": {
|
|
"type": "boolean",
|
|
"description": "Should we try to prevent overlap between the scattered details? True by default. If it's affecting load times turn it off.",
|
|
"default": true
|
|
},
|
|
"keepLoaded": {
|
|
"type": "boolean",
|
|
"description": "Should this detail stay loaded even if you're outside the sector (good for very large props)"
|
|
}
|
|
}
|
|
},
|
|
"ProjectionInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"position": {
|
|
"description": "The position of this slideshow.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"reveals": {
|
|
"type": "array",
|
|
"description": "The ship log facts revealed after finishing this slide reel.",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"playWithShipLogFacts": {
|
|
"type": "array",
|
|
"description": "The ship log facts that make the reel play when they are displayed in the computer (by selecting entries or arrows).\nYou should probably include facts from `reveals` here.\nIf you only specify a rumor fact, then it would only play in its ship log entry if this has revealed only\nrumor facts because an entry with revealed explore facts doesn't display rumor facts.",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"rotation": {
|
|
"description": "The rotation of this slideshow.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"slides": {
|
|
"type": "array",
|
|
"description": "The list of slides for this object.",
|
|
"items": {
|
|
"$ref": "#/definitions/SlideInfo"
|
|
}
|
|
},
|
|
"type": {
|
|
"description": "The type of object this is.",
|
|
"default": "slideReel",
|
|
"$ref": "#/definitions/SlideShowType"
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this slideshow. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional and rotational coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this object"
|
|
}
|
|
}
|
|
},
|
|
"SlideInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"ambientLightColor": {
|
|
"description": "Ambient light colour when viewing this slide.",
|
|
"$ref": "#/definitions/MColor"
|
|
},
|
|
"ambientLightIntensity": {
|
|
"type": "number",
|
|
"description": "Ambient light intensity when viewing this slide.",
|
|
"format": "float"
|
|
},
|
|
"ambientLightRange": {
|
|
"type": "number",
|
|
"description": "Ambient light range when viewing this slide.",
|
|
"format": "float"
|
|
},
|
|
"backdropAudio": {
|
|
"type": "string",
|
|
"description": "The name of the AudioClip that will continuously play while watching these slides"
|
|
},
|
|
"backdropFadeTime": {
|
|
"type": "number",
|
|
"description": "The time to fade into the backdrop audio",
|
|
"format": "float"
|
|
},
|
|
"beatAudio": {
|
|
"type": "string",
|
|
"description": "The name of the AudioClip for a one-shot sound when opening the slide."
|
|
},
|
|
"beatDelay": {
|
|
"type": "number",
|
|
"description": "The time delay until the one-shot audio",
|
|
"format": "float"
|
|
},
|
|
"blackFrameDuration": {
|
|
"type": "number",
|
|
"description": "Before viewing this slide, there will be a black frame for this many seconds.",
|
|
"format": "float"
|
|
},
|
|
"imagePath": {
|
|
"type": "string",
|
|
"description": "The path to the image file for this slide."
|
|
},
|
|
"playTimeDuration": {
|
|
"type": "number",
|
|
"description": "Play-time duration for auto-projector slides.",
|
|
"format": "float"
|
|
},
|
|
"reveal": {
|
|
"type": "string",
|
|
"description": "Ship log fact revealed when viewing this slide"
|
|
},
|
|
"spotIntensityMod": {
|
|
"type": "number",
|
|
"description": "Spotlight intensity modifier when viewing this slide.",
|
|
"format": "float"
|
|
}
|
|
}
|
|
},
|
|
"SlideShowType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"SlideReel",
|
|
"AutoProjector",
|
|
"VisionTorchTarget",
|
|
"StandingVisionTorch"
|
|
],
|
|
"enum": [
|
|
"slideReel",
|
|
"autoProjector",
|
|
"visionTorchTarget",
|
|
"standingVisionTorch"
|
|
]
|
|
},
|
|
"QuantumGroupInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"type": {
|
|
"description": "What type of group this is: does it define a list of states a single quantum object could take or a list of sockets one or more quantum objects could share?",
|
|
"$ref": "#/definitions/QuantumGroupType"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"description": "A unique string used by props (that are marked as quantum) use to refer back to this group"
|
|
},
|
|
"sockets": {
|
|
"type": "array",
|
|
"description": "Only required if type is `sockets`. This lists all the possible locations for any props assigned to this group.",
|
|
"items": {
|
|
"$ref": "#/definitions/QuantumSocketInfo"
|
|
}
|
|
},
|
|
"hasEmptyState": {
|
|
"type": "boolean",
|
|
"description": "Optional. Only used if type is `states`. If this is true, then the first prop made part of this group will be used to construct a visibility box for an empty game object, which will be considered one of the states."
|
|
},
|
|
"sequential": {
|
|
"type": "boolean",
|
|
"description": "Optional. Only used if type is `states`. If this is true, then the states will be presented in order, rather than in a random order"
|
|
},
|
|
"loop": {
|
|
"type": "boolean",
|
|
"description": "Optional. Only used if type is `states` and `sequential` is true. If this is false, then after the last state has appeared, the object will no longer change state",
|
|
"default": true
|
|
}
|
|
}
|
|
},
|
|
"QuantumGroupType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Sockets",
|
|
"States",
|
|
"FailedValidation"
|
|
],
|
|
"enum": [
|
|
"sockets",
|
|
"states",
|
|
"FailedValidation"
|
|
]
|
|
},
|
|
"QuantumSocketInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"position": {
|
|
"description": "The location of this socket",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"rotation": {
|
|
"description": "The rotation the quantum object will take if it's occupying this socket",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"probability": {
|
|
"type": "number",
|
|
"description": "The probability any props that are part of this group will occupy this socket",
|
|
"format": "float",
|
|
"default": 1.0
|
|
}
|
|
}
|
|
},
|
|
"TornadoInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"elevation": {
|
|
"type": "number",
|
|
"description": "Alternative to setting the position. Will choose a random place at this elevation.",
|
|
"format": "float"
|
|
},
|
|
"height": {
|
|
"type": "number",
|
|
"description": "The height of this tornado.",
|
|
"format": "float",
|
|
"default": 30.0
|
|
},
|
|
"position": {
|
|
"description": "Position of the tornado",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"tint": {
|
|
"description": "The colour of the tornado.",
|
|
"$ref": "#/definitions/MColor"
|
|
},
|
|
"type": {
|
|
"description": "What type of cyclone should this be? Upwards and downwards are both tornados and will push in that direction.",
|
|
"default": "upwards",
|
|
"$ref": "#/definitions/TornadoType"
|
|
},
|
|
"wanderDegreesX": {
|
|
"type": "number",
|
|
"description": "Angular distance from the starting position that it will wander, in terms of the angle around the x-axis.",
|
|
"format": "float",
|
|
"default": 45.0
|
|
},
|
|
"wanderDegreesZ": {
|
|
"type": "number",
|
|
"description": "Angular distance from the starting position that it will wander, in terms of the angle around the z-axis.",
|
|
"format": "float",
|
|
"default": 45.0
|
|
},
|
|
"wanderRate": {
|
|
"type": "number",
|
|
"description": "The rate at which the tornado will wander around the planet. Set to 0 for it to be stationary. Should be around\n0.1.",
|
|
"format": "float"
|
|
},
|
|
"audioDistance": {
|
|
"type": "number",
|
|
"description": "The maximum distance at which you'll hear the sounds of the cyclone. If not set it will scale relative to the size of the cyclone.",
|
|
"format": "float"
|
|
},
|
|
"fluidType": {
|
|
"description": "Fluid type for sounds/effects when colliding with this tornado.",
|
|
"default": "cloud",
|
|
"$ref": "#/definitions/FluidType"
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional and rotational coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this object"
|
|
}
|
|
}
|
|
},
|
|
"TornadoType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Upwards",
|
|
"Downwards",
|
|
"Hurricane"
|
|
],
|
|
"enum": [
|
|
"upwards",
|
|
"downwards",
|
|
"hurricane"
|
|
]
|
|
},
|
|
"VolcanoInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"lavaTint": {
|
|
"description": "The colour of the meteor's lava.",
|
|
"$ref": "#/definitions/MColor"
|
|
},
|
|
"maxInterval": {
|
|
"type": "number",
|
|
"description": "Maximum time between meteor launches.",
|
|
"format": "float",
|
|
"default": 20.0
|
|
},
|
|
"maxLaunchSpeed": {
|
|
"type": "number",
|
|
"description": "Maximum random speed at which meteors are launched.",
|
|
"format": "float",
|
|
"default": 150.0
|
|
},
|
|
"minInterval": {
|
|
"type": "number",
|
|
"description": "Minimum time between meteor launches.",
|
|
"format": "float",
|
|
"default": 5.0
|
|
},
|
|
"minLaunchSpeed": {
|
|
"type": "number",
|
|
"description": "Minimum random speed at which meteors are launched.",
|
|
"format": "float",
|
|
"default": 50.0
|
|
},
|
|
"position": {
|
|
"description": "Position of this volcano.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"scale": {
|
|
"type": "number",
|
|
"description": "Scale of the meteors.",
|
|
"format": "float"
|
|
},
|
|
"stoneTint": {
|
|
"description": "The colour of the meteor's stone.",
|
|
"$ref": "#/definitions/MColor"
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional and rotational coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this object"
|
|
}
|
|
}
|
|
},
|
|
"SingularityModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"curve": {
|
|
"type": "array",
|
|
"description": "Scale this object over time",
|
|
"items": {
|
|
"$ref": "#/definitions/TimeValuePair"
|
|
}
|
|
},
|
|
"pairedSingularity": {
|
|
"type": "string",
|
|
"description": "The uniqueID of the white hole or black hole that is paired to this one. If you don't set a value, entering will kill\nthe player"
|
|
},
|
|
"uniqueID": {
|
|
"type": "string",
|
|
"description": "The uniqueID of this white hole or black hole. If not set it will default to the name of the planet"
|
|
},
|
|
"position": {
|
|
"description": "Position of the singularity",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"rotation": {
|
|
"description": "Rotation of the singularity. Determines the direction you come out of a white hole",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"horizonRadius": {
|
|
"type": "number",
|
|
"description": "Radius of the event horizon (solid part)",
|
|
"format": "float",
|
|
"minimum": 0.0
|
|
},
|
|
"distortRadius": {
|
|
"type": "number",
|
|
"description": "Radius of the distortion effects. Defaults to 2.5 * horizonRadius",
|
|
"format": "float",
|
|
"minimum": 0.0
|
|
},
|
|
"targetStarSystem": {
|
|
"type": "string",
|
|
"description": "If you want a black hole to load a new star system scene, put its name here."
|
|
},
|
|
"type": {
|
|
"description": "Type of singularity (white hole or black hole)",
|
|
"$ref": "#/definitions/SingularityType"
|
|
},
|
|
"hasWarpEffects": {
|
|
"type": "boolean",
|
|
"description": "Whether a black hole emits blue particles upon warping. It doesn't scale, so disabling this for small black holes is recommended"
|
|
},
|
|
"renderQueueOverride": {
|
|
"type": "integer",
|
|
"description": "Optional override for the render queue. If the singularity is rendering oddly, increasing this to 3000 can help",
|
|
"format": "int32",
|
|
"maximum": 3500.0,
|
|
"minimum": 2501.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional and rotational coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this object"
|
|
}
|
|
}
|
|
},
|
|
"SingularityType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"BlackHole",
|
|
"WhiteHole"
|
|
],
|
|
"enum": [
|
|
"blackHole",
|
|
"whiteHole"
|
|
]
|
|
},
|
|
"SignalInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"audio": {
|
|
"type": "string",
|
|
"description": "The audio to use. Can be a path to a .wav/.ogg/.mp3 file, or taken from the AudioClip list."
|
|
},
|
|
"detectionRadius": {
|
|
"type": "number",
|
|
"description": "How close the player must get to the signal to detect it. This is when you get the \"Unknown Signal Detected\"\nnotification.",
|
|
"format": "float",
|
|
"minimum": 0.0
|
|
},
|
|
"frequency": {
|
|
"type": "string",
|
|
"description": "The frequency ID of the signal. The built-in game values are `Default`, `Traveler`, `Quantum`, `EscapePod`,\n`Statue`, `WarpCore`, `HideAndSeek`, and `Radio`. You can also put a custom value."
|
|
},
|
|
"identificationRadius": {
|
|
"type": "number",
|
|
"description": "How close the player must get to the signal to identify it. This is when you learn its name.",
|
|
"format": "float",
|
|
"default": 10.0,
|
|
"minimum": 0.0
|
|
},
|
|
"insideCloak": {
|
|
"type": "boolean",
|
|
"description": "Only set to `true` if you are putting this signal inside a cloaking field."
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The unique ID of the signal."
|
|
},
|
|
"onlyAudibleToScope": {
|
|
"type": "boolean",
|
|
"description": "`false` if the player can hear the signal without equipping the signal-scope.",
|
|
"default": true
|
|
},
|
|
"position": {
|
|
"description": "Position of the signal's source",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"reveals": {
|
|
"type": "string",
|
|
"description": "A ship log fact to reveal when the signal is identified.",
|
|
"default": ""
|
|
},
|
|
"sourceRadius": {
|
|
"type": "number",
|
|
"description": "Radius of the sphere giving off the signal.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this signal. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional and rotational coordinates are relative to parent instead of the root planet object."
|
|
}
|
|
}
|
|
},
|
|
"RemoteInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The unique remote id"
|
|
},
|
|
"decalPath": {
|
|
"type": "string",
|
|
"description": "Icon that the will show on the stone, pedastal of the whiteboard, and pedastal of the platform."
|
|
},
|
|
"whiteboard": {
|
|
"description": "Whiteboard that the stones can put text onto",
|
|
"$ref": "#/definitions/WhiteboardInfo"
|
|
},
|
|
"platform": {
|
|
"description": "Camera platform that the stones can project to and from",
|
|
"$ref": "#/definitions/PlatformInfo"
|
|
},
|
|
"stones": {
|
|
"type": "array",
|
|
"description": "Projection stones",
|
|
"items": {
|
|
"$ref": "#/definitions/StoneInfo"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"WhiteboardInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"nomaiText": {
|
|
"type": "array",
|
|
"description": "The text for each stone",
|
|
"items": {
|
|
"$ref": "#/definitions/SharedNomaiTextInfo"
|
|
}
|
|
},
|
|
"position": {
|
|
"description": "The location of this platform.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"rotation": {
|
|
"description": "The rotation of this platform.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional and rotational coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this object"
|
|
},
|
|
"disableWall": {
|
|
"type": "boolean",
|
|
"description": "Disable the wall, leaving only the pedestal and text."
|
|
}
|
|
}
|
|
},
|
|
"SharedNomaiTextInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The id of the stone this text will appear for"
|
|
},
|
|
"arcInfo": {
|
|
"type": "array",
|
|
"description": "Additional information about each arc in the text",
|
|
"items": {
|
|
"$ref": "#/definitions/NomaiTextArcInfo"
|
|
}
|
|
},
|
|
"seed": {
|
|
"type": "integer",
|
|
"description": "The random seed used to pick what the text arcs will look like.",
|
|
"format": "int32"
|
|
},
|
|
"location": {
|
|
"description": "The location of this object. ",
|
|
"default": "unspecified",
|
|
"$ref": "#/definitions/NomaiTextLocation"
|
|
},
|
|
"xmlFile": {
|
|
"type": "string",
|
|
"description": "The relative path to the xml file for this object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this object"
|
|
}
|
|
}
|
|
},
|
|
"PlatformInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"position": {
|
|
"description": "The location of this platform.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"rotation": {
|
|
"description": "The rotation of this platform.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional and rotational coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this object"
|
|
},
|
|
"reveals": {
|
|
"type": "string",
|
|
"description": "A ship log fact to reveal when the platform is connected to.",
|
|
"default": ""
|
|
},
|
|
"disableStructure": {
|
|
"type": "boolean",
|
|
"description": "Disable the structure, leaving only the pedestal."
|
|
},
|
|
"disablePool": {
|
|
"type": "boolean",
|
|
"description": "Disable the pool that rises when you place a stone."
|
|
}
|
|
}
|
|
},
|
|
"StoneInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"position": {
|
|
"description": "The location of this stone.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"rotation": {
|
|
"description": "The rotation of this stone.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional and rotational coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this object"
|
|
}
|
|
}
|
|
},
|
|
"ReferenceFrameModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Allows the object to be targeted.",
|
|
"default": true
|
|
},
|
|
"hideInMap": {
|
|
"type": "boolean",
|
|
"description": "Stop the object from being targeted on the map."
|
|
},
|
|
"bracketRadius": {
|
|
"type": "number",
|
|
"description": "Radius of the brackets that show up when you target this. Defaults to the sphere of influence.",
|
|
"format": "float",
|
|
"default": -1.0
|
|
},
|
|
"targetWhenClose": {
|
|
"type": "boolean",
|
|
"description": "If it should be targetable even when super close."
|
|
},
|
|
"maxTargetDistance": {
|
|
"type": "number",
|
|
"description": "The maximum distance that the reference frame can be targeted from. Defaults to 100km and cannot be greater than that.",
|
|
"format": "float"
|
|
},
|
|
"targetColliderRadius": {
|
|
"type": "number",
|
|
"description": "The radius of the sphere around the planet which you can click on to target it. Defaults to twice the sphere of influence.",
|
|
"format": "float"
|
|
},
|
|
"localPosition": {
|
|
"description": "Position of the reference frame relative to the object.",
|
|
"$ref": "#/definitions/MVector3"
|
|
}
|
|
}
|
|
},
|
|
"RingModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"fluidType": {
|
|
"description": "Fluid type for sounds/effects when colliding with this ring.",
|
|
"$ref": "#/definitions/FluidType"
|
|
},
|
|
"inclination": {
|
|
"type": "number",
|
|
"description": "Angle between the rings and the equatorial plane of the planet.",
|
|
"format": "float"
|
|
},
|
|
"innerRadius": {
|
|
"type": "number",
|
|
"description": "Inner radius of the disk",
|
|
"format": "float",
|
|
"minimum": 0.0
|
|
},
|
|
"longitudeOfAscendingNode": {
|
|
"type": "number",
|
|
"description": "Angle defining the point where the rings rise up from the planet's equatorial plane if inclination is nonzero.",
|
|
"format": "float"
|
|
},
|
|
"outerRadius": {
|
|
"type": "number",
|
|
"description": "Outer radius of the disk",
|
|
"format": "float",
|
|
"minimum": 0.0
|
|
},
|
|
"rotationSpeed": {
|
|
"type": "number",
|
|
"description": "Allows the rings to rotate.",
|
|
"format": "float"
|
|
},
|
|
"texture": {
|
|
"type": "string",
|
|
"description": "Relative filepath to the texture used for the rings."
|
|
},
|
|
"unlit": {
|
|
"type": "boolean",
|
|
"description": "Should this ring be unlit?"
|
|
},
|
|
"scaleCurve": {
|
|
"type": "array",
|
|
"description": "Scale rings over time. Optional. Value between 0-1, time is in minutes.",
|
|
"items": {
|
|
"$ref": "#/definitions/TimeValuePair"
|
|
}
|
|
},
|
|
"opacityCurve": {
|
|
"type": "array",
|
|
"description": "Fade rings in/out over time. Optional. Value between 0-1, time is in minutes.",
|
|
"items": {
|
|
"$ref": "#/definitions/TimeValuePair"
|
|
}
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this object"
|
|
}
|
|
}
|
|
},
|
|
"SandModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"curve": {
|
|
"type": "array",
|
|
"description": "Scale this object over time",
|
|
"items": {
|
|
"$ref": "#/definitions/TimeValuePair"
|
|
}
|
|
},
|
|
"size": {
|
|
"type": "number",
|
|
"description": "Size of the sand",
|
|
"format": "float"
|
|
},
|
|
"tint": {
|
|
"description": "Tint of the sand",
|
|
"$ref": "#/definitions/MColor"
|
|
}
|
|
}
|
|
},
|
|
"ShipLogModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"mapMode": {
|
|
"description": "Describe what this planet looks and like in map mode",
|
|
"$ref": "#/definitions/MapModeInfo"
|
|
},
|
|
"spriteFolder": {
|
|
"type": "string",
|
|
"description": "A path to the folder where entry sprites are stored."
|
|
},
|
|
"xmlFile": {
|
|
"type": "string",
|
|
"description": "The relative path to the xml file to load ship log entries from."
|
|
}
|
|
}
|
|
},
|
|
"MapModeInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"details": {
|
|
"type": "array",
|
|
"description": "Place non-selectable objects in map mode (like sand funnels).",
|
|
"items": {
|
|
"$ref": "#/definitions/ShipLogDetailInfo"
|
|
}
|
|
},
|
|
"invisibleWhenHidden": {
|
|
"type": "boolean",
|
|
"description": "Hide the planet completely if unexplored instead of showing an outline."
|
|
},
|
|
"manualNavigationPosition": {
|
|
"description": "Specify where this planet is in terms of navigation.",
|
|
"$ref": "#/definitions/MVector2"
|
|
},
|
|
"manualPosition": {
|
|
"description": "Manually place this planet at the specified position.",
|
|
"$ref": "#/definitions/MVector2"
|
|
},
|
|
"offset": {
|
|
"type": "number",
|
|
"description": "Extra distance to apply to this object in map mode.",
|
|
"format": "float"
|
|
},
|
|
"outlineSprite": {
|
|
"type": "string",
|
|
"description": "The path to the sprite to show when the planet is unexplored in map mode."
|
|
},
|
|
"remove": {
|
|
"type": "boolean",
|
|
"description": "Completely remove this planet (and it's children) from map mode."
|
|
},
|
|
"revealedSprite": {
|
|
"type": "string",
|
|
"description": "The path to the sprite to show when the planet is revealed in map mode."
|
|
},
|
|
"scale": {
|
|
"type": "number",
|
|
"description": "Scale to apply to the planet in map mode.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
}
|
|
}
|
|
},
|
|
"ShipLogDetailInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"invisibleWhenHidden": {
|
|
"type": "boolean",
|
|
"description": "Whether to completely hide this detail when the parent AstroBody is unexplored."
|
|
},
|
|
"outlineSprite": {
|
|
"type": "string",
|
|
"description": "The sprite to show when the parent AstroBody is rumored/unexplored."
|
|
},
|
|
"position": {
|
|
"description": "The position (relative to the parent) to place the detail.",
|
|
"$ref": "#/definitions/MVector2"
|
|
},
|
|
"revealedSprite": {
|
|
"type": "string",
|
|
"description": "The sprite to show when the parent AstroBody is revealed."
|
|
},
|
|
"rotation": {
|
|
"type": "number",
|
|
"description": "The angle in degrees to rotate the detail.",
|
|
"format": "float"
|
|
},
|
|
"scale": {
|
|
"description": "The amount to scale the x and y-axis of the detail by.",
|
|
"$ref": "#/definitions/MVector2"
|
|
}
|
|
}
|
|
},
|
|
"ShockEffectModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"hasSupernovaShockEffect": {
|
|
"type": "boolean",
|
|
"description": "Does this planet have a shock effect when the nearest star goes supernova? Automatically disabled for stars, focal points, and stellar remnants.",
|
|
"default": true
|
|
},
|
|
"radius": {
|
|
"type": [
|
|
"null",
|
|
"number"
|
|
],
|
|
"description": "Override the calculated radius of the shock effect",
|
|
"format": "float"
|
|
},
|
|
"assetBundle": {
|
|
"type": "string",
|
|
"description": "Asset Bundle that contains the shock effect mesh"
|
|
},
|
|
"meshPath": {
|
|
"type": "string",
|
|
"description": "Path to the replacement mesh for the planet's supernova shock effect in the supplied asset bundle"
|
|
}
|
|
}
|
|
},
|
|
"SpawnModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"playerSpawnPoint": {
|
|
"description": "If you want the player to spawn on the new body, set a value for this. Press `P` in game with Debug mode on to have\nthe game log the position you're looking at to find a good value for this.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"playerSpawnRotation": {
|
|
"description": "Euler angles by which the player will be oriented.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"shipSpawnPoint": {
|
|
"description": "Required for the system to be accessible by warp drive.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"shipSpawnRotation": {
|
|
"description": "Euler angles by which the ship will be oriented.",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"startWithSuit": {
|
|
"type": "boolean",
|
|
"description": "If you spawn on a planet with no oxygen, you probably want to set this to true ;;)"
|
|
}
|
|
}
|
|
},
|
|
"StarModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"curve": {
|
|
"type": "array",
|
|
"description": "Scale this object over time",
|
|
"items": {
|
|
"$ref": "#/definitions/TimeValuePair"
|
|
}
|
|
},
|
|
"endTint": {
|
|
"description": "Colour of the star at the end of its lifespan.",
|
|
"$ref": "#/definitions/MColor"
|
|
},
|
|
"lifespan": {
|
|
"type": "number",
|
|
"description": "How long in minutes this star will last until it supernovas.",
|
|
"format": "float",
|
|
"default": 22.0
|
|
},
|
|
"hasStarController": {
|
|
"type": "boolean",
|
|
"description": "Should we add a star controller to this body? If you want clouds to work on a binary brown dwarf system, set this to false.",
|
|
"default": true
|
|
},
|
|
"hasAtmosphere": {
|
|
"type": "boolean",
|
|
"description": "The default sun has its own atmosphere that is different from regular planets. If you want that, set this to\n`true`.",
|
|
"default": true
|
|
},
|
|
"lightTint": {
|
|
"description": "Colour of the light given off. Defaults to yellowish.",
|
|
"$ref": "#/definitions/MColor"
|
|
},
|
|
"size": {
|
|
"type": "number",
|
|
"description": "Radius of the star.",
|
|
"format": "float",
|
|
"default": 2000.0,
|
|
"minimum": 0.0
|
|
},
|
|
"solarLuminosity": {
|
|
"type": "number",
|
|
"description": "Relative strength of the light compared to the sun.",
|
|
"format": "float",
|
|
"default": 1.0,
|
|
"minimum": 0.0
|
|
},
|
|
"supernovaSize": {
|
|
"type": "number",
|
|
"description": "Radius of the supernova. Any planets within this will be destroyed.",
|
|
"format": "float",
|
|
"default": 50000.0,
|
|
"minimum": 0.0
|
|
},
|
|
"supernovaSpeed": {
|
|
"type": "number",
|
|
"description": "Speed of the supernova wall in meters per second.",
|
|
"format": "float",
|
|
"default": 1000.0,
|
|
"minimum": 1.0
|
|
},
|
|
"supernovaTint": {
|
|
"description": "The tint of the supernova this star creates when it dies.",
|
|
"$ref": "#/definitions/MColor"
|
|
},
|
|
"tint": {
|
|
"description": "Colour of the star.",
|
|
"$ref": "#/definitions/MColor"
|
|
},
|
|
"starRampTexture": {
|
|
"type": "string",
|
|
"description": "Path to the texture to put as the star ramp. Optional."
|
|
},
|
|
"starCollapseRampTexture": {
|
|
"type": "string",
|
|
"description": "Path to the texture to put as the star ramp while it is collapsing. Optional."
|
|
},
|
|
"lightRadius": {
|
|
"type": "number",
|
|
"description": "How far the light from the star can reach.",
|
|
"format": "float",
|
|
"default": 50000.0,
|
|
"minimum": 0.0
|
|
},
|
|
"stellarDeathType": {
|
|
"description": "The type of death your star will have.",
|
|
"default": "default",
|
|
"$ref": "#/definitions/StellarDeathType"
|
|
},
|
|
"stellarRemnantType": {
|
|
"description": "The type of stellar remnant your star will leave behind.",
|
|
"default": "default",
|
|
"$ref": "#/definitions/StellarRemnantType"
|
|
}
|
|
}
|
|
},
|
|
"StellarDeathType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Default",
|
|
"None",
|
|
"PlanetaryNebula",
|
|
"Supernova"
|
|
],
|
|
"enum": [
|
|
"default",
|
|
"none",
|
|
"planetaryNebula",
|
|
"supernova"
|
|
]
|
|
},
|
|
"StellarRemnantType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Default",
|
|
"WhiteDwarf",
|
|
"NeutronStar",
|
|
"Pulsar",
|
|
"BlackHole",
|
|
"Custom"
|
|
],
|
|
"enum": [
|
|
"default",
|
|
"whiteDwarf",
|
|
"neutronStar",
|
|
"pulsar",
|
|
"blackHole",
|
|
"custom"
|
|
]
|
|
},
|
|
"WaterModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"curve": {
|
|
"type": "array",
|
|
"description": "Scale this object over time",
|
|
"items": {
|
|
"$ref": "#/definitions/TimeValuePair"
|
|
}
|
|
},
|
|
"size": {
|
|
"type": "number",
|
|
"description": "Size of the water sphere",
|
|
"format": "float"
|
|
},
|
|
"density": {
|
|
"type": "number",
|
|
"description": "Density of the water sphere. The higher the density, the harder it is to go through this fluid.",
|
|
"format": "float",
|
|
"default": 1.2
|
|
},
|
|
"buoyancy": {
|
|
"type": "number",
|
|
"description": "Buoyancy density of the water sphere",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"tint": {
|
|
"description": "Tint of the water",
|
|
"$ref": "#/definitions/MColor"
|
|
}
|
|
}
|
|
},
|
|
"VolumesModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"audioVolumes": {
|
|
"type": "array",
|
|
"description": "Add audio volumes to this planet.",
|
|
"items": {
|
|
"$ref": "#/definitions/AudioVolumeInfo"
|
|
}
|
|
},
|
|
"destructionVolumes": {
|
|
"type": "array",
|
|
"description": "Add destruction volumes to this planet.",
|
|
"items": {
|
|
"$ref": "#/definitions/DestructionVolumeInfo"
|
|
}
|
|
},
|
|
"fluidVolumes": {
|
|
"type": "array",
|
|
"description": "Add fluid volumes to this planet.",
|
|
"items": {
|
|
"$ref": "#/definitions/FluidVolumeInfo"
|
|
}
|
|
},
|
|
"hazardVolumes": {
|
|
"type": "array",
|
|
"description": "Add hazard volumes to this planet.",
|
|
"items": {
|
|
"$ref": "#/definitions/HazardVolumeInfo"
|
|
}
|
|
},
|
|
"interferenceVolumes": {
|
|
"type": "array",
|
|
"description": "Add interference volumes to this planet.",
|
|
"items": {
|
|
"$ref": "#/definitions/VolumeInfo"
|
|
}
|
|
},
|
|
"insulatingVolumes": {
|
|
"type": "array",
|
|
"description": "Add insulating volumes to this planet. These will stop electricty hazard volumes from affecting you (just like the jellyfish).",
|
|
"items": {
|
|
"$ref": "#/definitions/VolumeInfo"
|
|
}
|
|
},
|
|
"lightSourceVolumes": {
|
|
"type": "array",
|
|
"description": "Add light source volumes to this planet. These will activate rafts and other light detectors.",
|
|
"items": {
|
|
"$ref": "#/definitions/VolumeInfo"
|
|
}
|
|
},
|
|
"mapRestrictionVolumes": {
|
|
"type": "array",
|
|
"description": "Add map restriction volumes to this planet.",
|
|
"items": {
|
|
"$ref": "#/definitions/VolumeInfo"
|
|
}
|
|
},
|
|
"notificationVolumes": {
|
|
"type": "array",
|
|
"description": "Add notification volumes to this planet.",
|
|
"items": {
|
|
"$ref": "#/definitions/NotificationVolumeInfo"
|
|
}
|
|
},
|
|
"oxygenVolumes": {
|
|
"type": "array",
|
|
"description": "Add oxygen volumes to this planet.",
|
|
"items": {
|
|
"$ref": "#/definitions/OxygenVolumeInfo"
|
|
}
|
|
},
|
|
"probe": {
|
|
"description": "Add probe-specific volumes to this planet.",
|
|
"$ref": "#/definitions/ProbeModule"
|
|
},
|
|
"referenceFrameBlockerVolumes": {
|
|
"type": "array",
|
|
"description": "Add reference frame blocker volumes to this planet. These will stop the player from seeing/targeting any reference frames.",
|
|
"items": {
|
|
"$ref": "#/definitions/VolumeInfo"
|
|
}
|
|
},
|
|
"revealVolumes": {
|
|
"type": "array",
|
|
"description": "Add triggers that reveal parts of the ship log on this planet.",
|
|
"items": {
|
|
"$ref": "#/definitions/RevealVolumeInfo"
|
|
}
|
|
},
|
|
"reverbVolumes": {
|
|
"type": "array",
|
|
"description": "Add reverb volumes to this planet. Great for echoes in caves.",
|
|
"items": {
|
|
"$ref": "#/definitions/VolumeInfo"
|
|
}
|
|
},
|
|
"rulesets": {
|
|
"description": "Add ruleset volumes to this planet.",
|
|
"$ref": "#/definitions/RulesetModule"
|
|
},
|
|
"speedTrapVolumes": {
|
|
"type": "array",
|
|
"description": "Add speed trap volumes to this planet. Slows down the player when they enter this volume.",
|
|
"items": {
|
|
"$ref": "#/definitions/SpeedTrapVolumeInfo"
|
|
}
|
|
},
|
|
"visorEffects": {
|
|
"description": "Add visor effect volumes to this planet.",
|
|
"$ref": "#/definitions/VisorEffectModule"
|
|
},
|
|
"zeroGravityVolumes": {
|
|
"type": "array",
|
|
"description": "Add zero-gravity volumes to this planet. \nGood for surrounding planets which are using a static position to stop the player being pulled away.",
|
|
"items": {
|
|
"$ref": "#/definitions/PriorityVolumeInfo"
|
|
}
|
|
},
|
|
"solarSystemVolume": {
|
|
"type": "array",
|
|
"description": "Entering this volume will load a new solar system.",
|
|
"items": {
|
|
"$ref": "#/definitions/ChangeStarSystemVolumeInfo"
|
|
}
|
|
},
|
|
"creditsVolume": {
|
|
"type": "array",
|
|
"description": "Enter this volume to be sent to the end credits scene",
|
|
"items": {
|
|
"$ref": "#/definitions/LoadCreditsVolumeInfo"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"AudioVolumeInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"layer": {
|
|
"type": "integer",
|
|
"description": "The layer of this volume.",
|
|
"format": "int32",
|
|
"default": 0
|
|
},
|
|
"priority": {
|
|
"type": "integer",
|
|
"description": "The priority for this volume's effects to be applied. \nEx, a player in a gravity volume with priority 0, and zero-gravity volume with priority 1, will feel zero gravity.",
|
|
"format": "int32",
|
|
"default": 1
|
|
},
|
|
"position": {
|
|
"description": "The location of this volume. Optional (will default to 0,0,0).",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "The radius of this volume.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this volume."
|
|
},
|
|
"audio": {
|
|
"type": "string",
|
|
"description": "The audio to use. Can be a path to a .wav/.ogg/.mp3 file, or taken from the AudioClip list."
|
|
},
|
|
"clipSelection": {
|
|
"default": "random",
|
|
"$ref": "#/definitions/ClipSelectionType"
|
|
},
|
|
"track": {
|
|
"description": "The audio track of this audio volume",
|
|
"default": "environment",
|
|
"$ref": "#/definitions/AudioMixerTrackName"
|
|
},
|
|
"loop": {
|
|
"type": "boolean",
|
|
"description": "Whether to loop this audio while in this audio volume or just play it once",
|
|
"default": true
|
|
},
|
|
"volume": {
|
|
"type": "number",
|
|
"description": "The loudness of the audio",
|
|
"format": "float",
|
|
"default": 1.0,
|
|
"maximum": 1.0,
|
|
"minimum": 0.0
|
|
},
|
|
"fadeSeconds": {
|
|
"type": "number",
|
|
"description": "How long it will take to fade this sound in and out when entering/exiting this volume.",
|
|
"format": "float",
|
|
"default": 2.0
|
|
},
|
|
"noFadeFromBeginning": {
|
|
"type": "boolean",
|
|
"description": "Play the sound instantly without any fading."
|
|
},
|
|
"randomizePlayhead": {
|
|
"type": "boolean",
|
|
"description": "Randomize what time the audio starts at."
|
|
},
|
|
"pauseOnFadeOut": {
|
|
"type": "boolean",
|
|
"description": "Pause the music when exiting the volume."
|
|
}
|
|
}
|
|
},
|
|
"ClipSelectionType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"RANDOM",
|
|
"SEQUENTIAL",
|
|
"MANUAL"
|
|
],
|
|
"enum": [
|
|
"random",
|
|
"sequential",
|
|
"manual"
|
|
]
|
|
},
|
|
"AudioMixerTrackName": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Undefined",
|
|
"Menu",
|
|
"Music",
|
|
"Environment",
|
|
"Environment_Unfiltered",
|
|
"EndTimes_SFX",
|
|
"Signal",
|
|
"Death",
|
|
"Player",
|
|
"Player_External",
|
|
"Ship",
|
|
"Map",
|
|
"EndTimes_Music",
|
|
"MuffleWhileRafting",
|
|
"MuffleIndoors",
|
|
"SlideReelMusic"
|
|
],
|
|
"enum": [
|
|
"undefined",
|
|
"menu",
|
|
"music",
|
|
"environment",
|
|
"environmentUnfiltered",
|
|
"endTimesSfx",
|
|
"signal",
|
|
"death",
|
|
"player",
|
|
"playerExternal",
|
|
"ship",
|
|
"map",
|
|
"endTimesMusic",
|
|
"muffleWhileRafting",
|
|
"muffleIndoors",
|
|
"slideReelMusic"
|
|
]
|
|
},
|
|
"DestructionVolumeInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"shrinkBodies": {
|
|
"type": "boolean",
|
|
"description": "Whether the bodies will shrink when they enter this volume or just disappear instantly.",
|
|
"default": true
|
|
},
|
|
"onlyAffectsPlayerAndShip": {
|
|
"type": "boolean",
|
|
"description": "Whether this volume only affects the player and ship."
|
|
},
|
|
"position": {
|
|
"description": "The location of this volume. Optional (will default to 0,0,0).",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "The radius of this volume.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this volume."
|
|
},
|
|
"deathType": {
|
|
"description": "The type of death the player will have if they enter this volume.",
|
|
"default": "default",
|
|
"$ref": "#/definitions/DeathType"
|
|
}
|
|
}
|
|
},
|
|
"DeathType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Default",
|
|
"Impact",
|
|
"Asphyxiation",
|
|
"Energy",
|
|
"Supernova",
|
|
"Digestion",
|
|
"BigBang",
|
|
"Crushed",
|
|
"Meditation",
|
|
"TimeLoop",
|
|
"Lava",
|
|
"BlackHole",
|
|
"Dream",
|
|
"DreamExplosion",
|
|
"CrushedByElevator"
|
|
],
|
|
"enum": [
|
|
"default",
|
|
"impact",
|
|
"asphyxiation",
|
|
"energy",
|
|
"supernova",
|
|
"digestion",
|
|
"bigBang",
|
|
"crushed",
|
|
"meditation",
|
|
"timeLoop",
|
|
"lava",
|
|
"blackHole",
|
|
"dream",
|
|
"dreamExplosion",
|
|
"crushedByElevator"
|
|
]
|
|
},
|
|
"FluidVolumeInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"layer": {
|
|
"type": "integer",
|
|
"description": "The layer of this volume.",
|
|
"format": "int32",
|
|
"default": 0
|
|
},
|
|
"priority": {
|
|
"type": "integer",
|
|
"description": "The priority for this volume's effects to be applied. \nEx, a player in a gravity volume with priority 0, and zero-gravity volume with priority 1, will feel zero gravity.",
|
|
"format": "int32",
|
|
"default": 1
|
|
},
|
|
"position": {
|
|
"description": "The location of this volume. Optional (will default to 0,0,0).",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "The radius of this volume.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this volume."
|
|
},
|
|
"density": {
|
|
"type": "number",
|
|
"description": "Density of the fluid. The higher the density, the harder it is to go through this fluid.",
|
|
"format": "float",
|
|
"default": 1.2
|
|
},
|
|
"type": {
|
|
"description": "The type of fluid for this volume.",
|
|
"$ref": "#/definitions/FluidType2"
|
|
},
|
|
"alignmentFluid": {
|
|
"type": "boolean",
|
|
"description": "Should the player and rafts align to this fluid.",
|
|
"default": true
|
|
},
|
|
"allowShipAutoroll": {
|
|
"type": "boolean",
|
|
"description": "Should the ship align to the fluid by rolling."
|
|
},
|
|
"disableOnStart": {
|
|
"type": "boolean",
|
|
"description": "Disable this fluid volume immediately?"
|
|
}
|
|
}
|
|
},
|
|
"FluidType2": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"NONE",
|
|
"AIR",
|
|
"WATER",
|
|
"CLOUD",
|
|
"SAND",
|
|
"PLASMA",
|
|
"FOG"
|
|
],
|
|
"enum": [
|
|
"none",
|
|
"air",
|
|
"water",
|
|
"cloud",
|
|
"sand",
|
|
"plasma",
|
|
"fog"
|
|
]
|
|
},
|
|
"HazardVolumeInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"position": {
|
|
"description": "The location of this volume. Optional (will default to 0,0,0).",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "The radius of this volume.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this volume."
|
|
},
|
|
"type": {
|
|
"description": "The type of hazard for this volume.",
|
|
"default": "general",
|
|
"$ref": "#/definitions/HazardType"
|
|
},
|
|
"damagePerSecond": {
|
|
"type": "number",
|
|
"description": "The amount of damage you will take per second while inside this volume.",
|
|
"format": "float",
|
|
"default": 10.0
|
|
},
|
|
"firstContactDamageType": {
|
|
"description": "The type of damage you will take when you first touch this volume.",
|
|
"default": "impact",
|
|
"$ref": "#/definitions/InstantDamageType"
|
|
},
|
|
"firstContactDamage": {
|
|
"type": "number",
|
|
"description": "The amount of damage you will take when you first touch this volume.",
|
|
"format": "float"
|
|
}
|
|
}
|
|
},
|
|
"HazardType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"NONE",
|
|
"GENERAL",
|
|
"DARKMATTER",
|
|
"HEAT",
|
|
"FIRE",
|
|
"SANDFALL",
|
|
"ELECTRICITY",
|
|
"RAPIDS",
|
|
"RIVERHEAT"
|
|
],
|
|
"enum": [
|
|
"none",
|
|
"general",
|
|
"ghostMatter",
|
|
"heat",
|
|
"fire",
|
|
"sandfall",
|
|
"electricity",
|
|
"rapids",
|
|
"riverHeat"
|
|
]
|
|
},
|
|
"InstantDamageType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Impact",
|
|
"Puncture",
|
|
"Electrical"
|
|
],
|
|
"enum": [
|
|
"impact",
|
|
"puncture",
|
|
"electrical"
|
|
]
|
|
},
|
|
"VolumeInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"position": {
|
|
"description": "The location of this volume. Optional (will default to 0,0,0).",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "The radius of this volume.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this volume."
|
|
}
|
|
}
|
|
},
|
|
"NotificationVolumeInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"position": {
|
|
"description": "The location of this volume. Optional (will default to 0,0,0).",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "The radius of this volume.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this volume."
|
|
},
|
|
"target": {
|
|
"description": "What the notification will show for.",
|
|
"default": "all",
|
|
"$ref": "#/definitions/NotificationTarget"
|
|
},
|
|
"entryNotification": {
|
|
"description": "The notification that will play when you enter this volume.",
|
|
"$ref": "#/definitions/NotificationInfo"
|
|
},
|
|
"exitNotification": {
|
|
"description": "The notification that will play when you exit this volume.",
|
|
"$ref": "#/definitions/NotificationInfo"
|
|
}
|
|
}
|
|
},
|
|
"NotificationTarget": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"All",
|
|
"Ship",
|
|
"Player"
|
|
],
|
|
"enum": [
|
|
"all",
|
|
"ship",
|
|
"player"
|
|
]
|
|
},
|
|
"NotificationInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"displayMessage": {
|
|
"type": "string",
|
|
"description": "The message that will be displayed."
|
|
},
|
|
"duration": {
|
|
"type": "number",
|
|
"description": "The duration this notification will be displayed.",
|
|
"format": "float",
|
|
"default": 5.0
|
|
}
|
|
}
|
|
},
|
|
"OxygenVolumeInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"position": {
|
|
"description": "The location of this volume. Optional (will default to 0,0,0).",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "The radius of this volume.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this volume."
|
|
},
|
|
"treeVolume": {
|
|
"type": "boolean",
|
|
"description": "Does this volume contain trees? This will change the notification from \"Oxygen tank refilled\" to \"Trees detected, oxygen tank refilled\"."
|
|
},
|
|
"playRefillAudio": {
|
|
"type": "boolean",
|
|
"description": "Whether to play the oxygen tank refill sound or just fill quietly.",
|
|
"default": true
|
|
}
|
|
}
|
|
},
|
|
"ProbeModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"destructionVolumes": {
|
|
"type": "array",
|
|
"description": "Add probe destruction volumes to this planet. These will delete your probe.",
|
|
"items": {
|
|
"$ref": "#/definitions/VolumeInfo"
|
|
}
|
|
},
|
|
"safetyVolumes": {
|
|
"type": "array",
|
|
"description": "Add probe safety volumes to this planet. These will stop the probe destruction volumes from working.",
|
|
"items": {
|
|
"$ref": "#/definitions/VolumeInfo"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"RevealVolumeInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"position": {
|
|
"description": "The location of this volume. Optional (will default to 0,0,0).",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "The radius of this volume.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this volume."
|
|
},
|
|
"maxAngle": {
|
|
"type": "number",
|
|
"description": "The max view angle (in degrees) the player can see the volume with to unlock the fact (`observe` only)",
|
|
"format": "float",
|
|
"default": 180.0
|
|
},
|
|
"maxDistance": {
|
|
"type": "number",
|
|
"description": "The max distance the user can be away from the volume to reveal the fact (`snapshot` and `observe` only)",
|
|
"format": "float",
|
|
"default": -1.0
|
|
},
|
|
"revealOn": {
|
|
"description": "What needs to be done to the volume to unlock the facts",
|
|
"default": "enter",
|
|
"$ref": "#/definitions/RevealVolumeType"
|
|
},
|
|
"revealFor": {
|
|
"description": "What can enter the volume to unlock the facts (`enter` only)",
|
|
"default": "both",
|
|
"$ref": "#/definitions/EnterType"
|
|
},
|
|
"reveals": {
|
|
"type": "array",
|
|
"description": "A list of facts to reveal",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"achievementID": {
|
|
"type": "string",
|
|
"description": "An achievement to unlock. Optional."
|
|
}
|
|
}
|
|
},
|
|
"RevealVolumeType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Enter",
|
|
"Observe",
|
|
"Snapshot"
|
|
],
|
|
"enum": [
|
|
"enter",
|
|
"observe",
|
|
"snapshot"
|
|
]
|
|
},
|
|
"EnterType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Both",
|
|
"Player",
|
|
"Probe"
|
|
],
|
|
"enum": [
|
|
"both",
|
|
"player",
|
|
"probe"
|
|
]
|
|
},
|
|
"RulesetModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"antiTravelMusicRulesets": {
|
|
"type": "array",
|
|
"description": "Add anti travel music rulesets to this planet.",
|
|
"items": {
|
|
"$ref": "#/definitions/VolumeInfo"
|
|
}
|
|
},
|
|
"playerImpactRulesets": {
|
|
"type": "array",
|
|
"description": "Add player impact rulesets to this planet.",
|
|
"items": {
|
|
"$ref": "#/definitions/PlayerImpactRulesetInfo"
|
|
}
|
|
},
|
|
"probeRulesets": {
|
|
"type": "array",
|
|
"description": "Add probe rulesets to this planet.",
|
|
"items": {
|
|
"$ref": "#/definitions/ProbeRulesetInfo"
|
|
}
|
|
},
|
|
"thrustRulesets": {
|
|
"type": "array",
|
|
"description": "Add thrust rulesets to this planet.",
|
|
"items": {
|
|
"$ref": "#/definitions/ThrustRulesetInfo"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"PlayerImpactRulesetInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"position": {
|
|
"description": "The location of this volume. Optional (will default to 0,0,0).",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "The radius of this volume.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this volume."
|
|
},
|
|
"minImpactSpeed": {
|
|
"type": "number",
|
|
"description": "Minimum player impact speed. Player will take the minimum amount of damage if they impact something at this speed.",
|
|
"format": "float",
|
|
"default": 20.0
|
|
},
|
|
"maxImpactSpeed": {
|
|
"type": "number",
|
|
"description": "Maximum player impact speed. Players will die if they impact something at this speed.",
|
|
"format": "float",
|
|
"default": 40.0
|
|
}
|
|
}
|
|
},
|
|
"ProbeRulesetInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"position": {
|
|
"description": "The location of this volume. Optional (will default to 0,0,0).",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "The radius of this volume.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this volume."
|
|
},
|
|
"overrideProbeSpeed": {
|
|
"type": "boolean",
|
|
"description": "Should this ruleset override the probe's speed?"
|
|
},
|
|
"probeSpeed": {
|
|
"type": "number",
|
|
"description": "The speed of the probe while in this ruleset volume.",
|
|
"format": "float"
|
|
},
|
|
"overrideLanternRange": {
|
|
"type": "boolean",
|
|
"description": "Should this ruleset override the range of probe's light?"
|
|
},
|
|
"lanternRange": {
|
|
"type": "number",
|
|
"description": "The range of probe's light while in this ruleset volume.",
|
|
"format": "float"
|
|
},
|
|
"ignoreAnchor": {
|
|
"type": "boolean",
|
|
"description": "Stop the probe from attaching to anything while in this ruleset volume."
|
|
}
|
|
}
|
|
},
|
|
"ThrustRulesetInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"position": {
|
|
"description": "The location of this volume. Optional (will default to 0,0,0).",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "The radius of this volume.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this volume."
|
|
},
|
|
"thrustLimit": {
|
|
"type": "number",
|
|
"description": "Limit how fast you can fly with your jetpack while in this ruleset volume.",
|
|
"format": "float",
|
|
"default": "Infinity"
|
|
},
|
|
"nerfJetpackBooster": {
|
|
"type": "boolean",
|
|
"description": "Nerf the jetpack booster."
|
|
},
|
|
"nerfDuration": {
|
|
"type": "number",
|
|
"description": "How long the jetpack booster will be nerfed.",
|
|
"format": "float",
|
|
"default": 0.5
|
|
}
|
|
}
|
|
},
|
|
"SpeedTrapVolumeInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"position": {
|
|
"description": "The location of this volume. Optional (will default to 0,0,0).",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "The radius of this volume.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this volume."
|
|
},
|
|
"speedLimit": {
|
|
"type": "number",
|
|
"description": "The speed the volume will slow you down to when you enter it.",
|
|
"format": "float",
|
|
"default": 10.0
|
|
},
|
|
"acceleration": {
|
|
"type": "number",
|
|
"description": "How fast it will slow down the player to the speed limit.",
|
|
"format": "float",
|
|
"default": 3.0
|
|
}
|
|
}
|
|
},
|
|
"VisorEffectModule": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"frostEffectVolumes": {
|
|
"type": "array",
|
|
"description": "Add visor frost effect volumes to this planet. This is the ghost matter effect.",
|
|
"items": {
|
|
"$ref": "#/definitions/FrostEffectVolumeInfo"
|
|
}
|
|
},
|
|
"rainEffectVolumes": {
|
|
"type": "array",
|
|
"description": "Add visor rain effect volumes to this planet. You can see this on Giant's Deep.",
|
|
"items": {
|
|
"$ref": "#/definitions/RainEffectVolumeInfo"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"FrostEffectVolumeInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"layer": {
|
|
"type": "integer",
|
|
"description": "The layer of this volume.",
|
|
"format": "int32",
|
|
"default": 0
|
|
},
|
|
"priority": {
|
|
"type": "integer",
|
|
"description": "The priority for this volume's effects to be applied. \nEx, a player in a gravity volume with priority 0, and zero-gravity volume with priority 1, will feel zero gravity.",
|
|
"format": "int32",
|
|
"default": 1
|
|
},
|
|
"position": {
|
|
"description": "The location of this volume. Optional (will default to 0,0,0).",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "The radius of this volume.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this volume."
|
|
},
|
|
"frostRate": {
|
|
"type": "number",
|
|
"description": "The rate at which the frost effect will get stronger",
|
|
"format": "float",
|
|
"default": 0.5
|
|
},
|
|
"maxFrost": {
|
|
"type": "number",
|
|
"description": "The maximum strength of frost this volume can give",
|
|
"format": "float",
|
|
"default": 0.91,
|
|
"maximum": 1.0,
|
|
"minimum": 0.0
|
|
}
|
|
}
|
|
},
|
|
"RainEffectVolumeInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"layer": {
|
|
"type": "integer",
|
|
"description": "The layer of this volume.",
|
|
"format": "int32",
|
|
"default": 0
|
|
},
|
|
"priority": {
|
|
"type": "integer",
|
|
"description": "The priority for this volume's effects to be applied. \nEx, a player in a gravity volume with priority 0, and zero-gravity volume with priority 1, will feel zero gravity.",
|
|
"format": "int32",
|
|
"default": 1
|
|
},
|
|
"position": {
|
|
"description": "The location of this volume. Optional (will default to 0,0,0).",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "The radius of this volume.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this volume."
|
|
},
|
|
"dropletRate": {
|
|
"type": "number",
|
|
"description": "The rate at which the rain droplet effect will happen",
|
|
"format": "float",
|
|
"default": 0.1
|
|
},
|
|
"streakRate": {
|
|
"type": "number",
|
|
"description": "The rate at which the rain streak effect will happen",
|
|
"format": "float",
|
|
"default": 1.0
|
|
}
|
|
}
|
|
},
|
|
"PriorityVolumeInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"position": {
|
|
"description": "The location of this volume. Optional (will default to 0,0,0).",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "The radius of this volume.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this volume."
|
|
},
|
|
"layer": {
|
|
"type": "integer",
|
|
"description": "The layer of this volume.",
|
|
"format": "int32",
|
|
"default": 0
|
|
},
|
|
"priority": {
|
|
"type": "integer",
|
|
"description": "The priority for this volume's effects to be applied. \nEx, a player in a gravity volume with priority 0, and zero-gravity volume with priority 1, will feel zero gravity.",
|
|
"format": "int32",
|
|
"default": 1
|
|
}
|
|
}
|
|
},
|
|
"ChangeStarSystemVolumeInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"position": {
|
|
"description": "The location of this volume. Optional (will default to 0,0,0).",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "The radius of this volume.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this volume."
|
|
},
|
|
"targetStarSystem": {
|
|
"type": "string",
|
|
"description": "The star system that entering this volume will send you to.",
|
|
"default": "SolarSystem"
|
|
}
|
|
}
|
|
},
|
|
"LoadCreditsVolumeInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"position": {
|
|
"description": "The location of this volume. Optional (will default to 0,0,0).",
|
|
"$ref": "#/definitions/MVector3"
|
|
},
|
|
"radius": {
|
|
"type": "number",
|
|
"description": "The radius of this volume.",
|
|
"format": "float",
|
|
"default": 1.0
|
|
},
|
|
"parentPath": {
|
|
"type": "string",
|
|
"description": "The relative path from the planet to the parent of this object. Optional (will default to the root sector)."
|
|
},
|
|
"isRelativeToParent": {
|
|
"type": "boolean",
|
|
"description": "Whether the positional coordinates are relative to parent instead of the root planet object."
|
|
},
|
|
"rename": {
|
|
"type": "string",
|
|
"description": "An optional rename of this volume."
|
|
},
|
|
"creditsType": {
|
|
"default": "fast",
|
|
"$ref": "#/definitions/CreditsType"
|
|
}
|
|
}
|
|
},
|
|
"CreditsType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Fast",
|
|
"Final",
|
|
"Kazoo"
|
|
],
|
|
"enum": [
|
|
"fast",
|
|
"final",
|
|
"kazoo"
|
|
]
|
|
}
|
|
},
|
|
"$docs": {
|
|
"title": "Celestial Body Schema",
|
|
"description": "Schema for a celestial body in New Horizons"
|
|
}
|
|
} |