# [1.6.1-2 + Backports] Kopernicus & KittopiaTech

## Recommended Posts

Is there anyone who could explain me the logic behind the coordinate system of kopernicus (for MapDecals, FlattenArea, ...) ? I've tried to figure it out but for me it currently makes no sense.

For example KSC: position = 157000,-3000,-570000 (MapDecalTangent)

How do these numbers translate?

So how does 157000,-3000,-570000 become 0° 6′ 9″ S & 74° 34′ 31″ W ?

Edited by StarCrusher96

##### Share on other sites

And I have news for pretty much everyone. They say an image speaks a thousand words, well, I'll let images speak first then.

Dev shots:

Spoiler

First test of the upgraded shader in KSP, using Cyran's rings pasted around Jool as a base

From the testing grounds, to an actual planet pack. Pack in question: Evolution

Rings as they look in KSP by default:

Detail level 1:

Detail level 2:

Final product:

It's a slight edit, adding a few lines to @blackrack's original shader to filter in detail. This detail uses a single texture that is applied twice. The detail texture, filter distance and texture scale are all user-configurable.

To be specific:

```detailTex = X //filepath to the detail tex
pass1 = X,Y //x = minimum distance between camera and rings for detail level 1. y = detail level 1 tex scale
pass2 = X,Y //x = minimum distance between camera and rings for detail level 2. y = detail level 2 tex scale```

As you can see, there are two levels of detail. Level 1 is designed to be used when the camera is near the rings, but not about to pass through. This way you can filter out pixel-iness and keep the rings detailed. Detail level 2 is for when you're close enough to touch the rings, so the rings look immensely detailed even at very close range.

Future ideas:

- Emission texture: let parts of your rings glow in the dark!

- Up-close grainy noise or particles

Edited by The White Guardian
• 7

• 1

##### Share on other sites

@The White Guardian epicness. Great work

• 1

##### Share on other sites

What they said.  Wow!

##### Share on other sites

If y'all thought that that last change was an improvement...

Because Imgur hates me, it'll take me a few moments to get you all a picture, but I added two new features to the rings.
- Dust is now filtered in up-close to make the rings truly exceptional
- You can now set a 'culling distance'. IE, if you get within this distance, the rings will start fading gradually. No more ugly clipping when a spacecraft intersects the rings!

##### Share on other sites

Image time!

Spoiler

Detail level: main texture

Detail level: large bands

Detail level: small bands

Detail level: dust

Detail level: cull

• 4

##### Share on other sites
On 1/24/2018 at 7:30 PM, The White Guardian said:

In this image, the polygonal nature of the ring mesh is showing, because the texture coordinates are being taken from the mesh/interpolated UVs.

In my original code, I added a few lines to calculate the texture coordinates in the pixel shader, based on distance from the center of the planet, resulting in perfectly circular and not polygonal rings.

This seems to have been reverted at some point, I would suggest putting it back in to get perfectly circular rings.

Anyway, great work on the dust in the closeups, something I wanted to do since the beginning.

Edited by blackrack
• 4

##### Share on other sites
20 hours ago, blackrack said:

In this image, the polygonal nature of the ring mesh is showing, because the texture coordinates are being taken from the mesh/interpolated UVs.

In my original code, I added a few lines to calculate the texture coordinates in the pixel shader, based on distance from the center of the planet, resulting in perfectly circular and not polygonal rings.

This seems to have been reverted at some point, I would suggest putting it back in to get perfectly circular rings.

Anyway, great work on the dust in the closeups, something I wanted to do since the beginning.

That is brilliant! I'm adding that ASAP. It should be a simple substitution.

Currently the UV coords are multiplied before being passed on to the textures to handle scale on the shader instead. Therefore, I could replace it:

```float distance = length (ringIntersectPt);
ringTexturePosition = 1 - ringTexturePosition;
float2 UV_C = float2(ringTexturePosition, ringTexturePosition); //Store as Vector2 for easy substitution```

And then feed a multiplication of UV_C to the main and detail textures.

I'll give it some testing in-game to ensure all works properly. Thank you!

• 1

##### Share on other sites
17 hours ago, The White Guardian said:

That is brilliant! I'm adding that ASAP. It should be a simple substitution.

