Difference between revisions of "Saved game"

From Elite Wiki
(Page created)
 
(Added a little more)
Line 57: Line 57:
 
  <key>current_system_techlevel</key>
 
  <key>current_system_techlevel</key>
 
  <integer>5</integer>
 
  <integer>5</integer>
  <key>custom_view_index</key>                      <--- This is the last of the 8 external views which you had looked at (press "v")
+
  <key>custom_view_index</key>                      <--- This is the last of the [https://bb.oolite.space/viewtopic.php?p=306584#p306584 8 external views] which you had looked at (press "v")
 
  <integer>0</integer>
 
  <integer>0</integer>
  <key>docked_station_position</key>
+
  <key>docked_station_position</key>                 <--- Really the [https://bb.oolite.space/viewtopic.php?p=306584#p306584 position of the player's ship]
 
  <array>
 
  <array>
 
  <real>5956.64013671875</real>
 
  <real>5956.64013671875</real>
Line 65: Line 65:
 
  <real>473098.5625</real>
 
  <real>473098.5625</real>
 
  </array>
 
  </array>
  <key>docked_station_role</key>
+
  <key>docked_station_role</key>                     <--- This is the [https://bb.oolite.space/viewtopic.php?p=306584#p306584 primary role of the station] the player was docked at when the game was saved.
 
  <string>coriolis</string>
 
  <string>coriolis</string>
 
  <key>docking_clearance_protocol</key>
 
  <key>docking_clearance_protocol</key>
 
  <false/>
 
  <false/>
  <key>entity_personality</key>
+
  <key>entity_personality</key>                     <--- used by OXPs to e.g. [https://bb.oolite.space/viewtopic.php?p=306563#p306563 change the colour of ships]
 
  <integer>27070</integer>
 
  <integer>27070</integer>
 
  <key>escape_pod_rescue_time</key>
 
  <key>escape_pod_rescue_time</key>
Line 291: Line 291:
 
  <string>player-unknown</string>
 
  <string>player-unknown</string>
 
  </array>
 
  </array>
  <key>scenario_restriction</key>
+
  <key>scenario_restriction</key>                   <---- Used by [[Scenarios.plist|scenarios]] to stipulate what is excluded and what can be included
 
  <string>strict</string>
 
  <string>strict</string>
 
  <key>scripted_planetinfo_overrides</key>
 
  <key>scripted_planetinfo_overrides</key>
Line 383: Line 383:
 
  <real>0.71881872415542603</real>
 
  <real>0.71881872415542603</real>
 
  </dict>
 
  </dict>
  + another score of the blighters!
+
  + another score or so of the blighters!
 
  </array>
 
  </array>
 
  </array>
 
  </array>
Line 396: Line 396:
  
 
== Size! ==
 
== Size! ==
Note that the size of the Jameson is much, much larger than the original size of [[Classic Elite]]!
+
For a "strict game" Jameson this can be c. 28-31 Kb.
  
 
OXPs can bulk this out massively. Chief culprits include [[Diplomancy]], adding in the details of the history of the relationship between every solar system and its neighbours, [[Bounty System]] recording every bounty everywhere & [[Smugglers]] - a record of the galactic economy!
 
OXPs can bulk this out massively. Chief culprits include [[Diplomancy]], adding in the details of the history of the relationship between every solar system and its neighbours, [[Bounty System]] recording every bounty everywhere & [[Smugglers]] - a record of the galactic economy!
 +
 +
Note that the size of an OXP'd Jameson can be much, much larger than the original size of [[Classic Elite]]! 1-2 Mb with Diplomancy, Bounty System & Smugglers ''versus'' Classic Elite's 32k of memory!
  
  
  
 
[[Category:Oolite]] [[Category:Factual]] [[Category:Legacy scripting]]
 
[[Category:Oolite]] [[Category:Factual]] [[Category:Legacy scripting]]

Revision as of 11:25, 15 July 2026

Saved games are also popularly known as Jamesons..

Overview

  • Scenarios may need Saved Games as part of their OXP (see the SOTL Exploration and SOTL Altmap scenarios whose joint loader contains a Saved Game for each).

The AppleMac version of Oolite gives the player little detail about each saved game (just the file name and date of the save). The Windows and Linux versions give considerably more - as does Oolite Starter (name, system, money, Elite ranking...).

Detail

The Saved games are written in XML.

Strict Game Jamesons look like this (note alphabetical order - "aft-weapon" is quite distant from "forward-weapon"):

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>aft_weapon</key>
	<string>EQ_WEAPON_BEAM_LASER</string>
	<key>chart_ana_mode</key>
	<integer>1</integer>
	<key>chart_colour_mode</key>                       <--- F6 screen (galactic chart) as modified by pressing "?" (sun colour/politics etc)
	<integer>1</integer>
	<key>chart_zoom</key>
	<real>1</real>
	<key>checksum</key>                                <--- Checksum is based on a handful of figures such as credits, weapons, legal status etc.
	<integer>14622</integer>
	<key>comm_log</key>
	<array>
		<string>Moray Star Boat:</string>
		<string> Leave us alone!</string>
		<string>Python:</string>
		<string>Your cargo or your life, Joy of Digebiti. 4 </string>
		<string>barrels and we'll let you go.</string>
		<string>Oresle 2084064:11:48:08</string>
		<string>Esgerean 2084064:14:25:07</string>
		<string>Rarere 2084065:10:12:57</string>
		<string>Ervein 2084065:23:39:44</string>
		<string>Usralaat 2084067:03:40:26</string>
		<string>Coriolis Station:</string>
		<string>We do not require docking clearance, </string>
		<string>Commander. Feel free to dock at any time.</string>
	</array>
	<key>contract_record</key>
	<dict/>
	<key>contracts</key>₢
	<array/>
	<key>credits</key>                                 <--- These are in decicredits: ie. 4,095.4₢
	<real>40954</real>
	<key>current_system_economy</key>
	<integer>3</integer>
	<key>current_system_government</key>
	<integer>2</integer>
	<key>current_system_name</key>
	<string>Usralaat</string>
	<key>current_system_techlevel</key>
	<integer>5</integer>
	<key>custom_view_index</key>                       <--- This is the last of the 8 external views which you had looked at (press "v")
	<integer>0</integer>
	<key>docked_station_position</key>                 <--- Really the position of the player's ship
	<array>
		<real>5956.64013671875</real>
		<real>58354.8828125</real>
		<real>473098.5625</real>
	</array>
	<key>docked_station_role</key>                     <--- This is the primary role of the station the player was docked at when the game was saved.
	<string>coriolis</string>
	<key>docking_clearance_protocol</key>
	<false/>
	<key>entity_personality</key>                      <--- used by OXPs to e.g. change the colour of ships
	<integer>27070</integer>
	<key>escape_pod_rescue_time</key>
	<real>0.0</real>
	<key>extra_equipment</key>
	<dict>
		<key>EQ_ADVANCED_COMPASS</key>
		<integer>1</integer>
		<key>EQ_ADVANCED_NAVIGATIONAL_ARRAY</key>
		<integer>1</integer>
		<key>EQ_CARGO_BAY</key>
		<integer>1</integer>
		<key>EQ_ECM</key>
		<integer>1</integer>
		<key>EQ_ENERGY_UNIT</key>
		<integer>1</integer>
		<key>EQ_FUEL_INJECTION</key>
		<integer>1</integer>
		<key>EQ_FUEL_SCOOPS</key>
		<integer>1</integer>
		<key>EQ_INTEGRATED_TARGETING_SYSTEM</key>
		<integer>1</integer>
		<key>EQ_SCANNER_SHOW_MISSILE_TARGET</key>
		<integer>1</integer>
		<key>EQ_TARGET_MEMORY</key>
		<integer>1</integer>
	</dict>
	<key>forward_weapon</key>
	<string>EQ_WEAPON_MILITARY_LASER</string>
	<key>found_system_id</key>
	<string>250</string>
	<key>fuel</key>
	<integer>70</integer>
	<key>galaxy_id</key>
	<string>0</string>
	<key>galaxy_number</key>
	<integer>0</integer>
	<key>legal_status</key>
	<integer>0</integer>
	<key>localMarket</key>
	<array>
		<array>
			<string>food</string>
			<integer>12</integer>
			<integer>55</integer>
		</array>
		<array>
			<string>textiles</string>
			<integer>1</integer>
			<integer>73</integer>
		</array>
		<array>
			<string>radioactives</string>
			<integer>14</integer>
			<integer>243</integer>
		</array>
		<array>
			<string>slaves</string>
			<integer>18</integer>
			<integer>200</integer>
		</array>
		<array>
			<string>liquor_wines</string>
			<integer>0</integer>
			<integer>294</integer>
		</array>
		<array>
			<string>luxuries</string>
			<integer>30</integer>
			<integer>889</integer>
		</array>
		<array>
			<string>narcotics</string>
			<integer>53</integer>
			<integer>282</integer>
		</array>
		<array>
			<string>computers</string>
			<integer>45</integer>
			<integer>793</integer>
		</array>
		<array>
			<string>machinery</string>
			<integer>25</integer>
			<integer>546</integer>
		</array>
		<array>
			<string>alloys</string>
			<integer>30</integer>
			<integer>384</integer>
		</array>
		<array>
			<string>firearms</string>
			<integer>6</integer>
			<integer>677</integer>
		</array>
		<array>
			<string>furs</string>
			<integer>19</integer>
			<integer>766</integer>
		</array>
		<array>
			<string>minerals</string>
			<integer>57</integer>
			<integer>119</integer>
		</array>
		<array>
			<string>gold</string>
			<integer>12</integer>
			<integer>398</integer>
		</array>
		<array>
			<string>platinum</string>
			<integer>18</integer>
			<integer>694</integer>
		</array>
		<array>
			<string>gem_stones</string>
			<integer>10</integer>
			<integer>194</integer>
		</array>
		<array>
			<string>alien_items</string>
			<integer>0</integer>
			<integer>397</integer>
		</array>
	</array>
	<key>market_rnd</key>
	<integer>101</integer>
	<key>max_cargo</key>
	<integer>35</integer>
	<key>max_passengers</key>
	<integer>1</integer>
	<key>missile_roles</key>
	<array>
		<string>EQ_MISSILE</string>
		<string>EQ_MISSILE</string>
		<string>EQ_MISSILE</string>
		<string>NONE</string>
	</array>
	<key>missiles</key>
	<integer>3</integer>
	<key>mission_destinations</key>
	<dict/>
	<key>mission_variables</key>
	<dict>
		<key>mission_oolite_contract_clientnames</key>
		<string>["","","","","","","","Eran Se","","","","","","","","","","","",""]</string>
		<key>mission_oolite_contracts_cargo</key>
		<string>[{"commodity":"alloys","size":90,"destination":49,"route":{"jumps":10,"route":[134,5,243,179,91,16,185,86,138,51,49],"distance":55.2,"time":320.6400000000001},"payment":6560,"deposit":5580,"deadline":180064869828.7059},{"commodity":"slaves","size":80,"destination":214,"route":{"jumps":16,"route":[134,5,57,145,110,62,131,249,168,48,140,43,226,211,68,219,214],"distance":78.8,"time":416.8},"payment":2860,"deposit":2620,"deadline":180065087297.7059},{"commodity":"narcotics","size":128,"destination":165,"route":{"jumps":16,"route":[134,5,57,145,110,62,131,249,168,48,140,43,210,199,192,72,165],"distance":81.60000000000001,"time":445.44000000000005},"payment":8960,"deposit":5620,"deadline":180065199476.7059},{"commodity":"narcotics","size":113,"destination":160,"route":{"jumps":4,"route":[134,176,119,122,160],"distance":20,"time":105.60000000000001},"payment":8860,"deposit":5020,"deadline":180064235739.7059},{"commodity":"luxuries","size":56,"destination":188,"route":{"jumps":11,"route":[134,5,57,145,110,62,131,249,168,48,37,188],"distance":53.6,"time":288.00000000000006},"payment":9620,"deposit":8460,"deadline":180064631807.7059},{"commodity":"radioactives","size":49,"destination":9,"route":{"jumps":7,"route":[134,5,57,133,4,184,105,9],"distance":34.800000000000004,"time":184.16000000000005},"payment":2280,"deposit":2040,"deadline":180064655021.7059},{"commodity":"furs","size":128,"destination":129,"route":{"jumps":13,"route":[134,5,57,145,110,62,131,42,29,222,89,73,227,129],"distance":69.2,"time":377.4400000000001},"payment":18180,"deposit":15280,"deadline":180064890894.7059}]  </string>
		<key>mission_oolite_contracts_parcels</key>
		 		+ loads of cases as above
		<key>mission_oolite_contracts_passengers</key>
				+ loads of cases
		<key>mission_trumbles</key>
		<string>BUY_ME</string>
	</dict>
	<key>parcel_record</key>
	<dict/>
	<key>parcels</key>
	<array/>
	<key>passenger_record</key>
	<dict>
		<key>Eran Se</key>
		<real>180063648536.5784</real>
	</dict>
	<key>passengers</key>
	<array/>
	<key>player_name</key>
	<string>New Thrashbarg</string>
	<key>player_save_name</key>
	<string>Thrashbarg the Tremendous</string>
	<key>port_weapon</key>
	<string>EQ_WEAPON_NONE</string>
	<key>primed_equipment_a</key>
	<string>EQ_CLOAKING_DEVICE</string>
	<key>primed_equipment_b</key>
	<string>EQ_ENERGY_BOMB</string>
	<key>reputation</key>
	<dict>
		<key>contracts_expired</key>
		<integer>0</integer>
		<key>contracts_fulfilled</key>
		<integer>0</integer>
		<key>contracts_unknown</key>
		<integer>70</integer>
		<key>parcels_expired</key>
		<integer>0</integer>
		<key>parcels_fulfilled</key>
		<integer>1</integer>
		<key>parcels_unknown</key>
		<integer>69</integer>
		<key>passage_expired</key>
		<integer>0</integer>
		<key>passage_fulfilled</key>
		<integer>2</integer>
		<key>passage_unknown</key>
		<integer>68</integer>
	</dict>
	<key>role_system_memory</key>
	<array>
		<integer>175</integer>
		<integer>216</integer>
		<integer>119</integer>
		<integer>176</integer>
	</array>
	<key>role_weight_flags</key>
	<dict>
		<key>bought-legal</key>
		<integer>1</integer>
	</dict>
	<key>role_weights</key>
	<array>
		<string>trader</string>
		<string>player-unknown</string>
		<string>miner</string>
		<string>player-unknown</string>
		<string>trader-courier+</string>
		<string>player-unknown</string>
		<string>trader</string>
		<string>player-unknown</string>
	</array>
	<key>scenario_restriction</key>                    <---- Used by scenarios to stipulate what is excluded and what can be included
	<string>strict</string>
	<key>scripted_planetinfo_overrides</key>
	<dict/>
	<key>shipCommodityData</key>
	<array>
		<array>
			<string>food</string>
			<integer>0</integer>
		</array>
		<array>
			<string>textiles</string>
			<integer>14</integer>
		</array>
 			+ the rest of the commodities
	</array>
	<key>ship_class_name</key>
	<string>Cobra Mark III</string>
	<key>ship_clock</key>
	<real>180063403341.81989</real>
	<key>ship_desc</key>
	<string>cobra3-player</string>
	<key>ship_kills</key>
	<integer>50</integer>
	<key>ship_name</key>
	<string>Cobra Mark III</string>
	<key>ship_trade_in_factor</key>
	<integer>85</integer>
	<key>ship_unique_name</key>
	<string>Joy of Digebiti</string>
	<key>shipyard_record</key>
	<dict/>
	<key>speech_on</key>
	<integer>0</integer>
	<key>starboard_weapon</key>
	<string>EQ_WEAPON_NONE</string>
	<key>station_markets</key>
	<array>
		<dict>
			<key>market</key>
			<array>
				<array>
					<string>food</string>
					<integer>0</integer>
					<integer>57</integer>
				</array>
				<array>
					<string>textiles</string>
					<integer>0</integer>
					<integer>33</integer>
				</array>
				+ the rest of the commodities
			</array>
			<key>position</key>
			<array>
				<real>264588.65625</real>
				<real>-195215.625</real>
				<real>368296.9375</real>
			</array>
		</dict>
	</array>
	<key>subentities_status</key>
	<string></string>
	<key>system_id</key>
	<string>134</string>
	<key>target_id</key>
	<string>134</string>
	<key>trumbles</key>                                <---- The Trumbles just sit here until they are activated!
	<array>
		<integer>0</integer>
		<integer>10776</integer>
		<array>
			<dict>
				<key>digram</key>
				<string>ja</string>
				<key>discomfort</key>
				<real>0.0</real>
				<key>growth_rate</key>
				<real>0.0042457971721887589</real>
				<key>hunger</key>
				<real>0.0</real>
				<key>movement</key>
				<string>4.051147 10.144714</string>
				<key>position</key>
				<string>14.000000 -126.000000</string>
				<key>rotation</key>
				<real>5.8005518913269043</real>
				<key>rotational_velocity</key>
				<real>-1.3925930261611938</real>
				<key>size</key>
				<real>0.71881872415542603</real>
			</dict>
				+ another score or so of the blighters!
		</array>
	</array>
	<key>weapons_online</key>
	<true/>
	<key>wormholes</key>
	<array/>
	<key>written_by_version</key>
	<string>1.90</string>
</dict>
</plist>

Size!

For a "strict game" Jameson this can be c. 28-31 Kb.

OXPs can bulk this out massively. Chief culprits include Diplomancy, adding in the details of the history of the relationship between every solar system and its neighbours, Bounty System recording every bounty everywhere & Smugglers - a record of the galactic economy!

Note that the size of an OXP'd Jameson can be much, much larger than the original size of Classic Elite! 1-2 Mb with Diplomancy, Bounty System & Smugglers versus Classic Elite's 32k of memory!