TOBJ: Difference between revisions

No edit summary
(contributions from myself and Aschratt)
Line 1: Line 1:
{{IdeSection
{{IdeSection
| game        = [[Grand Theft Auto III|GTA III]], [[Grand Theft Auto: Vice City|GTA VC]], [[Grand Theft Auto: San Andreas|GTA SA]], [[Grand Theft Auto IV|GTA IV]]
|game        = {{Icon-square|t}} {{Icon-square|4}}
| description = Used to define timed map objects
|description = Used to define timed map objects
}}
}}
'''TOBJ''' is a section in the [[IDE|item definition]] file. It is used to define timed map objects. Objects will be visible at during specific time. They can be made to appear to change from one object to another on a specific time of day.
'''TOBJ''' is a section in the item definition file in [[Grand Theft Auto III]], [[Grand Theft Auto: Vice City]], [[Grand Theft Auto: San Andreas]], and [[Grand Theft Auto IV]]. It is used to define standard map objects similar to the [[OBJS]] section with an additional in-game time range defining when the object gets rendered. GTA IV also support time controlled objects linked to animations through the TANM section. Most, if not all, time objects use the object flag 2 to prevent them from fading into and out of view at those times.


==GTA III - San Andreas==
== Format ==
All TOBJ objects needs a daytime and a nighttime object at a point to show up at all times. If one object doesn't have the correct timing or is missing entirely, the game will keep using the existing TOBJ object. You will not see a hole in the ground.
=== GTA III, GTA Vice City, and GTA San Andreas ===
===Format===
<pre>
ID, ModelName, TextureName, ObjectCount, DrawDist, [DrawDist2, ...], Flags, TimeOn, TimeOff
tobj
All but the last two columns are the same as the [[OBJS]] section.
# type 1 (III/VC/SA)
{|class="prettytable" width="100%"
Id, ModelName, TxdName, MeshCount, DrawDistance, Flags, TimeOn, TimeOff
!width="250px"|Identifier
# type 2 (III/VC/SA)
Id, ModelName, TxdName, MeshCount, DrawDistance1, DrawDistance2, Flags, TimeOn, TimeOff
# type 3 (III/VC/SA)
Id, ModelName, TxdName, MeshCount, DrawDistance1, DrawDistance2, DrawDistance3, Flags, TimeOn, TimeOff
# type 4 (SA)
Id, ModelName, TxdName, DrawDistance, Flags, TimeOn, TimeOff
end
</pre>
 
====Type 0====
This type should never be used but it is still considered valid. It is documented here for sake of completion.
{|class="wikitable center-col-1 center-col-2" style="width: 100%;"
!style="width: 4em;" |{{Icon-square|t}}
!style="width: 12em;" |Identifier
!style="width: 6em;" |Type
!Description
!Description
|-
|-
|<center>ID</center>||unique object ID (integer)
|A ||Id ||integer ||Unique object ID.
|-
|B ||ModelName ||string ||Name of the <code>.dff</code> model file without extension.
|-
|C ||TxdName ||string ||Name of the <code>.txd</code> texture dictionary without extension.
|-
|-
|<center>ModelName</center>||name of the .dff [[DFF|model file]], without extension (string)
|D ||''unknown'' ||integer ||''unknown''
|}
 
====Type 1====
This is used for non-breakable objects.
{|class="wikitable center-col-1 center-col-2" style="width: 100%;"
!style="width: 4em;" |{{Icon-square|t}}
!style="width: 12em;" |Identifier
!style="width: 6em;" |Type
!Description
|-
|-
|<center>TextureName</center>||name of the .txd [[TXD|texture dictionary]], without extension (string)
|A ||Id ||integer ||Unique object ID.
|-
|-
|<center>ObjectCount</center>||amount of sub objects, e.g. damaged parts, usually 1 (integer) - '''''optional for SA, default 1'''''
|B ||ModelName ||string ||Name of the <code>.dff</code> model file without extension.
|-
|-
|<center>DrawDist</center>||[[draw distance]] in [[unit]]s, one for each sub object (float)
|C ||TxdName ||string ||Name of the <code>.txd</code> texture dictionary without extension.
|-
|-
|<center>Flags</center>||object flags, defining special behavior, default 0 (integer)
|D ||MeshCount ||integer ||Number of meshes. 1 for this type.
|-
|-
|<center>TimeOn</center>||activation time in game hours (integer)
|E ||DrawDistance ||float ||Draw distance in [[unit]]s.
|-
|-
|<center>TimeOff</center>||deactivation time in game hours (integer)
|F ||Flags ||integer ||Object flags.
|-
|G ||TimeOn ||integer ||Hour to appear
|-
|H ||TimeOff ||integer ||Hour to disappear
|}
|}