Currently the UV coords are multiplied before being passed on to the textures to handle scale on the shader instead. Therefore, I could replace it:

```
float distance = length (ringIntersectPt);
ringTexturePosition = 1 - ringTexturePosition;
float2 UV_C = float2(ringTexturePosition, ringTexturePosition); //Store as Vector2 for easy substitution```

And then feed a multiplication of UV_C to the main and detail textures.

I'll give it some testing in-game to ensure all works properly. Thank you!

Yes, I remember a while back the scale wasn"t handled correctly and in some cases there were black/invisible rings with some planets, mostly gas giants of planet packs, maybe these had the most dramatic scale use?

I think this is covered now then.

Edited by blackrack

##### Share on other sites

can you explain why do my planets look like this?

These are custom planets, the firts should be light blue and the second red-orange.

##### Share on other sites

How do I decrease the resolution of a body's PQS? Whenever I scale down a stock planet I get a super-compacted version of that world's terrain -- complete with collision mesh errors.

##### Share on other sites

KSC both clipped into and floating above terrain

I'm working on updating GregroxMun's Alien Space Programs for Kopernicus 1.3.1-3, supporting localization, non-index-numbered worlds, and so on, making sure the configurations are up to date.

I'm stuck on his Restored Duna version. "Restored Duna" uses the Duna textures from KSP versions prior to 0.21. For some reason, the KSC will both clip into the terrain and float above the terrain depending on the original underlying terrain map. The screen shots here are on the flattest place I could find close to the original non-Restored Duna version.

The bottom one is directly west of the research lab, and the KSC hovers roughly one metre above the terrain. The top one is just encroaching on the runway.

The entire configuration is available from my fork of the project. Note that my fork moves the Restored Duna KSC three degrees south to use flatter terrain. The relevant bit is here:

Spoiler
```
SpaceCenter
{
//PQSCity
latitude = -3.05
//longitude = -16.28
longitude = -16.05
lodvisibleRangeMult = 6
repositionToSphereSurface = true
reorientToSphere = true
reorientFinalAngle = -74

//MapDecal
decalLatitude = -3.05
//decalLongitude = -16.28
decalLongitude = -16.28
heightMapDeformity = 100
absoluteOffset = 0
absolute = true

//Ground Materials
groundColor = RGBA(84,34,23,12)
groundTexture = BUILTIN/ksc_exterior_terrain_ground
}
```

So do I need to flatten out the land underneath the KSC by editing the underlying height map image, or is there a way to flatten the underlying terrain directly? I thought the MapDecal configuration raised the surrounding terrain up and flattened it out.

##### Share on other sites

Hey, I gots a Urania wedged between Dres and Jool, not quite sure it fits but oh well... My first probe just reached target but when it encounters SoI, it's like running into a hard surface... I reloaded and burned all my propellant and tried to hit the boundry Damn Slow(tm) and still BOOM. I'm mystified, first time I saw a bug like this. =\

Here are some log excerpts:

[EXC 11:13:31.418] NullReferenceException: Object reference not set to an instance of an object
Kopernicus.Components.KopernicusStar.LateUpdate ()

