Configuration Sections
Configuration Sections are used to specify a set of key-value pairs used to configure mod mechanics
cfg {name} {
{entries…}
}
{entries…}
}
Configuration Entries can have multiple forms:
- {key} = {decimal number}
- Can be fractional and/or negative
- {key} = 0x{hex number}
- Must be a non-negative integer
- {key} = {string}
- String should be quoted unless it’s a single, alphanumeric word
- {key} = { {number list} }
- List is delimited by spaces or new lines
- A child section (using the same format as above)
- Drops List
Notes:
- Keys can have non-alphanumeric characters in them, but must be quoted in that case
- Colors, where required, can be specified either as a {r g b} list (with value 0 – 1) or a hex number (0xRRGGBB)
- Boolean values will interpret “Y”, “True”, “Yes”, “On” (case insensitive) as True and anything else as false
- Sections with the same name defined in different places will be seamlessly merged, with the later overriding previous values on collisions
cfg Foo { someNumber = 1 someFraction = -0.0003 hexNumber = 0xDEADBEAF cfg Bar { // This is a subsection someString = "Lorem Ipsum" anotherString = fooBar // quotes are not required for single words "complicated:key.name" = "needs quotes" } myColor = 0xFF0000 // Specifies red anotherColor = { 1 0 0 } // Red as well fact = True fiction = False }