Difference between revisions of "ADD EXPLOSION"
(New page: {{Native |np=8 |p1t=float |p1d=X Coordinate |p2t=float |p2d=Y Coordinate |p3t=float |p3d=Z Coordinate |p4t=integer |p4d=Explosion Type |p5t=float |p5d=Unknown |p6t=bool |p6d=Unknown |p7t=b...) |
|||
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]]. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | == 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 - number of lod models in wdd file | ||
+ | 4b - UINT32 - hash1 | ||
+ | 4b - UINT32 - hash2 | ||
+ | 4b - UINT32 - hash3 | ||
+ | 4b - UINT32 - hash4 | ||
+ | 4b - UINT32 - hash5 | ||
+ | 4b - UINT32 - hash6 | ||
+ | 4b - UINT32 - hash7 | ||
+ | 4b - UINT32 - hash8 | ||
+ | 4b - UINT32 - hash9 | ||
+ | 4b - UINT32 - hash10 | ||
+ | 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]] – 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]] |
Revision as of 00:43, 6 June 2009
WPL is the format of the map-related files similar to IPLs from the previous games. It can be edited with WPL Manager.
Contents
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) 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 4b - UINT32 - hash1 4b - UINT32 - hash2 4b - UINT32 - hash3 4b - UINT32 - hash4 4b - UINT32 - hash5 4b - UINT32 - hash6 4b - UINT32 - hash7 4b - UINT32 - hash8 4b - UINT32 - hash9 4b - UINT32 - hash10 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
- WPL Manager – by Yoann (UZI-I)
External Link
- GTAForums: WPL file format specification
Grand Theft Auto IV | |
---|---|
File Formats | .dat • .gxt • .ide • .img • .ipl • .nod • .sco • .rpf • .rrr • .wad • .wbd/.wbn • .wdd • .wdr • .wft • .whm • .wpl • .wtd |
Documentation | Audio • Bink Video • Cryptography • Cutscenes • GXT Text • Image listing • Keycodes • Map Listing • Native functions • Paths • Radar Blips • Radio Stations • Saves • Scenarios • VTable • Weapons |
Tools | ASI Loader • ENBSeries • G-Texture • GIMS IV • Ingame WPL Editor • IV Needle • OpenIV • SparkIV • XLiveLess • WPL Manager • X Mod Installer Alice • C++ Script Hook • .NET Script Hook • Scocl |
Tutorials | Importing Textures with OpenIV • Importing Textures with SparkIV |
Modifications | GTA Connected • Gostown IV • Four Multiplayer • IV Multiplayer • CitizenMP:IV Reloaded |
Useful links | Community portal • Discussion forums • Modding forums • Mods on GTAGarage.com |