[EXC 11:14:31.226] NullReferenceException: Object reference not set to an instance of an object
PQSMod_VertexHeightMap.OnVertexBuildHeight (.VertexBuildData data)
PQS.Mod_OnVertexBuildHeight (.VertexBuildData data)
System.Linq.Enumerable+<CreateSelectManyIterator>c__Iterator12`2[CelestialBody,UnityEngine.YieldInstruction].MoveNext ()
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
ContractConfigurator.BiomeTracker:Start()

[WRN 11:21:29.025] Cannot find preset 'High' for pqs 'Rhea'
[EXC 11:21:29.025] NullReferenceException: Object reference not set to an instance of an object
PQSMod_VertexHeightMap.OnVertexBuildHeight (.VertexBuildData data)
PQS.Mod_OnVertexBuildHeight (.VertexBuildData data)
PQS.UpdateVisual ()
PQS.StartSphere (Boolean force)
PQS+^A^K.MoveNext ()

Here's the log trace from the explosion:

[LOG 11:30:51.024] [OrbitDriver]: On-Rails SOI Transition from Sun to Urania.
Transition UT Range: 33431125.161 - 33431126.161.
Transition UT: 33431125.648. Iterations: 24.
[LOG 11:30:51.779] [Progress Node Reached]: Flyby
[LOG 11:30:51.779] [Progress Node Reached]: Urania
[LOG 11:30:51.779] [Progress Node Complete]: Flyby
[LOG 11:30:51.780] Added 0.3410652 (4) reputation: 'Progression'.
[WRN 11:30:51.839] [F: 67783]: Vessel Jool Relay 1B Debris crashed through terrain on Urania.
[LOG 11:30:51.839] [F: 67783]: [05:09:37]: Jool Relay 1B Debris crashed into Urania.
[LOG 11:30:51.839] [KSPI] - Handling Impactor
[LOG 11:30:51.840] [KSPI] - Handling Impactor
[LOG 11:30:51.840] [KSPI] - Handling Impactor
[LOG 11:30:51.840] [KSPI] - Handling Impactor
[LOG 11:30:51.840] NP.decoupler.stack.125m.Mini Exploded!! - blast awesomeness: 0.5
[LOG 11:30:51.840] [PartSet]: Recreating part sets for vessel Jool Relay 1B Debris
[LOG 11:30:51.848] [Dynamic Battery Storage]: Summary:
- 0 stock power handlers
[LOG 11:30:51.869] [Dynamic Battery Storage]: Summary:
vessel probeStackSmall (Jool Relay 1B) (loaded state True)
- 2 stock power handlers
[LOG 11:30:51.883] [PartSet]: Recreating part sets for vessel [empty name]
[LOG 11:30:51.883] [Dynamic Battery Storage]: Summary:
- 0 stock power handlers
[LOG 11:30:51.887] [Dynamic Battery Storage]: Summary:
vessel probeStackSmall (Jool Relay 1B) (loaded state True)
- 2 stock power handlers
[LOG 11:30:51.887] [PartSet]: Recreating part sets for vessel Jool Relay 1B Debris
[LOG 11:30:51.887] [NP.decoupler.stack.125m.Mini]: Deactivated
[LOG 11:30:51.887] [Dynamic Battery Storage]: Summary:
- 0 stock power handlers
[LOG 11:30:51.891] [Dynamic Battery Storage]: Summary:
vessel probeStackSmall (Jool Relay 1B) (loaded state True)
- 2 stock power handlers
[LOG 11:30:51.894] [KSPI] Creating Resource Manager for Vessel Jool Relay 1B Debris (Megajoules)
[LOG 11:30:51.959] FARVesselAero on fairingSize2 reporting startup
[LOG 11:30:51.959] [Dynamic Battery Storage]: Could not find an electrical storage part on the vessel

[ERR 11:30:52.012] TimingFI threw during FixedUpdate: System.ArgumentOutOfRangeException: Argument is out of range.
Parameter name: index
at System.Collections.Generic.List`1[OcclusionData].get_Item (Int32 index) [0x00000] in <filename unknown>:0
at FlightIntegrator.UpdateOcclusionSolar () [0x00000] in <filename unknown>:0
at FlightIntegrator.UpdateOcclusion (Boolean all) [0x00000] in <filename unknown>:0
at ModularFI.ModularFlightIntegrator.UpdateOcclusion (Boolean all) [0x00000] in <filename unknown>:0
at FlightIntegrator.FixedUpdate () [0x00000] in <filename unknown>:0
at ModularFI.ModularFlightIntegrator.TimedFixedUpdate () [0x00000] in <filename unknown>:0
at (wrapper delegate-invoke) Callback:invoke_void__this__ ()
at TimingFI.FixedUpdate () [0x00000] in <filename unknown>:0

[ERR 11:30:52.014] Infinity or NaN floating point numbers appear when calculating the transform matrix for a Collider. Scene hierarchy path "Jool Relay 1B Debris (Unloaded)/model\$

##### Share on other sites

Can you expalain please why do my custom planets look like this?

Here's the code

