Planetinfo.plist

From Elite Wiki
Revision as of 10:36, 11 November 2008 by Commander McLane (talk | contribs) (added category scripting)

planetinfo.plist in 'AddOns/Config' contains a dictionary for each of systems for which you wish to set custom data. A list of all galaxies and planets can be found here.

Each system is keyed by a string consisting of the galaxy number (0..7) followed by a space and then the planet number (0..255), eg.

<key>0 7</key>
<dict>
...
</dict>

specifies system 7, in galaxy 0, Lave.


You can also specify a position in interstellar space, eg.

<key>interstellar: 0 7 129</key>
<dict>
...
</dict>

specifies the space in galaxy 0 between systems 7 and 129, Lave and Zaonce.

Conditions for interstellar space in general can be set with the “interstellar space” key (Oolite 1.69 and earlier, ignored in earlier versions).


Some options can be applied to the entire universe, such as ambient lighting levels, eg.

<key>universal</key>
<dict>
...
</dict>

Universal options can be overriden by specifying the same option for a specific system or location in interstellar space. Obviously, not all options make sense to apply to the whole universe.


Finally you can also add keys for your own custom planets and moons, eg.

<key>LavesPurpleMoon</key>
<dict>
...
</dict>


Each of the following properties can be set (but, notably, not the location, which is hard coded into the system seed value):

Government

0: Anarchy

1: Feudal

2: Multi-Governmental

3: Dictatorship

4: Communist

5: Confederacy

6: Democracy

7: Corporate State


Economy

0: Rich Industrial

1: Average Industrial

2: Poor Industrial

3: Mainly Industrial

4: Mainly Agricultural

5: Rich Agricultural

6: Average Agricultural

7: Poor Agricultural


Tech Level

An integer between 0 and 13 indicating the sophistication of the planets technology.


Example:

<key>techlevel</key>
<integer>13</integer> 


Population

An integer between 0 and 67 indicating the amount of inhabitants of a planet.


Example:

<key>population</key> 
<integer>23</integer> 


Productivity

An integer indicating the productivity of a planet.


Example:

<key>productivity</key> 
<integer>1000 </integer> 


Radius

An integer between 3000 and 7000 indicating the radius of a planet.


Example:

<key>radius</key> 
<integer>3000..7000 </integer> 


Name

The name of the planet.


Example:

<key>name</key> 
<string>The planet's name</string> 


Inhabitants

A name of the inhabitants of the planet.


Example:

<key>inhabitants</key> 
<string>Human Colonials</string> 


Description

A short description of the planet.


Example:

<key>description</key> 
<string>Really, anything you want to say about the place!</string> 


Percent Land

The percentage of the planet occupied by land.


Example:

<key>percent_land</key> 
<integer>0..100</integer> 


Land HSB Color

Example:

<key>land_hsb_color</key> 
<string>0.0..1.0 0.0..1.0 0.0..1.0</string> 


Sea HSB Color

Example:

<key>sea_hsb_color</key> 
<string>0.0..1.0 0.0..1.0 0.0..1.0</string> 


Sky RGB Colors

These are rgb values (from 0.0 to 1.0) for the two colours between which the colour of the stars (and nebulaesque blurs) vary, ordered r1 g1 b1 r2 g2 b2 where (r1 g1 b1) defines the first colour and (r2 g2 b2) the second.

Example:

<key>sky_rgb_colors</key> 
<string>0.0..1.0 0.0..1.0 0.0..1.0 0.0..1.0 0.0..1.0 0.0..1.0</string>

Alternatively, starting with Oolite 1.69, two colour specifiers may be used:

<key>sky_color_1</key>
<string>redColor</string>
<key>sky_color_2</key>
<dict>
    <key>hue</key>
    <real>60</real>
    <key>brightness</key>
    <real>0.8</real>
</dict>


Station

The type of station orbiting the planet.


Example:

<key>station</key> 
<string>coriolis..dodec..special</string> 


Station Roll

The speed at which the station rotates (as with all rotational velocities this is in radians per second).


Example:

<key>station_roll</key> 
<string>0.5</string>

Sky Blur Cluster Chance

This is used for creating nebulae (typically 0.85)


Example:

<key>sky_blur_cluster_chance</key> 
<real>0.85</real>

Sky Blur Alpha

Typically 0.1


Example:

<key>sky_blur_alpha</key> 
<real>0.0 .. 1.0</real>


Sky Blur Scale

Example:

<key>sky_blur_scale</key> 
<real>0.0 .. 128.0 or more</real>  

Ambient lighting

(Oolite version >= 1.64) Sets how much ambient light (shed by stars and nebulae) illuminates the dark side of objects like planets and ships. Values should typically be between 0.0 and 1.0 (1.0 is the default) but can be higher for a flat lit, cartoon-like effect.

Example:

<key>ambient_level</key>
<real>0.0</real>

Script_actions

Scrip_actions work exactly as in shipData.plist. e.g.

<key>script_actions</key>
<array>
    <string>addShipsAtPrecisely: my_ship 2 wpm 0 0 15000</string>
</array>

Terraforming Example

For the planet Lave, you would use the key '0 7' (planet 7 in galaxy 0) Then you set the values. The following example sets Lave's sea to blue, land to green, and land to sea ratio to 75%.

Code:

 <?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
<dict> 
   <key>0 7</key> 
   <dict> 
      <key>percent_land</key> 
      <integer>75</integer> 
      <key>land_hsb_color</key> 
      <string>0.333 1.0 1.0</string> 
      <key>sea_hsb_color</key> 
      <string>0.667 1.0 1.0</string> 
   </dict> 
</dict> 
</plist>

If you press '!' on a long range chart, it'll dump the galaxy information to files in the same folder as Oolite. That'll give you a list of the planet numbers, and some other information about each planet for the given galaxy.

Then you can override any of the settings listed above, for example to change Zaatxe's (Galaxy 0 Planet 8) inhabitants into blue frogs you'd enter

Code:

    <key>0 8</key> 
   <dict> 
        <key>inhabitants</key> 
        <string>Blue Frogs</string> 
   </dict> 


You can use any or all of the keys in each of the entries. It's probably best to only use the key's you want to change. So, another example, to change the sky_blur_xxx settings for Zaonce (Galaxy 0 Planet 129) to big, heavily clustered, but pale blurs - you'd enter

Code:

    <key>0 129</key> 
   <dict> 
        <key>sky_blur_cluster_chance</key> 
        <real>0.9</real> 
        <key>sky_blur_alpha</key> 
        <real>0.1</real> 
        <key>sky_blur_scale</key> 
        <real>32.0</real> 
   </dict>