Difference between revisions of "WPL"

From GTAMods Wiki
Jump to navigation Jump to search
m (File Format)
m (File Format)
Line 29: Line 29:
 
'''Section 3 - Parked Cars'''
 
'''Section 3 - Parked Cars'''
  
  4b - FLOAT   - Position X
+
  4b - FLOAT - Position X
  4b - FLOAT   - Position Y
+
  4b - FLOAT - Position Y
  4b - FLOAT   - Position Z
+
  4b - FLOAT - Position Z
  4b - FLOAT   - Unknown
+
  4b - FLOAT - Unknown
  4b - FLOAT   - Unknown
+
  4b - FLOAT - Unknown
  4b - FLOAT   - Unknown
+
  4b - FLOAT - Unknown
  4b - UINT32 - Model name [[:Category:Static_Model_Hashes|hash]]
+
  4b - UINT32 - Model name [[:Category:Static_Model_Hashes|hash]]
  4b - INT32   - Unknown
+
  4b - INT32 - Unknown
  4b - INT32   - Unknown
+
  4b - INT32 - Unknown
  4b - INT32   - Unknown
+
  4b - INT32 - Unknown
  4b - INT32   - Unknown
+
  4b - INT32 - Unknown
  4b - INT32   - Unknown
+
  4b - INT32 - Unknown
  4b - INT32   - Unknown
+
  4b - INT32 - Unknown
  4b - INT32   - Unknown
+
  4b - INT32 - Unknown
  
 
'''Section 9 - LODcull'''
 
'''Section 9 - LODcull'''
  
  4b -  FLOAT   - Position X1
+
  4b -  FLOAT - Position X1
  4b -  FLOAT   - Position Y1
+
  4b -  FLOAT - Position Y1
  4b -  FLOAT   - Position Z1
+
  4b -  FLOAT - Position Z1
  4b -  FLOAT   - Position X2
+
  4b -  FLOAT - Position X2
  4b -  FLOAT   - Position Y2
+
  4b -  FLOAT - Position Y2
  4b -  FLOAT   - Position Z2
+
  4b -  FLOAT - Position Z2
  4b  - UINT32 - Number of Lod models in wdd file (upto a maximum of 10)
+
  4b  - UINT32 - Number of Lod models in wdd file (upto a maximum of 10)
  4b  - UINT32 - Hash 1  - [[:Category:Static_Model_Hashes|hash]]
+
  4b  - UINT32 - Hash 1  - [[:Category:Static_Model_Hashes|hash]]
  4b  - UINT32 - Hash 2  - [[:Category:Static_Model_Hashes|hash]]
+
  4b  - UINT32 - Hash 2  - [[:Category:Static_Model_Hashes|hash]]
  4b  - UINT32 - Hash 3  - [[:Category:Static_Model_Hashes|hash]]
+
  4b  - UINT32 - Hash 3  - [[:Category:Static_Model_Hashes|hash]]
  4b  - UINT32 - Hash 4  - [[:Category:Static_Model_Hashes|hash]]
+
  4b  - UINT32 - Hash 4  - [[:Category:Static_Model_Hashes|hash]]
  4b  - UINT32 - Hash 5  - [[:Category:Static_Model_Hashes|hash]]
+
  4b  - UINT32 - Hash 5  - [[:Category:Static_Model_Hashes|hash]]
  4b  - UINT32 - Hash 6  - [[:Category:Static_Model_Hashes|hash]]
+
  4b  - UINT32 - Hash 6  - [[:Category:Static_Model_Hashes|hash]]
  4b  - UINT32 - Hash 7  - [[:Category:Static_Model_Hashes|hash]]
+
  4b  - UINT32 - Hash 7  - [[:Category:Static_Model_Hashes|hash]]
  4b  - UINT32 - Hash 8  - [[:Category:Static_Model_Hashes|hash]]
+
  4b  - UINT32 - Hash 8  - [[:Category:Static_Model_Hashes|hash]]
  4b  - UINT32 - Hash 9  - [[:Category:Static_Model_Hashes|hash]]
+
  4b  - UINT32 - Hash 9  - [[:Category:Static_Model_Hashes|hash]]
  4b  - UINT32 - Hash 10 - [[:Category:Static_Model_Hashes|hash]]
+
  4b  - UINT32 - Hash 10 - [[:Category:Static_Model_Hashes|hash]]
  32b - String - Model name 1
+
  32b - String - Model name 1
  32b - String - Model name 2
+
  32b - String - Model name 2
  32b - String - Model name 3
+
  32b - String - Model name 3
  32b - String - Model name 4
+
  32b - String - Model name 4
  32b - String - Model name 5
