Viewing a Texture or Model
Contents
How to view a specific model and / or texture in Oolite.
If the ship you want to view is your player ship simply launch the ship and press v to cycle through the external views.
Otherwise ...
Install Debug.oxp
1. Add Debug.oxp to your Oolite AddOns [1] -- Extract the archive. -- Move the extracted folder Debug.oxp to $PROGDIR/AddOns/ 2. Install PyDebugConsole [2] -- Extract the archive -- Put the directory OODebugConsole wherever you like
Run Oolite with the DebugConsole
1. Run the DebugConsole [WhereverIPutIt/OODebugConsole/OODebugConsole.exe] 2. Start Oolite (If you have modified an oxp hold down the shift key during during the boot (holding down shift clears the cache)) 3. Launch into space [Press 1](moving into a clear area helps).
Spawning the ship you want to view
Type in the console
:spawn role
where role is the parameter to be passed to the :spawn macro.
To find the correct argument for role refer to [i.e. open in a text editor]
config\shipdata.plist
Find the entry for the ship in question in the shipdata.plist. [we'll call it shipX]
<key>shipX</key>
Find the defined roles
<key>roles</key>
Use one of the defined roles as the argument for :spawn [found between <string></string>]
<key>shipX</key> <dict> ... <key>roles</key> <string>shipX-trader shipX-escort shipX-hunter</string> ... </dict>
yields
:spawn shipX-trader
in the console.
Modifying the shipdata.plist
If all the defined roles are generic* modify the shipdata.plist from:
<key>shipX</key> <dict> ... <key>roles</key> <string>trader escort hunter</string> ... </dict>
to
<key>shipX</key> <dict> ... <key>roles</key> <string>shipX-trader trader escort hunter</string> ... </dict>
[* If the defined roles are only generic e.g trader|pirate|hunter|etc then a random ship fulfilling the role will be spawned. Not necessarily the one you wanted.]
[Make sure to use a text editor suitable for programming. One that doesn't change the encoding or add junk to the file. EOL=LF+CR]
To park the spawned ship
To park the spawned ship target it then enter in the console
player.ship.target.setAI("dumbAI.plist")
To manipulate sub entities (if the ship has any) use the command:
player.ship.target.subEntities[0].position = [x, y, z]