Difference between revisions of "PATH (IDE Section)"

From GTAMods Wiki
Jump to navigation Jump to search
(added images)
 
(One intermediate revision by one other user not shown)
Line 38: Line 38:
 
* ''car'' = road traffic
 
* ''car'' = road traffic
 
|-
 
|-
| B || Id || integer || associated to existing object ID defined in [[OBJS]] or [[TOBJ]] section
+
| B || Id || integer || Associated to existing model index defined in [[OBJS]] or [[TOBJ]] section
 
|-
 
|-
| C || ModelName || string || associated to existing object model name defined in OBJS or TOBJ section
+
| C || ModelName || string || Associated to existing object model name defined in OBJS or TOBJ section
 
|-
 
|-
 
! colspan="4" | Node
 
! colspan="4" | Node
Line 63: Line 63:
 
| I || RightLanes || integer || Number of lanes right of the node (ignored for ped path nodes)
 
| I || RightLanes || integer || Number of lanes right of the node (ignored for ped path nodes)
 
|}
 
|}
 +
<gallery mode="packed">
 +
File:Gta3 car paths.png|Car Paths Visualization
 +
File:Gta3 ped paths.png|Ped Paths Visualization
 +
</gallery>
  
 
=== Vice City ===
 
=== Vice City ===
Line 69: Line 73:
 
# type 1
 
# type 1
 
GroupType, Id, ModelName
 
GroupType, Id, ModelName
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes
+
NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes
+
NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes
+
NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes
+
NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes
+
NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes
+
NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes
+
NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes
+
NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes
+
NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes
+
NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes
+
NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes
+
NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
 
# type 2
 
# type 2
 
GroupType, -1
 
GroupType, -1
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
+
NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
+
NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
+
NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
+
NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
+
NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
+
NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
+
NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
+
NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
+
NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
+
NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
+
NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
NodeType, NextNode, IsCrossRoad, X, Y, Z, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
+
NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
 
end
 
end
 
}}
 
}}
Line 111: Line 115:
 
* ''2'' = Water traffic
 
* ''2'' = Water traffic
 
|-
 
|-
| B || Id || integer || associated to existing object ID defined in [[OBJS]] or [[TOBJ]] section
+
| rowspan="2" | B || Id || integer || Associated to existing model index defined in [[OBJS]] or [[TOBJ]] section
 
|-
 
|-
| C || ModelName || string || associated to existing object model name defined in OBJS or TOBJ section
+
| -1 || {{a|l}} | integer || Always ''-1'', used as a delimiter
 +
|-
 +
| C || ModelName || string || Associated to existing model name defined in OBJS or TOBJ section
 
|-
 
|-
 
! colspan="4" | Node
 
! colspan="4" | Node
Line 128: Line 134:
 
| C || IsCrossRoad || integer || Boolean determining if there is a cross road in the imaginary line joined by two nodes
 
| C || IsCrossRoad || integer || Boolean determining if there is a cross road in the imaginary line joined by two nodes
 
|-
 
|-
| D,E,F || X, Y, Z || float[3] || X, Y, and Z coordinates relative to the center of the object * 16
+
| rowspan="2" | D,E,F || XRel, YRel, ZRel || float[3] || X, Y, and Z coordinates relative to the center of the object * 16
 +
|-
 +
| XAbs, YAbs, ZAbs || {{a|l}} | float[3] || Absolute X, Y, Z coordinates of the node * 16
 
|-
 
|-
 
| G || Median || float ||
 
| G || Median || float ||
Line 152: Line 160:
 
| L || SpawnRate || float || Spawn rate frequency ranging from ''0.0'' to ''1.0''
 
| L || SpawnRate || float || Spawn rate frequency ranging from ''0.0'' to ''1.0''
 
|}
 
|}
 +
<gallery mode="packed">
 +
File:Vc car paths.png|Car Paths Visualization
 +
File:Vc ped paths.png|Ped Paths Visualization
 +
</gallery>
  
 
== See also ==
 
== See also ==

Latest revision as of 18:58, 22 May 2019