+
  32b - String - Model name 5
  32b - String - Model name 6
+
  32b - String - Model name 6
  32b - String - Model name 7
+
  32b - String - Model name 7
  32b - String - Model name 8
+
  32b - String - Model name 8
  32b - String - Model name 9
+
  32b - String - Model name 9
  32b - String - Model name 10
+
  32b - String - Model name 10
  
 
'''''X1, Y1, Z1''' = lower left vertex position'' and
 
'''''X1, Y1, Z1''' = lower left vertex position'' and
Line 79: Line 79:
 
'''Section 10 - Unknown Zon or Cull'''
 
'''Section 10 - Unknown Zon or Cull'''
  
  4b - FLOAT     - Position X1
+
  4b - FLOAT - Position X1
  4b - FLOAT     - Position Y1
+
  4b - FLOAT - Position Y1
  4b - FLOAT     - Position Z1
+
  4b - FLOAT - Position Z1
  4b - FLOAT     - Position X2
+
  4b - FLOAT - Position X2
  4b - FLOAT     - Position Y2
+
  4b - FLOAT - Position Y2
  4b - FLOAT     - Position Z2
+
  4b - FLOAT - Position Z2
  
 
'''''X1, Y1, Z1''' = lower left vertex position'' and
 
'''''X1, Y1, Z1''' = lower left vertex position'' and

Revision as of 00:01, 21 July 2009

WPL is the format of the map-related files similar to IPLs from the previous games. It can be edited with WPL Manager.

File Format

Each world placement file starts with one single header followed by the object placement information. The structure for the header is very simple:

4b - UINT32   - Unknown
4b - UINT32   - Instances

The placement information corresponds to the previous instance section of the .ipl files. They have a binary structure like the binary ipl files introduced with San Andreas:

Section 0 - INST

4b - FLOAT   - Position X
4b - FLOAT   - Position Y
4b - FLOAT   - Position Z
4b - FLOAT   - Rotation X
4b - FLOAT   - Rotation Y
4b - FLOAT   - Rotation Z
4b - FLOAT   - Rotation W
4b - UINT32  - Model name hash
4b - UINT32  - Unknown
4b - UINT32  - LOD Index (Index of another model in the current file)(Line entry number of LOD model)
4b - UINT32  - Unknown
4b - UINT32  - Unknown

Rotation information as Quarternion

Section 3 - Parked Cars

4b - FLOAT  - Position X
4b - FLOAT  - Position Y
4b - FLOAT  - Position Z
4b - FLOAT  - Unknown
4b - FLOAT  - Unknown
4b - FLOAT  - Unknown
4b - UINT32 - Model name hash
4b - INT32  - Unknown
4b - INT32  - Unknown
4b - INT32  - Unknown
4b - INT32  - Unknown
4b - INT32  - Unknown
4b - INT32  - Unknown
4b - INT32  - Unknown

Section 9 - LODcull

4b -  FLOAT  - Position X1
4b -  FLOAT  - Position Y1
4b -  FLOAT  - Position Z1
4b -  FLOAT  - Position X2
4b -  FLOAT  - Position Y2
4b -  FLOAT  - Position Z2
4b  - UINT32 - Number of Lod models in wdd file (upto a maximum of 10)
4b  - UINT32 - Hash 1  - hash
4b  - UINT32 - Hash 2  - hash
4b  - UINT32 - Hash 3  - hash
4b  - UINT32 - Hash 4  - hash
4b  - UINT32 - Hash 5  - hash
4b  - UINT32 - Hash 6  - hash
4b  - UINT32 - Hash 7  - hash
4b  - UINT32 - Hash 8  - hash
4b  - UINT32 - Hash 9  - hash
4b  - UINT32 - Hash 10 - hash
32b - String - Model name 1
32b - String - Model name 2
32b - String - Model name 3
32b - String - Model name 4
32b - String - Model name 5
32b - String - Model name 6
32b - String - Model name 7
32b - String - Model name 8
32b - String - Model name 9
32b - String - Model name 10

X1, Y1, Z1 = lower left vertex position and X2, Y2, Z2 = upper right vertex position

Section 10 - Unknown Zon or Cull

4b - FLOAT - Position X1
4b - FLOAT - Position Y1
4b - FLOAT - Position Z1
4b - FLOAT - Position X2
4b - FLOAT - Position Y2
4b - FLOAT - Position Z2

X1, Y1, Z1 = lower left vertex position and X2, Y2, Z2 = upper right vertex position


XPL

In the XBox 360's version of GTA 4 same files have the extension .xpl. The XPL and WPL formats are same, but due to the fact XPL files are used on the Xenon platform its data is stored in the big-endian order.

Tools

External Link