Difference between revisions of "Network Subfiles"

From SC4D Encyclopaedia
Jump to navigation Jump to search
sc4e>Jdenm8
sc4e>Whatevermind
m (Wiki cleanup)
Line 1: Line 1:
This page pertains to the format of the '''Network Subfiles''' within the [[Savegame]] files. These files have [[Type ID]]s 6A0F82B2 (Network Index), C9C05C6E (Network Subfile 1) and CA16374F (Network Subfile 2). They can be viewed using the [[SC4 Savegame Explorer]], but not edited. These subfiles were decoded by {{people|RippleJet}}
+
This page pertains to the format of the '''Network Subfiles''' within the [[Savegame]] files. These files have [[Type ID]]s ''6A0F82B2'' (Network Index), ''C9C05C6E'' (Network Subfile 1) and ''CA16374F'' (Network Subfile 2). They can be viewed using the [[SC4 Savegame Explorer]], but not edited. These subfiles were decoded by {{people|RippleJet}}.
 
 
  
 
= Network Index Subfile (6A0F82B2) =
 
= Network Index Subfile (6A0F82B2) =
== Description ==
+
==Description==
 
This index file contains a list of all network tiles, with links to the two network files where the records can be found.
 
This index file contains a list of all network tiles, with links to the two network files where the records can be found.
== Network Index Subfile Structure ==
+
 
=== Network Index Subfile Body ===
+
==Network Index Subfile Structure==
<pre>DWORD Subfile Size in bytes
+
===Network Index Subfile Body===
 +
<pre>
 +
DWORD Subfile Size in bytes
 
DWORD CRC
 
DWORD CRC
 
DWORD Memory address
 
DWORD Memory address
Line 88: Line 89:
 
FLOAT32 Unknown  (Small value. 0.00 for a new city)
 
FLOAT32 Unknown  (Small value. 0.00 for a new city)
 
BOOLEAN Unknown  (always 1, true)
 
BOOLEAN Unknown  (always 1, true)
DWORD Unknown  (Does not appear if version = 0x0003. Always 0x00000000 if version = 0x0007)</pre>
+
DWORD Unknown  (Does not appear if version = 0x0003. Always 0x00000000 if version = 0x0007)
<br/>
+
</pre>
  
=== Appendix 1.1 ===
+
===Appendix 1.1===
<pre> Tile numbering starts in the NW corner, which is tile number 0x00000000.
+
<pre>
 +
  Tile numbering starts in the NW corner, which is tile number 0x00000000.
 
Tile number 0x00000001 is to the east of that tile.
 
Tile number 0x00000001 is to the east of that tile.
 
In a small city, the first tile in the second row is 0x00000040.
 
In a small city, the first tile in the second row is 0x00000040.
Line 99: Line 101:
 
In a small city, the last tile in the last row is 0x00000FFF.
 
In a small city, the last tile in the last row is 0x00000FFF.
 
In a medium city, the last tile in the last row is 0x00003FFF.
 
In a medium city, the last tile in the last row is 0x00003FFF.
In a large city, the last tile in the last row is 0x0000FFFF.</pre>
+
In a large city, the last tile in the last row is 0x0000FFFF.
 +
</pre>
  
= Network Subfile 1 (C9C05C6E) =
+
=Network Subfile 1 (C9C05C6E)=
== Structure ==
+
==Structure==
=== Network Subfile 1 Body ===
+
===Network Subfile 1 Body===
<pre>DWORD Record Size
+
<pre>
 +
DWORD Record Size
 
DWORD CRC
 
DWORD CRC
 
DWORD Memory
 
DWORD Memory
Line 183: Line 187:
 
DWORD×4 Unknown  (All 0)
 
DWORD×4 Unknown  (All 0)
 
DWORD Unknown  (Always 2)
 
DWORD Unknown  (Always 2)
DWORD Unknown  (0x00000000)</pre>
+
DWORD Unknown  (0x00000000)
 +
</pre>
  
<br/>
+
===Appendix 2.1 - Structure of SGPROP (SaveGame Properties)===
 
