To register a Body, you need to create a JSON file at data/corewithstuff/cws_planets/planetname.json
{
"dimension": "modid:planet_name", // Target dimension ID.
"display_name": "Display Name", // Display Name it will use on Fast Travel Screen
"removed": false, // True deletes this body. Only "dimension" is read alongside it.
"universe": "modid:universe_name", // Universe registry ID.
"galaxy": "modid:galaxy_name", // Galaxy registry ID.
"system": "System Name", // Solar system name in UI.
"description": "Fast travel description.", // Fast travel menu text.
"use_custom_lighting": true, // Enables custom mod lighting.
"use_distant_structures": false, // True renders player builds past the view distance.
"travel_data": {
"unlocked_by_default": true, // True grants free access.
"unlocking_fee": {
"items": [
{
"item": "minecraft:diamond", // Required item ID.
"amount": 8 // Required item quantity.
}
],
"scoreboards": [
{
"objective": "space_credits", // Scoreboard objective currency.
"amount": 2500 // Scoreboard cost.
}
],
"advancements": [
"minecraft:story/mine_diamond" // Required advancement.
]
},
"travel_cost": {
"items": [
{
"item": "minecraft:ender_pearl", // Item consumed per trip.
"amount": 2 // Quantity consumed per trip.
}
],
"scoreboards": [
{
"objective": "space_fuel", // Score deducted per trip.
"amount": 100 // Amount deducted per trip.
}
],
"advancements": [
"minecraft:story/enter_the_end" // Required advancement to travel.
]
}
},
"texture": "modid:textures/environment/space_skybox.png", // Skybox texture path.
"wormhole_texture": "modid:textures/environment/wormhole.png", // Travel screen texture path.
"gravity_multiplier": 1.0, // Gravity scale relative to vanilla (1.0).
"has_oxygen": true, // False causes suffocation without protection.
"has_radiation": false, // True enables radiation damage.
"use_sky_bodies": false, // True enables Space Bodies showing up in sky, paired with "use_core_skybox"
"sky_latitude": 0.0, // Observer latitude in degrees. Tilts the sky bodies rotate around.
"sky_longitude": 0.0, // Observer longitude in degrees. Offsets the sky starting angle.
"has_acid_rain": false, // True makes rain damage exposed players.
"is_burning": false, // True applies fire damage.
"negates_fall_damage": false, // True disables fall damage.
"bed_works": true, // False causes beds to explode.
"use_core_skybox": true, // True replaces vanilla skybox.
"environment_meteors": false, // True spawns ambient sky meteor particles. Also accepts an object with an "enabled" field.
"hologram_in_dimension": "modid:space_dimension", // Dimension where body renders in sky.
"planet_texture": "modid:textures/planet/planet_name.png", // Sky rendering texture.
"planet_location": [45000.0, 10000.0, 0.0], // [x, y, z] sky coordinates. Unused if orbiting_planet is set.
"planet_size": 1000.0, // Sky render size.
"fast_travel_scale": 1.0, // Fast travel map scale (0.05 to 12.0).
"body_shape": "sphere", // Geometry: sphere, cube, crystal, torus, ringworld, pyramid, octahedron, icosahedron, shard, disc.
"atmosphere_color": "#6644AAFF", // Atmosphere color (ARGB, #AARRGGBB).
"atmosphere_thickness": 0.2, // Atmosphere height multiplier. Also extends the landing radius.
"atmosphere_density": 1.0, // Atmosphere visual opacity.
"tilt_x": 23.5, // X-axis tilt in degrees.
"tilt_y": 0.0, // Y/Z-axis tilt in degrees.
"rotation_period_ticks": 24000, // Ticks per full rotation (24000 = 1 day). Use one rotation key only.
"rotation_period_days": 1.0, // Days per full rotation.
"rotation_period_years": 1.0, // Years per full rotation.
"rotation_speed": 0.0, // Raw rotation speed (degrees/tick).
"emissive": false, // True renders fullbright and casts light.
"glow_color": "#FFFF830A", // Emitted light color (ARGB, #AARRGGBB).
"glow_radius": 1.0, // Light and lens flare multiplier.
"destruction_duration_ticks": 90, // Destruction animation length in ticks.
"landing_radius_scale": 0.0, // Landing radius multiplier (0 = auto).
"shadow_radius_scale": 0.0, // Shadow radius multiplier (0 = auto).
"orbiting_planet": "modid:parent_body_dimension", // Parent dimension ID. Overrides planet_location.
"orbit_period_ticks": 24000, // Ticks per orbit. Use one orbit key only.
"orbit_period_days": 27.32, // Days per orbit.
"orbit_period_years": 1.0, // Years per orbit.
"orbit_speed": 0.0, // Raw orbit speed.
"orbit_radius": 45000.0, // Distance from parent body.
"orbit_phase": 0.0, // Starting angle in degrees.
"orbit_inclination": 0.0, // Orbital tilt in degrees.
"rings": [
{
"texture": "modid:textures/planet/rings.png", // Ring texture path.
"rotation_speed": 10.0, // Rotation speed.
"rotation_direction": "up", // Axis: up, down, north, south, east, west, diagonal.
"destination": "modid:destination_dimension", // Dimension ID when landing on rings.
"tilt_x": 0.0, // X-axis tilt.
"tilt_z": 0.0, // Z-axis tilt.
"inner_radius": 1.3, // Inner boundary relative to planet size.
"outer_radius": 2.6, // Outer boundary relative to planet size.
"opacity": 0.85, // Ring opacity (0.0 to 1.0). 0 also removes it from the landing volume.
"meteor_ring": false, // True replaces texture with 3D meteors.
"meteor_texture": "modid:textures/planet/meteor.png", // 3D meteor texture.
"meteor_shape": "auto", // Meteor shape: auto, cube, irregular.
"meteor_count": 768, // Meteor count (0 to 4096).
"meteor_min_size": 1.5, // Min size in half-blocks.
"meteor_max_size": 8.0, // Max size in half-blocks.
"meteor_thickness": 0.12, // Vertical spread.
"meteor_irregularity": 0.65, // Deformation factor (0.0 to 1.0).
"meteor_seed": 0, // Generation seed (0 = auto).
"meteor_fade_start": 0.0, // Fade start distance (0 = auto).
"meteor_fade_end": 0.0, // Fade end distance (0 = auto).
"meteor_collision": false, // True enables physical collisions.
"meteor_collision_distance": 384.0, // Collision calculation radius.
"meteor_restitution": 0.58 // Bounciness factor (0.0 to 1.25).
}
],
"planet_layers": [
{
"name": "solid_surface", // Identifier for configuration.
"type": "surface", // Type: surface, ocean, clouds, shell, core, glow, custom.
"texture": "modid:textures/planet_layers/surface.png", // Layer texture.
"shape": "inherit", // Geometry: inherit, sphere, cube, crystal, torus, ringworld, pyramid, octahedron, icosahedron, shard, disc.
"blend": "opaque", // Blend mode: opaque, alpha, cutout, additive.
"radius": 1.0, // Scale multiplier relative to base planet.
"color": "#FFFFFFFF", // ARGB tint color.
"opacity": 1.0, // Layer transparency (0.0 to 1.0).
"rotation_speed": 0.0, // Layer rotation speed. Scrolls the texture across the mesh, it does not spin the mesh.
"tilt_x": 0.0, // X-axis tilt in degrees.
"tilt_y": 0.0, // Y-axis tilt in degrees.
"tilt_z": 0.0, // Z-axis tilt in degrees.
"uv_scroll": [0.0, 0.0], // [U, V] scroll speed vector.
"uv_scroll_u": 0.0, // Horizontal scroll speed.
"uv_scroll_v": 0.0, // Vertical scroll speed.
"emissive": false, // True ignores external light.
"depth_write": true, // True writes to depth buffer.
"double_sided": false, // True renders inside faces.
"collidable": true, // True enables player collisions and landing.
"casts_shadow": true, // True casts shadows.
"lighting_strength": 1.0, // Direct light multiplier.
"ambient_light": 0.22, // Unlit side illumination (0.0 to 1.0).
"fresnel_strength": 0.08, // Edge glow strength.
"fresnel_power": 4.0, // Edge glow sharpness.
"specular_strength": 0.18, // Highlight reflection intensity.
"specular_power": 64.0, // Highlight reflection sharpness.
"alpha_cutoff": 0.1, // Cutout alpha threshold. Used when blend is cutout.
"render_order": 100 // Sorting priority (lower renders first).
}
]
}
Sphere And Cube


