Difference between revisions of "Binary IPL"

From GTAMods Wiki
Jump to navigation Jump to search
(File Format)
(Redirect to new IPL article)
 
(14 intermediate revisions by 3 users not shown)
Line 1: Line 1:
'''WPL''' is the format of the map-related files similar to [[IPL]]s from the previous games. It can be edited with [[WPL Manager]].
+
#REDIRECT [[Item_Placement#Binary format]]
 
 
== 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 [[Item_Placement#inst|instance]] section of the <code>.ipl</code> files. They have a binary structure like the [[Binary_IPL|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 [[:Category:Static_Model_Hashes|hash]]
 
4b - UINT32  - Unknown
 
4b - UINT32  - [[LOD]] Index (Index of another model in the current file)
 
4b - UINT32  - Unknown
 
4b - UINT32  - Unknown
 
 
 
''Rotation information as [[Wikipedia:Quarternion|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 [[: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
 
 
 
'''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  - Unknown UINT32
 
4b  - UINT32  - Hash 1  - [[: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 4  - [[: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 7  - [[: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 10 - [[:Category:Static_Model_Hashes|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''
 
 
 
<!---
 
;Header
 
<source lang="cpp">
 
struct Header_t
 
{
 
    BYTE byteUnknown01[4];
 
    DWORD dwNbrOfBlockInst;
 
};
 
</source>
 
 
 
;InstBlock (Start from 0x44)
 
<source lang="cpp">
 
struct Inst_t
 
{
 
    float  fPosition[3];
 
    float  fRotation[4];
 
    DWORD dwModelNameHash;
 
    BYTE byteUnknown01[4];
 
    DWORD dwAttachedLod;
 
    BYTE byteUnknown02[8];
 
};
 
</source>
 
-->
 
 
 
== XPL ==
 
In the XBox 360's version of GTA 4 same files have the extension <code>.xpl</code>. 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 [[Wikipedia:Endianness|big-endian order]].
 
<!--not sure where to put this: "They are used to map generic objects which are defined with another path in the [[Images.txt|image listing]] file."-->
 
 
 
== Tools ==
 
* [[WPL Manager]] &ndash; by {{U|UZI-I|Yoann (UZI-I)}}
 
 
 
== External Link ==
 
* {{GTAF|389423|WPL file format specification}}
 
 
 
{{GTA4-navi}}
 
{{File-stub}}
 
[[Category:Map Formats]][[Category:GTA 4]]
 

Latest revision as of 09:19, 27 July 2010