+
<pre>
=== Appendix 2.1 ===
+
DWORD   Property Name Value
<pre>Structure of SGPROP (SaveGame Properties):
 
 
 
DWORD     Property Name Value
 
 
DWORD Property Name Value  (doubled for some unknown reason)
 
DWORD Property Name Value  (doubled for some unknown reason)
 
DWORD 0x00000000
 
DWORD 0x00000000
Line 197: Line 199:
 
WORD 0x0000
 
WORD 0x0000
 
DWORD Rep Count  (this one appears only if KeyType = 0x80)
 
DWORD Rep Count  (this one appears only if KeyType = 0x80)
     DATA Property Value (repeated Rep Count times, type according to Data Type)</pre>
+
     DATA Property Value (repeated Rep Count times, type according to Data Type)
 
+
</pre>
<br/>
 
 
 
=== Appendix 2.2 ===
 
<pre>Apperance Flag (offset 0x0013)
 
  
 +
===Appendix 2.2 - Apperance Flag (offset 0x0013)===
 +
<pre>
 
     0x01 (00000001b) - Network that appears in the game (if this is off, the network has been deleted)
 
     0x01 (00000001b) - Network that appears in the game (if this is off, the network has been deleted)
 
     0x02 (00000010b) - ? (unused)
 
     0x02 (00000010b) - ? (unused)
Line 209: Line 209:
 
     0x08 (00001000b) - ? (unused)
 
     0x08 (00001000b) - ? (unused)
 
     0x40 (01000000b) - The network is burnt
 
     0x40 (01000000b) - The network is burnt
     0x80 (10000000b) - ? (unused)</pre>
+
     0x80 (10000000b) - ? (unused)
 
+
</pre>
<br/>
 
 
 
=== Appendix 2.3 ===
 
<pre>Orientation
 
  
 +
===Appendix 2.3 - Orientation===
 +
<pre>
 
     0x00 = North
 
     0x00 = North
 
     0x01 = East
 
     0x01 = East
Line 223: Line 221:
 
     0x81 = East, mirrored
 
     0x81 = East, mirrored
 
     0x82 = South, mirrored
 
     0x82 = South, mirrored
     0x83 = West, mirrored</pre>
+
     0x83 = West, mirrored
 +
</pre>
  
<br/>
+
===Appendix 2.4 - Network Type===
 
+
<pre>
=== Appendix 2.4 ===
+
    0x00 = ?
Network Type
 
<pre>   0x00 = ?
 
 
     0x01 = ?
 
     0x01 = ?
 
     0x02 = ?
 
     0x02 = ?
Line 236: Line 233:
 
     0x05 = ?
 
     0x05 = ?
 
     0x06 = ?
 
     0x06 = ?
     0x07 = ?</pre>
+
     0x07 = ?
 
+
</pre>
<br/>
 
  
=== Appendix 2.5 ===
+
===Appendix 2.5 - Connections===
Connections
 
 
<pre>??</pre>
 
<pre>??</pre>
  
= Network Subfile 2 (CA16374F) =
+
=Network Subfile 2 (CA16374F)=
== Network Subfile 2 Structure ==
+
==Network Subfile 2 Structure==
=== Network Subfile 2 Body ===
+
===Network Subfile 2 Body===
<pre>DWORD Record Size
+
<pre>
 +
DWORD Record Size
 
DWORD CRC
 
DWORD CRC
 
DWORD Memory
 
DWORD Memory
Line 395: Line 391:
 
FLOAT32 Y Coordinate
 
FLOAT32 Y Coordinate
 
DWORD 0xCA16374F  (Subfile ID)
 
DWORD 0xCA16374F  (Subfile ID)
DWORD 0x00000000  (always the same)</pre>
+
DWORD 0x00000000  (always the same)
 +
</pre>
  
<br/>
+
===Appendix 3.1 - Structure of SGPROP (SaveGame Properties)===
 
+
<pre>
=== Appendix 3.1 ===
+
DWORD   Property Name Value
Structure of SGPROP (SaveGame Properties):
 
 
 
