GTA Wiki
Register
Advertisement
GTA Wiki
19,723
pages

Paths in Grand Theft Auto IV are similar to the 64 node-files introduced with GTA San Andreas. Like the first version of the format there are 64 node files where each file corresponds to a 750x750 square unit starting with nodes0.nod in the south-west corner (-3000.0, -3000.0) and ending in the north-east corner (3000.0, 3000.0) of the game's world in row-major order.

Preamble[]

Before trying to understand the format of GTA IV's path files, it is recommended to read the GTA San Andreas paths article, since GTA IV paths are an update of the old format.

Unlike San Andreas, paths are not stored in the major archive file (gta3.img) and the node files also do not have the extension .dat anymore. In GTA IV, paths are stored in the ~\pc\data\cdimages\paths.img file as 64 .nod files. Furthermore the file structure has generally changed: If San Andreas had 7 sections per node file, GTA IV only has 2. Linking works in a different way and there are no navi nodes any longer.



File Format[]

The following data types and structures are used within this article:

  • INT8/UINT8 - signed/unsigned 8 bit integer (1 byte)
  • INT16/UINT16 - signed/unsigned 16 bit integer (2 byte)
  • INT32/UINT32 - signed/unsigned 32 bit integer (4 byte)
  • FLOAT - single precision floating point number (4 byte)

Header[]

The header is a structure of 4 values with a size of 16 bytes.

4b - UINT32  - Number of nodes (section 1)
4b - UINT32  - Number of car-nodes
4b - UINT32  - Number of intersection nodes
4b - UINT32  - Number of links (section 2)



Section 1 - Nodes[]

4b - UINT32 - MemAddress
4b - UINT32 - Zero (Allways)
2b - UINT16 - Area ID
2b - UINT16 - Node ID
4b - UINT32 - Unknown - may be related into interpolation
2b - UINT16 - Allways 0x7FFE
2b - UINT16 - LinkID
6b - INT16[3] - Position (XYZ)
1b - BYTE  - Path Width
1b - BYTE  - Path Type
4b - UINT32 - Flags
Area ID
defines the area where the node lays in. Usually this is the same number as the one of the node file.
Node ID
defines the id of the node. This is important for linking the node to others. Using the node and area id nodes can be identified as unique. There cannot be 2 nodes with the same area and node id.
Link ID
points to an link in section 2. The link ID cannot point into another node file. It points to a link in the same node file. However this link is able to point to an node in another or the same area.
Position (X,Y,Z)
The world-coordinates of the node. To get the floating point X and Y coordinates divide the 16 bit integer by 8. For Z coords you have to divide by 128 (Unlike San Andreas).
Path Width
used to set the width of the paths. For cars this is related in how much space there is between 2 lanes. Divide the 8 bit unsigned integer by 8 to get the floating point value.
Path Type
descripes the type of an node. This is used to isolate certain nodes from others. For boats this is allways 0x01.
Flags
the flags are used to influence the behaviour of non-person-characters (NPC's), which are spawned along the paths on the nodes (See below).

Path Node Flags[]

0-4: unknown

Flag 05: Emergency only
Flag 06: Boats
Flag 07: Unknown
Flag 08: Exactly the same as 05
Flag 09: Intersection central node
Flag 10: Is highway
Flag 11: Is not highway

12-15: Link count

Flag 16: Disable linking

17-23: unknown (Perhaps related to lanes or other earlier Navi node flags)

Flag 24: Is ped node?
Flag 25: Rarely used, police controls or roadblocks?
Flag 26: unknown ped flag
Flag 27: Unknown ped flag

28-31: unknown
  • Structure unconfirmed and partially incomplete



Section 2 - Links[]

2b - UINT16  - Area ID
2b - UINT16  - Node ID
1b - UINT8   - Unknown
1b - UINT8   - Link length
2b - UINT16  - Flags
  • Structure unconfirmed and partially incomplete



Tools and Scripts[]

  • – a tool by User:Aschratt which allows to view paths and highlight nodes with special flags in 3D.


[ ve ]Grand Theft Auto IV
LocationsLiberty City (Algonquin | Bohan | Broker | Dukes) | Alderney
CharactersCharacters | Niko Bellic | Roman Bellic | Vlad Glebov | Mikhail Faustin | Dimitri Rascalov | Brucie Kibbutz | Elizabeta Torres | Patrick McReary | Playboy X | Dwayne Forge | United Liberty Paper contact | Ray Boccino | Jimmy Pegorino
ContentMissions | Random characters | Friends | Girlfriends | Vehicles | Weapons | Clothing | Internet | Radio Stations | Safehouses | TV Shows
Information100% Completion | Achievements and Trophies | Cheats | Features | Trailers | Multiplayer
Episodes from Liberty CityThe Lost and Damned | The Ballad of Gay Tony
CrossoversDiamonds | Heroin | Impossible Trinity (Museum Piece, Collector's Item, and Not So Fast)
Copyrighted

This page is licensed under the GNU Free Documentation Licence. This page has a separate license to the CC-BY-SA that applies to most of GTA Wiki.

The full text of the GNU FDL v1.2 is here. Click the "History" button to see the full list of authors. See GTA Wiki:Copyright for more detail on our copyright policy.

Navigation[]

[ ve ]Game files and formats in Grand Theft Auto
Important!See our Policy on modded content.
File formatsIMG Archive | DFF | TXD | IDE | GXT | Handling.cfg | Carcols Dynamic Object
Game filesAnimviewer.dat/GTAVC | Bink | Default.dat/GTAVC | Chassis Vlo | Fistfite.dat/GTAVC | Flight.dat | Gta vc.dat | Object.dat/GTAVC | OpenGTA2 | Particle.cfg/GTAVC | Particle (SA) | Paths | Ped.dat/GTAVC | Pedgrp.dat/GTAVC | Pedstats.dat/GTAVC | Scenarios.dat | Scripted Path | Surface.dat/GTAVC | Surfaud.dat | TimeCyc Definition | Timecyc.dat/GTAVC | Train.dat/GTAVC | Train.dat/GTAVC | Train.dat/GTAVC | Train2.dat/GTAVC | WAD | WBD-WBN | WPFL | Water.dat | Water.dat/GTAVC | Weapon.dat/GTAVC | Weaponinfo.xml
File toolsCodeWalker | OpenIV | Spark IV
Advertisement