Jump to content

Kopernicus PQS mods Documentation (W.I.P)


Kepler68

Recommended Posts

This thread is an attempt to document the Kopernicus planet mods various PQS modifiers and how they affect a planet.

NOTE: while this will give you information about the pqs mods, it is best to mess around with the values to fully understand what the mod actual does (plus it's more fun that way)

people should post information about various PQS mods such as VertexHeightNoise and add information and a picture of it in game 

there is a list of PQS mods here: https://github.com/Kopernicus/Kopernicus/tree/master/Kopernicus/Kopernicus/Configuration/ModLoader (link found in post by killashley)

the ultimate goal of this thread is to be a complete dictionary of the various pqs mods so planet makers don't get scared off (though they should still play with the mod on their own) :D this will also allow more advanced planet makers to find a good PQS mod by looking through this instead of trying to remember them all 

Kopernicus mod thread:

What the values mean
 

Spoiler

Frequency: the number of cycles per length a noise function outputs AKA how often the mod does its thing

lacunarity: A multiplier that determines how quickly the frequency increases for each successive octave in a noise function. AKA I'm gonna try this one out with kittopia and report back

Octave: The number of octaves control the amount of detail in a noise function AKA how jagged and varied it is

Persistence: how long it lasts

Seed: changes the output. allows for greater variety (like a minecraft world is always different because of different seeds when using the same algorithm)

Contributed by poodmund on page 1 from link http://libnoise.sourceforge.net/glossary/index.html

AerialPerspectiveMaterial
coming soon

AltitudeAlpha
coming soon

BillBoardObject
coming soon

FlattenArea
coming soon

FlattenAreaTangential
coming soon

FlattenOcean
 

Spoiler

FlattenOcean
                {
                    oceanRadius = 1.0
                    enabled = true
                    order = 25
                }

HeightColorMap
coming soon

HeightColorMap2
also coming soon

HeightColorMapNoise
coming sooner

LandControl
coming soon

MapDecal
coming soon

MapDecalTangent
coming soon

MaterialFadeAltitude
coming soon

MaterialFadeAltitudeDouble
coming soon

MaterialQuadRelative
coming soon

QuadEnhanceCoast
coming soon

SmoothLatitudeRange
coming soon

TangentTextureRanges
coming soon

VertexColorMap
coming sooner

VertexColorNoise
coming soon

VertexColorNoiseRBG
coming soon

VertexColorSolid
coming soon

VertexColorSolidBlend
coming soon

VertexColorSolidBlend
coming soon

VertexDefineCoastLine
Coming soon

VertexHeightMap
coming soon

VertexHeightMapStep

coming soon

VertexHeightNoise

Spoiler

VertexHeightNoise
{
    type = [insert type, like Perlin, Billow, or RiggedMultiFractal - REQUIRED]
    seed = 23510750  //change this to any random number
    deformity = 500  //how bumpy and jagged is the terrain
    frequency = 4  //don't know what these do, you can try changing them and see what happens
    lacunarity = 2.5
    persistance = 1.0
    octaves = 6  //how small do you want the jagged ridges to be
    enabled = True
}

pics:
from space:http://steamcommunity.com/sharedfiles/filedetails/?id=696091097

from surface:http://steamcommunity.com/sharedfiles/filedetails/?id=696091025

(note that this pqs dosent cause changes to planetary colors or textures)

contributed by Astrofox in page 1

VertexHeightNoiseHeightMap

coming soon

VertexHeightNoiseVertHeight

coming soon

VertexHeightNoiseVertHeightCurve

coming soon

VertexHeightNoiseVertHeightCurve2

coming soon

VertexHeightNoiseVertHeightCurve3

coming soon

VertexHeightObolate

Spoiler

VertexHeightOblate
    {
        height = 15000
        pow = 2.5
        enabled = true
        order = 100
    }

contributed by Astrofox in page 1

VertexHeightOffset

coming soon

VertexNoise

coming soon

VertexRigedAltitudeCurve

coming soon

VertexSimplexColorRGB

coming soon

VertexSimplexHeight

coming soon

VertexSimplexHeightAbsolute

Spoiler

VertexSimplexHeightAbsolute
                {
                    seed = 123456 
                    deformity = 60 
                    octaves = 8
                    persistence = 0.5
                    frequency = 6
                    enabled = true
                    order = 2
                }

VertexSimplexHeightAbsolute

coming soon

VertexSimplexHeightFlatten

coming soon

VertexSimplexMultiChromatic

coming soon

VertexSimplexNoiseColor

Spoiler
   Hide contents

VertexSimplexNoiseColor  //Small gilly-based moons don't have color maps and use this instead
                {
                    seed = 0175123  //change this to any random number
                    blend = 1
                    colorStart = 0,1,0,1  //The color of your moon is a spectrum between these two colors
                    colorEnd = 0.3,0.3,0.3,1
                    octaves = 7  //how small do you want the blotches of color to be
                    persistence = 0.5  //don't know what these do, you can try changing them and see what happens
                    frequency = 1
                    enabled = True
                }

contributed by Astrofox

VertexVoronoi
 

Spoiler

VertexVoronoi
        {
            name = Voronoi1
            seed = 123
            deformation 6500
            displacement = 0.003
            enableDistance = True
            frequency = 3
            enabled = true
            order = 23
        }

contributed by astrofox on page 1

VoronoiCraters

Spoiler

Used to do custom craters on the mun but can also be used to make bumps

example:

soon

four variations of values come with Kopernicus examples, they are around bastion with 2 varying in frequency and 2 varying in curve

Make object main menu body:

Spoiler

 %mainMenuBody = [insert Dres] //place right after the @Kopernicus:After[KOPERNICUS

ex: sonnah in new horizons pack uses this

 

Edited by Kepler68
added encouragement for expirementation
Link to comment
Share on other sites

I've actually got a text file that I made today with several PQS mods on it.

I'll find out how to put in code and then paste it in.

EDIT #1: Testing Spoilers

VertexHeightNoise

Spoiler

VertexHeightNoise
{
    type = [insert type, like Perlin, Billow, or RiggedMultiFractal - optional]
    seed = 23510750  //change this to any random number
    deformity = 500  //how bumpy and jagged is the terrain
    frequency = 4  //don't know what these do, you can try changing them and see what happens
    lacunarity = 2.5
    persistance = 1.0
    octaves = 6  //how small do you want the jagged ridges to be
    enabled = True
}

 

VertexHeightOblate

Spoiler

VertexHeightOblate
    {
        height = 15000
        pow = 2.5
        enabled = true
        order = 100
    }

 

EDIT#2 Huh, it works quite well already.

 

 

Edited by Astrofox
Testing Spoilers
Link to comment
Share on other sites

@Kepler68 Maybe I could write up a config that has a black base up to a white top just to give the effect of looking like a heightmap.

Thing is, I'm away from my computer right now, so it may come later on today.

I will most likely set it up in Kerbin Orbit for the simplicity of testing it out (without hyperedit...).

Link to comment
Share on other sites

14 hours ago, Astrofox said:

 

type = [insert type, like Perlin, Billow, or RiggedMultiFractal - optional]

God no! That parameter is basically the base of the mod, without it, it will fail horribly :P
The optional parameter in parser target just says that Kopernicus shouldn't put the whole planet into the recycling bin if a param is missing, because sometimes you can leave out params, and I just used optional everywhere :D

If you need something, just let me know (join #Kopernicus, ping me, write a PM, etc.). I am currently working on a standalone version of the PQSMods that could be used to test what the parameters do (enter params into a console app and it draws you a map or so).
I also planned to implement some kind of documentation into Kopernicus / Kittopia, where this stuff would be appreciated.

Link to comment
Share on other sites

@Thomas P. Funnily enough I saw that one variant didn't have that...

Oh well, we'll change it as soon as possible.

Also, I found some more code while downloading old Kopernicus Packs. Maybe they work.

VertexSimplexNoiseColor

Spoiler

VertexSimplexNoiseColor  //Small gilly-based moons don't have color maps and use this instead
                {
                    seed = 0175123  //change this to any random number
                    blend = 1
                    colorStart = 0,1,0,1  //The color of your moon is a spectrum between these two colors
                    colorEnd = 0.3,0.3,0.3,1
                    octaves = 7  //how small do you want the blotches of color to be
                    persistence = 0.5  //don't know what these do, you can try changing them and see what happens
                    frequency = 1
                    enabled = True
                }

I also earlier on today, I found the Voronoi craters examples in the Kopernicus Examples in the PQS mods stuff. Sadly, VertexPlanet and this were really the only things in there.

VoronoiCratersConfigs

Link to comment
Share on other sites

3 hours ago, Thomas P. said:

God no! That parameter is basically the base of the mod, without it, it will fail horribly :P
The optional parameter in parser target just says that Kopernicus shouldn't put the whole planet into the recycling bin if a param is missing, because sometimes you can leave out params, and I just used optional everywhere :D

If you need something, just let me know (join #Kopernicus, ping me, write a PM, etc.). I am currently working on a standalone version of the PQSMods that could be used to test what the parameters do (enter params into a console app and it draws you a map or so).
I also planned to implement some kind of documentation into Kopernicus / Kittopia, where this stuff would be appreciated.

Don't worry I canged it to a REQUIRED in all caps to get the point across :wink:

Link to comment
Share on other sites

Hey Guys! I have VertexVoronoi stuff already!

Spoiler

VertexVoronoi
        {
            name = Voronoi1
            seed = 123
            deformation 6500
            displacement = 0.003
            enableDistance = True
            frequency = 3
            enabled = true
            order = 23
        }

I had this specifically for a moon for a system I've been creating. This variant looks amazing on the moon (named Pir).

wXi8w54.png

Link to comment
Share on other sites

18 minutes ago, Kepler68 said:

Wow I didn't expect to find something like this! Thanks :D:D:D

BTW Astrofox what planet pack is that?

Well KSP uses libNoise to generate its terrain so the Kopernicus hook-ins are dervived from it. Look at the example of the image map libNoise uses in its tutorial/example: http://libnoise.sourceforge.net/examples/complexplanet/images/planet.jpg 

Familiar much?

Edited by Poodmund
Link to comment
Share on other sites

8 minutes ago, Poodmund said:

Well KSP uses libNoise to generate its terrain so the Kopernicus hook-ins are dervived from it. Look at the example of the image map libNoise uses in its tutorial/example: http://libnoise.sourceforge.net/examples/complexplanet/images/planet.jpg 

Familiar much?

LOL its kerbin! is that an actual tutorial image or did you make that :D

EDIT: looking closer it isn't actually kerbin but its similar enough, the ksc continent has barely changed!

Edited by Kepler68
Link to comment
Share on other sites

It's kinda buggy, as I set the moons orbits to sit in the rings, but for whatever reason they end up moving out of the plane entirely.

Maybe I will find a fix for it sometime. It's just a side project I've been working on so that I can release at least one thing before I release an entire pack that I started about a year ago, actually. I worked with amarius1, Mr.HappyFace, and several others. Unfortunately, I have no idea as to where they went, and so I've been trying to cram in a lot of information as a reference so that I can just kinda finish it up for a release. I am working with TheWhiteGuardian and Kandjk currently, but it will still be a while before a full release of the whole pack.

Link to comment
Share on other sites

The ring thing is part of Kopernicus. You can also see it happening with mun around sonnah and Astid in arins rings in new horizons. I don't know if there is a way to stop their rotation but for now they rotate with the planet

Edited by Kepler68
Link to comment
Share on other sites

I suppose you have to reverse the rotation of the planet, but I have no idea as to whether it actually exists as code. (i.e. the rings rotate with th planet in a retrograde way so that the moons' orbital plane is still similar to the rings).

Also, I tried using Kittopia to add PQS mods to a small moon for Kerbin (the PQS testing planet - because you can reach it without much effort if you don't have hyperedit), but it doesn't work.

Anyway, just make a notepad file with this code in it and just place a PQS mod in.

PQS Testing world:

Spoiler

@Kopernicus:AFTER[Kopernicus]
{
    Body
    {
        name = PQSCodesHopefully
        Template
        {
            name = Minmus
            removeAllPQSMods = true
        }
        Properties
        {
            description = VertexSimplexHeightAbsolute Tester
            radius = 100000
            rotates = true
            rotationPeriod = 60000
            tidallyLocked = false
            initialRotation = 0
            geeASL = 0.5
            timewarpAltitudeLimits = 0 10000 17500 25000 40000 60000 80000 200000
            ScienceValues
            {
                landedDataValue = 7
                inSpaceLowDataValue = 6.5
                inSpaceHighDataValue = 6
                recoveryValue = 8
                spaceAltitudeThreshold = 175000
            }
        }
        Orbit
        {
            referenceBody = Kerbin
            semiMajorAxis = 20000000
            inclination = 10
            eccentricity = 0.2
            longitudeOfAscendingNode = 0
            argumentOfPeriapsis = 0
            meanAnomalyAtEpoch = 0
            epoch = 0
            color = 0.1,0.1,0.1,1.0
        }
        PQS
        {
            Mods
            {
         [INSERT PQS MOD HERE]
        HeightColorMap
        {
            blend = 0.5
            enabled = true
            order = 10 //make this number higher than the HeightMods
            LandClasses
            {
                Class
                {
                    name = Base
                    altitudeStart = 0
                    altitudeEnd = 0.25
                    color = 0.0,0.0,0.0,1.0
                    lerpToNext = true
                }
                Class
                {
                    name = Low
                    altitudeStart = 0.25
                    altitudeEnd = 0.5
                    color = 0.33,0.33,0.33,1.0
                    lerpToNext = true
                }
                Class
                {
                    name = Mid
                    altitudeStart = 0.5
                    altitudeEnd = 0.75
                    color = 0.66,0.66,0.66,1.0
                    lerpToNext = true
                }
                Class
                {
                    name = High
                    altitudeStart = 0.75
                    altitudeEnd = 1
                    color = 1.0,1.0,1.0,1.0
                    lerpToNext = false
                }
            }
        }
            }
        }
    }
}

I removed the PQS mod that was in it originally so that you could just copy/paste a PQS mod into the config without issue.

If only I just knew how to translate the code from the .cs file into the code that makes stuff work.

However, I wonder if the stuff in VertexNoiseHeightVertHeight.cs turns into:

Spoiler

VertexHightNoiseVertHeight
{
    heightStart =
    heightEnd =
    deformity =
    frequency =
    octaves =
    persistance =
    seed =
    mode =
    lacunarity =
}

The issue is that this is just a hypothesis, and I have no idea if this actually works.

Link to comment
Share on other sites

Surprisingly, the Urania Pack does work, as well as the MapDecal PQS mod, but little Phobos doesn't have the other sphere thing that used to be on it. Instead it is literally just a massive pillar that makes it look more like it was nearly destroyed by a black hole (or it became a nose).

MapDecal (from Phobos).

Spoiler

MapDecal
 {
                  enabled = true
                  radius = 40000
                  position = -20000, 5000, -60000 // I suppose (X,Y,Z)?
                  angle = 10 //angle or inclination
                  heightMap = Sido_Urania_System/Phobos/Textures/Phobos_add.png // heightmap of the map decal.
                  heightMapDeformity = 30000 //deformity of heightmap
                  cullBlack = false //???
                  useAlphaHeightSmoothing = false //????
                  absolute = true //?????
                  absoluteOffset = 20000 //??????
                  colorMap = Sido_Urania_System/Phobos/Textures/Phobos_add_color.png // Color Map of Map Decal
                  smoothHeight = 0.4 //???????
                  smoothColor = 0.4 //????????
                  removeScatter = true // possibly removes ground scatter
                  DEBUG_HighlightInclusion = false //?????????
                  order = 1727 // I dunno
}

Yeah, I just copied the MapDecal info from Phobos (Sido's Urania Pack). I don't understand most of it.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...