==GTA IV==
====Type 2====
ModelName, TextureName, DrawDist, Flag1, Flag2, (Bounds min)X,Y,Z, (Bounds max)X,Y,Z, (Bounds Sphere)X,Y,Z, Radius, WDD, NightFlag
This is used for breakable objects.
{|class="wikitable center-col-1 center-col-2" style="width: 100%;"
!style="width: 4em;" |{{Icon-square|t}}
!style="width: 12em;" |Identifier
!style="width: 6em;" |Type
!Description
|-
|A ||Id ||integer ||Unique object ID.
|-
|B ||ModelName ||string ||Name of the <code>.dff</code> model file without extension.
|-
|C ||TxdName ||string ||Name of the <code>.txd</code> texture dictionary without extension.
|-
|D ||MeshCount ||integer ||Number of meshes. 2 for this type.
|-
|E,F ||DrawDistance1, DrawDistance2 ||float[2] ||Draw distance in [[unit]]s (one for each mesh, only the first is actually used).
|-
|G ||Flags ||integer ||Object flags.
|-
|H ||TimeOn ||integer ||Hour to appear
|-
|I ||TimeOff ||integer ||Hour to disappear
|}


Note that GTA IV does not use any unique object ID numbers. All but the last column are the same as the [[OBJS]] section.
====Type 3====
This is used for complex breakable objects.
{|class="wikitable center-col-1 center-col-2" style="width: 100%;"
!style="width: 4em;" |{{Icon-square|t}}
!style="width: 12em;" |Identifier
!style="width: 6em;" |Type
!Description
|-
|A ||Id ||integer ||Unique object ID.
|-
|B ||ModelName ||string ||Name of the <code>.dff</code> model file without extension.
|-
|C ||TxdName ||string ||Name of the <code>.txd</code> texture dictionary without extension.
|-
|D ||MeshCount ||integer ||Number of meshes. 3 for this type.
|-
|E,F,G ||DrawDistance1, DrawDistance2, DrawDistance3 ||float[3] ||Draw distance in [[unit]]s (one for each mesh, only the first is actually used).
|-
|H ||Flags ||integer ||Object flags.
|-
|I ||TimeOn ||integer ||Hour to appear
|-
|J ||TimeOff ||integer ||Hour to disappear
|}
 