<pre>DWORD     Property Name Value
 
 
DWORD Property Name Value  (doubled for some unknown reason)
 
DWORD Property Name Value  (doubled for some unknown reason)
 
DWORD 0x00000000
 
DWORD 0x00000000
Line 409: Line 403:
 
WORD 0x0000
 
WORD 0x0000
 
DWORD Rep Count  (this one appears only if KeyType = 0x80)
 
DWORD Rep Count  (this one appears only if KeyType = 0x80)
     DATA Property Value (repeated Rep Count times, type according to Data Type)</pre>
+
     DATA Property Value (repeated Rep Count times, type according to Data Type)
 
+
</pre>
<br/>
 
  
=== Appendix 3.2 ===
+
===Appendix 3.2 - Apperance Flag (offset 0x0017)===
Apperance Flag (offset 0x0017)
 
 
<pre>
 
<pre>
 
     0x01 (00000001b) - Network that appears in the game (if this is off, the network has been deleted)
 
     0x01 (00000001b) - Network that appears in the game (if this is off, the network has been deleted)
Line 421: Line 413:
 
     0x08 (00001000b) - ? (unused)
 
     0x08 (00001000b) - ? (unused)
 
     0x40 (01000000b) - The network is burnt
 
     0x40 (01000000b) - The network is burnt
     0x80 (10000000b) - ? (unused)</pre>
+
     0x80 (10000000b) - ? (unused)
 +
</pre>
  
<br/>
+
===Appendix 3.3 - Orientation===
 
+
<pre>
=== Appendix 3.3 ===
+
    0x00 = North
Orientation
 
<pre>   0x00 = North
 
 
     0x01 = East
 
     0x01 = East
 
     0x02 = South
 
     0x02 = South
Line 434: Line 425:
 
     0x81 = East, mirrored
 
     0x81 = East, mirrored
 
     0x82 = south, mirrored
 
     0x82 = south, mirrored
     0x83 = West, mirrored</pre>
+
     0x83 = West, mirrored
 +
</pre>
  
<br/>
+
===Appendix 3.4 - Network Type===
 
+
<pre>
=== Appendix 3.4 ===
+
    0x00 = ?
Network Type
 
<pre>   0x00 = ?
 
 
     0x01 = ?
 
     0x01 = ?
 
     0x02 = ?
 
     0x02 = ?
Line 447: Line 437:
 
     0x05 = ?
 
     0x05 = ?
 
     0x06 = ?
 
     0x06 = ?
     0x07 = ?</pre>
+
     0x07 = ?
 +
</pre>
  
<br/>
+
===Appendix 3.5 - Connections===
 
 
=== Appendix 3.5 ===
 
Connections
 
 
<pre>??</pre>
 
<pre>??</pre>
  
[[Category:Savegame/Subfiles]]
 
  
 
{{Navbox/SUBFILE}}
 
{{Navbox/SUBFILE}}
 +
[[Category:Savegame/Subfiles]]

Revision as of 19:38, 10 November 2012

This page pertains to the format of the Network Subfiles within the Savegame files. These files have Type IDs 6A0F82B2 (Network Index), C9C05C6E (Network Subfile 1) and CA16374F (Network Subfile 2). They can be viewed using the SC4 Savegame Explorer, but not edited. These subfiles were decoded by RippleJet.

Network Index Subfile (6A0F82B2)

Description

This index file contains a list of all network tiles, with links to the two network files where the records can be found.

Network Index Subfile Structure

Network Index Subfile Body

