Difference between revisions of "GET BLIP COORDS"

From GTAMods Wiki
Jump to navigation Jump to search
(New page: {{Native |np=2 |p1t=int |p1d=Blip handle |p2t=pointer |p2d=Variable to store vector containing blip's coords. }})
 
(retrieved from history)
 
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]].
+
{{Native |np=2 |p1t=int |p1d=Blip handle |p2t=pointer |p2d=Variable to store vector containing blip's coords. }}
 
 
== 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)(Line entry number of LOD model)
 
4b - UINT32  - Unknown
 
4b - UINT32  - Unknown
 
 
 
''Rotation information as [[Wikipedia:Quarternion|Quarternion]]''
 
 
 
===Section 2 - Garages===
 
 
 
4b -  FLOAT  - Position X1
 
4b -  FLOAT  - Position Y1
 
4b -  FLOAT  - Position Z1
 
4b -  FLOAT  - Position X2
 
4b -  FLOAT  - Position Y2
 
4b -  FLOAT  - Position X3
 
4b -  FLOAT  - Position Y3
 
4b -  FLOAT  - Position Z3
 
4b -  UINT32  - DoorType
 
4b -  UINT32  - GarageType
 
4b -  UINT32  - hash
 
4b -  UINT32  - Unknown
 
 
 
'''''X1, Y1, Z1''' = lower left vertex position, ''
 
'''''X2, Y3, Z3''' = upper right vertex position, ''
 
'''''X3, Y2''' = lower left vertex position for Garage entrance''
 
 
 
===Section 3 - Parked Cars===
 
 
 
only used in the (*_stream*.wpl) files
 
 
 
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 4 - CULL===
 
 
 
these are used for interiors directly accessed from outdoor locations.
 
 
 
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 -  INT32  - Unknown
 
4b -  INT32  - Unknown
 
4b -  INT32  - Unknown
 
4b -  INT32  - Unknown
 
4b -  UINT32 - Model name [[:Category:Static_Model_Hashes|hash]]
 
 
 
'''''X1, Y1, Z1''' = lower left vertex position, ''
 
'''''X2, Y2, Z2''' = upper right vertex position''
 
 
 
===Section 9 - LODcull===
 
 
 
only used in (lodcull_x.wpl) files, usually located in 'Rockstar Games\Grand Theft Auto IV\pc\data\maps\generic' folder
 
 
 
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 - [[:Category:Static_Model_Hashes|Hash]] 1
 
4b  - UINT32 - [[:Category:Static_Model_Hashes|Hash]] 2
 
4b  - UINT32 - [[:Category:Static_Model_Hashes|Hash]] 3
 
4b  - UINT32 - [[:Category:Static_Model_Hashes|Hash]] 4
 
4b  - UINT32 - [[:Category:Static_Model_Hashes|Hash]] 5
 
4b  - UINT32 - [[:Category:Static_Model_Hashes|Hash]] 6
 
4b  - UINT32 - [[:Category:Static_Model_Hashes|Hash]] 7
 
4b  - UINT32 - [[:Category:Static_Model_Hashes|Hash]] 8
 
4b  - UINT32 - [[:Category:Static_Model_Hashes|Hash]] 9
 
4b  - UINT32 - [[:Category:Static_Model_Hashes|Hash]] 10
 
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, ''
 
'''''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 ==
 
* GTA IV Placement Tool by |Dageron| [http://www.gtaforums.com/index.php?showtopic=409799]
 
* IV Placement Editor by Chipsman [http://www.gtagarage.com/mods/show.php?id=6094]
 
* [[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 21:10, 18 October 2009

GET_BLIP_COORDS
Number of parameters: 2
Parameter #TypeDescription
1.intBlip handle
2.pointerVariable to store vector containing blip's coords.
Return value:
TypeDescription
None