From bb51ef2f55633a01ccbf8b803feaf51b35f7a975 Mon Sep 17 00:00:00 2001 From: LeeTwentyThree <31892011+LeeTwentyThree@users.noreply.github.com> Date: Sun, 17 Dec 2023 20:44:48 -0500 Subject: [PATCH 1/9] Increase version to 1.0.0-pre.24 --- Version.targets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Version.targets b/Version.targets index 69107f7f..88086a2a 100644 --- a/Version.targets +++ b/Version.targets @@ -3,7 +3,7 @@ 1.0.0 - 23 + 24 pre.$(SuffixNumber) \ No newline at end of file From 7058c3d4a710cbd1fc09055859659edf19469f3c Mon Sep 17 00:00:00 2001 From: LeeTwentyThree <31892011+LeeTwentyThree@users.noreply.github.com> Date: Sun, 17 Dec 2023 20:48:58 -0500 Subject: [PATCH 2/9] Update authors list (do we still care about this?) --- AUTHORS.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/AUTHORS.md b/AUTHORS.md index fc3478c7..d19dac46 100644 --- a/AUTHORS.md +++ b/AUTHORS.md @@ -3,15 +3,15 @@ We thank all of the following individuals for their contributions to Nautilus. T | Name | Picture | Commits | Name | Picture | Commits | Name | Picture | Commits | | ---- | --------------- | ------ | ---- | --------------- | ------ | ---- | --------------- | ------ | -| [MrPurple6411](https://github.com/MrPurple6411) | | 451 | [PrimeSonic](https://github.com/PrimeSonic) | | 312 | [Metious](https://github.com/Metious) | | 309 | +| [MrPurple6411](https://github.com/MrPurple6411) | | 457 | [Metious](https://github.com/Metious) | | 314 | [PrimeSonic](https://github.com/PrimeSonic) | | 312 | | [toebeann](https://github.com/toebeann) | | 228 | [ahk1221](https://github.com/ahk1221) | | 212 | [Alexejhero](https://github.com/Alexejhero) | | 207 | -| [LeeTwentyThree](https://github.com/LeeTwentyThree) | | 126 | [zorgesho](https://github.com/zorgesho) | | 42 | [JKohlman](https://github.com/JKohlman) | | 37 | +| [LeeTwentyThree](https://github.com/LeeTwentyThree) | | 129 | [zorgesho](https://github.com/zorgesho) | | 42 | [JKohlman](https://github.com/JKohlman) | | 37 | | [K07H](https://github.com/K07H) | | 22 | [Vlad-00003](https://github.com/Vlad-00003) | | 11 | [EckoTheBat](https://github.com/EckoTheBat) | | 11 | -| [github-actions[bot]](https://github.com/apps/github-actions) | | 8 | [Cattlesquat](https://github.com/Cattlesquat) | | 5 | [DingoDjango](https://github.com/DingoDjango) | | 4 | +| [github-actions[bot]](https://github.com/apps/github-actions) | | 9 | [Cattlesquat](https://github.com/Cattlesquat) | | 5 | [DingoDjango](https://github.com/DingoDjango) | | 4 | | [celvro](https://github.com/celvro) | | 4 | [NeisesMike](https://github.com/NeisesMike) | | 3 | [VELD-Dev](https://github.com/VELD-Dev) | | 3 | | [vlyon](https://github.com/vlyon) | | 3 | [EldritchCarMaker](https://github.com/EldritchCarMaker) | | 3 | [jonahnm](https://github.com/jonahnm) | | 3 | | [brett-taylor](https://github.com/brett-taylor) | | 2 | [RamuneNeptune](https://github.com/RamuneNeptune) | | 2 | [tinyhoot](https://github.com/tinyhoot) | | 2 | -| [DeadMor0z](https://github.com/DeadMor0z) | | 1 | [SamuramongeDev](https://github.com/SamuramongeDev) | | 1 | +| [DeadMor0z](https://github.com/DeadMor0z) | | 1 | [Govorunb](https://github.com/Govorunb) | | 1 | [SamuramongeDev](https://github.com/SamuramongeDev) | | 1 | If you notice a problem with this file, feel free to report an issue in the repository. From f92156cb91f6e47fd71b396e798f834f16f97137 Mon Sep 17 00:00:00 2001 From: Lee23 <31892011+LeeTwentyThree@users.noreply.github.com> Date: Mon, 18 Dec 2023 21:10:06 -0500 Subject: [PATCH 3/9] feat: Added scale property to SpawnInfo (#512) Update SpawnInfo with scale (+new overloads) --- Nautilus/Handlers/CoordinatedSpawnsHandler.cs | 63 ++++++++++++++++--- Nautilus/MonoBehaviours/EntitySpawner.cs | 2 +- 2 files changed, 56 insertions(+), 9 deletions(-) diff --git a/Nautilus/Handlers/CoordinatedSpawnsHandler.cs b/Nautilus/Handlers/CoordinatedSpawnsHandler.cs index 85628335..bd12dc50 100644 --- a/Nautilus/Handlers/CoordinatedSpawnsHandler.cs +++ b/Nautilus/Handlers/CoordinatedSpawnsHandler.cs @@ -66,6 +66,10 @@ public struct SpawnInfo : IEquatable internal Quaternion Rotation { get; } [JsonProperty] internal SpawnType Type { get; } + [JsonProperty] + internal Vector3 Scale { get; } + // For the sake of backwards compatibility, a scale of 0x0x0 is automatically converted to 1x1x1. Sorry, no 0x scale entities allowed. + internal Vector3 ActualScale => Scale == default ? Vector3.one : Scale; /// /// Initializes a new . @@ -73,7 +77,7 @@ public struct SpawnInfo : IEquatable /// TechType to spawn. /// Position to spawn into. public SpawnInfo(TechType techType, Vector3 spawnPosition) - : this(default, techType, spawnPosition, Quaternion.identity) { } + : this(default, techType, spawnPosition, Quaternion.identity, Vector3.one) { } /// /// Initializes a new . @@ -81,7 +85,7 @@ public SpawnInfo(TechType techType, Vector3 spawnPosition) /// ClassID to spawn. /// Position to spawn into. public SpawnInfo(string classId, Vector3 spawnPosition) - : this(classId, default, spawnPosition, Quaternion.identity) { } + : this(classId, default, spawnPosition, Quaternion.identity, Vector3.one) { } /// /// Initializes a new . @@ -90,7 +94,7 @@ public SpawnInfo(string classId, Vector3 spawnPosition) /// Position to spawn into. /// Rotation to spawn at. public SpawnInfo(TechType techType, Vector3 spawnPosition, Quaternion rotation) - : this(default, techType, spawnPosition, rotation) { } + : this(default, techType, spawnPosition, rotation, Vector3.one) { } /// /// Initializes a new . @@ -99,7 +103,27 @@ public SpawnInfo(TechType techType, Vector3 spawnPosition, Quaternion rotation) /// Position to spawn into. /// Rotation to spawn at. public SpawnInfo(string classId, Vector3 spawnPosition, Quaternion rotation) - : this(classId, default, spawnPosition, rotation) { } + : this(classId, default, spawnPosition, rotation, Vector3.one) { } + + /// + /// Initializes a new . + /// + /// TechType to spawn. + /// Position to spawn into. + /// Rotation to spawn at. + /// Scale to spawn with. + public SpawnInfo(TechType techType, Vector3 spawnPosition, Quaternion rotation, Vector3 scale) + : this(default, techType, spawnPosition, rotation, scale) { } + + /// + /// Initializes a new . + /// + /// ClassID to spawn. + /// Position to spawn into. + /// Rotation to spawn at. + /// Scale to spawn with. + public SpawnInfo(string classId, Vector3 spawnPosition, Quaternion rotation, Vector3 scale) + : this(classId, default, spawnPosition, rotation, scale) { } /// /// Initializes a new . @@ -108,7 +132,7 @@ public SpawnInfo(string classId, Vector3 spawnPosition, Quaternion rotation) /// Position to spawn into. /// Rotation to spawn at. public SpawnInfo(TechType techType, Vector3 spawnPosition, Vector3 rotation) - : this(default, techType, spawnPosition, Quaternion.Euler(rotation)) { } + : this(default, techType, spawnPosition, Quaternion.Euler(rotation), Vector3.one) { } /// /// Initializes a new . @@ -117,10 +141,30 @@ public SpawnInfo(TechType techType, Vector3 spawnPosition, Vector3 rotation) /// Position to spawn into. /// Rotation to spawn at. public SpawnInfo(string classId, Vector3 spawnPosition, Vector3 rotation) - : this(classId, default, spawnPosition, Quaternion.Euler(rotation)) { } + : this(classId, default, spawnPosition, Quaternion.Euler(rotation), Vector3.one) { } + + /// + /// Initializes a new . + /// + /// TechType to spawn. + /// Position to spawn into. + /// Rotation to spawn at. + /// Scale to spawn with. + public SpawnInfo(TechType techType, Vector3 spawnPosition, Vector3 rotation, Vector3 scale) + : this(default, techType, spawnPosition, Quaternion.Euler(rotation), scale) { } + + /// + /// Initializes a new . + /// + /// ClassID to spawn. + /// Position to spawn into. + /// Rotation to spawn at. + /// Scale to spawn with. + public SpawnInfo(string classId, Vector3 spawnPosition, Vector3 rotation, Vector3 scale) + : this(classId, default, spawnPosition, Quaternion.Euler(rotation), scale) { } [JsonConstructor] - internal SpawnInfo(string classId, TechType techType, Vector3 spawnPosition, Quaternion rotation) + internal SpawnInfo(string classId, TechType techType, Vector3 spawnPosition, Quaternion rotation, Vector3 scale) { ClassId = classId; TechType = techType; @@ -131,6 +175,7 @@ internal SpawnInfo(string classId, TechType techType, Vector3 spawnPosition, Qua default(TechType) => SpawnType.ClassId, _ => SpawnType.TechType }; + Scale = scale; } /// @@ -165,6 +210,7 @@ public override int GetHashCode() hash = (hash * 7) + SpawnPosition.GetHashCode(); hash = (hash * 7) + Rotation.GetHashCode(); hash = (hash * 7) + Type.GetHashCode(); + hash = (hash * 7) + ActualScale.GetHashCode(); return hash; } } @@ -186,7 +232,8 @@ public bool Equals(SpawnInfo other) && other.ClassId == ClassId && other.SpawnPosition == SpawnPosition && other.Rotation == Rotation - && other.Type == Type; + && other.Type == Type + && other.ActualScale == ActualScale; } internal enum SpawnType diff --git a/Nautilus/MonoBehaviours/EntitySpawner.cs b/Nautilus/MonoBehaviours/EntitySpawner.cs index c94bb24a..3ebe0c59 100644 --- a/Nautilus/MonoBehaviours/EntitySpawner.cs +++ b/Nautilus/MonoBehaviours/EntitySpawner.cs @@ -36,7 +36,7 @@ IEnumerator SpawnAsync() } - GameObject obj = UWE.Utils.InstantiateDeactivated(prefab, spawnInfo.SpawnPosition, spawnInfo.Rotation); + GameObject obj = UWE.Utils.InstantiateDeactivated(prefab, spawnInfo.SpawnPosition, spawnInfo.Rotation, spawnInfo.ActualScale); LargeWorldEntity lwe = obj.GetComponent(); From 07af00dfb5e79523b8e5dc7457f481200d25cf8c Mon Sep 17 00:00:00 2001 From: Lee23 <31892011+LeeTwentyThree@users.noreply.github.com> Date: Tue, 19 Dec 2023 00:23:53 -0500 Subject: [PATCH 4/9] feat: Custom Biome Handler (#511) * Add basic documentation on biomes * Add BiomeHandler * Add AtmosphereVolumeTemplate * Fix priority property not being set * Add BZ biomes to docs and fix table * Add example mod for biomes * Make it clear that the biomes tutorial is unfinished * Allow skies to be referenced via callback * Move CreateBiomeSettings to BiomeUtils * Add CreateSkyPrefab utility method * Rename the SkyPrefabsParent * Allow atmos vol cell level changes (batch is dumb) * Horrible code to fix horrible bugs (lose-lose) * Fix scale of example biome * Add handling for custom biome sounds * Fix errors in main menu * Add sounds to example mod biome * Fix another dumb issue --- Example mod/BiomeHandlerExample.cs | 41 +++ .../AtmosphereVolumeTemplate.cs | 107 +++++++ Nautilus/Documentation/tutorials/biomes.md | 269 ++++++++++++++++++ Nautilus/Documentation/tutorials/overview.md | 1 + Nautilus/Documentation/tutorials/toc.yml | 2 + Nautilus/Handlers/BiomeHandler.cs | 117 ++++++++ Nautilus/Initializer.cs | 2 + Nautilus/Patchers/BiomePatcher.cs | 141 +++++++++ Nautilus/Utility/BiomeUtils.cs | 148 ++++++++++ 9 files changed, 828 insertions(+) create mode 100644 Example mod/BiomeHandlerExample.cs create mode 100644 Nautilus/Assets/PrefabTemplates/AtmosphereVolumeTemplate.cs create mode 100644 Nautilus/Documentation/tutorials/biomes.md create mode 100644 Nautilus/Handlers/BiomeHandler.cs create mode 100644 Nautilus/Patchers/BiomePatcher.cs create mode 100644 Nautilus/Utility/BiomeUtils.cs diff --git a/Example mod/BiomeHandlerExample.cs b/Example mod/BiomeHandlerExample.cs new file mode 100644 index 00000000..7a36effd --- /dev/null +++ b/Example mod/BiomeHandlerExample.cs @@ -0,0 +1,41 @@ +using BepInEx; +using Nautilus.Assets; +using Nautilus.Assets.PrefabTemplates; +using Nautilus.Handlers; +using Nautilus.Utility; +using UnityEngine; + +namespace Nautilus.Examples; + +[BepInPlugin("com.snmodding.nautilus.biomehandler", "Nautilus Biome Example Mod", Nautilus.PluginInfo.PLUGIN_VERSION)] +[BepInDependency("com.snmodding.nautilus")] +public class BiomeHandlerExample : BaseUnityPlugin +{ + private void Awake() + { + // Register the new biome into the game + var lilyPadsFogSettings = BiomeUtils.CreateBiomeSettings(new Vector3(20, 5, 6), 0.6f, Color.white, 0.45f, + new Color(0.18f, 0.604f, 0.404f), 0.05f, 20, 1, 1.25f, 20); +#if SUBNAUTICA + BiomeHandler.RegisterBiome("nautilusexamplebiome", lilyPadsFogSettings, new BiomeHandler.SkyReference("SkyKelpForest")); +#elif BELOWZERO + BiomeHandler.RegisterBiome("nautilusexamplebiome", lilyPadsFogSettings, new BiomeHandler.SkyReference("SkyLilyPads")); +#endif + + #if SUBNAUTICA + // Add wreck ambience & music + BiomeHandler.AddBiomeMusic("nautilusexamplebiome", AudioUtils.GetFmodAsset("event:/env/music/wreak_ambience_big_music")); + BiomeHandler.AddBiomeAmbience("nautilusexamplebiome", AudioUtils.GetFmodAsset("event:/env/background/wreak_ambience_big"), FMODGameParams.InteriorState.OnlyOutside); + #endif + + // Create an atmosphere volume for the biome + PrefabInfo volumePrefabInfo = PrefabInfo.WithTechType("NautilusExampleBiomeSphereVolume"); + CustomPrefab volumePrefab = new CustomPrefab(volumePrefabInfo); + AtmosphereVolumeTemplate volumeTemplate = new AtmosphereVolumeTemplate(volumePrefabInfo, AtmosphereVolumeTemplate.VolumeShape.Sphere, "nautilusexamplebiome"); + volumePrefab.SetGameObject(volumeTemplate); + volumePrefab.Register(); + + // Add the biome somewhere to the world + CoordinatedSpawnsHandler.RegisterCoordinatedSpawn(new SpawnInfo(volumePrefabInfo.ClassID, new Vector3(-1400, -80, 600), Quaternion.identity, new Vector3(50, 50, 50))); + } +} \ No newline at end of file diff --git a/Nautilus/Assets/PrefabTemplates/AtmosphereVolumeTemplate.cs b/Nautilus/Assets/PrefabTemplates/AtmosphereVolumeTemplate.cs new file mode 100644 index 00000000..2db3ce64 --- /dev/null +++ b/Nautilus/Assets/PrefabTemplates/AtmosphereVolumeTemplate.cs @@ -0,0 +1,107 @@ +using System; +using System.Collections; +using UnityEngine; + +namespace Nautilus.Assets.PrefabTemplates; + +/// +/// A template for Atmosphere Volumes, which are basic invisible triggers for mini-biomes. +/// +public class AtmosphereVolumeTemplate : PrefabTemplate +{ + private const int AtmosphereVolumesLayer = 21; + + /// + /// The shape of this atmosphere volume. + /// + public VolumeShape Shape { get; set; } + /// + /// The biome type used by this atmosphere volume. + /// + public string OverrideBiome { get; set; } + /// + /// The priority of this atmosphere volume. Atmosphere volumes with higher priorities override those with lower priorities. The default priority is 10. + /// + public int Priority { get; set; } + + /// + /// Determines the loading distance of this atmosphere volume prefab. Default value is . Although vanilla prefabs always use Batch for this, this does not work with our custom systems. + /// + public LargeWorldEntity.CellLevel CellLevel { get; set; } + + /// + /// Callback that will get called after the prefab is retrieved. Use this to modify or process your prefab further more. + /// + public System.Action ModifyPrefab { get; set; } + + /// + /// Callback that will get called after the prefab is retrieved. Use this to modify or process your prefab further more asynchronously. + /// + public System.Func ModifyPrefabAsync { get; set; } + + /// + /// Creates a new prefab template for an asset bundle. + /// + /// The prefab info to base this template off of. + /// The shape of this atmosphere volume. + /// The biome type used by this atmosphere volume. + /// The priority of this atmosphere volume. Atmosphere volumes with higher priorities override those with lower priorities. + /// Determines the loading distance of this atmosphere volume prefab. Although vanilla prefabs always use Batch for this, this does not work with our custom systems. + public AtmosphereVolumeTemplate(PrefabInfo info, VolumeShape shape, string overrideBiome, int priority = 10, LargeWorldEntity.CellLevel cellLevel = LargeWorldEntity.CellLevel.Far) : base(info) + { + Shape = shape; + OverrideBiome = overrideBiome; + Priority = priority; + CellLevel = cellLevel; + } + + /// + /// Creates an atmosphere volume prefab. + /// + public override IEnumerator GetPrefabAsync(TaskResult gameObject) + { + var prefab = new GameObject(info.ClassID); + prefab.layer = AtmosphereVolumesLayer; + + Collider collider = Shape switch + { + VolumeShape.Sphere => prefab.AddComponent(), + VolumeShape.Cube => prefab.AddComponent(), + VolumeShape.Capsule => prefab.AddComponent(), + _ => throw new NotImplementedException() + }; + collider.isTrigger = true; + + prefab.AddComponent().ClassId = info.ClassID; + prefab.AddComponent().cellLevel = CellLevel; + + var atmosphereVolume = prefab.AddComponent(); + atmosphereVolume.overrideBiome = OverrideBiome; + atmosphereVolume.priority = Priority; + + ModifyPrefab?.Invoke(prefab); + if (ModifyPrefabAsync is { }) + yield return ModifyPrefabAsync(prefab); + + gameObject.Set(prefab); + } + + /// + /// The shape of an atmosphere volume's trigger. + /// + public enum VolumeShape + { + /// + /// Sphere with default radius 0.5m (diameter 1m). + /// + Sphere, + /// + /// Cube with default dimensions of 1x1x1m. + /// + Cube, + /// + /// Capsule with default radius of 0.5m and height of 2m. + /// + Capsule + } +} \ No newline at end of file diff --git a/Nautilus/Documentation/tutorials/biomes.md b/Nautilus/Documentation/tutorials/biomes.md new file mode 100644 index 00000000..9a04c447 --- /dev/null +++ b/Nautilus/Documentation/tutorials/biomes.md @@ -0,0 +1,269 @@ +# Adding Custom Biomes +This guide provides some information on adding custom biomes. + +> [!NOTE] +> This page is under construction and may not be finished any time soon. However, any information currently provided should still be accurate. + +## Biomes reference list + +
+ Expand to view base game biome data (SN1): + +| Biome name | Sky name | Settings | +|--------------|-----------------|-------------------------------------------------------| +| safeShallows | SkySafeShallows | Absorption: (125.0, 20.0, 4.0)
Scattering: 1.2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.18
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 1
Ambient scale: 1.5
Temperature: 28
| +| safeShallows_WreckInterior | SkyExplorableWreck | Absorption: (125.0, 20.0, 4.0)
Scattering: 0.6
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.18
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 28
| +| kelpForest | SkyKelpForest | Absorption: (80.0, 25.0, 30.0)
Scattering: 1.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.16
Emissive: RGBA(0.934, 1.000, 0.000, 1.000)
Emissive scale: 0.01
Start distance: 25
Sunlight scale: 1
Ambient scale: 1.5
Temperature: 27
| +| kelpForest_WreckInterior | SkyExplorableWreck | Absorption: (80.0, 25.0, 30.0)
Scattering: 1.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.16
Emissive: RGBA(0.934, 1.000, 0.000, 1.000)
Emissive scale: 0.01
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 27
| +| grassyPlateaus | SkyGrassyPlateaus | Absorption: (10.0, 4.5, 3.0)
Scattering: 0.4
Scattering color: RGBA(0.761, 0.761, 0.761, 1.000)
Murkiness: 0.45
Emissive: RGBA(0.267, 0.498, 0.663, 1.000)
Emissive scale: 0.06
Start distance: 35
Sunlight scale: 1.75
Ambient scale: 2
Temperature: 26
| +| grassyPlateaus_WreckInterior | SkyExplorableWreck | Absorption: (20.0, 7.0, 3.0)
Scattering: 0.3
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 26
| +| mountains | SkyMountains | Absorption: (40.0, 15.0, 9.0)
Scattering: 0.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.12
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 1.4
Ambient scale: 1
Temperature: 24
| +| mushroomForest | SkyMushroomForest | Absorption: (100.0, 30.0, 20.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.05
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 1
Ambient scale: 2
Temperature: 24
| +| kooshZone | SkyKooshZone | Absorption: (30.0, 23.0, 12.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.14
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 24
| +| grandReef | SkyGrandReef | Absorption: (16.0, 12.0, 6.0)
Scattering: 2
Scattering color: RGBA(0.000, 1.000, 0.912, 1.000)
Murkiness: 0.25
Emissive: RGBA(0.000, 0.956, 1.000, 1.000)
Emissive scale: 0.03
Start distance: 40
Sunlight scale: 0.5
Ambient scale: 20
Temperature: 24
| +| deepGrandReef | SkyDeepGrandReef | Absorption: (6.0, 4.0, 3.0)
Scattering: 0.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.4
Emissive: RGBA(0.000, 0.959, 1.000, 1.000)
Emissive scale: 0.04
Start distance: 25
Sunlight scale: 0
Ambient scale: 100
Temperature: 24
| +| ilzChamber | SkyILZChamber | Absorption: (0.1, 2.0, 2.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 1
Emissive: RGBA(0.451, 0.455, 0.271, 1.000)
Emissive scale: 0.09
Start distance: 80
Sunlight scale: 0
Ambient scale: 0
Temperature: 60
| +| ilzCorridor | SkyILZChamber | Absorption: (3.0, 3.0, 1.5)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.376, 0.439, 0.447, 1.000)
Emissive scale: 0.035
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 60
| +| sparseReef | SkyMountains | Absorption: (10.0, 2.8, 2.8)
Scattering: 0.3
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.8
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 24
| +| floatingIslandsSurface | SkyMountains | Absorption: (100.0, 18.3, 3.5)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 1
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 24
| +| floatingIsland | SkyMountains | Absorption: (100.0, 18.3, 3.5)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 1
Emissive: RGBA(0.000, 0.216, 0.196, 1.000)
Emissive scale: 10
Start distance: 25
Sunlight scale: 3.2
Ambient scale: 1
Temperature: 34
| +| floatingIslandBelow | SkyMountains | Absorption: (3.0, 1.5, 1.0)
Scattering: 0.7
Scattering color: RGBA(0.000, 0.408, 0.573, 1.000)
Murkiness: 0.55
Emissive: RGBA(0.000, 0.490, 0.784, 1.000)
Emissive scale: 0.03
Start distance: 10
Sunlight scale: 0.03
Ambient scale: 0.2
Temperature: 24
| +| underwaterIslands | SkyMountains | Absorption: (25.0, 10.0, 5.0)
Scattering: 0.8
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.3
Emissive: RGBA(1.000, 0.279, 0.629, 1.000)
Emissive scale: 0.015
Start distance: 25
Sunlight scale: 1
Ambient scale: 5
Temperature: 24
| +| underwaterIslands_IslandCave | SkyMountains | Absorption: (25.0, 10.0, 5.0)
Scattering: 0.8
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.3
Emissive: RGBA(0.000, 0.250, 1.000, 1.000)
Emissive scale: 0.15
Start distance: 15
Sunlight scale: 0
Ambient scale: 5
Temperature: 24
| +| underwaterIslands_Cave | SkyMountains | Absorption: (25.0, 10.0, 5.0)
Scattering: 0.8
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.3
Emissive: RGBA(0.368, 0.000, 1.000, 1.000)
Emissive scale: 0.1
Start distance: 15
Sunlight scale: 0
Ambient scale: 5
Temperature: 24
| +| dunes | SkyDunes | Absorption: (20.0, 10.0, 6.0)
Scattering: 0.5
Scattering color: RGBA(0.341, 0.427, 0.447, 1.000)
Murkiness: 0.2
Emissive: RGBA(0.102, 0.133, 0.149, 1.000)
Emissive scale: 0.2
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 24
| +| bloodKelp | SkyBloodKelp | Absorption: (50.0, 8.0, 4.0)
Scattering: 0.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.4
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 24
| +| crashZone | SkyCrashZone | Absorption: (20.0, 20.0, 20.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.12
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 20
Sunlight scale: 1
Ambient scale: 1
Temperature: 24
| +| bloodKelp_Trench | SkyBloodKelp | Absorption: (35.0, 9.0, 5.0)
Scattering: 0.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.000, 1.000, 1.000, 1.000)
Emissive scale: 0.005
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 24
| +| bloodKelp_Cave | SkyBloodKelp | Absorption: (100.0, 33.0, 20.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.2
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 24
| +| safeShallows_Cave | SkySafeShallows_Caves | Absorption: (25.0, 15.0, 6.0)
Scattering: 0.1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.18
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0.005
Start distance: 25
Sunlight scale: 0.02
Ambient scale: 1
Temperature: 26
| +| safeShallows_HugeTube | SkySafeShallows | Absorption: (125.0, 20.0, 4.0)
Scattering: 0.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.18
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0.4
Ambient scale: 1
Temperature: 26
| +| safeShallows_CaveEntrance | SkySafeShallows | Absorption: (125.0, 20.0, 4.0)
Scattering: 1.2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.18
Emissive: RGBA(0.956, 0.984, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0.8
Ambient scale: 0.8
Temperature: 27
| +| jellyshroomCaves | SkyJellyshroomCaves | Absorption: (3.0, 3.0, 3.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.570, 0.339, 0.853, 1.000)
Emissive scale: 0.05
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| jellyshroomCaves_Entrance | SkyJellyshroomCaves | Absorption: (16.0, 6.0, 3.0)
Scattering: 0.3
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(1.000, 0.000, 0.931, 1.000)
Emissive scale: 0.01
Start distance: 25
Sunlight scale: 0.4
Ambient scale: 1
Temperature: 24
| +| kelpForest_Dense | SkyKelpForest | Absorption: (140.0, 32.0, 47.0)
Scattering: 1.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.18
Emissive: RGBA(0.934, 1.000, 0.000, 1.000)
Emissive scale: 0.02
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 27
| +| kelpForest_Cave | SkyKelpForest | Absorption: (140.0, 32.0, 47.0)
Scattering: 0.1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.2
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0.1
Ambient scale: 1
Temperature: 25
| +| kelpForest_CaveEntrance | SkyKelpForest | Absorption: (80.0, 25.0, 30.0)
Scattering: 0.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.18
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0.4
Ambient scale: 1
Temperature: 26
| +| bloodKelp_DeepTrench | SkyBloodKelp | Absorption: (35.0, 9.0, 5.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0.005
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 24
| +| grassyPlateaus_Cave | SkyGrassyPlateaus | Absorption: (5.0, 6.0, 3.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.8
Emissive: RGBA(0.208, 0.353, 1.000, 1.000)
Emissive scale: 0.03
Start distance: 20
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| kooshZone_cave_trans | SkyKooshZone | Absorption: (14.0, 10.0, 10.0)
Scattering: 0.3
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.4
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0.01
Start distance: 25
Sunlight scale: 0.3
Ambient scale: 1
Temperature: 24
| +| kooshZone_cave_dark | SkyKooshZone | Absorption: (14.0, 10.0, 10.0)
Scattering: 0.3
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.4
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0.01
Start distance: 25
Sunlight scale: 0
Ambient scale: 0.2
Temperature: 24
| +| Mountains_Cave | SkyMountainsCaves | Absorption: (40.0, 15.0, 9.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.1
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0.2
Temperature: 24
| +| Mountains_Island_Cave | SkyMountainsCaves | Absorption: (40.0, 15.0, 9.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.1
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0.2
Temperature: 24
| +| Mountains_IslandSurface_Cave | SkyMountains | Absorption: (40.0, 15.0, 9.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.1
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0.2
Temperature: 24
| +| Mountains_CaveEntrance | SkyMountains | Absorption: (40.0, 15.0, 9.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.2
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0.1
Ambient scale: 1
Temperature: 24
| +| Mountains_Island_CaveEntrance | SkyMountains | Absorption: (40.0, 15.0, 9.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.2
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0.1
Ambient scale: 1
Temperature: 24
| +| Mountains_IslandSurface_CaveEntrance | SkyMountains | Absorption: (40.0, 15.0, 9.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.2
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 1
Temperature: 24
| +| Dunes_Cave_light | SkyMountains | Absorption: (20.0, 10.0, 6.0)
Scattering: 0.1
Scattering color: RGBA(0.341, 0.427, 0.447, 1.000)
Murkiness: 0.2
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0.8
Ambient scale: 1
Temperature: 24
| +| Dunes_Cave_Dark | SkyMountains | Absorption: (20.0, 10.0, 6.0)
Scattering: 0.1
Scattering color: RGBA(0.341, 0.427, 0.447, 1.000)
Murkiness: 0.2
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0.5
Ambient scale: 0.8
Temperature: 24
| +| mushroomForest_cave_light | SkyMushroomForest | Absorption: (100.0, 30.0, 20.0)
Scattering: 0.8
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.1
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0.8
Ambient scale: 1
Temperature: 24
| +| mushroomForest_cave_dark | SkyMushroomForestCave | Absorption: (100.0, 30.0, 20.0)
Scattering: 0.1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.2
Emissive: RGBA(0.000, 0.824, 1.000, 1.000)
Emissive scale: 0.075
Start distance: 25
Sunlight scale: 0
Ambient scale: 1
Temperature: 24
| +| PrecursorCave_MushroomForest | SkyMushroomForestCave | Absorption: (0.2, 0.2, 0.2)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 1.5
Emissive: RGBA(0.000, 0.824, 1.000, 1.000)
Emissive scale: 0.002
Start distance: 10
Sunlight scale: 0
Ambient scale: 1
Temperature: 24
| +| GrandReef_Cave | SkyGrandReef | Absorption: (12.0, 10.0, 5.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.4
Emissive: RGBA(0.919, 0.324, 0.780, 1.000)
Emissive scale: 0.01
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 24
| +| CrashedShip_Interior | SkyExplodedShipInteriorPowerCorridor | Absorption: (7.0, 12.0, 20.0)
Scattering: 0.02
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 1
Emissive: RGBA(0.919, 0.460, 0.324, 1.000)
Emissive scale: 0.01
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashedShip_Interior_Power | SkyExplodedShipInteriorPowerRoom | Absorption: (50.0, 40.0, 30.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.662, 0.420, 0.365, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| crashZone_NoLoot | SkyMountains | Absorption: (100.0, 30.0, 20.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.1
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 24
| +| seaTreaderPath | SkyMountains | Absorption: (100.0, 33.0, 20.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.08
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 24
| +| seaTreaderPath_Cave_light | SkyMountains | Absorption: (100.0, 33.0, 20.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.1
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0.5
Ambient scale: 1
Temperature: 24
| +| seaTreaderPath_Cave_dark | SkyMountains | Absorption: (100.0, 33.0, 20.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.15
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 1
Temperature: 24
| +| KelpForest_DenseVine | SkyKelpForest | Absorption: (140.0, 32.0, 47.0)
Scattering: 1.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.18
Emissive: RGBA(0.934, 1.000, 0.000, 1.000)
Emissive scale: 0.02
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 27
| +| GrassyPlateaus_Tower | SkyGrassyPlateaus | Absorption: (10.0, 4.5, 3.0)
Scattering: 0.4
Scattering color: RGBA(0.761, 0.761, 0.761, 1.000)
Murkiness: 0.45
Emissive: RGBA(0.268, 0.499, 0.662, 1.000)
Emissive scale: 0.06
Start distance: 35
Sunlight scale: 1.75
Ambient scale: 2
Temperature: 24
| +| ILZCastleChamber | SkyILZChamber | Absorption: (0.5, 0.3, 1.0)
Scattering: 0.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 2
Emissive: RGBA(1.000, 0.329, 0.154, 1.000)
Emissive scale: 0.08
Start distance: 5
Sunlight scale: 0
Ambient scale: 0
Temperature: 60
| +| InactiveLavaZone | SkyMountains | Absorption: (25.0, 10.0, 5.0)
Scattering: 0.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.4
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 24
| +| bloodKelpTwo | SkyBloodKelpTwo | Absorption: (35.0, 7.0, 5.5)
Scattering: 0.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.15
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 24
| +| bloodKelpTwo_Cave | SkyBloodKelpTwo | Absorption: (35.0, 6.5, 5.0)
Scattering: 0.1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.2
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 0.01
Start distance: 25
Sunlight scale: 0
Ambient scale: 0.7
Temperature: 24
| +| LostRiver_BonesField | SkyBonesField | Absorption: (4.0, 2.0, 1.3)
Scattering: 0.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.4
Emissive: RGBA(0.000, 0.561, 0.375, 1.000)
Emissive scale: 0.2
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 34
| +| LostRiver_BonesField_Skeleton | SkyBonesField | Absorption: (4.0, 2.0, 1.3)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.000, 0.559, 0.374, 1.000)
Emissive scale: 0.25
Start distance: 15
Sunlight scale: 0
Ambient scale: 0
Temperature: 34
| +| LostRiver_BonesField_Cave | SkyBonesField | Absorption: (4.0, 2.0, 1.3)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 2
Emissive: RGBA(0.000, 0.559, 0.485, 1.000)
Emissive scale: 0.1
Start distance: 0
Sunlight scale: 0
Ambient scale: 0
Temperature: 34
| +| LostRiver_BonesField_Corridor | SkyBonesField_Corridor | Absorption: (3.0, 3.0, 2.0)
Scattering: 0.1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.000, 0.559, 0.374, 1.000)
Emissive scale: 0.15
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 30
| +| LostRiver_BonesField_Lake | SkyBonesField | Absorption: (10.0, 5.0, 2.5)
Scattering: 0.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.243, 1.000, 0.467, 1.000)
Emissive scale: 0.2
Start distance: 5
Sunlight scale: 0
Ambient scale: 1
Temperature: 39
| +| LostRiver_BonesField_LakePit | SkyBonesField | Absorption: (12.0, 6.0, 3.0)
Scattering: 0.3
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.243, 1.000, 0.467, 1.000)
Emissive scale: 0.2
Start distance: 0
Sunlight scale: 0
Ambient scale: 1
Temperature: 39
| +| LostRiver_BonesField_Corridor_Stream | SkyBonesField_Corridor | Absorption: (10.0, 5.0, 2.5)
Scattering: 0.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.243, 1.000, 0.467, 1.000)
Emissive scale: 0.3
Start distance: 0
Sunlight scale: 0
Ambient scale: 1
Temperature: 34
| +| ILZCastleTunnel | SkyILZChamber | Absorption: (1.0, 1.0, 1.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 2
Emissive: RGBA(1.000, 0.329, 0.154, 1.000)
Emissive scale: 0.08
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 60
| +| ALZChamber | SkyLavaLake | Absorption: (0.3, 1.0, 1.0)
Scattering: 0.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 1
Emissive: RGBA(1.000, 0.329, 0.154, 1.000)
Emissive scale: 0.08
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 80
| +| ALZFalls | SkyLavaLake | Absorption: (0.5, 1.0, 1.0)
Scattering: 0.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 1
Emissive: RGBA(1.000, 0.329, 0.154, 1.000)
Emissive scale: 0.08
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 70
| +| Prison_UpperRoom | SkyPrecursorPrisonAntechamber_NoLightmaps | Absorption: (0.0, 0.0, 0.0)
Scattering: 0.0001
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.001
Emissive: RGBA(0.601, 0.765, 0.444, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 34
| +| Prison_Aquarium | SkyPrecursorPrisonAquarium | Absorption: (8.0, 4.5, 4.5)
Scattering: 0.2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.3
Emissive: RGBA(0.145, 0.302, 0.255, 1.000)
Emissive scale: 0.4
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 21
| +| ilzLava | SkyILZChamber | Absorption: (0.3, 1.0, 1.0)
Scattering: 0.5
Scattering color: RGBA(0.000, 0.000, 0.000, 1.000)
Murkiness: 1
Emissive: RGBA(1.000, 0.329, 0.154, 1.000)
Emissive scale: 0.05
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 80
| +| LostRiver_TreeCove | SkyLostRiver_TreeCove | Absorption: (2.0, 1.0, 0.5)
Scattering: 0.1
Scattering color: RGBA(0.041, 0.125, 0.239, 1.000)
Murkiness: 1
Emissive: RGBA(0.062, 0.109, 0.173, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 34
| +| CrashedShip_Interior_ExoPipes | SkyExplodedShipInteriorPipesRoom | Absorption: (50.0, 40.0, 30.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.831, 0.507, 0.675, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashedShip_Interior_Exo | SkyExplodedShipInteriorExoRoom | Absorption: (70.0, 110.0, 70.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.778, 0.691, 1.000, 1.000)
Emissive scale: 0.05
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashedShip_Interior_Locker | SkyExplodedShipInteriorPowerCorridor | Absorption: (50.0, 40.0, 30.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.128, 0.173, 0.243, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashedShip_Interior_Seamoth | SkyExplodedShipInteriorPowerCorridor | Absorption: (70.0, 110.0, 70.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.449, 0.402, 0.413, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashedShip_Interior_Elevator | SkyExplodedShipInteriorPowerCorridor | Absorption: (50.0, 40.0, 30.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.500, 0.344, 0.309, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashedShip_Interior_Cargo | SkyExplodedShipInteriorPowerCorridor | Absorption: (50.0, 40.0, 30.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 1.5
Emissive: RGBA(0.394, 0.154, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashedShip_Interior_Entrance_01_01 | SkyExplodedShipInteriorEntrance_03 | Absorption: (50.0, 40.0, 30.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.128, 0.173, 0.243, 1.000)
Emissive scale: 0.5
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashedShip_Interior_Entrance_01_02 | SkyExplodedShipInteriorEntrance_03 | Absorption: (50.0, 40.0, 30.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.394, 0.154, 1.000, 1.000)
Emissive scale: 0.5
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashedShip_Interior_Entrance_01_03 | SkyExplodedShipInteriorEntrance_03 | Absorption: (50.0, 40.0, 30.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.394, 0.154, 1.000, 1.000)
Emissive scale: 0.1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashedShip_Interior_Entrance_02_01 | SkyExplodedShipInteriorEntrance_03 | Absorption: (50.0, 40.0, 30.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.394, 0.154, 1.000, 1.000)
Emissive scale: 0.1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashedShip_Interior_Entrance_02_02 | SkyExplodedShipInteriorEntrance_03 | Absorption: (70.0, 110.0, 70.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 1.5
Emissive: RGBA(0.394, 0.154, 1.000, 1.000)
Emissive scale: 0.1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashedShip_Interior_Entrance_03 | SkyExplodedShipInteriorEntrance_03 | Absorption: (50.0, 40.0, 30.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.500, 0.344, 0.309, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashedShip_Interior_PowerCorridor | SkyExplodedShipInteriorPowerCorridor | Absorption: (50.0, 40.0, 30.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.500, 0.344, 0.309, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashedShip_Interior_LockerCorridor | SkyExplodedShipInteriorPowerCorridor | Absorption: (50.0, 40.0, 30.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.500, 0.344, 0.309, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashedShip_Interior_SeamothRoom | SkyExplodedShipInteriorSeamothRoom_02 | Absorption: (50.0, 40.0, 30.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.500, 0.344, 0.309, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashedShip_Interior_LivingArea | SkyExplodedShipInteriorExoRoom | Absorption: (80.0, 110.0, 70.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.394, 0.154, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashedShip_Interior_THallway | SkyExplodedShipInteriorPowerCorridor | Absorption: (50.0, 40.0, 30.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.394, 0.154, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashedShip_Interior_THallwayLower | SkyExplodedShipInteriorPowerCorridor | Absorption: (50.0, 40.0, 30.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.394, 0.154, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| LavaLakes | SkyLavaLake | Absorption: (0.6, 0.3, 1.0)
Scattering: 0.75
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.55
Emissive: RGBA(1.000, 0.329, 0.154, 1.000)
Emissive scale: 0.05
Start distance: 65
Sunlight scale: 0
Ambient scale: 0
Temperature: 80
| +| LavaFalls | SkyLavaLake | Absorption: (0.5, 1.0, 1.0)
Scattering: 0.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 1
Emissive: RGBA(1.000, 0.329, 0.154, 1.000)
Emissive scale: 0.08
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 70
| +| LavaLakes_LavaPool | SkyLavaLake | Absorption: (0.5, 0.6, 1.0)
Scattering: 0.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 1
Emissive: RGBA(1.000, 0.471, 0.157, 1.000)
Emissive scale: 0.15
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 80
| +| LavaPit | SkyILZChamber | Absorption: (3.0, 2.0, 1.5)
Scattering: 0.1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.4
Emissive: RGBA(0.424, 0.588, 0.651, 1.000)
Emissive scale: 0.03
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 60
| +| Precursor_Gun_OuterRooms | SkyPrecursorInterior_NoLightmaps | Absorption: (0.0, 0.0, 0.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.01
Emissive: RGBA(0.824, 0.922, 0.828, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| LostRiver_TreeCove_Water | SkyLostRiver_TreeCove | Absorption: (4.0, 4.0, 5.0)
Scattering: 1
Scattering color: RGBA(0.000, 0.226, 0.275, 1.000)
Murkiness: 0.4
Emissive: RGBA(0.000, 0.550, 0.667, 1.000)
Emissive scale: 0.8
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 39
| +| Precursor_Gun_MoonPoolWater | SkyPrecursorInterior_NoLightmaps | Absorption: (12.0, 10.0, 12.0)
Scattering: 0.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.000, 0.560, 0.603, 1.000)
Emissive scale: 0.2
Start distance: 25
Sunlight scale: 0.5
Ambient scale: 1
Temperature: 24
| +| Precursor_Gun_InnerRooms | SkyPrecursorInterior_NoLightmaps | Absorption: (0.0, 0.0, 0.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.01
Emissive: RGBA(0.000, 0.560, 0.603, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| Precursor_Gun_ControlRoom | SkyPrecursorInterior_NoLightmaps | Absorption: (0.0, 0.0, 0.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.01
Emissive: RGBA(0.000, 0.560, 0.603, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| Precursor_LostRiverBase | SkyPrecursorInterior_LostRiverBase_NoLightmaps | Absorption: (4.0, 2.0, 1.3)
Scattering: 0.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.000, 0.561, 0.378, 1.000)
Emissive scale: 0.05
Start distance: 5
Sunlight scale: 0
Ambient scale: 0
Temperature: 14
| +| Precursor_LavaCastleBase | SkyPrecursorInterior_NoLightmaps | Absorption: (0.0, 0.0, 0.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.01
Emissive: RGBA(0.000, 0.560, 0.603, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 34
| +| PrecursorThermalRoom | SkyPrecursorInterior_NoLightmaps | Absorption: (0.0, 0.0, 0.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.01
Emissive: RGBA(0.000, 0.560, 0.603, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 34
| +| LostRiver_TreeCove_Tree | SkyLostRiver_TreeCove | Absorption: (2.0, 1.0, 0.5)
Scattering: 0.1
Scattering color: RGBA(0.041, 0.125, 0.239, 1.000)
Murkiness: 1
Emissive: RGBA(0.062, 0.109, 0.173, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 34
| +| underwaterIslands_Geyser | SkyMountains | Absorption: (25.0, 10.0, 5.0)
Scattering: 0.8
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.3
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 1
Ambient scale: 5
Temperature: 60
| +| JellyshroomCaves_Geyser | SkyJellyshroomCaves | Absorption: (5.0, 4.0, 2.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.431, 0.392, 0.784, 1.000)
Emissive scale: 0.035
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 60
| +| LostRiver_GhostTree | SkyLostRiver | Absorption: (10.0, 8.0, 12.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.25
Emissive: RGBA(0.000, 0.216, 0.196, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 30
| +| ilzChamber_Dragon | SkyILZChamber | Absorption: (0.1, 2.0, 2.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 1
Emissive: RGBA(0.451, 0.455, 0.271, 1.000)
Emissive scale: 0.09
Start distance: 80
Sunlight scale: 0
Ambient scale: 0
Temperature: 60
| +| LostRiver_Junction | SkyLostRiver_Junction | Absorption: (4.0, 2.0, 1.3)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.000, 0.561, 0.378, 1.000)
Emissive scale: 0.05
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 34
| +| LostRiver_GhostTree_Lower | SkyLostRiver | Absorption: (10.0, 8.0, 12.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.28
Emissive: RGBA(0.000, 0.196, 0.176, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 34
| +| LostRiver_GhostTree_Skeleton | SkyLostRiver | Absorption: (10.0, 8.0, 12.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.25
Emissive: RGBA(0.000, 0.216, 0.196, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 30
| +| FloatingIslandCaveTeleporter | SkyMountains | Absorption: (10.0, 8.0, 12.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 1
Emissive: RGBA(0.353, 0.627, 0.706, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| LostRiver_Junction_Water | SkyLostRiver_Junction | Absorption: (10.0, 5.0, 2.5)
Scattering: 0.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.243, 1.000, 0.462, 1.000)
Emissive scale: 0.3
Start distance: 5
Sunlight scale: 0
Ambient scale: 1
Temperature: 39
| +| mountains_teleporter | SkyMountainsCaves | Absorption: (40.0, 15.0, 9.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.2
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0.3
Ambient scale: 0.2
Temperature: 24
| +| sparseReef_Cave | SkyMountains | Absorption: (5.0, 4.0, 3.0)
Scattering: 0.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 1
Emissive: RGBA(0.039, 0.075, 0.208, 1.000)
Emissive scale: 0.1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0.5
Temperature: 24
| +| sparseReef_Deep | SkyMountains | Absorption: (10.0, 2.8, 2.8)
Scattering: 0.3
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.8
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0.5
Ambient scale: 0.5
Temperature: 24
| +| sparseReef_Spike | SkyMountains | Absorption: (10.0, 2.8, 2.8)
Scattering: 0.3
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.8
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 24
| +| sparseReef_Wreck | SkyExplorableWreck | Absorption: (5.0, 4.0, 3.0)
Scattering: 0.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 1
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 1
Temperature: 24
| +| precursorCache | SkyPrecursorInterior | Absorption: (10.0, 1.0, 2.0)
Scattering: 0.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 3
Emissive: RGBA(0.075, 0.310, 0.231, 1.000)
Emissive scale: 0.2
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| LostRiver_SkeletonCave | SkyBonesField | Absorption: (10.0, 4.0, 3.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.061, 0.243, 0.180, 1.000)
Emissive scale: 0.5
Start distance: 15
Sunlight scale: 0
Ambient scale: 0
Temperature: 30
| +| LostRiver_SkeletonCave_Skeleton | SkyBonesField | Absorption: (4.0, 2.0, 1.3)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 3
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 0
Start distance: 15
Sunlight scale: 0
Ambient scale: 0
Temperature: 30
| +| LostRiver_Canyon | SkyBonesField | Absorption: (10.0, 3.0, 3.0)
Scattering: 0.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.059, 0.243, 0.180, 1.000)
Emissive scale: 0.5
Start distance: 15
Sunlight scale: 0
Ambient scale: 0
Temperature: 30
| +| CragField | SkyMountains | Absorption: (100.0, 33.0, 20.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.1
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 24
| +| PrecursorCave_Cragfield | SkyMountains | Absorption: (100.0, 33.0, 20.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.1
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| Prison_Aquarium_Upper | SkyPrecursorPrisonAquarium | Absorption: (10.0, 4.5, 5.0)
Scattering: 0.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.6
Emissive: RGBA(0.145, 0.302, 0.255, 1.000)
Emissive scale: 0.4
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 21
| +| Prison_Aquarium_Mid | SkyPrecursorPrisonAquarium | Absorption: (10.0, 4.5, 4.5)
Scattering: 0.3
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.4
Emissive: RGBA(0.145, 0.302, 0.255, 1.000)
Emissive scale: 0.25
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 21
| +| Prison_Aquarium_Cave | SkyMountains | Absorption: (15.0, 10.0, 8.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.8
Emissive: RGBA(0.000, 0.204, 0.220, 1.000)
Emissive scale: 1
Start distance: 5
Sunlight scale: 0
Ambient scale: 0
Temperature: 21
| +| PrecursorCave_GhostTree | SkyMountains | Absorption: (20.0, 15.0, 20.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.15
Emissive: RGBA(0.475, 0.838, 0.542, 1.000)
Emissive scale: 0.02
Start distance: 5
Sunlight scale: 0
Ambient scale: 0
Temperature: 21
| +| PrecursorCave_KooshZone | SkyMountains | Absorption: (20.0, 15.0, 20.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.15
Emissive: RGBA(0.375, 0.375, 0.400, 1.000)
Emissive scale: 0.12
Start distance: 5
Sunlight scale: 0
Ambient scale: 0
Temperature: 21
| +| Prison_Antechamber | SkyPrecursorPrisonAntechamber | Absorption: (0.0, 0.0, 0.0)
Scattering: 0.0001
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.001
Emissive: RGBA(0.600, 0.765, 0.443, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 34
| +| Prison_Moonpool | SkyPrecursorPrisonMoonpool | Absorption: (0.0, 0.0, 0.0)
Scattering: 0.0001
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.001
Emissive: RGBA(0.600, 0.765, 0.443, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 34
| +| kooshZone_wreck | SkyExplorableWreck | Absorption: (30.0, 23.0, 12.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.14
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashZone_Mesa | SkyCrashZone | Absorption: (50.0, 20.0, 20.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.15
Emissive: RGBA(0.004, 0.647, 0.129, 1.000)
Emissive scale: 0.03
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 24
| +| Dunes_wreck | SkyExplorableWreck | Absorption: (20.0, 10.0, 6.0)
Scattering: 0.5
Scattering color: RGBA(0.341, 0.427, 0.447, 1.000)
Murkiness: 0.2
Emissive: RGBA(0.102, 0.133, 0.149, 1.000)
Emissive scale: 0.2
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| LostRiver_Corridor | SkyLostRiver_Junction | Absorption: (4.0, 2.0, 1.3)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.000, 0.561, 0.376, 1.000)
Emissive scale: 0.05
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 30
| +| LostRiver_Corridor_ThermalVents | SkyLostRiver_Junction | Absorption: (4.0, 2.0, 1.3)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.000, 0.561, 0.376, 1.000)
Emissive scale: 0.05
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 30
| +| underwaterIslands_wreck | SkyExplorableWreck | Absorption: (25.0, 10.0, 5.0)
Scattering: 0.8
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.3
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| mountains_wreckinterior | SkyExplorableWreck | Absorption: (40.0, 15.0, 9.0)
Scattering: 0.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.12
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| bloodKelp_wreck | SkyExplorableWreck | Absorption: (50.0, 8.0, 4.0)
Scattering: 0.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.4
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| seaTreaderPath_wreck | SkyExplorableWreck | Absorption: (100.0, 33.0, 20.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.8
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| mushroomForest_wreck | SkyExplorableWreck | Absorption: (100.0, 30.0, 20.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.05
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| grandReef_wreck | SkyExplorableWreck | Absorption: (16.0, 12.0, 6.0)
Scattering: 2
Scattering color: RGBA(0.000, 1.000, 0.910, 1.000)
Murkiness: 0.25
Emissive: RGBA(0.000, 0.957, 1.000, 1.000)
Emissive scale: 0.03
Start distance: 40
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| CrashZone_Trench | SkyCrashZone | Absorption: (17.0, 20.0, 20.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.2
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 5
Sunlight scale: 0.75
Ambient scale: 1
Temperature: 24
| + +

+ +
+ Expand to view base game biome data (BZ): + +| Biome name | Sky name | Settings | +|--------------|-----------------|-------------------------------------------------------| +| arctic | SkyArcticSurface | Absorption: (125.0, 20.0, 4.0)
Scattering: 1.2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.18
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 1
Ambient scale: 1.5
Temperature: 0
| +| sparseArctic | SkyArcticSurface | Absorption: (150.0, 15.0, 3.0)
Scattering: 0.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 1
Start distance: 35
Sunlight scale: 1.2
Ambient scale: 1.5
Temperature: 0
| +| glacialBay | SkyArcticSurface | Absorption: (35.0, 5.0, 3.0)
Scattering: 1
Scattering color: RGBA(0.016, 0.840, 0.758, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.495, 0.991, 0.792, 1.000)
Emissive scale: 0.05
Start distance: 35
Sunlight scale: 1
Ambient scale: 1
Temperature: 0
| +| arcticKelp | SkyKelpForest | Absorption: (5.0, 1.5, 2.0)
Scattering: 0.25
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 3
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 1
Start distance: 35
Sunlight scale: 1
Ambient scale: 1.25
Temperature: 20
| +| twistyBridges | SkyTwistyBridges | Absorption: (35.0, 5.0, 3.0)
Scattering: 1
Scattering color: RGBA(0.000, 0.534, 0.440, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.000, 0.868, 1.000, 1.000)
Emissive scale: 0.02
Start distance: 30
Sunlight scale: 1.1
Ambient scale: 0.5
Temperature: 4
| +| twistyBridges_Shallow | SkyTwistyBridges_Shallow | Absorption: (25.0, 9.0, 3.0)
Scattering: 0.385
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.4
Emissive: RGBA(0.239, 1.000, 0.886, 1.000)
Emissive scale: 0.03
Start distance: 20
Sunlight scale: 1.2
Ambient scale: 0.6
Temperature: 6
| +| twistyBridges_OuterCave | SkyTwistyBridges_ShallowCave | Absorption: (35.0, 5.0, 3.0)
Scattering: 1
Scattering color: RGBA(0.000, 0.534, 0.440, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.000, 0.851, 1.000, 1.000)
Emissive scale: 0.04
Start distance: 15
Sunlight scale: 0.4
Ambient scale: 1.1
Temperature: 6
| +| twistyBridges_Cave | SkyTwistyBridges_ShallowCave | Absorption: (35.0, 5.0, 3.0)
Scattering: 1
Scattering color: RGBA(0.000, 0.534, 0.440, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.000, 0.851, 1.000, 1.000)
Emissive scale: 0.04
Start distance: 15
Sunlight scale: 0
Ambient scale: 1.1
Temperature: 6
| +| twistyBridges_InnerCave | SkyTwistyBridges_ShallowCave | Absorption: (35.0, 5.0, 3.0)
Scattering: 1
Scattering color: RGBA(0.000, 0.534, 0.440, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.000, 0.851, 1.000, 1.000)
Emissive scale: 0.02
Start distance: 15
Sunlight scale: 0
Ambient scale: 1.1
Temperature: 6
| +| twistyBridges_Cave_Sanctuary | SkyTwistyBridges_ShallowCave | Absorption: (35.0, 5.0, 3.0)
Scattering: 1
Scattering color: RGBA(0.000, 0.534, 0.440, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.000, 0.851, 1.000, 1.000)
Emissive scale: 0.02
Start distance: 15
Sunlight scale: 0
Ambient scale: 1.1
Temperature: 6
| +| lilyPads | SkyLilyPads | Absorption: (20.0, 5.0, 6.0)
Scattering: 0.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.45
Emissive: RGBA(0.180, 0.604, 0.404, 1.000)
Emissive scale: 0.05
Start distance: 20
Sunlight scale: 1
Ambient scale: 1.25
Temperature: 20
| +| lilyPads_Islands | SkyLilyPads | Absorption: (20.0, 5.0, 6.0)
Scattering: 0.6
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.45
Emissive: RGBA(0.180, 0.604, 0.404, 1.000)
Emissive scale: 0.05
Start distance: 20
Sunlight scale: 1
Ambient scale: 1.25
Temperature: 20
| +| lilyPads_Islands_Cave | SkyLilyPads | Absorption: (20.0, 5.0, 6.0)
Scattering: 0.3
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.6
Emissive: RGBA(0.180, 0.604, 0.285, 1.000)
Emissive scale: 0.4
Start distance: 10
Sunlight scale: 0
Ambient scale: 1
Temperature: 20
| +| lilyPads_MegaIsland_CaveInterior | SkyLilyPads_MegaIsland_CaveInterior | Absorption: (20.0, 5.0, 6.0)
Scattering: 0.2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.45
Emissive: RGBA(0.180, 0.604, 0.404, 1.000)
Emissive scale: 0.05
Start distance: 20
Sunlight scale: 0.5
Ambient scale: 1
Temperature: 20
| +| lilyPads_MegaIsland_CaveCorridor | SkyLilyPads_MegaIsland_CaveCorridor | Absorption: (20.0, 5.0, 6.0)
Scattering: 0.2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.45
Emissive: RGBA(0.180, 0.604, 0.404, 1.000)
Emissive scale: 0.02
Start distance: 20
Sunlight scale: 0.25
Ambient scale: 1
Temperature: 20
| +| lilyPads_ShipWreck | SkyLilyPads | Absorption: (20.0, 5.0, 6.0)
Scattering: 0.6
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.35
Emissive: RGBA(0.180, 0.604, 0.404, 1.000)
Emissive scale: 0.013
Start distance: 25
Sunlight scale: 1
Ambient scale: 1.25
Temperature: 20
| +| thermalSpires | SkyThermalSpires | Absorption: (30.0, 12.0, 8.0)
Scattering: 0.3
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.063, 0.137, 0.196, 1.000)
Emissive scale: 0.5
Start distance: 25
Sunlight scale: 1
Ambient scale: 1.5
Temperature: 25
| +| thermalSpires_cave | SkyThermalSpiresCave | Absorption: (5.0, 2.0, 1.0)
Scattering: 0.3
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.75
Emissive: RGBA(0.519, 0.432, 0.277, 1.000)
Emissive scale: 0.2
Start distance: 15
Sunlight scale: 0
Ambient scale: 0.8
Temperature: 35
| +| thermalSpiresDeep | SkyThermalSpiresCave | Absorption: (30.0, 12.0, 8.0)
Scattering: 0.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.75
Emissive: RGBA(0.063, 0.137, 0.196, 1.000)
Emissive scale: 0.5
Start distance: 25
Sunlight scale: 1
Ambient scale: 0.8
Temperature: 45
| +| purpleVents | SkyPurpleVents | Absorption: (8.0, 7.0, 7.0)
Scattering: 0.35
Scattering color: RGBA(0.404, 0.616, 0.800, 1.000)
Murkiness: 0.65
Emissive: RGBA(0.000, 0.165, 0.216, 1.000)
Emissive scale: 5
Start distance: 24
Sunlight scale: 1
Ambient scale: 1.5
Temperature: 20
| +| purpleVents_ShipWreck | SkyPurpleVents | Absorption: (8.0, 7.0, 7.0)
Scattering: 0.5
Scattering color: RGBA(0.404, 0.616, 0.800, 1.000)
Murkiness: 0.65
Emissive: RGBA(0.000, 0.165, 0.216, 1.000)
Emissive scale: 5
Start distance: 24
Sunlight scale: 1
Ambient scale: 1.5
Temperature: 40
| +| purpleVents_Deep | SkyDeepPurpleVents | Absorption: (8.0, 7.0, 7.0)
Scattering: 0.35
Scattering color: RGBA(0.404, 0.616, 0.800, 1.000)
Murkiness: 0.65
Emissive: RGBA(0.000, 0.165, 0.216, 1.000)
Emissive scale: 5
Start distance: 24
Sunlight scale: 0
Ambient scale: 1.5
Temperature: 40
| +| purpleVents_Crevice | SkyDeepPurpleVents | Absorption: (8.0, 7.0, 7.0)
Scattering: 0.35
Scattering color: RGBA(0.404, 0.616, 0.800, 1.000)
Murkiness: 0.65
Emissive: RGBA(0.000, 0.165, 0.216, 1.000)
Emissive scale: 5
Start distance: 24
Sunlight scale: 0.5
Ambient scale: 1.5
Temperature: 40
| +| crystalCave | SkyTwistyBridges_Deep | Absorption: (5.0, 5.0, 5.5)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.403, 0.528, 0.981, 1.000)
Emissive scale: 0.2
Start distance: 20
Sunlight scale: 0
Ambient scale: 0
Temperature: 30
| +| crystalCave_Fissure | SkyTwistyBridges_Deep | Absorption: (6.0, 3.5, 6.5)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.4
Emissive: RGBA(0.508, 0.584, 0.282, 1.000)
Emissive scale: 0.25
Start distance: 5
Sunlight scale: 0
Ambient scale: 0
Temperature: 50
| +| crystalCave_Vent | SkyTwistyBridges_Deep | Absorption: (6.0, 3.5, 6.5)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.4
Emissive: RGBA(0.508, 0.584, 0.282, 1.000)
Emissive scale: 0.25
Start distance: 5
Sunlight scale: 0
Ambient scale: 0
Temperature: 80
| +| fabricatorcaverns | SkyTwistyBridges_Deep | Absorption: (4.0, 3.0, 6.0)
Scattering: 0.1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.6
Emissive: RGBA(0.118, 0.510, 0.659, 1.000)
Emissive scale: 0.2
Start distance: 30
Sunlight scale: 0
Ambient scale: 0
Temperature: 6
| +| deepArctic | SkyTwistyBridges_Deep | Absorption: (125.0, 20.0, 4.0)
Scattering: 1.2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.18
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 1
Ambient scale: 1.5
Temperature: -2
| +| kelpForest | SkyKelpForest | Absorption: (7.0, 4.5, 4.5)
Scattering: 1.2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.2
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 5
| +| lilyPads_Deep | SkyDeepLily | Absorption: (5.0, 5.5, 6.5)
Scattering: 0.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(1.000, 0.906, 0.973, 1.000)
Emissive scale: 0.12
Start distance: 18
Sunlight scale: 0
Ambient scale: 1
Temperature: 1
| +| lilyPads_Deep_Cache | SkyDeepLily | Absorption: (0.0, 0.0, 0.0)
Scattering: 0.25
Scattering color: RGBA(0.000, 0.533, 0.439, 1.000)
Murkiness: 1
Emissive: RGBA(0.800, 0.784, 1.000, 1.000)
Emissive scale: 0.01
Start distance: 0
Sunlight scale: 0
Ambient scale: 1.1
Temperature: 6
| +| lilyPads_Deep_GiantFlower | SkyDeepLily | Absorption: (10.0, 11.0, 15.0)
Scattering: 0.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.23
Emissive: RGBA(0.027, 0.152, 0.220, 1.000)
Emissive scale: 1
Start distance: 0
Sunlight scale: 0
Ambient scale: 2
Temperature: 1
| +| twistyBridges_Deep | SkyTwistyBridges_Deep | Absorption: (12.0, 12.0, 7.0)
Scattering: 0.25
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.45
Emissive: RGBA(0.533, 0.463, 0.867, 1.000)
Emissive scale: 0.13
Start distance: 12
Sunlight scale: 0
Ambient scale: 0.8
Temperature: 30
| +| twistyBridges_Deep_thermal | SkyTwistyBridges_Deep | Absorption: (12.0, 12.0, 7.0)
Scattering: 0.25
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.533, 0.463, 0.867, 1.000)
Emissive scale: 0.13
Start distance: 12
Sunlight scale: 0
Ambient scale: 0.8
Temperature: 55
| +| introIceCave_Entrance | SkyintroIceCave | Absorption: (12.0, 12.0, 7.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.533, 0.463, 0.867, 1.000)
Emissive scale: 0.13
Start distance: 12
Sunlight scale: 0.1
Ambient scale: 0.8
Temperature: 1
| +| introIceCave | SkyintroIceCave | Absorption: (12.0, 12.0, 7.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.533, 0.463, 0.867, 1.000)
Emissive scale: 0.13
Start distance: 12
Sunlight scale: 0
Ambient scale: 0.8
Temperature: 1
| +| RocketAreaIceCave | SkyintroIceCave | Absorption: (12.0, 12.0, 7.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.089, 0.771, 0.868, 1.000)
Emissive scale: 0.13
Start distance: 12
Sunlight scale: 0
Ambient scale: 0.8
Temperature: 1
| +| RocketAreaIceCave_Entrance | SkyintroIceCave | Absorption: (12.0, 12.0, 7.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.485, 0.820, 0.868, 1.000)
Emissive scale: 0.13
Start distance: 12
Sunlight scale: 0.1
Ambient scale: 0.8
Temperature: 1
| +| RocketAreaRockCave | SkyKelpCave | Absorption: (12.0, 12.0, 7.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.838, 0.639, 0.210, 1.000)
Emissive scale: 0.13
Start distance: 12
Sunlight scale: 0
Ambient scale: 0.8
Temperature: 1
| +| RocketAreaRockCave_Entrance | SkyKelpCave | Absorption: (12.0, 12.0, 7.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.860, 0.772, 0.582, 1.000)
Emissive scale: 0.13
Start distance: 12
Sunlight scale: 0.1
Ambient scale: 0.8
Temperature: 1
| +| startZone | SkyArcticSurface | Absorption: (150.0, 15.0, 3.0)
Scattering: 0.2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 0
Start distance: 35
Sunlight scale: 1.2
Ambient scale: 1.5
Temperature: 0
| +| ArcticKelp_CaveInner | SkyKelpCave | Absorption: (30.0, 25.0, 20.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.15
Emissive: RGBA(0.353, 0.431, 0.157, 1.000)
Emissive scale: 1
Start distance: 8
Sunlight scale: 0
Ambient scale: 0
Temperature: 30
| +| ArcticKelp_CaveOuter | SkyKelpCave | Absorption: (30.0, 25.0, 20.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.15
Emissive: RGBA(0.353, 0.431, 0.157, 1.000)
Emissive scale: 1
Start distance: 8
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| +| startZone_Cave | SkyTwistyBridges | Absorption: (35.0, 5.0, 2.0)
Scattering: 0.5
Scattering color: RGBA(0.000, 0.533, 0.439, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.000, 0.851, 1.000, 1.000)
Emissive scale: 0.05
Start distance: 15
Sunlight scale: 0
Ambient scale: 1.1
Temperature: 6
| +| startZone_Cave_Entrance | SkyTwistyBridges | Absorption: (35.0, 5.0, 2.0)
Scattering: 0.5
Scattering color: RGBA(0.000, 0.533, 0.439, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.000, 0.851, 1.000, 1.000)
Emissive scale: 0.07
Start distance: 15
Sunlight scale: 0.5
Ambient scale: 1.1
Temperature: 6
| +| Precursor_Sanctuary | SkyPrecursorSanctuaryCave | Absorption: (35.0, 5.0, 2.0)
Scattering: 1
Scattering color: RGBA(0.000, 0.533, 0.439, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.000, 0.851, 1.000, 1.000)
Emissive scale: 0.07
Start distance: 15
Sunlight scale: 0
Ambient scale: 1.1
Temperature: 6
| +| Precursor_Sanctuary_Cave | SkyPrecursorSanctuaryCave | Absorption: (35.0, 5.0, 2.0)
Scattering: 1
Scattering color: RGBA(0.000, 0.533, 0.439, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.000, 0.851, 1.000, 1.000)
Emissive scale: 0.02
Start distance: 15
Sunlight scale: 0
Ambient scale: 1.1
Temperature: 6
| +| treespires | SkyTreeSpires | Absorption: (5.0, 4.0, 2.0)
Scattering: 0.3
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.75
Emissive: RGBA(0.757, 0.447, 1.000, 1.000)
Emissive scale: 0.1
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 30
| +| treespires_bigtree | SkyTreeSpires | Absorption: (5.0, 4.0, 2.0)
Scattering: 0.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.75
Emissive: RGBA(0.757, 0.447, 1.000, 1.000)
Emissive scale: 0.1
Start distance: 25
Sunlight scale: 1
Ambient scale: 1
Temperature: 25
| +| treespires_bigfissure | SkyTreeSpires | Absorption: (6.0, 10.0, 3.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.3
Emissive: RGBA(0.757, 0.447, 1.000, 1.000)
Emissive scale: 0.05
Start distance: 25
Sunlight scale: 0
Ambient scale: 1
Temperature: 50
| +| treespires_smallfissure | SkyTreeSpires | Absorption: (8.0, 10.0, 3.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.3
Emissive: RGBA(0.000, 1.000, 0.975, 1.000)
Emissive scale: 0.1
Start distance: 25
Sunlight scale: 1.5
Ambient scale: 1
Temperature: 40
| +| GlacialBasin_Bunker | SkyBaseInterior | Absorption: (255.0, 255.0, 255.0)
Scattering: 0
Scattering color: RGBA(0.000, 0.000, 0.000, 1.000)
Murkiness: 0.48
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 0
Start distance: 15
Sunlight scale: 0
Ambient scale: 0
Temperature: 3
| +| GlacialBasin_GlacialCave | SkyGlacialCavesIce | Absorption: (255.0, 255.0, 255.0)
Scattering: 0
Scattering color: RGBA(0.000, 0.000, 0.000, 1.000)
Murkiness: 0.48
Emissive: RGBA(0.724, 0.908, 0.953, 1.000)
Emissive scale: 0
Start distance: 15
Sunlight scale: 0
Ambient scale: 0
Temperature: 3
| +| GlacialBasin_CreatureCave | SkyintroIceCave | Absorption: (12.0, 12.0, 7.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.533, 0.463, 0.867, 1.000)
Emissive scale: 0.13
Start distance: 12
Sunlight scale: 0
Ambient scale: 0.8
Temperature: 3
| +| GlacialBasin_DarkCave | SkyPrecursorInterior_Dark | Absorption: (255.0, 255.0, 255.0)
Scattering: 0
Scattering color: RGBA(0.000, 0.000, 0.000, 1.000)
Murkiness: 3
Emissive: RGBA(0.000, 0.000, 0.000, 1.000)
Emissive scale: 0
Start distance: 0
Sunlight scale: 0
Ambient scale: 0
Temperature: 3
| +| GlacialBasin_HoverBikeBase | SkyintroIceCave | Absorption: (12.0, 12.0, 7.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.533, 0.463, 0.867, 1.000)
Emissive scale: 0.13
Start distance: 12
Sunlight scale: 0
Ambient scale: 0.4
Temperature: 3
| +| GlacialBasin_BlueIceCave | SkyintroIceCave | Absorption: (12.0, 6.0, 6.0)
Scattering: 1
Scattering color: RGBA(0.108, 0.608, 0.915, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.724, 0.908, 0.953, 1.000)
Emissive scale: 0.5
Start distance: 12
Sunlight scale: 0
Ambient scale: 0.8
Temperature: 3
| +| GlacialBasin_Overhang | SkyGlacialBasin | Absorption: (128.0, 32.0, 32.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.725, 0.906, 0.953, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0.5
Ambient scale: 0
Temperature: 3
| +| GlacialBasin_IceLakeSurface | SkyTwistyBridges_Shallow | Absorption: (25.0, 9.0, 3.0)
Scattering: 0.2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.8
Emissive: RGBA(0.529, 0.000, 1.000, 1.000)
Emissive scale: 0.01
Start distance: 20
Sunlight scale: 1.2
Ambient scale: 0.6
Temperature: 3
| +| GlacialBasin_TemperateCave | SkyintroIceCave | Absorption: (12.0, 6.0, 6.0)
Scattering: 0
Scattering color: RGBA(0.000, 0.579, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.707, 0.802, 0.723, 1.000)
Emissive scale: 2.45
Start distance: 5
Sunlight scale: 0
Ambient scale: 0.8
Temperature: 3
| +| glacialBasin_Underwater | SkyTreeSpires | Absorption: (20.0, 10.0, 4.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.3
Emissive: RGBA(0.141, 0.204, 0.388, 1.000)
Emissive scale: 0.05
Start distance: 25
Sunlight scale: 0
Ambient scale: 0.2
Temperature: 0
| +| glacialBasin | SkyGlacialBasin | Absorption: (25.0, 25.0, 3.0)
Scattering: 0.06
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.724, 0.908, 0.953, 1.000)
Emissive scale: 0.05
Start distance: 35
Sunlight scale: 1
Ambient scale: 1.5
Temperature: 0
| +| MiningSite | SkyMiningSite | Absorption: (25.0, 15.0, 20.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.953, 0.858, 0.725, 1.000)
Emissive scale: 0.1
Start distance: 35
Sunlight scale: 0
Ambient scale: 1.5
Temperature: 0
| +| wreck | SkyWreck | Absorption: (25.0, 7.0, 12.0)
Scattering: 0.4
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.3
Emissive: RGBA(0.051, 0.486, 0.620, 1.000)
Emissive scale: 0.3
Start distance: 0
Sunlight scale: 0
Ambient scale: 1.5
Temperature: 0
| +| CrystalCave_Cache | SkyCrystalCaverns | Absorption: (3.0, 5.0, 8.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.35
Emissive: RGBA(0.380, 0.373, 0.906, 1.000)
Emissive scale: 0.3
Start distance: 15
Sunlight scale: 0
Ambient scale: 0
Temperature: 0
| +| CrystalCave_Castle | SkyTwistyBridges_Deep | Absorption: (6.0, 5.0, 5.5)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.8
Emissive: RGBA(0.380, 0.373, 0.906, 1.000)
Emissive scale: 0.4
Start distance: 15
Sunlight scale: 0
Ambient scale: 0
Temperature: 0
| +| CrystalCave_Inner | SkyTwistyBridges_Deep | Absorption: (5.0, 5.0, 5.5)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.403, 0.528, 0.981, 1.000)
Emissive scale: 0.2
Start distance: 20
Sunlight scale: 0
Ambient scale: 0
Temperature: 40
| +| GlacialConnection | SkyTreeSpires | Absorption: (10.0, 5.0, 4.0)
Scattering: 1.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.3
Emissive: RGBA(0.141, 0.204, 0.388, 1.000)
Emissive scale: 0.5
Start distance: 25
Sunlight scale: 0
Ambient scale: 0.2
Temperature: 0
| +| Glacier | SkyTreeSpires | Absorption: (20.0, 10.0, 4.0)
Scattering: 2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.3
Emissive: RGBA(0.141, 0.204, 0.388, 1.000)
Emissive scale: 1
Start distance: 25
Sunlight scale: 1
Ambient scale: 0.2
Temperature: 0
| +| margBase | SkyKelpCave | Absorption: (5.0, 3.0, 5.0)
Scattering: 0.8
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.6
Emissive: RGBA(0.176, 0.336, 0.604, 1.000)
Emissive scale: 0.4
Start distance: 20
Sunlight scale: 0
Ambient scale: 1
Temperature: 25
| +| margBase_Base | SkyKelpCave | Absorption: (5.0, 3.0, 5.0)
Scattering: 0.8
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.6
Emissive: RGBA(0.180, 0.604, 0.526, 1.000)
Emissive scale: 0.13
Start distance: 20
Sunlight scale: 0
Ambient scale: 1
Temperature: 30
| +| margBase_Base_Interior | SkyKelpCave | Absorption: (6.0, 2.0, 1.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.4
Emissive: RGBA(0.604, 0.604, 0.604, 1.000)
Emissive scale: 0.1
Start distance: 10
Sunlight scale: 0
Ambient scale: 1
Temperature: 0
| +| treespires_Thermal | SkyTreeSpires | Absorption: (0.0, 0.0, 0.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0
Emissive: RGBA(0.604, 0.604, 0.604, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 60
| +| thermalSpires_Thermal | SkyThermalSpires | Absorption: (0.0, 0.0, 0.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0
Emissive: RGBA(0.604, 0.604, 0.604, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 35
| +| thermalVent_Thermal | SkyThermalSpires | Absorption: (0.0, 0.0, 0.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0
Emissive: RGBA(0.604, 0.604, 0.604, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 100
| +| lava_Thermal | SkyThermalSpires | Absorption: (0.0, 0.0, 0.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0
Emissive: RGBA(0.604, 0.604, 0.604, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 200
| +| purpleVent_Thermal | SkyThermalSpires | Absorption: (0.0, 0.0, 0.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0
Emissive: RGBA(0.604, 0.604, 0.604, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 50
| +| hotsprings_Thermal | SkyThermalSpires | Absorption: (0.0, 0.0, 0.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0
Emissive: RGBA(0.604, 0.604, 0.604, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 40
| +| lilypads_crevice | SkyKelpCave | Absorption: (5.0, 3.0, 5.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.6
Emissive: RGBA(0.115, 0.623, 0.403, 1.000)
Emissive scale: 0.12
Start distance: 15
Sunlight scale: 0
Ambient scale: 0
Temperature: 1
| +| lilypads_megatrench | SkyKelpCave | Absorption: (20.0, 5.0, 6.0)
Scattering: 0.7
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.180, 0.604, 0.525, 1.000)
Emissive scale: 0.15
Start distance: 20
Sunlight scale: 0.75
Ambient scale: 0
Temperature: 1
| +| arcticeast_iceberg_cavehigh | SkyKelpCave | Absorption: (20.0, 5.0, 6.0)
Scattering: 0.5
Scattering color: RGBA(0.000, 0.290, 0.717, 1.000)
Murkiness: 1
Emissive: RGBA(0.332, 0.524, 0.774, 1.000)
Emissive scale: 0.9
Start distance: 10
Sunlight scale: 0.5
Ambient scale: 0
Temperature: 1
| +| arcticeast_iceberg_cavelow | SkyKelpCave | Absorption: (20.0, 5.0, 6.0)
Scattering: 0.5
Scattering color: RGBA(0.000, 0.161, 0.388, 1.000)
Murkiness: 2
Emissive: RGBA(0.196, 0.353, 0.557, 1.000)
Emissive scale: 0.4
Start distance: 10
Sunlight scale: 0.1
Ambient scale: 0
Temperature: 1
| +| lilypads_crevice_exit | SkyKelpCave | Absorption: (20.0, 5.0, 6.0)
Scattering: 0.6
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.6
Emissive: RGBA(0.145, 0.678, 0.510, 1.000)
Emissive scale: 0.13
Start distance: 20
Sunlight scale: 0.2
Ambient scale: 0.25
Temperature: 1
| +| lilypads_crevice_open | SkyKelpCave | Absorption: (20.0, 5.0, 6.0)
Scattering: 0.6
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.6
Emissive: RGBA(0.145, 0.678, 0.510, 1.000)
Emissive scale: 0.13
Start distance: 20
Sunlight scale: 0.3
Ambient scale: 1
Temperature: 1
| +| EastArctic | SkyIceberg | Absorption: (10.0, 5.0, 4.0)
Scattering: 0.6
Scattering color: RGBA(0.000, 0.571, 0.745, 1.000)
Murkiness: 0.4
Emissive: RGBA(0.099, 0.287, 0.396, 1.000)
Emissive scale: 0.2
Start distance: 50
Sunlight scale: 1
Ambient scale: 1
Temperature: 1
| +| arcticCaldera | SkyMiningSite | Absorption: (10.0, 5.0, 4.0)
Scattering: 0.6
Scattering color: RGBA(0.000, 0.571, 0.745, 1.000)
Murkiness: 0.4
Emissive: RGBA(0.099, 0.287, 0.396, 1.000)
Emissive scale: 0.2
Start distance: 50
Sunlight scale: 1
Ambient scale: 1
Temperature: 1
| +| WestArctic | SkyIceberg | Absorption: (10.0, 5.0, 4.0)
Scattering: 1.5
Scattering color: RGBA(0.000, 0.571, 0.745, 1.000)
Murkiness: 0.5
Emissive: RGBA(0.099, 0.287, 0.396, 1.000)
Emissive scale: 0.2
Start distance: 50
Sunlight scale: 0.8
Ambient scale: 1
Temperature: 1
| +| EastArctic_IceBerg_Cave_Light | SkyIceberg | Absorption: (20.0, 10.0, 5.0)
Scattering: 0.5
Scattering color: RGBA(0.000, 0.571, 0.745, 1.000)
Murkiness: 0.4
Emissive: RGBA(0.099, 0.287, 0.396, 1.000)
Emissive scale: 0.2
Start distance: 20
Sunlight scale: 0
Ambient scale: 0
Temperature: 1
| +| WestArctic_IceBerg_Cave_Light | SkyIceberg | Absorption: (20.0, 10.0, 5.0)
Scattering: 0.5
Scattering color: RGBA(0.000, 0.571, 0.745, 1.000)
Murkiness: 0.4
Emissive: RGBA(0.099, 0.287, 0.396, 1.000)
Emissive scale: 0.1
Start distance: 20
Sunlight scale: 0
Ambient scale: 0
Temperature: 1
| +| EastArctic_IceBerg_Cave_Dark | SkyIceberg | Absorption: (20.0, 10.0, 5.0)
Scattering: 0.5
Scattering color: RGBA(0.000, 0.570, 0.745, 1.000)
Murkiness: 0.8
Emissive: RGBA(0.155, 0.299, 0.415, 1.000)
Emissive scale: 0.2
Start distance: 10
Sunlight scale: 0
Ambient scale: 0
Temperature: 1
| +| WestArctic_IceBerg_Cave_Dark | SkyIceberg | Absorption: (20.0, 10.0, 5.0)
Scattering: 0.2
Scattering color: RGBA(0.000, 0.570, 0.745, 1.000)
Murkiness: 0.8
Emissive: RGBA(0.155, 0.299, 0.415, 1.000)
Emissive scale: 0.4
Start distance: 10
Sunlight scale: 0
Ambient scale: 0
Temperature: 1
| +| EastArctic_IceBerg_CaveSealed_Dark | SkyIceberg | Absorption: (20.0, 10.0, 5.0)
Scattering: 0.5
Scattering color: RGBA(0.000, 0.498, 0.651, 1.000)
Murkiness: 0.8
Emissive: RGBA(0.196, 0.353, 0.557, 1.000)
Emissive scale: 0.1
Start distance: 10
Sunlight scale: 0
Ambient scale: 0
Temperature: 1
| +| WestArctic_IceBerg_CaveSealed_Dark | SkyIceberg | Absorption: (20.0, 10.0, 5.0)
Scattering: 0.1
Scattering color: RGBA(0.000, 0.498, 0.651, 1.000)
Murkiness: 0.8
Emissive: RGBA(0.196, 0.353, 0.557, 1.000)
Emissive scale: 0.1
Start distance: 10
Sunlight scale: 0
Ambient scale: 0
Temperature: 1
| +| EastArctic_IceBerg_CaveSurface_Dark | SkyIceberg | Absorption: (20.0, 10.0, 5.0)
Scattering: 0.1
Scattering color: RGBA(0.000, 0.498, 0.651, 1.000)
Murkiness: 0.1
Emissive: RGBA(0.196, 0.395, 0.557, 1.000)
Emissive scale: 0.1
Start distance: 6
Sunlight scale: 0
Ambient scale: 0
Temperature: 1
| +| WestArctic_IceBerg_CaveSurface_Dark | SkyIceberg | Absorption: (10.0, 5.0, 2.5)
Scattering: 0.05
Scattering color: RGBA(0.000, 0.498, 0.651, 1.000)
Murkiness: 0.1
Emissive: RGBA(0.196, 0.395, 0.557, 1.000)
Emissive scale: 0.1
Start distance: 6
Sunlight scale: 0
Ambient scale: 0
Temperature: 1
| +| Lilypads_BaseInterior | SkyLilyPads_BaseInterior | Absorption: (20.0, 5.0, 6.0)
Scattering: 0.2
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.45
Emissive: RGBA(0.180, 0.604, 0.404, 1.000)
Emissive scale: 0.05
Start distance: 3
Sunlight scale: 0
Ambient scale: 1
Temperature: 1
| +| arcticSpires | SkyGlacialBasin | Absorption: (20.0, 10.0, 5.0)
Scattering: 0.5
Scattering color: RGBA(0.000, 0.498, 0.651, 1.000)
Murkiness: 0.1
Emissive: RGBA(0.196, 0.395, 0.557, 1.000)
Emissive scale: 0.05
Start distance: 6
Sunlight scale: 1
Ambient scale: 1.3
Temperature: 0
| +| OutpostZero_Interior | SkyOutpostZero_Interior | Absorption: (20.0, 10.0, 5.0)
Scattering: 0.5
Scattering color: RGBA(0.000, 0.498, 0.651, 1.000)
Murkiness: 0.1
Emissive: RGBA(0.196, 0.395, 0.557, 1.000)
Emissive scale: 0.05
Start distance: 6
Sunlight scale: 1
Ambient scale: 1.3
Temperature: 0
| +| WorldEdge | SkyIceberg | Absorption: (10.0, 5.0, 4.0)
Scattering: 0.5
Scattering color: RGBA(0.000, 0.498, 0.651, 1.000)
Murkiness: 0.4
Emissive: RGBA(0.098, 0.286, 0.396, 1.000)
Emissive scale: 0.2
Start distance: 25
Sunlight scale: 0.1
Ambient scale: 6
Temperature: 1
| +| EndGameAsteroids | SkyAsteroids | Absorption: (10.0, 5.0, 4.0)
Scattering: 0.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0
Emissive: RGBA(0.098, 0.286, 0.396, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 1
| +| ArcticSpiresCache | SkyKelpCave | Absorption: (12.0, 12.0, 7.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.838, 0.639, 0.210, 1.000)
Emissive scale: 0.13
Start distance: 12
Sunlight scale: 0
Ambient scale: 0.8
Temperature: 1
| + +

\ No newline at end of file diff --git a/Nautilus/Documentation/tutorials/overview.md b/Nautilus/Documentation/tutorials/overview.md index dad7b5a6..209ff6c8 100644 --- a/Nautilus/Documentation/tutorials/overview.md +++ b/Nautilus/Documentation/tutorials/overview.md @@ -10,6 +10,7 @@ This section covers step-by-step tutorials on how to get some of the useful feat * [Story goals](story-goals.md) * [Databank entries](databank-entries.md) * [Custom vehicle upgrade modules](vehicle-module.md) +* [Custom biomes](biomes.md) * TODO: [Audio (FMOD)](https://www.youtube.com/watch?v=dQw4w9WgXcQ) ### Prefabs diff --git a/Nautilus/Documentation/tutorials/toc.yml b/Nautilus/Documentation/tutorials/toc.yml index 189f6d05..fe408d2e 100644 --- a/Nautilus/Documentation/tutorials/toc.yml +++ b/Nautilus/Documentation/tutorials/toc.yml @@ -13,6 +13,8 @@ href: databank-entries.md - name: Custom vehicle upgrade modules href: vehicle-module.md + - name: Custom biomes + href: biomes.md - name: Prefabs items: diff --git a/Nautilus/Handlers/BiomeHandler.cs b/Nautilus/Handlers/BiomeHandler.cs new file mode 100644 index 00000000..b0644d5f --- /dev/null +++ b/Nautilus/Handlers/BiomeHandler.cs @@ -0,0 +1,117 @@ +using Nautilus.Patchers; +using Nautilus.Utility; +using UnityEngine; + +namespace Nautilus.Handlers; + +/// +/// A handler class for registering new biome types. +/// +public static class BiomeHandler +{ + /// + /// Registers a new biome type into the game. + /// + /// The name of the biome, as seen in the F1 menu. + /// The fog settings of the biome. See . + /// The Sky of the biome, which determines reflections and general lighting. + public static void RegisterBiome(string name, WaterscapeVolume.Settings settings, SkyReference sky) + { + BiomePatcher.RegisterBiome(new BiomePatcher.CustomBiomeData(name, settings, sky)); + } + + /// + /// Adds music that plays in the given biome(s). The sound emitter is played when the given conditions are ended, until those conditions are no longer true, and then a fadeout is allowed. + /// + /// The name of the biome that this music can play in. Prefix matching and case insensitive, so using "canyon" for this value would affect biomes named "canyon_one" and "canyon_TWO". + /// The sound asset that plays in this biome. + /// Determines how this sound is affected by being indoors or outside. + public static void AddBiomeMusic(string biomeName, FMODAsset musicAsset, FMODGameParams.InteriorState interiorState = FMODGameParams.InteriorState.Always) + { + BiomePatcher.RegisterBiomeSoundData(new BiomePatcher.CustomBiomeSoundData(BiomePatcher.CustomBiomeSoundData.Type.Music, biomeName, musicAsset, interiorState)); + } + + /// + /// Adds an ambient sound that plays in the given biome(s). The sound emitter is played when the given conditions are ended, until those conditions are no longer true, and then a fadeout is allowed. + /// + /// The name of the biome that this ambient sound can play in. Prefix matching and case insensitive, so using "canyon" for this value would affect biomes named "canyon_one" and "canyon_TWO". + /// The sound asset that plays in this biome. + /// Determines how this sound is affected by being indoors or outside. + public static void AddBiomeAmbience(string biomeName, FMODAsset ambienceAsset, FMODGameParams.InteriorState interiorState) + { + BiomePatcher.RegisterBiomeSoundData(new BiomePatcher.CustomBiomeSoundData(BiomePatcher.CustomBiomeSoundData.Type.Ambience, biomeName, ambienceAsset, interiorState)); + } + + /// + /// Defines a reference to a new or existing Sky prefab. + /// + public class SkyReference + { + private enum Type + { + GameObjectReference, + StringLookup, + GetPrefabFromCallback + } + + private readonly GameObject _obj; + private readonly string _existingSkyPrefabNameToLookUp; + private System.Func _prefabCallback; + private readonly Type _type; + + + /// + /// Defines a reference to a new or existing Sky prefab. + /// + /// + public SkyReference(GameObject obj) + { + _obj = obj; + _type = Type.GameObjectReference; + } + + /// + /// Defines a reference to a base-game Sky prefab. + /// + /// The name of the Sky prefab from the list of base-game Skies, i.e. "SkySafeShallows". + /// A list of valid inputs can be found on this page: https://subnauticamodding.github.io/Nautilus/tutorials/biomes.html + public SkyReference(string existingSkyPrefabName) + { + _existingSkyPrefabNameToLookUp = existingSkyPrefabName; + _type = Type.StringLookup; + } + + /// + /// Defines a reference to a Sky prefab created from a callback at runtime. + /// + public SkyReference(System.Func prefabCallback) + { + _prefabCallback = prefabCallback; + _type = Type.GetPrefabFromCallback; + } + + public virtual GameObject GetSkyPrefabAtRuntime(WaterBiomeManager waterBiomeManager) + { + if (_type == Type.StringLookup) + { + foreach (var settings in waterBiomeManager.biomeSettings) + { + if (settings != null && settings.skyPrefab != null && settings.skyPrefab.name == _existingSkyPrefabNameToLookUp) + { + return settings.skyPrefab; + } + } + + InternalLogger.Error($"No existing Sky prefab found by name '{_existingSkyPrefabNameToLookUp}'"); + return null; + } + + if (_type == Type.GetPrefabFromCallback) + { + return _prefabCallback?.Invoke(); + } + + return _obj; + } + } +} \ No newline at end of file diff --git a/Nautilus/Initializer.cs b/Nautilus/Initializer.cs index bae327c9..e67761e4 100644 --- a/Nautilus/Initializer.cs +++ b/Nautilus/Initializer.cs @@ -1,6 +1,7 @@ using System; using BepInEx; using HarmonyLib; +using Nautilus.Handlers; using Nautilus.Patchers; using Nautilus.Utility; using Nautilus.Utility.ModMessages; @@ -77,5 +78,6 @@ static Initializer() InventoryPatcher.Patch(_harmony); WaterParkPatcher.Patch(_harmony); ModMessageSystem.Patch(); + BiomePatcher.Patch(_harmony); } } \ No newline at end of file diff --git a/Nautilus/Patchers/BiomePatcher.cs b/Nautilus/Patchers/BiomePatcher.cs new file mode 100644 index 00000000..2e061267 --- /dev/null +++ b/Nautilus/Patchers/BiomePatcher.cs @@ -0,0 +1,141 @@ +using System.Collections.Generic; +using HarmonyLib; +using mset; +using Nautilus.Handlers; +using UnityEngine; + +namespace Nautilus.Patchers; + +internal static class BiomePatcher +{ + private static readonly List CustomBiomes = new(); + private static readonly List CustomBiomeSoundDatas = new(); + + internal static void Patch(Harmony harmony) + { + harmony.PatchAll(typeof(BiomePatcher)); + } + + internal static void RegisterBiome(CustomBiomeData biome) + { + CustomBiomes.Add(biome); + + var manager = WaterBiomeManager.main; + if (manager != null) + { + AddBiomeToWaterBiomeManager(manager, biome); + } + } + + internal static void RegisterBiomeSoundData(CustomBiomeSoundData biomeSoundData) + { + CustomBiomeSoundDatas.Add(biomeSoundData); + + // Water ambience is the parent of all biome sounds. If it exists, we missed our chance to add it automatically, so add it now. + if (Player.main == null) + return; + var waterAmbienceComponent = Player.main.GetComponentInChildren(); + if (waterAmbienceComponent != null) + { + AddBiomeSoundEmitterToWaterAmbience(waterAmbienceComponent, biomeSoundData); + } + } + + [HarmonyPatch(typeof(WaterBiomeManager), nameof(WaterBiomeManager.Start))] + [HarmonyPostfix] + internal static void WaterBiomeManagerStartPostfix(WaterBiomeManager __instance) + { + foreach (var customBiome in CustomBiomes) + { + AddBiomeToWaterBiomeManager(__instance, customBiome); + } + } + + [HarmonyPatch(typeof(WaterAmbience), nameof(WaterAmbience.Start))] + [HarmonyPostfix] + internal static void WaterAmbienceStartPostfix(WaterAmbience __instance) + { + foreach (var soundData in CustomBiomeSoundDatas) + { + AddBiomeSoundEmitterToWaterAmbience(__instance, soundData); + } + } + + internal static void AddBiomeToWaterBiomeManager(WaterBiomeManager manager, CustomBiomeData biome) + { + var skyPrefab = biome.Sky.GetSkyPrefabAtRuntime(manager); + manager.biomeSettings.Add(new WaterBiomeManager.BiomeSettings() + {name = biome.Name, settings = biome.Settings, skyPrefab = skyPrefab}); + var newIndexInBiomeLookup = manager.biomeLookup.Count; + Sky biomeSky = null; + if (skyPrefab != null && MarmoSkies.main != null) + { + biomeSky = MarmoSkies.main.GetSky(skyPrefab); + } + + manager.biomeSkies.Add(biomeSky); + if (manager.biomeLookup.ContainsKey(biome.Name)) + { + Debug.LogWarningFormat( + "WaterBiomeManager: biomeSettings contains multiple instances of the same biome name: {0}", new object[] + { + biome.Name + }); + } + else + { + manager.biomeLookup.Add(biome.Name, newIndexInBiomeLookup); + } + } + + internal static void AddBiomeSoundEmitterToWaterAmbience(WaterAmbience waterAmbience, CustomBiomeSoundData biomeSoundData) + { + var parent = waterAmbience.transform.Find(biomeSoundData.SoundType == CustomBiomeSoundData.Type.Music ? "music" : "background"); + var emitterObject = new GameObject(biomeSoundData.BiomeName + (biomeSoundData.SoundType == CustomBiomeSoundData.Type.Music ? "Music" : "Ambience")); + emitterObject.transform.parent = parent; + var emitter = emitterObject.AddComponent(); + emitter.SetAsset(biomeSoundData.SoundAsset); + emitter.stopImmediatelyOnDisable = true; + var gameParams = emitterObject.AddComponent(); + gameParams.loopingEmitter = emitter; + gameParams.onlyInBiome = biomeSoundData.BiomeName; + gameParams.interiorState = biomeSoundData.InteriorState; + } + + internal class CustomBiomeData + { + public string Name { get; } + public WaterscapeVolume.Settings Settings { get; } + public BiomeHandler.SkyReference Sky { get; } + + public CustomBiomeData(string name, WaterscapeVolume.Settings settings, BiomeHandler.SkyReference sky) + { + Name = name; + Settings = settings; + Sky = sky; + } + } + + internal class CustomBiomeSoundData + { + public Type SoundType { get; } + public string BiomeName { get; } + public FMODAsset SoundAsset { get; } + public FMODGameParams.InteriorState InteriorState { get; } + + public CustomBiomeSoundData(Type soundType, string biomeName, FMODAsset soundAsset, + FMODGameParams.InteriorState interiorState) + { + SoundType = soundType; + BiomeName = biomeName; + SoundAsset = soundAsset; + InteriorState = interiorState; + } + + public enum Type + { + Ambience, + Music + } + } +} \ No newline at end of file diff --git a/Nautilus/Utility/BiomeUtils.cs b/Nautilus/Utility/BiomeUtils.cs new file mode 100644 index 00000000..f7722d57 --- /dev/null +++ b/Nautilus/Utility/BiomeUtils.cs @@ -0,0 +1,148 @@ +using System; +using mset; +using UnityEngine; +using Object = UnityEngine.Object; + +namespace Nautilus.Utility; + +/// +/// Utility class containing methods related to creating custom biomes. +/// +public static class BiomeUtils +{ + /// + /// A shorthand for creating an instance of the class. + /// A list of base game values can be found on this page: https://subnauticamodding.github.io/Nautilus/tutorials/biomes.html + /// + /// Attenuation coefficients of light (1/cm), red green and blue respectively. The default value is 100f, 18.29155f, 3.531373f. + /// The strength of light scattering, 1f by default. + /// The color of light scattering. Default value is white. + /// The murkiness of the water. Default value is 1f, recommended range is 0f-20f. + /// The emission color of the fog. Default value is black. + /// The emission strength of the fog. Default value is 1f. + /// The starting distance of the fog. Default value is 25f. Don't make this too high. + /// The strength of sunlight in this biome. Default value is 1f. + /// The strength of ambient light in this biome. Default value is 1f. + /// The temperature of this biome in Celsius. Default value is 24f. + /// An instance of the class with all settings applied. + public static WaterscapeVolume.Settings CreateBiomeSettings(Vector3 absorption, float scattering, + Color scatteringColor, float murkiness, Color emissive, float emissiveScale = 1, float startDistance = 25, + float sunlightScale = 1, float ambientScale = 1, float temperature = 24) + { + return new WaterscapeVolume.Settings() + { + absorption = absorption, + scattering = scattering, + scatteringColor = scatteringColor, + murkiness = murkiness, + emissive = emissive, + emissiveScale = emissiveScale, + startDistance = startDistance, + sunlightScale = sunlightScale, + ambientScale = ambientScale, + temperature = temperature + }; + } + + // DO NOT BLAME ME FOR THIS HORRIBLE CODE - SERIALIZE FIELD COMPONENTS HAVE VERY WEIRD BEHAVIOR IN OUR MODS! + + private static GameObject _skyPrefabsParent; + + /// + /// Creates a new basic Sky prefab. + /// + /// The name of the Sky, can be anything. + /// The texture of the Sky, VERY important in determining reflections. + /// If true, the Sky will appear darker at night and brighter at day. + /// Whether this sky is outdoors or not (should be false for the interiors of player-made structures). + /// The SkyPrefabFixer component for further modification (this is necessary to get around a Unity bug). + public static SkyPrefabFixer CreateSkyPrefab(string name, Texture specularCube, bool affectedByDayNightCycle = true, + bool outdoors = true) + { + if (_skyPrefabsParent == null) + { + _skyPrefabsParent = new GameObject("Nautilus.SkyPrefabsParent"); + _skyPrefabsParent.AddComponent(); + _skyPrefabsParent.SetActive(false); + Object.DontDestroyOnLoad(_skyPrefabsParent); + } + + var skyObject = new GameObject(name); + skyObject.transform.parent = _skyPrefabsParent.transform; + skyObject.AddComponent(); + + var sky = skyObject.AddComponent(); + + var skyPrefabFixer = skyObject.AddComponent(); + skyPrefabFixer.sky = sky; + skyPrefabFixer.specularCube = specularCube; + skyPrefabFixer.affectedByDayNightCycle = affectedByDayNightCycle; + skyPrefabFixer.outdoors = outdoors; + + return skyPrefabFixer; + } + + /// + /// Wrapper class that contains all Sky properties, which are automatically assigned. Necessary for our purposes because fields with SerializeField do not have their values saved when they are instantiated. Yes, everything HAS to be public! + /// + public class SkyPrefabFixer : MonoBehaviour + { +#pragma warning disable CS1591 // Missing XML comment for publicly visible type or member + public Sky sky; + + public Texture specularCube; + + public Bounds dimensions = new Bounds(Vector3.zero, Vector3.one); + + public bool affectedByDayNightCycle = true; + + public bool outdoors = true; + + public float masterIntensity = 1f; + + public float skyIntensity = 1f; + + public float specIntensity = 1f; + + public float diffIntensity = 1f; + + public float camExposure = 1f; + + public float specIntensityLM = 0.2f; + + public float diffIntensityLM = 0.05f; + + public bool hdrSky = true; + + public bool hdrSpec = true; + + public bool linearSpace = true; + + public bool autoDetectColorSpace = true; + + public bool hasDimensions; +#pragma warning restore CS1591 // Missing XML comment for publicly visible type or member + + private void OnEnable() + { + if (sky == null) return; + sky.specularCube = specularCube; + sky.dimensions = dimensions; + sky.affectedByDayNightCycle = affectedByDayNightCycle; + sky.outdoors = outdoors; + sky.masterIntensity = masterIntensity; + sky.skyIntensity = skyIntensity; + sky.diffIntensity = diffIntensity; + sky.camExposure = camExposure; + sky.specIntensity = specIntensity; + sky.specIntensityLM = specIntensityLM; + sky.diffIntensityLM = diffIntensityLM; + sky.hdrSky = hdrSky; + sky.hdrSpec = hdrSpec; + sky.linearSpace = linearSpace; + sky.autoDetectColorSpace = autoDetectColorSpace; + sky.hasDimensions = hasDimensions; + } + } + +} \ No newline at end of file From ac10addf438150e45ed26c9164d2c3d4edc43e73 Mon Sep 17 00:00:00 2001 From: Lee23 <31892011+LeeTwentyThree@users.noreply.github.com> Date: Tue, 19 Dec 2023 11:30:07 -0500 Subject: [PATCH 5/9] fix: Fix Nautilus not compiling for BZ (Thanks to Biome Handler) (#514) Fix Nautilus not compiling for BZ --- Nautilus/Handlers/BiomeHandler.cs | 2 ++ Nautilus/Patchers/BiomePatcher.cs | 2 ++ 2 files changed, 4 insertions(+) diff --git a/Nautilus/Handlers/BiomeHandler.cs b/Nautilus/Handlers/BiomeHandler.cs index b0644d5f..992c83ba 100644 --- a/Nautilus/Handlers/BiomeHandler.cs +++ b/Nautilus/Handlers/BiomeHandler.cs @@ -20,6 +20,7 @@ public static void RegisterBiome(string name, WaterscapeVolume.Settings settings BiomePatcher.RegisterBiome(new BiomePatcher.CustomBiomeData(name, settings, sky)); } +#if SUBNAUTICA /// /// Adds music that plays in the given biome(s). The sound emitter is played when the given conditions are ended, until those conditions are no longer true, and then a fadeout is allowed. /// @@ -30,6 +31,7 @@ public static void AddBiomeMusic(string biomeName, FMODAsset musicAsset, FMODGam { BiomePatcher.RegisterBiomeSoundData(new BiomePatcher.CustomBiomeSoundData(BiomePatcher.CustomBiomeSoundData.Type.Music, biomeName, musicAsset, interiorState)); } +#endif /// /// Adds an ambient sound that plays in the given biome(s). The sound emitter is played when the given conditions are ended, until those conditions are no longer true, and then a fadeout is allowed. diff --git a/Nautilus/Patchers/BiomePatcher.cs b/Nautilus/Patchers/BiomePatcher.cs index 2e061267..b4c61c84 100644 --- a/Nautilus/Patchers/BiomePatcher.cs +++ b/Nautilus/Patchers/BiomePatcher.cs @@ -95,7 +95,9 @@ internal static void AddBiomeSoundEmitterToWaterAmbience(WaterAmbience waterAmbi emitterObject.transform.parent = parent; var emitter = emitterObject.AddComponent(); emitter.SetAsset(biomeSoundData.SoundAsset); +#if SUBNAUTICA emitter.stopImmediatelyOnDisable = true; +#endif var gameParams = emitterObject.AddComponent(); gameParams.loopingEmitter = emitter; gameParams.onlyInBiome = biomeSoundData.BiomeName; From 3f7760c4a7768dabbea0f8e405926859391d8900 Mon Sep 17 00:00:00 2001 From: LeeTwentyThree <31892011+LeeTwentyThree@users.noreply.github.com> Date: Tue, 19 Dec 2023 11:39:06 -0500 Subject: [PATCH 6/9] TEST TO FIX DOCS --- Nautilus/Documentation/tutorials/biomes.md | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/Nautilus/Documentation/tutorials/biomes.md b/Nautilus/Documentation/tutorials/biomes.md index 9a04c447..1a0a945b 100644 --- a/Nautilus/Documentation/tutorials/biomes.md +++ b/Nautilus/Documentation/tutorials/biomes.md @@ -6,8 +6,7 @@ This guide provides some information on adding custom biomes. ## Biomes reference list -
- Expand to view base game biome data (SN1): +SN1 Biome Settings: | Biome name | Sky name | Settings | |--------------|-----------------|-------------------------------------------------------| @@ -157,10 +156,7 @@ This guide provides some information on adding custom biomes. | grandReef_wreck | SkyExplorableWreck | Absorption: (16.0, 12.0, 6.0)
Scattering: 2
Scattering color: RGBA(0.000, 1.000, 0.910, 1.000)
Murkiness: 0.25
Emissive: RGBA(0.000, 0.957, 1.000, 1.000)
Emissive scale: 0.03
Start distance: 40
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| | CrashZone_Trench | SkyCrashZone | Absorption: (17.0, 20.0, 20.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.2
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 5
Sunlight scale: 0.75
Ambient scale: 1
Temperature: 24
| -

- -
- Expand to view base game biome data (BZ): +BZ Biome Settings: | Biome name | Sky name | Settings | |--------------|-----------------|-------------------------------------------------------| @@ -264,6 +260,4 @@ This guide provides some information on adding custom biomes. | OutpostZero_Interior | SkyOutpostZero_Interior | Absorption: (20.0, 10.0, 5.0)
Scattering: 0.5
Scattering color: RGBA(0.000, 0.498, 0.651, 1.000)
Murkiness: 0.1
Emissive: RGBA(0.196, 0.395, 0.557, 1.000)
Emissive scale: 0.05
Start distance: 6
Sunlight scale: 1
Ambient scale: 1.3
Temperature: 0
| | WorldEdge | SkyIceberg | Absorption: (10.0, 5.0, 4.0)
Scattering: 0.5
Scattering color: RGBA(0.000, 0.498, 0.651, 1.000)
Murkiness: 0.4
Emissive: RGBA(0.098, 0.286, 0.396, 1.000)
Emissive scale: 0.2
Start distance: 25
Sunlight scale: 0.1
Ambient scale: 6
Temperature: 1
| | EndGameAsteroids | SkyAsteroids | Absorption: (10.0, 5.0, 4.0)
Scattering: 0.5
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0
Emissive: RGBA(0.098, 0.286, 0.396, 1.000)
Emissive scale: 0
Start distance: 25
Sunlight scale: 0
Ambient scale: 0
Temperature: 1
| -| ArcticSpiresCache | SkyKelpCave | Absorption: (12.0, 12.0, 7.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.838, 0.639, 0.210, 1.000)
Emissive scale: 0.13
Start distance: 12
Sunlight scale: 0
Ambient scale: 0.8
Temperature: 1
| - -

\ No newline at end of file +| ArcticSpiresCache | SkyKelpCave | Absorption: (12.0, 12.0, 7.0)
Scattering: 0
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.7
Emissive: RGBA(0.838, 0.639, 0.210, 1.000)
Emissive scale: 0.13
Start distance: 12
Sunlight scale: 0
Ambient scale: 0.8
Temperature: 1
| \ No newline at end of file From cb4632dd7063eb8b55ae251cb00ae39d94cf019e Mon Sep 17 00:00:00 2001 From: LeeTwentyThree <31892011+LeeTwentyThree@users.noreply.github.com> Date: Tue, 19 Dec 2023 11:45:41 -0500 Subject: [PATCH 7/9] Improve table of contents on the broken page --- Nautilus/Documentation/tutorials/biomes.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/Nautilus/Documentation/tutorials/biomes.md b/Nautilus/Documentation/tutorials/biomes.md index 1a0a945b..173f05ea 100644 --- a/Nautilus/Documentation/tutorials/biomes.md +++ b/Nautilus/Documentation/tutorials/biomes.md @@ -4,9 +4,7 @@ This guide provides some information on adding custom biomes. > [!NOTE] > This page is under construction and may not be finished any time soon. However, any information currently provided should still be accurate. -## Biomes reference list - -SN1 Biome Settings: +# SN1 Biome Settings: | Biome name | Sky name | Settings | |--------------|-----------------|-------------------------------------------------------| @@ -156,7 +154,7 @@ SN1 Biome Settings: | grandReef_wreck | SkyExplorableWreck | Absorption: (16.0, 12.0, 6.0)
Scattering: 2
Scattering color: RGBA(0.000, 1.000, 0.910, 1.000)
Murkiness: 0.25
Emissive: RGBA(0.000, 0.957, 1.000, 1.000)
Emissive scale: 0.03
Start distance: 40
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| | CrashZone_Trench | SkyCrashZone | Absorption: (17.0, 20.0, 20.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.2
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 5
Sunlight scale: 0.75
Ambient scale: 1
Temperature: 24
| -BZ Biome Settings: +# BZ Biome Settings: | Biome name | Sky name | Settings | |--------------|-----------------|-------------------------------------------------------| From 67dfe78bbf27d5272eb48910923ba48e7d778349 Mon Sep 17 00:00:00 2001 From: LeeTwentyThree <31892011+LeeTwentyThree@users.noreply.github.com> Date: Tue, 19 Dec 2023 11:49:45 -0500 Subject: [PATCH 8/9] New rule: we have to test docs before pushing them --- Nautilus/Documentation/tutorials/biomes.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Nautilus/Documentation/tutorials/biomes.md b/Nautilus/Documentation/tutorials/biomes.md index 173f05ea..80b3e989 100644 --- a/Nautilus/Documentation/tutorials/biomes.md +++ b/Nautilus/Documentation/tutorials/biomes.md @@ -4,7 +4,7 @@ This guide provides some information on adding custom biomes. > [!NOTE] > This page is under construction and may not be finished any time soon. However, any information currently provided should still be accurate. -# SN1 Biome Settings: +## SN1 Biome Settings: | Biome name | Sky name | Settings | |--------------|-----------------|-------------------------------------------------------| @@ -154,7 +154,7 @@ This guide provides some information on adding custom biomes. | grandReef_wreck | SkyExplorableWreck | Absorption: (16.0, 12.0, 6.0)
Scattering: 2
Scattering color: RGBA(0.000, 1.000, 0.910, 1.000)
Murkiness: 0.25
Emissive: RGBA(0.000, 0.957, 1.000, 1.000)
Emissive scale: 0.03
Start distance: 40
Sunlight scale: 0
Ambient scale: 0
Temperature: 24
| | CrashZone_Trench | SkyCrashZone | Absorption: (17.0, 20.0, 20.0)
Scattering: 1
Scattering color: RGBA(1.000, 1.000, 1.000, 1.000)
Murkiness: 0.2
Emissive: RGBA(1.000, 1.000, 1.000, 1.000)
Emissive scale: 0
Start distance: 5
Sunlight scale: 0.75
Ambient scale: 1
Temperature: 24
| -# BZ Biome Settings: +## BZ Biome Settings: | Biome name | Sky name | Settings | |--------------|-----------------|-------------------------------------------------------| From 688d017461c23bd836f9c7fac67b4c5be7e2399f Mon Sep 17 00:00:00 2001 From: LeeTwentyThree <31892011+LeeTwentyThree@users.noreply.github.com> Date: Tue, 19 Dec 2023 18:55:22 -0500 Subject: [PATCH 9/9] Update to 1.0.0-pre.25 --- Version.targets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Version.targets b/Version.targets index 88086a2a..b723b8f7 100644 --- a/Version.targets +++ b/Version.targets @@ -3,7 +3,7 @@ 1.0.0 - 24 + 25 pre.$(SuffixNumber) \ No newline at end of file