```@Kopernicus:AFTER[Kopernicus]
{
Body
{
name = Chernus

Orbit
{
referenceBody = Sun
inclination = 5
eccentricity = 0.3
semiMajorAxis = 2763138304
longitudeOfAscendingNode = 0
argumentOfPeriapsis = 0
meanAnomalyAtEpoch = 0
epoch = 0
color = 1,0.00233444,0,1
}

Properties
{
description = Chernus is the nearest planet to Kerbol, and the hottest planet in the system. If you look at Chernus with a telescope, you'll see just a big red-orange dot.
geeASL = 0.024
rotationPeriod = 3600
rotates = true
tidallyLocked = true
initialRotation = 0
isHomeWorld = false
timewarpAltitudeLimits = 0 30000 30000 60000 100000 300000 600000 800000

ScienceValues
{
landedDataValue = 8
splashedDataValue = 1
flyingLowDataValue = 5
flyingHighDataValue = 5
inSpaceLowDataValue = 7
inSpaceHighDataValue = 5
recoveryValue = 5
flyingAltitudeThreshold = 12000
spaceAltitudeThreshold = 140000
}
}

ScaledVersion
{
type = Atmospheric

Material
{
// Common scaled space settings
texture = KerbolExpansion/KopernicusFiles/Chernus/PluginData/chernus_color.dds
shininess = 0
specColor = 0.0,0.0,0.0,1.0

// Atmosphere settings
rimPower = 2.06
rimBlend = 0.3

// Atmosphere color ramp texture
{
0.0 = 0.0000,0.0000,0.0000,1
0.6 = 0.0000,0.0000,0.0000,1
1.0 = 0.0000,0.0000,0.0000,1
}
}
}

Atmosphere
{
// effectively the ambient lighting color for all objects on the ground of this body (provides a slight tint)
ambientColor = 0.006,0.187,0.8,1

//
// shader.invWaveLength = Color( 1 / r^4, 1 / g^4, 1 / b^4, 0.5);
//
lightColor = 0.709,0.788,0.543,0

// General atmosphere settings
enabled = true
oxygen = false
altitude = 175000.0

// Atmosphere Pressure
// pressure (in atm) = multipler * e ^ -(altitude / (scaleHeight * 1000))
pressureCurve
{
key = 0 1722.525 -3.68761403636364E-02 -3.68761403636364E-02
key = 13750 1215.4779 -2.89618181818182E-02 -2.89618181818182E-02
key = 27500 926.0747733 -1.70812909090909E-02 -1.70812909090909E-02
key = 41250 745.7422867 -1.22066367272727E-02 -1.22066367272727E-02
key = 55000 590.39232 -1.03885874909091E-02 -1.03885874909091E-02
key = 68750 460.0561533 -8.63595672727273E-03 -8.63595672727273E-03
key = 82500 352.9034533 -7.05044647272727E-03 -7.05044647272727E-03
key = 96250 266.1688867 -5.6660456E-03 -5.6660456E-03
key = 110000 197.0872333 -4.48274916363636E-03 -4.48274916363636E-03
key = 123750 142.8932733 -3.50056581818182E-03 -3.50056581818182E-03
key = 137500 100.8216733 -2.71949803636364E-03 -2.71949803636364E-03
key = 151250 68.1071 -2.13953963636364E-03 -2.13953963636364E-03
key = 165000 41.98433333 -1.65774109090909E-03 -1.65774109090909E-03
key = 178750 22.51922 -1.00126501090909E-03 -1.00126501090909E-03
key = 192500 14.44954667 -4.06759432727273E-04 -4.06759432727273E-04
key = 206250 11.33333333 -2.27824727272727E-04 -2.27824727272727E-04
key = 220000 8.184366667 -2.25669374545455E-04 -2.25669374545455E-04
key = 233750 5.127426667 -2.06283192727273E-04 -2.06283192727273E-04
key = 247500 2.51158 -1.61502101818182E-04 -1.61502101818182E-04
key = 261250 0.68612 -9.13301818181818E-05 -9.13301818181818E-05
key = 275000 0 -4.98996363636364E-05 -4.98996363636364E-05
}

// temperature Curve
temperatureCurve
{
key = 0 141.67 -0.002333333455 -0.002333333455
key = 33000 104.4583677 -0.0003304941091 -0.0003294753455
key = 57750 104.4583677 0.0003294753455 0.0003294753455
key = 85250 131.0381051 0.0001800779636 0.0001800779636
key = 154000 131.0381051 -0.0002483375636 -0.0002483375636
key = 220000 90.44359713 -0.0003304941091 -0.0003304941091
key = 247500 90.44359713 0.0001722816364 0.0001722816364
key = 275000 111.2241191 0.0002525833091 0.0002525833091
key = 343750 0 -0.0001634942182 -0.0001634942182
}
}
}
}```

