The atmosphere realism overhaul for Kitten Space Agency, packaged as a StarMap mod. No game files are modified and no admin rights are needed: at launch the mod builds patched shadow copies of the relevant Core content in the mods folder and uses Harmony to redirect the game's file reads into them. The shadow is rebuilt from the current game files at every launch, and if an update changes an XML anchor the affected patch is skipped gracefully (stock look until the mod is updated). Shader patches are more fragile: a game update that reworks the atmosphere shaders can stop them compiling, so check the release's tested game build.






Requires StarMap. Each release zip is
named with the KSA build it was tested on (RealAtmospheres-v<version>-ksa<build>.zip).
In Borea, install Real Atmospheres from the mod
list. It installs the StarMap loader for you, unpacks the mod into the active
instance and enables it, so there is nothing to place by hand. Note that a manager
keeps the game's user data (mods, manifest.toml, settings.toml, saves, logs) in
its own instance folder rather than Documents\My Games\Kitten Space Agency.
StarMap.Loader.exe.Documents\My Games\Kitten Space Agency\mods\, so you
end up with mods\RealAtmospheres\RealAtmospheres.dll. The folder must be
named exactly RealAtmospheres (KSA uses the folder name as the mod id).Documents\My Games\Kitten Space Agency\manifest.toml, but always
disabled. Close the game and change its entry to:toml
[[mods]]
id = "RealAtmospheres"
enabled = true
found mod 'RealAtmospheres' when it
is active. To uninstall, delete the RealAtmospheres folder and the
_RealSharedShadow folder the mod creates next to it; KSA removes the
manifest entry itself.deploy.ps1 builds the .NET 10 class library and installs it into your mods
folder; package.ps1 [-Version x.y.z] [-GameBuild vYYYY.M.D.NNNN] builds the
player zip in dist\. Both ship exactly the assets listed in release-files.txt
(everything else in assets\ is a converter source or stale output). The csproj only references StarMap.API.dll and 0Harmony.dll
(set StarMapDir to your StarMap folder); all game access is via reflection.
[StarMapBeforeMain] runs before the game's Main and applies anchored text
transforms (idempotent — a hand-patched install passes through unchanged) to
fresh copies of the stock files, rebuilt at every launch:
Content\Core\Shaders\** into ShadowContent\Core\Shaders\ in the mod folder,
and Astronomicals.xml, SolSystem.xml and SolSystemDense.xml into
mods\_RealSharedShadow\Core\ (the leading underscore makes KSA's mod loader
skip that folder).KSA.Mod.LoadAssetBundles/LoadEditorTagDefinitions
swap the Core mod's Astronomicals.xml assets entry for the shadow copy's
absolute path, and prefixes on LoadSystems/PrepareSystems do the same for
the Sol system templates. (The generic XmlLoader.Load<T> is deliberately left alone:
patching a shared generic instantiation hijacks every other T.) Cirrus
textures are referenced by absolute path into the mod's assets\ folder
(Mod.GetPath is Path.Combine, which passes rooted paths through).RenderCore.ShaderModuleUtils.FromFile remaps any
Content\Core\Shaders\* path into the shadow tree. shaderc #includes
resolve relative to the requesting file, so the whole tree follows.The shipped textures are derived from these sources: resized into cubemaps, or turned into cloud masks and flowmaps by the scripts in this repo.
| Source | By | Shipped files derived from it |
|---|---|---|
| Mars cloud map | SpaceEngine | MarsCirrusMaskVolumetric.dds, MarsCirrusMask2D.png |
| Saturn texture map | JCP-JohnCarlo | SaturnDiffuse.ktx2, SaturnCloudsMask.dds, SaturnFlowmap.dds |
| Uranus texture map | Askaniy | UranusDiffuse.ktx2, UranusCloudsMask.dds, UranusFlowmap.dds |
| Neptune texture map | Askaniy | NeptuneDiffuse.ktx2, NeptuneCloudsMask.dds, NeptuneFlowmap.dds |
| Titan haze maps | SpaceEngine | TitanUpperHazeMask*, TitanLowerHazeMask* |
| Triton cloud map | SpaceEngine | TritonCloudsMask* |
MarsDustPhaseLut.glsl is computed by make_mars_phase_lut.py (Mie scattering), not derived from any
image. Jupiter uses the game's own textures.
The Mars, Titan and Triton masks come from our own SpaceEngine PRO exports, which carry a required credit
line: Produced in part with SpaceEngine PRO © Cosmographic Software LLC. CREDITS.md records the origin
and terms of every shipped file.
Raw stats are from the beginning of time until now. Each follower and download entry represents one hour of data. Uneventful hours are omitted.