Skip to content

Commit 249b658

Browse files
authored
Assorted changes from Feb 2020 (Kopernicus#51)
* Add ModScatter templates * Formatting * Add template file to copy from * Add more modularscatter * Formatting * LandControl content * Move ModScatter to LandControl folder * Formatting * Cleanup, integrate changes
1 parent ac9ba3d commit 249b658

17 files changed

+89
-61
lines changed

README.md

+12-12
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,22 @@
1-
This is the official wiki for the [Kopernicus](https://github.com/Kopernicus/Kopernicus) addon for Kerbal Space Program.
1+
# Kopernicus Wiki
2+
This is the official wiki for the [Kopernicus](https://github.com/Kopernicus/Kopernicus) addon for Kerbal Space Program.
23
The current targeted version of Kopernicus is 1.7.3-1.
34

4-
# Contributing
5+
## Contributing
56
It is preferred that all contributions be done via a text editor and a Git client, as opposed to authoring the changes on GitHub.
67
This allows for consistent page formatting. If you wish to be able to test out changes before uploading, you must install Jekyll and its dependencies.
78

8-
## External Programs
9+
### External Programs
910

10-
### Installing Git
11+
#### Installing Git
1112
You may use whatever Git GUI/client you wish, although if you do not already have one we recommend GitKraken or Git itself. The latest version of Git can be downloaded from [https://git-scm.com/downloads](https://git-scm.com/downloads) and GitKraken can be found at [https://www.gitkraken.com/download](https://www.gitkraken.com/download)
1213

13-
### Installing Jekyll (optional)
14-
Head to [https://jekyllrb.com/docs/installation/](https://jekyllrb.com/docs/installation/) and scroll to the bottom.
14+
#### Installing Jekyll (optional)
15+
Head to [https://jekyllrb.com/docs/installation/](https://jekyllrb.com/docs/installation/) and scroll to the bottom.
1516
Click the link that corresponds to your operating system and follow the directions on that page.
1617

17-
## Authoring Changes
18-
Once you have installed all external programs, fork the wiki repository before cloning your fork to your computer. Create a new branch when making any changes whatsoever. Be sure that your changes follow the stylistic guidelines discussed below.
18+
### Authoring Changes
19+
Once you have installed all external programs, fork the wiki repository before cloning your fork to your computer. Create a new branch when making any changes whatsoever. Be sure that your changes follow the stylistic guidelines discussed below.
1920

2021
### Page Format
2122
The format for every page should be as follows:
@@ -30,7 +31,7 @@ Description of the feature/node being discussed, plus an explanation of what it
3031
**Example**
3132
```
3233
// Your example of the item should go here.
33-
// Comments should be inline like these unless the comment is for a node.
34+
// Comments should be inline like these unless the comment is for a node.
3435
// If so, then the comments should go on the line above the node.
3536
3637
// ForANode information
@@ -46,8 +47,7 @@ ForANode
4647
|Property|Format|Description|
4748
|--------|------|-----------|
4849
|The name of the property|[type of the property](main/datatypes.md)|The description of the property.|
49-
|(Example) order|Integer|The order the PQSMod should be applied in.|
50-
51-
**Links**
50+
|(Example) order|Integer|The order the PQSMod should be applied in.|
5251

52+
### Links
5353
Intra-repository links are to be in the form `[text]({{ site.baseurl }}{% link <absolute path in repo> %})`

content/ConfigNodes.md

+25-10
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,11 @@ layout: default
33
title: Config Nodes
44
---
55

6-
# What is a ConfigNode?
6+
***What is a ConfigNode?***
77
ConfigNodes are a data storage / settings format that is used by KSP. They are most commonly used in `.cfg` files, but you can find them inside of `.craft` and `.sfs` files too.
88
Whenever you want to modify anything in KSP, you will have to deal with ConfigNodes.
99

10-
A Config Node consists of three parts:
11-
10+
A Config Node consists of three parts:
1211
* header
1312
* values
1413
* subnodes
@@ -72,13 +71,13 @@ Kopernicus
7271
{
7372
// Naming the system
7473
name = My cool system
75-
74+
7675
// Creating my first body
7776
Body
7877
{
7978
// I have heard this name before...
8079
name = Kerbin
81-
80+
8281
// Access the properties of the body
8382
Properties
8483
{
@@ -107,21 +106,20 @@ Kopernicus
107106
{
108107
// I have heard this name before...
109108
name = Kerbin
110-
109+
111110
// Access the properties of the body
112111
Properties
113112
{
114113
// Describing Kerbin
115114
description = That blue ball around the Sun
116-
115+
117116
} // Properties
118-
117+
119118
} // Body
120119
121120
} // Kopernicus
122121
```
123122

124-
125123
That way you can always tell where you actually added the node.
126124

127125
# ModuleManager
@@ -232,5 +230,22 @@ Kopernicus
232230
## Conditions
233231
All configs that were previously shown would apply themselves to the first node they can find that matches their name. This is undesired in most cases, since you want to be able to finetune the config of a specific body or part etc. ModuleManager can, instead of selecting the first matching one, select configs based on their values. To do this, you have to add `:HAS[#name[value]]` to the name of the node. `name` is the key of the value you want to select, and `value` it's value. If the value doesn't matter to you, you can use a wildcard, that will match everything: `:HAS[#name[*]]`. You can also negate the selection, `:HAS[~name[value]]` will select a config that doesn't have a property with the specified name.
234232

235-
**TODO: :NEEDS, :FOR, :AFTER**
233+
### :NEEDS[]
234+
The `:NEEDS` condition allows a config to specify its dependencies. The config will not run if the specified mod is not installed. The name of the mod will most commonly be the folder name in GameData. Sometimes, the name of the mod will be the name of the `.dll` file, which can be found by right-clicking the file on Windows and selecting Properties. For nested mods in GameData, the name can be found in the config (the `:FOR` condition discussed later). For example, putting `:NEEDS[Fruits]` after the node name makes the config run *only if* the mod `Fruits` is installed.
235+
236+
### :FOR[]
237+
`:FOR[]` specifies the mod that the config belongs to. It can be used if the mod is located in a nested folder inside GameData. Usually, not every config in a mod will need to include the `:FOR[]` condition.
238+
239+
### Mod Order
240+
Module Manager loads mods in a certain order according to their conditions.
241+
1. `:FIRST`
242+
2. Configs with no condition
243+
3. `:BEFORE[]`
244+
4. `:FOR[]`
245+
5. `:AFTER[]`
246+
6. `:LAST[]`
247+
7. `:FINAL`
248+
249+
Each of the conditions except for `:FINAL` accept a mod to go before/for/after/last. Mod names are discussed in the `:NEEDS[]` section.
236250

251+
**TODO: :FOR, :AFTER**

content/Ocean.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ layout: default
33
title: Ocean
44
---
55

6-
The `Ocean { }` subnode contains all of the information needed to produce an ocean for the specified body. Note that the ocean is one of two Procedural Quad Spheres on the body it is applied to. This means that some PQS Settings can be applied to Oceans.
6+
The `Ocean { }` subnode contains all of the information needed to produce an ocean for the specified body. Note that the ocean is one of the two Procedural Quad Spheres on the body it is applied to. This means that some PQS Settings can be applied to Oceans.
77

88
**Subnodes**
99
* Material { }

content/Orbit.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ Orbit
2424

2525
|Property|Format|Description|
2626
|--------|------|-----------|
27-
|referenceBody|String|The `name` of the object the body orbits.|
28-
|color|Color|The color of the orbit line. See [the DataTypes page]({{ site.baseurl }}{% link content/datatypes.md %}) for more info on colors.|
27+
|referenceBody|String|The `name` of the object the body orbits.|
28+
|color|Color|The color of the orbit line. See [the DataTypes page]({{ site.baseurl }}{% link content/datatypes.md %}) for more info on colors.|
2929
|inclination|Double|The tilt of the orbit in degrees. 0 = normal, 90 = polar, 180 = retrograde, etc...|
3030
|eccentricity|Double|The difference between your body's apoapsis and periapsis. It is a value between 0 and 1, where 0 is a perfect circle, and 1 is a straight line. 0.5 would give an oval shape.|
3131
|period|Double|The custom orbital period in seconds. This can be used to set extreme orbital periods.|

content/PQSMods/LandControl/LandClasses.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ layout: default
33
title: LandClasses
44
---
55

6-
`LandClasses` are regions defined by the LandControl PQSMod, in which several features can be customized including features which other PQSMods provide, such as HeightColorMap or noise PQSMods. LandControl regions can change terrain height, change terrain color, add color noise and height noise, and add ground scatters. LandClasses are defined via ranges of altitude, latitude, and longitude.
6+
`LandClasses` are regions specified by the LandControl PQSMod that can locally customize several features of the PQS, including features from other PQSMods like HeightColorMap or noise PQSMods. LandClasses can change terrain height, change terrain color, add color noise and height noise, and add ground scatters. LandClasses are defined via ranges of altitude, latitude, and longitude.
77

88
**Subnodes** - Both are defined under the main table.
99
* LerpRange { } = Defines range values
@@ -83,7 +83,7 @@ LandControl
8383
|name|String|The name of the LandClass.|
8484
|alterApparentHeight|Single|Supposedly adjusts the terrain's appearance. Only ever observed in the practice of forming icecaps.|
8585
|alterRealHeight|Double|Supposedly adjusts the terrain's actual height.|
86-
|minimumRealHeight|Double|The minimum height of the LandClass' terrain.|
86+
|minimumRealHeight|Double|The minimum height of the LandClass's terrain.|
8787
|color|Color|The color of the region.|
8888
|coverageBlend|Single|The blend of the coverage with surrounding LandClasses.|
8989
|coverageFrequency|Single|The size of the each feature of the LandClass coverage. As frequency gets bigger, size gets smaller.|

content/PQSMods/LandControl/LandControl.md

+1-2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ layout: default
33
title: LandControl
44
---
55

6-
The `LandControl` PQSMod allows defining regions known as LandClasses, within which you can customize several features of the particular region.
6+
The `LandControl` PQSMod allows defining regions known as LandClasses, within which you can customize several features of the particular region.
77

88
**Subnodes**
99
* [Scatters { }]({{ site.baseurl }}{% link content/PQSMods/LandControl/Scatters.md %}) = Defines used scatters
@@ -58,7 +58,6 @@ PQS
5858
}
5959
```
6060

61-
6261
|Property|Format|Description|
6362
|--------|------|-----------|
6463
|createColors|Boolean|Whether to use/affect colors.|

content/PQSMods/LandControl/LandControlLanding.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ title: LandControl
44
---
55

66
The `LandControl` PQSMod allows very detailed control over the coloration of terrain, creation of ground scatters, minimum terrain height, and much more.
7-
It is both verbose and complex with multiple key parts, so in the interest of ease of use and readability (as well as the sanity of the maintainers) LandControl will be split up into a series of pages.
7+
8+
It is both verbose and complex with multiple key parts, so in the interest of ease of use and readability (as well as the sanity of the maintainers), LandControl will be split up into a series of pages.
89

910
* [LandControl]({{ site.baseurl }}{% link content/PQSMods/LandControl/LandControl.md %})
1011
* [LandClasses]({{ site.baseurl }}{% link content/PQSMods/LandControl/LandClasses.md %})

content/PQSMods/LandControl/ModularScatter/ModularScatter.md

+3-2
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,9 @@ layout: default
33
title: ModularScatter
44
---
55

6-
ModularScatter is a system for easily adding behaviour to ground scatters in much the same way that PartModules add behaviour to parts.
7-
There are currently four ModularScatter components.
6+
ModularScatter is a PQS LandControl system for easily adding behavior to ground scatters in much the same way that PartModules add behavior to parts.
7+
8+
There are currently four ModularScatter components that you can add to a scatter.
89

910
* [HeatEmitter]({{ site.baseurl }}{% link content/PQSMods/LandControl/ModularScatter/HeatEmitter.md %})
1011
* [LightEmitter]({{ site.baseurl }}{% link content/PQSMods/LandControl/ModularScatter/LightEmitter.md %})

content/PQSMods/LandControl/ScatterMaterialType.md

-1
Original file line numberDiff line numberDiff line change
@@ -132,4 +132,3 @@ Material
132132
ZWrite = Single, default is 0
133133
}
134134
```
135-

content/PQSMods/LandControl/Scatters.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ layout: default
33
title: Scatters
44
---
55

6-
The `Scatters` node in the LandControl PQSMod defines the scatters to be used within the [LandClasses]({{ site.baseurl }}{% link content/PQSMods/LandControl/LandClasses.md %}) provided by LandControl.
6+
The `Scatters` node in the LandControl PQSMod defines the scatters to be used within the [LandClasses]({{ site.baseurl }}{% link content/PQSMods/LandControl/LandClasses.md %}) provided by LandControl. Scatters are 3D meshed objects that are generated on the surface and can have various configurable features added via the `Components` subnode.
77

88
**Subnodes**
99
* [Material { }]({{ site.baseurl }}{% link content/PQSMods/LandControl/ScatterMaterialType.md %})

content/PQSMods/PQS.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ The `PQS { }` node describes properties of the Procedural Quad Sphere that makes
77
**Subnodes**
88
* PhysicsMaterial { } (below)
99
* Material { }
10-
* [AtmosphericTriplanarZoomRotation]({{ site.baseurl }}{% link content/Material/PQSAtmosphericTriplanarZoomRotation.md %})
11-
* [AtmosphericTriplanarZoomRotationTextureArray]({{ site.baseurl }}{% link content/Material/PQSAtmosphericTriplanarZoomRotationTextureArray.md %})
10+
+ [AtmosphericTriplanarZoomRotation]({{ site.baseurl }}{% link content/Material/PQSAtmosphericTriplanarZoomRotation.md %})
11+
+ [AtmosphericTriplanarZoomRotationTextureArray]({{ site.baseurl }}{% link content/Material/PQSAtmosphericTriplanarZoomRotationTextureArray.md %})
1212
* FallbackMaterial { }
1313
* [Mods { }]({{ site.baseurl }}{% link content/PQSMods/PQSMods.md%})
1414

content/PQSMods/VertexHeightNoise.md

+18-18
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ layout: default
33
title: VertexHeightNoise
44
---
55

6-
The `VertexHeightNoise` PQSMod is a mod that adds height noise to the terrain. This makes the terrain bumpier, though the "style" of bumps/features change with the noise type.
6+
The `VertexHeightNoise` PQSMod is a mod that adds height noise to the terrain. This makes the terrain bumpier, though the "style" of bumps/features change with the noise type.
77
The noise is also additive, meaning that instead of overwriting the terrain altitude, it simply adds or subtracts from it.
88

99
<button data-toggle="collapse" data-target="#collapse-vhn-example">Show Example</button>
@@ -25,7 +25,7 @@ PQS
2525
noiseType = Perlin
2626
mode = High
2727
lacunarity = 0.7
28-
28+
2929
enabled = true
3030
order = 25
3131
}
@@ -69,35 +69,35 @@ PQS
6969
{
7070
VertexHeightNoiseVertHeightCurve2
7171
{
72-
// All blank fields can be whatever you want, see the VHNVHC2 page for more information on them.
73-
deformity =
74-
ridgedMode =
72+
// All blank fields can be whatever you want, see the VHNVHC2 page for more information on them.
73+
deformity =
74+
ridgedMode =
7575
76-
ridgedAddSeed =
77-
ridgedAddFrequency =
78-
ridgedAddLacunarity =
79-
ridgedAddOctaves =
76+
ridgedAddSeed =
77+
ridgedAddFrequency =
78+
ridgedAddLacunarity =
79+
ridgedAddOctaves =
8080
81-
ridgedSubSeed =
81+
ridgedSubSeed =
8282
ridgedSubFrequency = 0
83-
ridgedSubLacunarity =
84-
ridgedSubOctaves =
83+
ridgedSubLacunarity =
84+
ridgedSubOctaves =
8585
8686
simplexCurve
8787
{
8888
key = 0 1
8989
key = 1 0
9090
}
9191
92-
simplexHeightStart =
93-
simplexHeightEnd =
94-
simplexSeed =
95-
simplexOctaves =
96-
simplexPersistence =
92+
simplexHeightStart =
93+
simplexHeightEnd =
94+
simplexSeed =
95+
simplexOctaves =
96+
simplexPersistence =
9797
simplexFrequency = 0
9898
9999
enabled = true
100-
order =
100+
order =
101101
}
102102
}
103103
}

content/Properties/Properties.md

+3-4
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,13 @@ layout: default
33
title: Properties
44
---
55

6-
The `Properties { }` node describes the body itself, and is a subnode of `Body { }`. Basic parameters like description, radius, gravity and biomes are specified here.
6+
The `Properties { }` node describes the body itself, and is a subnode of `Body { }`. Basic parameters like description, radius, gravity and biomes are specified here.
77

8-
### Subnodes
9-
***
8+
**Subnodes**
109
* [Biomes/Biome { }]({{ site.baseurl }}{% link content/Properties/Biome.md %})
1110
* [ScienceValues { }]({{ site.baseurl }}{% link content/Properties/ScienceValues.md %})
1211

13-
## Example
12+
**Example**
1413
```md
1514
Properties
1615
{

content/ScaledVersion/ScaledVersion.md

-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ title: ScaledVersion
55

66
The `ScaledVersion { }` node in a configuration file for Kopernicus describes a less-detailed model of your planet that appears in the map view and from large distances.
77

8-
98
**Subnodes**
109
* [Material { }]({{ site.baseurl }}{% link content/ScaledVersion/Material.md %}) = Updates to textures and atmosphere rims.
1110
* [OnDemand { }]({{ site.baseurl }}{% link content/ScaledVersion/OnDemand.md %}) = Used for textures that should be loaded OnDemand.

content/kex/CometTails.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -60,4 +60,4 @@ Body
6060
|radius|Single|The radius of the teardrop that makes up the comet tail. Default is 2000.|
6161
|length|Single|The length of the comet tail. Default is 16000.|
6262
|opacityCurve|FloatCurve|A curve that associates a distance value with an opacity value from 0 to 1?|
63-
|brightnessCurve|FloatCurve|A curve that associates a distance value with a brightness value.|
63+
|brightnessCurve|FloatCurve|A curve that associates a distance value with a brightness value.|

index.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ title: Kopernicus Wiki
5151
+ [Particles subnode (Post-1.8)]({{ site.baseurl }}{% link content/Particles.md %})
5252

5353
## KopernicusExpansion
54-
**WARNING: These pages are not intended for beginners, and a basic level of experience is assumed.**
54+
> **WARNING: These pages are not intended for beginners, and a basic level of experience is assumed.**
5555
* [Comet Tails]({{ site.baseurl }}{% link content/kex/CometTails.md %})
5656
* [Emissive FX]({{ site.baseurl }}{% link content/kex/EmissiveFX.md %})
5757
* [EVA Footprints]({{ site.baseurl }}{% link content/kex/EVAFootprints.md %})

template.txt

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
// Template for new files - remove this line after copy
2+
---
3+
layout: default
4+
title: PageTitle
5+
---
6+
7+
[Description]
8+
9+
[Subnodes]
10+
11+
[Example]
12+
13+
|Property|Format|Description|
14+
|--------|------|-----------|
15+
[Table]

0 commit comments

Comments
 (0)