Thanks if you can help

Edited by alexb2810

##### Share on other sites
30 minutes ago, alexb2810 said:

Can you expalain please why do my custom planets look like this?

Here's the code

```
@Kopernicus:AFTER[Kopernicus]
{
Body
{
name = Chernus

Orbit
{
referenceBody = Sun
inclination = 5
eccentricity = 0.3
semiMajorAxis = 2763138304
longitudeOfAscendingNode = 0
argumentOfPeriapsis = 0
meanAnomalyAtEpoch = 0
epoch = 0
color = 1,0.00233444,0,1
}

Properties
{
description = Chernus is the nearest planet to Kerbol, and the hottest planet in the system. If you look at Chernus with a telescope, you'll see just a big red-orange dot.
geeASL = 0.024
rotationPeriod = 3600
rotates = true
tidallyLocked = true
initialRotation = 0
isHomeWorld = false
timewarpAltitudeLimits = 0 30000 30000 60000 100000 300000 600000 800000

ScienceValues
{
landedDataValue = 8
splashedDataValue = 1
flyingLowDataValue = 5
flyingHighDataValue = 5
inSpaceLowDataValue = 7
inSpaceHighDataValue = 5
recoveryValue = 5
flyingAltitudeThreshold = 12000
spaceAltitudeThreshold = 140000
}
}

ScaledVersion
{
type = Atmospheric

Material
{
// Common scaled space settings
texture = KerbolExpansion/KopernicusFiles/Chernus/PluginData/chernus_color.dds
shininess = 0
specColor = 0.0,0.0,0.0,1.0

// Atmosphere settings
rimPower = 2.06
rimBlend = 0.3

// Atmosphere color ramp texture
{
0.0 = 0.0000,0.0000,0.0000,1
0.6 = 0.0000,0.0000,0.0000,1
1.0 = 0.0000,0.0000,0.0000,1
}
}
}

Atmosphere
{
// effectively the ambient lighting color for all objects on the ground of this body (provides a slight tint)
ambientColor = 0.006,0.187,0.8,1

//
// shader.invWaveLength = Color( 1 / r^4, 1 / g^4, 1 / b^4, 0.5);
//
lightColor = 0.709,0.788,0.543,0

// General atmosphere settings
enabled = true
oxygen = false
altitude = 175000.0

// Atmosphere Pressure
// pressure (in atm) = multipler * e ^ -(altitude / (scaleHeight * 1000))
pressureCurve
{
key = 0 1722.525 -3.68761403636364E-02 -3.68761403636364E-02
key = 13750 1215.4779 -2.89618181818182E-02 -2.89618181818182E-02
key = 27500 926.0747733 -1.70812909090909E-02 -1.70812909090909E-02
key = 41250 745.7422867 -1.22066367272727E-02 -1.22066367272727E-02
key = 55000 590.39232 -1.03885874909091E-02 -1.03885874909091E-02
key = 68750 460.0561533 -8.63595672727273E-03 -8.63595672727273E-03
key = 82500 352.9034533 -7.05044647272727E-03 -7.05044647272727E-03
key = 96250 266.1688867 -5.6660456E-03 -5.6660456E-03
key = 110000 197.0872333 -4.48274916363636E-03 -4.48274916363636E-03
key = 123750 142.8932733 -3.50056581818182E-03 -3.50056581818182E-03
key = 137500 100.8216733 -2.71949803636364E-03 -2.71949803636364E-03
key = 151250 68.1071 -2.13953963636364E-03 -2.13953963636364E-03
key = 165000 41.98433333 -1.65774109090909E-03 -1.65774109090909E-03
key = 178750 22.51922 -1.00126501090909E-03 -1.00126501090909E-03
key = 192500 14.44954667 -4.06759432727273E-04 -4.06759432727273E-04
key = 206250 11.33333333 -2.27824727272727E-04 -2.27824727272727E-04
key = 220000 8.184366667 -2.25669374545455E-04 -2.25669374545455E-04
key = 233750 5.127426667 -2.06283192727273E-04 -2.06283192727273E-04
key = 247500 2.51158 -1.61502101818182E-04 -1.61502101818182E-04
key = 261250 0.68612 -9.13301818181818E-05 -9.13301818181818E-05
key = 275000 0 -4.98996363636364E-05 -4.98996363636364E-05
}

// temperature Curve
temperatureCurve
{
key = 0 141.67 -0.002333333455 -0.002333333455
key = 33000 104.4583677 -0.0003304941091 -0.0003294753455
key = 57750 104.4583677 0.0003294753455 0.0003294753455
key = 85250 131.0381051 0.0001800779636 0.0001800779636
key = 154000 131.0381051 -0.0002483375636 -0.0002483375636
key = 220000 90.44359713 -0.0003304941091 -0.0003304941091
key = 247500 90.44359713 0.0001722816364 0.0001722816364
key = 275000 111.2241191 0.0002525833091 0.0002525833091
key = 343750 0 -0.0001634942182 -0.0001634942182
}
}
}
}```