====Type 4====
This is used for non-breakable objects and behaves equivalently to [[#Type 1|Type 1]].
{|class="wikitable center-col-1 center-col-2" style="width: 100%;"
!style="width: 3em;" |{{Icon-square|SA}}
!style="width: 12em;" |Identifier
!style="width: 6em;" |Type
!Description
|-
|A ||Id ||integer ||Unique object ID.
|-
|B ||ModelName ||string ||Name of the <code>.dff</code> model file without extension.
|-
|C ||TxdName ||string ||Name of the <code>.txd</code> texture dictionary without extension.
|-
|D ||DrawDistance ||float ||Draw distance in [[unit]]s.
|-
|E ||Flags ||integer ||Object flags.
|-
|F ||TimeOn ||integer ||Hour to appear
|-
|G ||TimeOff ||integer ||Hour to disappear
|}


{|class="prettytable" width="100%"
=== GTA IV ===
!width="250px"|Identifier
<pre>
tobj
ModelName, TxdName, DrawDistance, Flags, Unknown, MinX, MinY, MinZ, MaxX, MaxY, MaxZ, SphereX, SphereY, SphereZ, Radius, LODModel, NightFlag
end
</pre>
 
{|class="wikitable center-col-1 center-col-2" style="width: 100%;"
!style="width: 3em;" |{{Icon-square|4}}
!style="width: 12em;" |Identifier
!style="width: 6em;" |Type
!Description
!Description
|-
|-
|<center>ModelName</center>||name of the .wdr [[DFF|model file]], without extension (string)
|A ||ModelName ||string ||Name of the <code>.wdr</code> ''model file'' without extension.
|-
|-
|<center>TextureName</center>||name of the .wtd [[TXD|texture dictionary]], without extension (string)
|B ||TxdName ||string ||name of the <code>.wtd</code> ''texture dictionary'' without extension.
|-
|-
|<center>DrawDistance</center>||[[draw distance]] in [[unit]]s, one for each sub object (float)
|C ||DrawDistance ||float ||Draw distance in units.
|-
|-
|<center>Flag1</center>||object flag, defining special behavior
|D ||Flags ||integer ||Object flag.
|-
|-
|<center>Flag2</center>||object flag, defining special behavior, default 0 (integer)
|E ||''unknown'' ||float ||Unknown integer (0 by default).
|-
|-
|<center>Bounds Min</center>||Lower Left vertex local position of a model bounding box
|F,G,H ||MinX, MinY, MinZ ||float[3] ||Lower left corner of the bounding box for the object.
|-
|-
|<center>Bounds Max</center>||Upper Right vertex local position of a model bounding box
|I,J,K ||MaxX, MaxY, MaxZ ||float[3] ||Upper right corner of the bounding box for the object.
|-
|-
|<center>Radius</center>||Radius dimensions of the bounding Sphere
|L,M,N ||SphereX, SphereY, SphereZ ||float[3] ||Center of the bounding sphere for the object.
|-
|-
|<center>WDD</center>||the model dictionary file that contains the LOD model for the defined Modelname
|O ||Radius ||float ||Radius of the bounding sphere into all dimensions.
|-
|-
|<center>NightFlag</center>||assumed to be hardcoded time flags
|P ||LODModel||string ||Name of the <code>.wdd</code> file that contains the ''lod model'' for the defined modelname.
|-
|Q ||NightFlag||integer ||If enabled (1) the object only shows at nighttime, otherwise the object gets only rendered at daytime. Day- and nighttimes are hardcoded.
|}
|}
== Statistics ==
Total number of TOBJ entries in:
:GTA III: 24 (max 30)
:Vice City: 342 (max 385)
:San Andreas: 160


{{fdl}}
{{fdl}}

Revision as of 18:08, 30 June 2018

TOBJ (IDE section)
Supported games:GTA III GTA Vice City GTA San Andreas GTA IV
Short description:Used to define timed map objects
IDE Sections:
2DFX AMAT ANIM CARS HIER MLO OBJS
PATH PEDS TANM TOBJ TREE TXDP WEAP

TOBJ is a section in the item definition file in Grand Theft Auto III, Grand Theft Auto: Vice City, Grand Theft Auto: San Andreas, and Grand Theft Auto IV. It is used to define standard map objects similar to the OBJS section with an additional in-game time range defining when the object gets rendered. GTA IV also support time controlled objects linked to animations through the TANM section. Most, if not all, time objects use the object flag 2 to prevent them from fading into and out of view at those times.

Format

GTA III, GTA Vice City, and GTA San Andreas

tobj
# type 1 (III/VC/SA)
Id, ModelName, TxdName, MeshCount, DrawDistance, Flags, TimeOn, TimeOff
# type 2 (III/VC/SA)
Id, ModelName, TxdName, MeshCount, DrawDistance1, DrawDistance2, Flags, TimeOn, TimeOff
# type 3 (III/VC/SA)
Id, ModelName, TxdName, MeshCount, DrawDistance1, DrawDistance2, DrawDistance3, Flags, TimeOn, TimeOff
# type 4 (SA)
Id, ModelName, TxdName, DrawDistance, Flags, TimeOn, TimeOff
end

Type 0

This type should never be used but it is still considered valid. It is documented here for sake of completion.

GTA III GTA Vice City GTA San Andreas Identifier Type Description
A Id integer Unique object ID.
B ModelName string Name of the .dff model file without extension.
C TxdName string Name of the .txd texture dictionary without extension.
D unknown integer unknown

Type 1

This is used for non-breakable objects.

GTA III GTA Vice City GTA San Andreas Identifier Type Description
A Id integer Unique object ID.
B ModelName string Name of the .dff model file without extension.
C TxdName string Name of the .txd texture dictionary without extension.
D MeshCount integer Number of meshes. 1 for this type.
E DrawDistance float Draw distance in units.
F Flags integer Object flags.
G TimeOn integer Hour to appear
H TimeOff integer Hour to disappear

Type 2

This is used for breakable objects.

GTA III GTA Vice City GTA San Andreas Identifier Type Description
A Id integer Unique object ID.
B ModelName string Name of the .dff model file without extension.
C TxdName string Name of the .txd texture dictionary without extension.
D MeshCount integer Number of meshes. 2 for this type.
E,F DrawDistance1, DrawDistance2 float[2] Draw distance in units (one for each mesh, only the first is actually used).
G Flags integer Object flags.
H TimeOn integer Hour to appear
I TimeOff integer Hour to disappear

Type 3

This is used for complex breakable objects.

GTA III GTA Vice City GTA San Andreas Identifier Type Description
A Id integer Unique object ID.
B ModelName string Name of the .dff model file without extension.
C TxdName string Name of the .txd texture dictionary without extension.
D MeshCount integer Number of meshes. 3 for this type.
E,F,G DrawDistance1, DrawDistance2, DrawDistance3 float[3] Draw distance in units (one for each mesh, only the first is actually used).
H Flags integer Object flags.
I TimeOn integer Hour to appear
J TimeOff integer Hour to disappear

Type 4

This is used for non-breakable objects and behaves equivalently to Type 1.

GTA San Andreas Identifier Type Description
A Id integer Unique object ID.
B ModelName string Name of the .dff model file without extension.
C TxdName string Name of the .txd texture dictionary without extension.
D DrawDistance float Draw distance in units.
E Flags integer Object flags.
F TimeOn integer Hour to appear
G TimeOff integer Hour to disappear

GTA IV

tobj
ModelName, TxdName, DrawDistance, Flags, Unknown, MinX, MinY, MinZ, MaxX, MaxY, MaxZ, SphereX, SphereY, SphereZ, Radius, LODModel, NightFlag
end
GTA IV Identifier Type Description
A ModelName string Name of the .wdr model file without extension.
B TxdName string name of the .wtd texture dictionary without extension.
C DrawDistance float Draw distance in units.
D Flags integer Object flag.
E unknown float Unknown integer (0 by default).
F,G,H MinX, MinY, MinZ float[3] Lower left corner of the bounding box for the object.
I,J,K MaxX, MaxY, MaxZ float[3] Upper right corner of the bounding box for the object.
L,M,N SphereX, SphereY, SphereZ float[3] Center of the bounding sphere for the object.
O Radius float Radius of the bounding sphere into all dimensions.
P LODModel string Name of the .wdd file that contains the lod model for the defined modelname.
Q NightFlag integer If enabled (1) the object only shows at nighttime, otherwise the object gets only rendered at daytime. Day- and nighttimes are hardcoded.

Statistics

Total number of TOBJ entries in:

GTA III: 24 (max 30)
Vice City: 342 (max 385)
San Andreas: 160
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 Grand Theft Wiki.

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

GNU Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
See Grand Theft Wiki:Copyright for more information.