PATH (IDE section)
Supported games:GTA III Vice City (unstable)
Brief description:Used to define paths for traffic
IDE Sections:
2DFX AMAT ANIM CARS HIER HAND MLO OBJS
PATH PEDS TANM TOBJ TREE TXDP WEAP

PATH is a section in the item definition file in GTA III and Vice City. It is used to define paths for traffic. Path nodes in GTA III are attached to existing objects in a similar manner to 2DFX. In Vice City, the format of this section is similar to its IPL counterpart but entries will crash the game because of an imposed limit. Use a limit adjuster like VC Limit Adjuster and increase the number of treadables to use this section.

Format

GTA III

path
GroupType, Id, ModelName
	NodeType, NextNode, IsCrossRoad, X, Y, Z, unknown, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, X, Y, Z, unknown, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, X, Y, Z, unknown, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, X, Y, Z, unknown, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, X, Y, Z, unknown, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, X, Y, Z, unknown, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, X, Y, Z, unknown, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, X, Y, Z, unknown, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, X, Y, Z, unknown, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, X, Y, Z, unknown, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, X, Y, Z, unknown, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, X, Y, Z, unknown, LeftLanes, RightLanes
end
GTA III Identifier Type Description
Group
A GroupType string
  • ped = pedestrian traffic
  • car = road traffic
B Id integer Associated to existing model index defined in OBJS or TOBJ section
C ModelName string Associated to existing object model name defined in OBJS or TOBJ section
Node
A NodeType integer
  • 0 = Null
  • 1 = External
  • 2 = Internal
B NextNode integer
  • -1 = Do not link to any other node in this group
  • 0 to 11 = Link to this node number in this group
C IsCrossRoad integer Boolean determining if there is a cross road in the imaginary line joined by two nodes
D,E,F X, Y, Z float[3] X, Y, and Z coordinates relative to the center of the object * 16
G unknown float Always 160
H LeftLanes integer Number of lanes left of the node (ignored for ped path nodes)
I RightLanes integer Number of lanes right of the node (ignored for ped path nodes)

Vice City

path
# type 1
GroupType, Id, ModelName
	NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
	NodeType, NextNode, IsCrossRoad, XRel, YRel, ZRel, Median, LeftLanes, RightLanes
# type 2
GroupType, -1
	NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
	NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
	NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
	NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
	NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
	NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
	NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
	NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
	NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
	NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
	NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
	NodeType, NextNode, IsCrossRoad, XAbs, YAbs, ZAbs, Median, LeftLanes, RightLanes, SpeedLimit, Flags, SpawnRate
end
Vice City Identifier Type Description
Group
A GroupType integer
  • 0 = Pedestrian traffic
  • 1 = Road traffic
  • 2 = Water traffic
B Id integer Associated to existing model index defined in OBJS or TOBJ section
-1 integer Always -1, used as a delimiter
C ModelName string Associated to existing model name defined in OBJS or TOBJ section
Node
A NodeType integer
  • 0 = Null
  • 1 = External
  • 2 = Internal
B NextNode integer
  • -1 = Do not link to any other node in this group
  • 0 to 11 = Link to this node number in this group
C IsCrossRoad integer Boolean determining if there is a cross road in the imaginary line joined by two nodes
D,E,F XRel, YRel, ZRel float[3] X, Y, and Z coordinates relative to the center of the object * 16
XAbs, YAbs, ZAbs float[3] Absolute X, Y, Z coordinates of the node * 16
G Median float
  • Pedestrian traffic: width of walkway
  • Road traffic: width of divider between left and right lanes.
H LeftLanes integer Number of lanes left of the node. This is ignored for internal nodes
I RightLanes integer Number of lanes right of the node. This is ignored for internal nodes
J SpeedLimit integer Sets the speed of vehicles traveling through the path
  • 0 = Slow
  • 1 = Medium
  • 2 = Fast
K Flags integer General node behavior
  • 0 = No flags
  • 1 = Ignored by traffic
  • 2 = Police roadblock (only for road traffic node)
  • 4 = Restricted node
  • 8 = No effect, may be used by water traffic to increase maneuverability
L SpawnRate float Spawn rate frequency ranging from 0.0 to 1.0

See also

  • PATH, a similar section in the item placement file for Vice City