Thanks if you can help

That’s typically caused by a bad texture path.  You are also missing a body template, which will cause issues.

##### Share on other sites

So i need to get another code?

The texture path needs to be like: /Kopernicus/planetfolder/planetname/plugindata/texture.png ?

##### Share on other sites

Hello everybody,

I released Kopernicus 1.3.1-4 1.3.1-5 on Github. It is mainly a bugfix release, but there are also some new features and caveats

Changelog

• Fixed RAM usage while generating ScaledSpace meshes
• Fixed PQSCity Deletion
• Standardized the Loading System in preparation for having the Kittopia Logic entirely in Kopernicus
• Added the generic Noise Parser from KopernicusExpansion
• Added the ability to load other noises than RidgedMultifractal in VertexPlanet. To keep the previous behaviour, rename the `Noise` node in `SharpnessNoise` to `Noise:RidgedMultifractal` and change `octaveCount` to `octaves`
• Fixed issues in MeshScatter, VertexHeightNoiseHeightMap and VertexPlanet
• Fixed the bug that causes orbit lines to flicker at a certain angle / distance
• Made the ring and scatter systems modular, so third parties can add their own components to them. While rings don't have built-in components at the moment, the Scatter colliders and experiments were moved into components. To keep the old behaviour, change `collides = true` to `Components { ScatterColliders { } }` and move the contents of the `Experiment` node to `Components { ScatterExperiment { } }`
• Unload Scaled Space textures on scene change
• Fixed the yellow-stripes bug that occured when trying to load textures from PluginData in OpenGL environments
• Added an experimental OnDemand setting, that manages memory manually and only stores the channels of the texture that are neccessary instead of the whole texture. (`useManualMemoryManagement = true` in the `Kopernicus` node)
• The `scatter` and `landClass` nodes from LandControl are now named `Scatter` and `LandClass`. The old values still work, but they are deprecated.

A Scatterer update fixed compatibility between ScaledSpace OnDemand Loading and Scatterer itself. The planets should no longer stay completely white.

This updates introduces quite significant code changes, so mods that depend on Kopernicus may stop working (Sigmas Mods, KopernicusExpansion etc.). Please be patient and wait for an update.

Edited by Thomas P.
• 5

##### Share on other sites

Maybe I've done something wrong but it appears there is a problem with the current version (just released) of Kopernicus and or SVT.  I just installed Kop and SVT into an existing save and it's causing both Kerbal Engineer and Surface Experiment Pack to throw exceptions when they query for the biome.  SEP throws exceptions on scene changes and KER spams the log with IndexOutOfRange exceptions which are game ending. The log spamming eventually causes a bunch of other mods to fail and start throwing exceptions.

Here's how the error happened.  I launched a vessel from the VAB to the launchpad.  SEP appears to have tried to check the biome of my SEP vessels on the science change.  KER repeatedly tried to determine the biome for the launched vessel once it loaded (I have the current biome in my KER HUD).  I alt-f4'ed the game and uninstalled Kop, SVT, and MFI.  After reloading the gaming and going back to the vessel on the launchpad, KER and SEP no longer throw errors.

