-
Notifications
You must be signed in to change notification settings - Fork 73
How To
To create new contracts create a new .cfg file in your mod's directory (or if you're creating a new mod, create a new sub-directory under GameData). The file name can be anything you choose. In the file, create a CONTRACT_TYPE node, like this:
CONTRACT_TYPE
{
}
And then start adding to it! See the Contract Type page for the full syntax. Or if you want to look at some examples, check out the test directory.
When creating a new contract, the first thing too look at is the debug menu (alt-F12) from the main menu. If there were any validation errors due to incorrect configuration, this is where they will likely show up. If there are no errors there, then continue on and test your contracts as normal. ee
TextGen is the Squad system for generating contract descriptions. If you would like to use this, I highly recommend making use of the Coherent Contracts mod.
To use TextGen, supply the topic, subject and motivation in your CONTRACT_TYPE node.
topic - The specific topic of the contract. This can be any singular noun and will be displayed prominently in the text. Here's some examples of Coherent contract phrases that use :
- ...interest in [Topic] systems is off the charts...
- ...we should study [Topic] and [Topic] accessories...
- ...[Topic] needs rescuing... (where motivation=rescue)
- ...test the [Topic] in service... (where motivation=test)
subject - The subject of the contract. This should be from either the list of values in Coherent Contracts (which presumably matches stock KSP), or you can use your own values if you provide strings for it (see Coherent Contracts for an example of how to do that). Some sample phrases that get used for subject:
- [Subject] = [text]
- Kerbal = all Kerbals enjoy feeling weightless
- Experiment = and felt the need to do some tests
- Mun = there was a far side to the Mun
The full list of values that is currently in Contract Configurator for the subject is (note there are also generic strings that get used if blank):
- Duna
- DunaSrf
- Eve
- EveSrf
- Experiment
- Gilly
- GillySrf
- Ike
- IkeSurface
- Kerbal
- Kerbin
- KerbinSrf,Deserts
- Minmus
- MinmusSrf
- Moho
- MohoSrf
- Mun
- MunSrf
- Orbit
- Orbit,Space
- Parts
- Sun
motivation - Motivation for why we are doing the contract. Like the subject, this needs to be from a valid list if you are not providing your own values. Examples:
- [Motivation] = [text]
- flags = decided we needed to have a flag, to make a point about how
- test = remained unsure if
- rescue = due to an unfortunate series of events, [Topic] needs rescuing...
Values for motivation (note there are also generic strings that get used if blank):
- flags
- rescue
- test
Contract Configurator
Configuration File Syntax
Extending Contract Configurator