DWORD	Subfile Size in bytes
DWORD	CRC
DWORD	Memory address
WORD	Major Version  (0x0007 for built cities, but 0x0003 for Maxis' own, unbuilt cities)
DWORD	City Tile Count  (4096, 16384 or 65536 depending on city size)
DWORD	Count of Network Tiles  (0 for a new city)
   DWORD	Tile Number  (See Appendix 1.1 for more information)
   DWORD	Link: Memory address
   DWORD	Link: Subfile Type ID
   DWORD	Count of blocks  (either 0 or 10)
      DWORD	Block Number (first one is 0, last one is 9)
      DWORD	Count  (anything between 0-16. Number of byte blocks)
         BYTE×8   	Unknown block of bytes. Small numbers < 10
   BYTE	Unknown  (always 0x00)
   DWORD	Unknown  (always 0x00000000)
   DWORD	Unknown  (Seen 0 and 2)
   DWORD	Unknown  (Only seen 2)
   DWORD	Unknown  (Seen 0 and 4)
   FLOAT32	Unknown  (Small values, e.g. 0.0, 2.0, 5.0, 6.0, 8.0)
   WORD	Unknown  (0 or 1)
   WORD	Unknown  (0 or 1)
   WORD	Unknown  (0 or 1)
   WORD	Unknown  (0 or 1)
   FLOAT32	Unknown  (Small values, e.g. 0.0, 2.0, 5.0, 6.0, 8.0)
   WORD	Unknown  (0 or 1)
   WORD	Unknown  (0 or 1)
   WORD	Unknown  (0 or 1)
   WORD	Unknown  (0 or 1)
   FLOAT32	Unknown  (Small values, e.g. 0.0, 2.0, 5.0, 6.0, 8.0)
   WORD	Unknown  (0 or 1)
   WORD	Unknown  (0 or 1)
   WORD	Unknown  (0 or 1)
   WORD	Unknown  (0 or 1)
   FLOAT32	Unknown  (Small values, e.g. 0.0, 2.0, 5.0, 6.0, 8.0)
   WORD	Unknown  (0 or 1)
   WORD	Unknown  (0 or 1)
   WORD	Unknown  (0 or 1)
   WORD	Unknown  (0 or 1)
   WORD	Unknown  (always 0)
   DWORD	Unknown  (always 2)
   DWORD	Unknown  (always 1)
   FLOAT32	Unknown  (Small values, < 1.0)
   WORD	Unknown  (always 0)
   WORD	Unknown  (always 2)
   WORD	Unknown  (always 0)
   FLOAT32	Unknown  (0.0 or 1.0)
   WORD	Unknown  (always 0)
DWORD	Count of blocks  (0 for a new city)
   DWORD	Link: Memory address
   DWORD	Link: Subfile Type ID
   BYTE	Unknown  (only seen 0x00)
   DWORD	Unknown  (only seen 0x00000000)
   DWORD	Unknown  (Either 0, 1, 2 or 3)
   BOOLEAN	Unknown  (Either 0 or 1, false or true)
   FLOAT32	Unknown  (small value)
   FLOAT32	Unknown  (small value)
   FLOAT32	Unknown  (small value)
   DWORD	Unknown  (Either 0, 1, 2 or 3)
   BOOLEAN	Unknown  (Either 0 or 1, false or true)
   FLOAT32	Unknown  (small value)
   FLOAT32	Unknown  (small value)
   FLOAT32	Unknown  (small value)
   DWORD	Unknown  (Either 0, 1, 2 or 3)
   BOOLEAN	Unknown  (Either 0 or 1, false or true)
   FLOAT32	Unknown  (small value)
   FLOAT32	Unknown  (small value)
   FLOAT32	Unknown  (small value)
   DWORD	Unknown  (Either 0, 1, 2 or 3)
   BOOLEAN	Unknown  (Either 0 or 1, false or true)
   FLOAT32	Unknown  (small value)
   FLOAT32	Unknown  (small value)
   FLOAT32	Unknown  (small value)
DWORD	Unknown  (only seen 0x00000000)
DWORD	Unknown  (only seen 0x00000000)
DWORD	Unknown  (only seen 0x00000000)
DWORD	Tile X  (63, 127 or 255 for a new city, smaller for built up cities)
DWORD	Tile Z  (63, 127 or 255 for a new city, smaller for built up cities)
FLOAT32	Unknown  (Small value. 0.00 for a new city)
BOOLEAN	Unknown  (always 1, true)
FLOAT32	Unknown  (Small value. 0.00 for a new city)
BOOLEAN	Unknown  (always 1, true)
DWORD	Unknown  (Does not appear if version = 0x0003. Always 0x00000000 if version = 0x0007)

Appendix 1.1

  	Tile numbering starts in the NW corner, which is tile number 0x00000000.
	Tile number 0x00000001 is to the east of that tile.
	In a small city, the first tile in the second row is 0x00000040.
	In a medium city, the first tile in the second row is 0x00000080.
	In a large city, the first tile in the second row is 0x00000100.
	In a small city, the last tile in the last row is 0x00000FFF.
	In a medium city, the last tile in the last row is 0x00003FFF.
	In a large city, the last tile in the last row is 0x0000FFFF.

Network Subfile 1 (C9C05C6E)

Structure

Network Subfile 1 Body

DWORD	Record Size
DWORD	CRC
DWORD	Memory
WORD	Version Major  (0x0002)
WORD	Version Minor  (0x0003)
WORD	Zot Bytes  (Always 0x0000)
BYTE	0x00
BYTE	Appearance Flag  (Always 0x05)  (See Appendix 2.2 for more information)
DWORD	0xC772BF98  (always the same)
BYTE	Min Tract X Coordinate  (normally between 0x40 and 0x7F)
BYTE	Min Tract Z Coordinate  (normally between 0x40 and 0x7F)
BYTE	Max Tract X Coordinate  (normally between 0x40 and 0x7F)
BYTE	Max Tract Z Coordinate  (normally between 0x40 and 0x7F)
WORD	X Tract Size (power of 2)  (only seen 0x0002 ... 2² = 4 tiles)
WORD	Z Tract Size (power of 2)  (only seen 0x0002 ... 2² = 4 tiles)
DWORD	Count of Properties  (I've only seen 0x00000000)
    SGPROP    	SaveGame Properties, repeated Count times  (See Appendix 2.1 for more information)
DWORD	Group ID  (always 0x00000000)
DWORD	Type ID  (always 0x00000000)
DWORD	Instance ID  (always 0x00000000)
BYTE	Unknown Flag (0 or 1)
FLOAT32	Unknown  (Normally 0, -1 or 1)
FLOAT32	Unknown  (Normally 0)
FLOAT32	Unknown  (Normally 0, -1 or 1)
FLOAT32	Unknown  (Normally 0)
FLOAT32	Unknown  (Normally 1)
FLOAT32	Unknown  (Normally 0)
FLOAT32	Unknown  (Normally 0, -1 or 1)
FLOAT32	Unknown  (Normally 0)
FLOAT32	Unknown  (Normally 0, -1 or 1)
FLOAT32	Xmax
FLOAT32	Ymax
FLOAT32	Zmax
FLOAT32	Xmin
FLOAT32	Ymin
FLOAT32	Zmin
FLOAT32	Unknown  (Normally 0)
FLOAT32	Unknown  (Normally 0)
DWORD	Unknown  (Normally 0xFFDDDBDE)
FLOAT32	X Coordinate
FLOAT32	Y Coordinate
FLOAT32	Z Coordinate
FLOAT32	Unknown  (Normally 0)
FLOAT32	Unknown  (Normally 1)
DWORD	Unknown  (Always 0xFFDDDBDE)
FLOAT32	X Coordinate
FLOAT32	Y Coordinate
FLOAT32	Z Coordinate
FLOAT32	Unknown  (Normally 1)
FLOAT32	Unknown  (Normally 1)
DWORD	Unknown  (Always 0xFFDDDBDE)
FLOAT32	X Coordinate
FLOAT32	Y Coordinate
FLOAT32	Z Coordinate
FLOAT32	Unknown  (Normally 1)
FLOAT32	Unknown  (Normally 0)
DWORD	Unknown  (Always 0xFFDDDBDE)
DWORD	TextureID / PathID
BYTES×5	Unknown  (Small values)
BYTE	Orientation  (See Appendix 2.3 for more information)
BYTES×3	Unknown  (Small values)
BYTE	Network Type  (See Appendix 2.4 for more information)
BYTE	Connection, West  (See Appendix 2.5 for more information)
BYTE	Connection, North  (See Appendix 2.5 for more information)
BYTE	Connection, East  (See Appendix 2.5 for more information)
BYTE	Connection, South  (See Appendix 2.5 for more information)
BYTES×4	Unknown  (Small values)
FLOAT32	Xmin
FLOAT32	Xmax
FLOAT32	Ymin
FLOAT32	Ymax
FLOAT32	Zmin
FLOAT32	Zmax
BYTE	Unknown  (1 or 2)
BYTE	Unknown  (Always 160)
BYTE	Unknown  (Always 0)
BYTE	Unknown  (Often 22)
DWORD×4	Unknown  (All 0)
DWORD	Unknown  (Always 2)
DWORD	Unknown  (0x00000000)

Appendix 2.1 - Structure of SGPROP (SaveGame Properties)

DWORD   Property Name Value
DWORD	Property Name Value  (doubled for some unknown reason)
DWORD	0x00000000
BYTE	Data Type, 01=UInt8, 02=UInt16, 03=UInt32, 07=SInt32, 08=SInt64, 09=Float32, 0B=Boolean
BYTE	KeyType, 0x00 = 0 reps, 0x80 = more than 0 reps
WORD	0x0000
DWORD	Rep Count  (this one appears only if KeyType = 0x80)
    DATA	Property Value (repeated Rep Count times, type according to Data Type)

Appendix 2.2 - Apperance Flag (offset 0x0013)

    0x01 (00000001b) - Network that appears in the game (if this is off, the network has been deleted)
    0x02 (00000010b) - ? (unused)
    0x04 (00000100b) - ? (always on)
    0x08 (00001000b) - ? (unused)
    0x40 (01000000b) - The network is burnt
    0x80 (10000000b) - ? (unused)

Appendix 2.3 - Orientation

    0x00 = North
    0x01 = East
    0x02 = South
    0x03 = West
    0x80 = North, mirrored
    0x81 = East, mirrored
    0x82 = South, mirrored
    0x83 = West, mirrored

Appendix 2.4 - Network Type

    0x00 = ?
    0x01 = ?
    0x02 = ?
    0x03 = ?
    0x04 = ?
    0x05 = ?
    0x06 = ?
    0x07 = ?

Appendix 2.5 - Connections

??

Network Subfile 2 (CA16374F)

Network Subfile 2 Structure

Network Subfile 2 Body

DWORD	Record Size
DWORD	CRC
DWORD	Memory
WORD	Version Major  (0x0002)
WORD	Version Minor  (0x0003)
WORD	Version ?  (0x0008)
WORD	Version ?  (0x0004)
WORD	Zot Bytes  (Always 0x0000)
BYTE	0x00
BYTE	Appearance Flag  (Always 0x05)  (See Appendix 3.2 for more information)
DWORD	0xC772BF98  (always the same)
BYTE	Min Tract X Coordinate  (normally between 0x40 and 0x7F)
BYTE	Min Tract Z Coordinate  (normally between 0x40 and 0x7F)
BYTE	Max Tract X Coordinate  (normally between 0x40 and 0x7F)
BYTE	Max Tract Z Coordinate  (normally between 0x40 and 0x7F)
WORD	X Tract Size (power of 2)  (only seen 0x0002 ... 2² = 4 tiles)
WORD	Z Tract Size (power of 2)  (only seen 0x0002 ... 2² = 4 tiles)
DWORD	Count of Properties  (I've only seen 0x00000000)
    SGPROP    	SaveGame Properties, repeated Count times  (See Appendix 3.1 for more information)
DWORD	Group ID  (always 0x00000000)
DWORD	Type ID  (always 0x00000000)
DWORD	Instance ID  (always 0x00000000)
BYTE	Unknown  (Always 0x05)
FLOAT32	Unknown  (Normally 0, -1 or 1)
FLOAT32	Unknown  (Normally 0)
FLOAT32	Unknown  (Normally 0, -1 or 1)
FLOAT32	Unknown  (Normally 0)
FLOAT32	Unknown  (Normally 1)
FLOAT32	Unknown  (Normally 0)
FLOAT32	Unknown  (Normally 0, -1 or 1)
FLOAT32	Unknown  (Normally 0)
FLOAT32	Unknown  (Normally 0, -1 or 1)
FLOAT32	Xmax
FLOAT32	Ymax
FLOAT32	Zmax
FLOAT32	Xmin
FLOAT32	Ymin
FLOAT32	Zmin
FLOAT32	Unknown  (Normally 0)
FLOAT32	Unknown  (Normally 0)
DWORD	Unknown  (Always 0xFF000000)
FLOAT32	X Coordinate
FLOAT32	Y Coordinate
FLOAT32	Z Coordinate
FLOAT32	Unknown  (Normally 0)
FLOAT32	Unknown  (Normally 1)
DWORD	Unknown  (Always 0xFF000000)
FLOAT32	X Coordinate
FLOAT32	Y Coordinate
FLOAT32	Z Coordinate
FLOAT32	Unknown  (Normally 1)
FLOAT32	Unknown  (Normally 1)
DWORD	Unknown  (Always 0xFF000000)
FLOAT32	X Coordinate
FLOAT32	Y Coordinate
FLOAT32	Z Coordinate
FLOAT32	Unknown  (Normally 1)
FLOAT32	Unknown  (Normally 0)
DWORD	Unknown  (Always 0xFF000000)
DWORD	TextureID / PathID
BYTES×5	Unknown  (Small values)
BYTE	Orientation  (See Appendix 3.3 for more information)
BYTES×3	Unknown  (Small values)
BYTE	Network Type  (See Appendix 3.4 for more information)
BYTE	Connection, West  (See Appendix 3.5 for more information)
BYTE	Connection, North  (See Appendix 3.5 for more information)
BYTE	Connection, East  (See Appendix 3.5 for more information)
BYTE	Connection, South  (See Appendix 3.5 for more information)
BYTES×4	Unknown  (Small values)
FLOAT32	Xmin
FLOAT32	Xmax
FLOAT32	Ymin
FLOAT32	Ymax
FLOAT32	Zmin
FLOAT32	Zmax
BYTE	Unknown  (Always 128)
BYTE	Unknown  (Always 32)
BYTE	Unknown  (Always 0)
BYTE	Unknown  (Seen 16-21)
DWORD×4	Unknown  (All 0)
DWORD	Unknown  (Always 50)
DWORD	Unknown  (0x00000000)
WORD	Unknown  (0x0000)
FLOAT32	Unknown  (Normally 1)
DWORD	Number of extra blocks  (0, 1, 2 or 3)
DWORD	Count  (Either 0 or 4. Each block is 24 FLOATS, total 96 BYTES)
   FLOAT32   	X Coordinate
   FLOAT32	Y Coordinate
   FLOAT32	Z Coordinate
   FLOAT32	Unknown  (Normally 0, 0.75 or 1)
   FLOAT32	Unknown  (Normally 0, 0.75 or 1)
   DWORD	Unknown  (Either 0x80FFFFFF or 0xFFFFFFFF)
DWORD	Count  (Either 0 or 4. Each block is 24 FLOATS, total 96 BYTES)
   FLOAT32	X Coordinate
   FLOAT32	Y Coordinate
   FLOAT32	Z Coordinate
   FLOAT32	Unknown  (Normally 0, 0.75 or 1)
   FLOAT32	Unknown  (Normally 0, 0.75 or 1)
   DWORD	Unknown  (Either 0x80FFFFFF or 0xFFFFFFFF)
DWORD	Count  (Either 0 or 4. Each block is 24 FLOATS, total 96 BYTES)
   FLOAT32	X Coordinate
   FLOAT32	Y Coordinate
   FLOAT32	Z Coordinate
   FLOAT32	Unknown  (Normally 0, 0.75 or 1)
   FLOAT32	Unknown  (Normally 0, 0.75 or 1)
   DWORD	Unknown  (Either 0x80FFFFFF or 0xFFFFFFFF)
DWORD	Count  (Either 0 or 4. Each block is 24 FLOATS, total 96 BYTES)
   FLOAT32	X Coordinate
   FLOAT32	Y Coordinate
   FLOAT32	Z Coordinate
   FLOAT32	Unknown  (Normally 0, 0.75 or 1)
   FLOAT32	Unknown  (Normally 0, 0.75 or 1)
   DWORD	Unknown  (Either 0x80FFFFFF or 0xFFFFFFFF)
DWORD	Count  (Always 4. Each block is 24 FLOATS, total 96 BYTES)
   FLOAT32	X Coordinate
   FLOAT32	Y Coordinate
   FLOAT32	Z Coordinate
   FLOAT32	Unknown  (Normally 0, 0.75 or 1)
   FLOAT32	Unknown  (Normally 0, 0.75 or 1)
   DWORD	Unknown  (Either 0x80FFFFFF or 0xFFFFFFFF)
DWORD	Unknown  (Always 0x00000000)
FLOAT32	Unknown  (Normally 0 or 1)
FLOAT32	Unknown  (Normally 0 or 1)
FLOAT32	Unknown  (Normally 0 or 1)
FLOAT32	X Coordinate
FLOAT32	Unknown  (Normally 0 or 1)
FLOAT32	Unknown  (Normally 0 or 1)
FLOAT32	Unknown  (Normally 0 or 1)
FLOAT32	Y Coordinate
FLOAT32	Unknown  (Normally 0 or 1)
FLOAT32	Unknown  (Normally 0 or 1)
FLOAT32	Unknown  (Normally 0 or 1)
FLOAT32	Z Coordinate
FLOAT32	Unknown  (Normally 0 or 1)
FLOAT32	Unknown  (Normally 0 or 1)
FLOAT32	Unknown  (Normally 0 or 1)
FLOAT32	Unknown  (Normally 0 or 1)
DWORD	Unknown  (Small value, e.g. 62, 63)
DWORD	Unknown  (Small value, e.g. 36, 38)
BOOLEAN	Unknown  (Always 0)
BOOLEAN	Unknown  (Either 0 or 1, false or true)
BOOLEAN	Unknown  (Either 0 or 1, false or true)
FLOAT32	Y Coordinate
FLOAT32	Y Coordinate
FLOAT32	Y Coordinate
FLOAT32	Y Coordinate
FLOAT32	Y Coordinate
DWORD	0xCA16374F  (Subfile ID)
DWORD	0x00000000  (always the same)

Appendix 3.1 - Structure of SGPROP (SaveGame Properties)

DWORD   Property Name Value
DWORD	Property Name Value  (doubled for some unknown reason)
DWORD	0x00000000
BYTE	Data Type, 01=UInt8, 02=UInt16, 03=UInt32, 07=SInt32, 08=SInt64, 09=Float32, 0B=Boolean
BYTE	KeyType, 0x00 = 0 reps, 0x80 = more than 0 reps
WORD	0x0000
DWORD	Rep Count  (this one appears only if KeyType = 0x80)
    DATA	Property Value (repeated Rep Count times, type according to Data Type)

Appendix 3.2 - Apperance Flag (offset 0x0017)

    0x01 (00000001b) - Network that appears in the game (if this is off, the network has been deleted)
    0x02 (00000010b) - ? (unused)
    0x04 (00000100b) - ? (always on)
    0x08 (00001000b) - ? (unused)
    0x40 (01000000b) - The network is burnt
    0x80 (10000000b) - ? (unused)

Appendix 3.3 - Orientation

    0x00 = North
    0x01 = East
    0x02 = South
    0x03 = West
    0x80 = North, mirrored
    0x81 = East, mirrored
    0x82 = south, mirrored
    0x83 = West, mirrored

Appendix 3.4 - Network Type

    0x00 = ?
    0x01 = ?
    0x02 = ?
    0x03 = ?
    0x04 = ?
    0x05 = ?
    0x06 = ?
    0x07 = ?

Appendix 3.5 - Connections

??