I assume there is a problem with either Kop or SVT.  I looked at the SVT thread and didn't see any other users having the same problem so even if it were SVT it would seem to be related to the most recent Kop update.  Below, I've included the SEP exception, the KER exception, and a link to my output log.

Here's the SEP exception:

```[SEP_Science] Processing unloaded SEP vessel: SEP Central Station
6 SEP modules found

(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebugBindings.gen.cpp Line: 42)

IndexOutOfRangeException: Array index is out of range.
at CBAttributeMapSO.GetAtt (Double lat, Double lon) [0x00000] in <filename unknown>:0
at ScienceUtil.GetExperimentBiome (.CelestialBody body, Double lat, Double lon) [0x00000] in <filename unknown>:0
at SEPScience.SEP_Utilities.currentBiome (.ScienceExperiment e, .Vessel v) [0x00000] in <filename unknown>:0
at SEPScience.SEP_Utilities.subjectIsValid (SEPScience.SEP_ExperimentHandler handler) [0x00000] in <filename unknown>:0
at SEPScience.SEP_ExperimentHandler.getSubmittedData () [0x00000] in <filename unknown>:0
at SEPScience.SEP_Controller.experimentCheck (Double time) [0x00000] in <filename unknown>:0
at SEPScience.SEP_Controller.Update () [0x00000] in <filename unknown>:0

(Filename:  Line: -1)

IndexOutOfRangeException: Array index is out of range.
at CBAttributeMapSO.GetAtt (Double lat, Double lon) [0x00000] in <filename unknown>:0
at ScienceUtil.GetExperimentBiome (.CelestialBody body, Double lat, Double lon) [0x00000] in <filename unknown>:0
at SEPScience.SEP_UI.Windows.SEP_VesselSection.getSituationString () [0x00000] in <filename unknown>:0
at SEPScience.SEP_UI.Windows.SEP_VesselSection..ctor (.Vessel v) [0x00000] in <filename unknown>:0
at SEPScience.SEP_UI.Windows.SEP_AppLauncher.processVesselSections () [0x00000] in <filename unknown>:0
at SEPScience.SEP_UI.Windows.SEP_AppLauncher+<getVessels>d__54.MoveNext () [0x00000] in <filename unknown>:0
at UnityEngine.SetupCoroutine.InvokeMoveNext (IEnumerator enumerator, IntPtr returnValueAddress) [0x00000] in <filename unknown>:0 ```

Here's the KER exception:

```KerbalEngineer -> GetExperimentBiome(Kerbin, -0.0972078791233403, -74.5576811942931) died

(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebugBindings.gen.cpp Line: 42)

KerbalEngineer -> Array index is out of range.

(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebugBindings.gen.cpp Line: 42)

KerbalEngineer ->   at CBAttributeMapSO.GetAtt (Double lat, Double lon) [0x00000] in <filename unknown>:0
at ScienceUtil.GetExperimentBiome (.CelestialBody body, Double lat, Double lon) [0x00000] in <filename unknown>:0
at KerbalEngineer.Flight.Readouts.Surface.ImpactProcessor.Update () [0x00000] in <filename unknown>:0

(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebugBindings.gen.cpp Line: 42)

IndexOutOfRangeException: Array index is out of range.
at CBAttributeMapSO.GetAtt (Double lat, Double lon) [0x00000] in <filename unknown>:0
at ScienceUtil.GetExperimentBiome (.CelestialBody body, Double lat, Double lon) [0x00000] in <filename unknown>:0
at KerbalEngineer.Flight.Readouts.Surface.Biome.Draw (KerbalEngineer.Flight.Sections.SectionModule section) [0x00000] in <filename unknown>:0
at KerbalEngineer.Flight.Sections.SectionModule.DrawReadoutModules () [0x00000] in <filename unknown>:0
at KerbalEngineer.Flight.Sections.SectionModule.Draw () [0x00000] in <filename unknown>:0
at KerbalEngineer.Flight.Sections.SectionWindow.Window (Int32 windowId) [0x00000] in <filename unknown>:0
at UnityEngine.GUILayout+LayoutedWindow.DoWindow (Int32 windowID) [0x00000] in <filename unknown>:0
at UnityEngine.GUI.CallWindowDelegate (UnityEngine.WindowFunction func, Int32 id, UnityEngine.GUISkin _skin, Int32 forceRect, Single width, Single height, UnityEngine.GUIStyle style) [0x00000] in <filename unknown>:0

(Filename:  Line: -1)

IndexOutOfRangeException: Array index is out of range.
at CBAttributeMapSO.GetAtt (Double lat, Double lon) [0x00000] in <filename unknown>:0
at ScienceUtil.GetExperimentBiome (.CelestialBody body, Double lat, Double lon) [0x00000] in <filename unknown>:0
at KerbalEngineer.Flight.Readouts.Surface.Biome.Draw (KerbalEngineer.Flight.Sections.SectionModule section) [0x00000] in <filename unknown>:0
at KerbalEngineer.Flight.Sections.SectionModule.DrawReadoutModules () [0x00000] in <filename unknown>:0
at KerbalEngineer.Flight.Sections.SectionModule.Draw () [0x00000] in <filename unknown>:0
at KerbalEngineer.Flight.Sections.SectionWindow.Window (Int32 windowId) [0x00000] in <filename unknown>:0
at UnityEngine.GUILayout+LayoutedWindow.DoWindow (Int32 windowID) [0x00000] in <filename unknown>:0
at UnityEngine.GUI.CallWindowDelegate (UnityEngine.WindowFunction func, Int32 id, UnityEngine.GUISkin _skin, Int32 forceRect, Single width, Single height, UnityEngine.GUIStyle style) [0x00000] in <filename unknown>:0

(Filename:  Line: -1)```

Here's a link to my output.log: https://www.dropbox.com/s/aophv82p0u21cl0/output_log - Kop_SVT.txt?dl=1

Edited by Tarheel1999

##### Share on other sites

@Tarheel1999 I mean, I haven’t updated anything to the latest Kopernicus (not saying there isn’t a problem), but if you are just using Kopernicus for SVT, you had no reason to update yet.

Edited by Galileo

##### Share on other sites
17 minutes ago, Galileo said:

@Tarheel1999 I mean, I haven’t updated anything to the latest Kopernicus (not saying there isn’t a problem), but if you are just using Kopernicus for SVT, you had no reason to update yet.

Okay. Chalk this up to user error then. I downloaded the most recent Kopernicus because I try to keep all mods updated. I scanned the patch notes but missed the section below about mods needing an update.

@Thomas P. Apparently, this was user error on my part. I apologize for wasting your time.  I missed your italicized section at the bottom stating that mods would need to be updated. Might I suggest that you state at the top that mods relying on Koppernicus may/will need to be updated due to significant code changes? There is a substantial tension between the introduction and closing of your post.

##### Share on other sites
7 minutes ago, Tarheel1999 said:

Okay. Chalk this up to user error then. I downloaded the most recent Kopernicus because I try to keep all mods updated. I scanned the patch notes but missed the section below about mods needing an update.

@Thomas P. Apparently, this was user error on my part. I apologize for wasting your time.  I missed your italicized section at the bottom stating that mods would need to be updated. Might I suggest that you state at the top that mods relying on Koppernicus may/will need to be updated due to significant code changes? There is a substantial tension between the introduction and closing of your post.

Thanks for the apology but you (and @Galileo ) are wrong. I tried it in just stock + Kopernicus and it failed like you described. Already found the cause too.

@everybody Guess that means 1.3.1-5 then

Edit: 1.3.1-5 is on Github

Edited by Thomas P.
• 1

##### Share on other sites
11 minutes ago, Thomas P. said:

Thanks for the apology but you (and @Galileo ) are wrong. I tried it in just stock + Kopernicus and it failed like you described. Already found the cause too.

@everybody Guess that means 1.3.1-5 then

Edit: 1.3.1-5 is on Github

Are you saying it failed in 1.3.1-3? Because all I was suggesting was that he return to that version until I updated SVT.

if it was indeed broken, I will need to get an update out ASAP

Edited by Galileo

##### Share on other sites
Just now, Galileo said:

Are you saying it failed in 1.3.1-3? Because all I was suggesting was that he return to that version until I updated SVT

No, but even updating SVT wouldn't have helped

• 1