Difference between revisions of "TOBJ"

From GTAMods Wiki
Jump to navigation Jump to search
Line 3: Line 3:
 
| description = Used to define timed map objects
 
| description = Used to define timed map objects
 
}}
 
}}
'''TOBJ''' is a section in the [[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. It is used to define standart map objects with an additional ingame time range defining when the object gets rendered. It's format is similar to [[OBJS|standart map objects]].
 +
 
 +
 
 +
== Format ==
 +
 
 +
=== GTA III, Vice City and San Andreas ===
 +
{{Incomplete}}
 +
 
 +
ID, ModelName, TextureName, ObjectCount, DrawDistance, [DrawDistance2, ...], Flags, TimeOn, TimeOff
  
==GTA III - San Andreas==
 
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.
 
===Format===
 
ID, ModelName, TextureName, ObjectCount, DrawDist, [DrawDist2, ...], Flags, TimeOn, TimeOff
 
All but the last two columns are the same as the [[OBJS]] section.
 
 
{|{{Prettytable}} width="100%"
 
{|{{Prettytable}} width="100%"
 
!width="250px"|Identifier
 
!width="250px"|Identifier
 
!Description
 
!Description
 
|-
 
|-
|<center>ID</center>||unique object ID (integer)
+
|<center>ID</center>||Unique object ID.
 
|-
 
|-
|<center>ModelName</center>||name of the .dff [[model file]], without extension (string)
+
|<center>ModelName</center>||Name of the <code>.dff</code> [[model file]] without extension.
 
|-
 
|-
|<center>TextureName</center>||name of the .txd [[texture dictionary]], without extension (string)
+
|<center>TextureName</center>||Name of the <code>.txd</code> [[texture dictionary]] without extension.
 
|-
 
|-
|<center>ObjectCount</center>||amount of sub objects, e.g. damaged parts, usually 1 (integer) - '''''optional for SA, default 1'''''
+
|<center>ObjectCount</center>||Number of [[RenderWare_binary_stream_file|clumps]]. 1 by default and optional for ''San Andreas''.
 
|-
 
|-
|<center>DrawDist</center>||[[draw distance]] in [[unit]]s, one for each sub object (float)
+
|<center>DrawDistance</center>||[[Draw distance]] in [[unit]]s (one for each clump).
 
|-
 
|-
|<center>Flags</center>||object flags, defining special behavior, default 0 (integer)
+
|<center>Flags</center>||Object flags (see [[TOBJ#Object_Flags|below]]).
 
|-
 
|-
|<center>TimeOn</center>||activation time in game hours (integer)
+
|<center>TimeOn, TimeOff</center>||Activation and deactivation time in hours.
|-
 
|<center>TimeOff</center>||deactivation time in game hours (integer)
 
 
|}
 
|}
  
 
==GTA IV==
 
==GTA IV==
ModelName, TextureName, DrawDist, Flag1, Flag2, (Bounds min)X,Y,Z, (Bounds max)X,Y,Z, (Bounds Sphere)X,Y,Z, Radius, WDD, NightFlag
 
  
Note that GTA IV does not use any unique object ID numbers. All but the last column are the same as the [[OBJS]] section.
+
ModelName, TextureName, DrawDistance, Flags, Unknown, MinX, MinY, MinZ, MaxX, MaxY, MaxZ, SphereX, SphereY, SphereZ, Radius, LOD Model, NightFlag
  
 
{|{{Prettytable}} width="100%"
 
{|{{Prettytable}} width="100%"
Line 40: Line 40:
 
!Description
 
!Description
 
|-
 
|-
|<center>ModelName</center>||name of the .wdr [[model file]], without extension (string)
+
|<center>ModelName</center>||Name of the <code>.wdr</code> ''model file'' without extension.
 +
|-
 +
|<center>TextureName</center>||name of the <code>.wtd</code> ''texture dictionary'' without extension.
 +
|-
 +
|<center>DrawDistance</center>||''Draw distance'' in ''units''.
 +
|-
 +
|<center>Flag1</center>||Object flag (see [[OBJS#Object Flags|below]]).
 +
|-
 +
|<center>Unknown</center>||Unknown integer (0 by default).
 +
|-
 +
|<center>MinX, MinY, MinZ</center>||Lower left corner of the bounding box for the object.
 +
|-
 +
|<center>MaxX, MaxY, MaxZ</center>||Upper right corner of the bounding box for the object.
 +
|-
 +
|<center>SphereX, SphereY, SphereZ</center>||Center of the bounding sphere for the object.
 +
|-
 +
|<center>Radius</center>||Radius of the bounding sphere into all dimensions.
 +
|-
 +
|<center>LOD Model</center>||Name of the <code>.[[wdd]]</code> file that contains the ''lod model'' for the defined modelname.
 +
|-
 +
|<center>NightFlag</center>||If enabled (1) the object only shows at nighttime, otherwise the object gets only rendered at daytime. Day- and nighttimes are [[hardcoded]].
 +
|}
 +
 
 +
For more information read the definition of [[OBJS#GTA_IV|Standart map files]].
 +
 
 +
== Object Flags ==
 +
 
 +
Flags are used to specify the behaviour of objects. They are signed 32-bit integer values where each bit descripes an [[wikipedia:Boolean_algebra_(logic)|boolean]] value of an special aspect.
 +
 
 +
{|{{Prettytable}} width="100%" class="collapsible"
 +
!width="120px"|Flag
 +
!width="100px"|Supported games
 +
!width="25%"|Binary
 +
!Description
 +
|-
 +
|<center>-1</center>||<center>&ndash;</center>||<center><code>1111 1111 1111 1111 1111 1111</code></center>||Enables all flags. {{ref|1}} Never used by default.
 +
|-
 +
|<center>1</center>||<center>{{Icon|3}} {{Icon|VC}} {{Icon|SA}} {{Icon|4}}</center>||<center><code>0000 0000 0000 0000 0000 0001</code></center>||Wet effect (objects appear darker).
 +
|-
 +
|<center>2</center>||<center>{{Icon|3}} {{Icon|VC}} {{Icon|SA}} {{Icon|4}}</center>||<center><code>0000 0000 0000 0000 0000 0010</code></center>||Indicates that the object gets rendered at night for objects defined in ''TOBJ''.
 +
|-
 +
|<center>4</center>||<center>{{Icon|3}} {{Icon|VC}} {{Icon|SA}} {{Icon|4}}</center>||<center><code>0000 0000 0000 0000 0000 0100</code></center>||Alpha transparency 1
 +
|-
 +
|<center>8</center>||<center>{{Icon|3}} {{Icon|VC}} {{Icon|SA}} {{Icon|4}}</center>||<center><code>0000 0000 0000 0000 0000 1000</code></center>||Alpha transparency 2
 +
|-
 +
|<center>16</center>||<center>{{Icon|3}} {{Icon|VC}} {{Icon|SA}} {{Icon|4}}</center>||<center><code>0000 0000 0000 0000 0001 0000</code></center>||Opposite to flag '''2'''
 +
|-
 +
|<center>32</center>||<center>{{Icon|3}} {{Icon|VC}} {{Icon|SA}} {{Icon|4}}</center>||<center><code>0000 0000 0000 0000 0010 0000</code></center>||Indicates an object to be used inside an interior.
 +
|-
 +
|<center>64</center>||<center>{{Icon|SA}} {{Icon|4}}</center>||<center><code>0000 0000 0000 0000 0100 0000</code></center>||Disables the [[COLL#Shadow_Mesh|shadow mesh]] to project a shadow.
 +
|-
 +
|<center>128</center>||<center>{{Icon|SA}} {{Icon|4}}</center>||<center><code>0000 0000 0000 0000 1000 0000</code></center>||Object surface will not be [[Wikipedia:Hidden_surface_determination|culled]].
 +
|-
 +
|<center>256</center>||<center>{{Icon|SA}} {{Icon|4}}</center>||<center><code>0000 0000 0000 0001 0000 0000</code></center>||Disables draw distance (Only used for [[LOD]] objects with an ''LOD'' value greater than 299).
 +
|-
 +
|<center>512</center>||<center>{{Icon|SA}} {{Icon|4}}</center>||<center><code>0000 0000 0000 0010 0000 0000</code></center>||Object is breakable (like glass &ndash; additional parameters defined inside the [[object.dat]] file, otherwise there is no effect).
 +
|-
 +
|<center>1024</center>||<center>{{Icon|SA}} {{Icon|4}}</center>||<center><code>0000 0000 0000 0100 0000 0000</code></center>||Similar to flag '''512''': object first cracks on a strong collision, then it breaks (does also require ''object.dat'' registration).
 
|-
 
|-
|<center>TextureName</center>||name of the .wtd [[texture dictionary]], without extension (string)
+
|<center>2048</center>||<center>{{Icon|SA}} {{Icon|4}}</center>||<center><code>0000 0000 0000 1000 0000 0000</code></center>||Indicates an object as an garage door (for more information see [[GRGE#Types_of_doors|GRGE]] &ndash; requires ''object.dat'' registration).
 
|-
 
|-
|<center>DrawDistance</center>||[[draw distance]] in [[unit]]s, one for each sub object (float)
+
|<center>4096</center>||<center>{{Icon|SA}}</center>||<center><code>0000 0000 0001 0000 0000 0000</code></center>||Indicates an [[RenderWare_binary_stream_file|multiclump]] object (Object switches from clump ''2'' to clump ''1'' after collision &ndash; requires ''object.dat'' registration).
 
|-
 
|-
|<center>Flag1</center>||object flag, defining special behavior
+
|<center>32768</center>||<center>{{Icon|SA}} {{Icon|4}}</center>||<center><code>0000 0000 1000 0000 0000 0000</code></center>||Uses object brightness from the current weather definition (See [[timecyc.dat]] &ndash; ''PoleShd'').
 
|-
 
|-
|<center>Flag2</center>||object flag, defining special behavior, default 0 (integer)
+
|<center>65536</center>||<center>{{Icon|SA}} {{Icon|4}}</center>||<center><code>0000 0001 0000 0000 0000 0000</code></center>||Object explodes after getting hit (requires ''object.dat'' registration).
 
|-
 
|-
|<center>Bounds Min</center>||Lower Left vertex local position of a model bounding box
+
|<center>131072</center>||<center>{{Icon|SA}}</center>||<center><code>0000 0010 0000 0000 0000 0000</code></center>||Unknown &ndash; apparently some flag for the [[SCM|Script]].
 
|-
 
|-
|<center>Bounds Max</center>||Upper Right vertex local position of a model bounding box
+
|<center>262144</center>||<center>{{Icon|SA}}</center>||<center><code>0000 0100 0000 0000 0000 0000</code></center>||Unknown &ndash; only used 1 time in [[GTA SA|San Andreas]].
 
|-
 
|-
|<center>Radius</center>||Radius dimensions of the bounding Sphere
+
|<center>1048576</center>||<center>{{Icon|SA}}</center>||<center><code>0000 1000 0000 0000 0000 0000</code></center>||Object will switch from clump ''2'' to clump ''1'' after getting sprayed by the player (graffity flag).
 
|-
 
|-
|<center>WDD</center>||the model dictionary file that contains the LOD model for the defined Modelname
+
|<center>2097152</center>||<center>{{Icon|SA}}</center>||<center><code>0001 0000 0000 0000 0000 0000</code></center>||Disables backface culling &ndash; as an result the texture will be drawed on both sides of the model (Always enabled for GTA III and [[GTA VC|Vice City]])
 
|-
 
|-
|<center>NightFlag</center>||assumed to be hardcoded time flags
+
|<center>4194304</center>||<center>{{Icon|SA}}</center>||<center><code>0010 0000 0000 0000 0000 0000</code></center>||Unknown &ndash; apparently related into physics.
 
|}
 
|}
  
 
[[Category:GTA 3]][[Category:GTA VC]]
 
[[Category:GTA 3]][[Category:GTA VC]]
 
{{N|4|SA}}
 
{{N|4|SA}}

Revision as of 13:06, 26 July 2010

TOBJ (IDE section)
Supported games:GTA III, GTA VC, GTA SA, GTA IV
Brief description:Used to define timed map objects
IDE Sections:
2DFX AMAT ANIM CARS HIER HAND MLO OBJS
PATH PEDS TANM TOBJ TREE TXDP WEAP

TOBJ is a section in the item definition file. It is used to define standart map objects with an additional ingame time range defining when the object gets rendered. It's format is similar to standart map objects.


Format

GTA III, Vice City and San Andreas

This section is incomplete. You can help by fixing and expanding it.

ID, ModelName, TextureName, ObjectCount, DrawDistance, [DrawDistance2, ...], Flags, TimeOn, TimeOff
Identifier Description
ID
Unique object ID.
ModelName
Name of the .dff model file without extension.
TextureName
Name of the .txd texture dictionary without extension.
ObjectCount
Number of clumps. 1 by default and optional for San Andreas.
DrawDistance
Draw distance in units (one for each clump).
Flags
Object flags (see below).
TimeOn, TimeOff
Activation and deactivation time in hours.

GTA IV

ModelName, TextureName, DrawDistance, Flags, Unknown, MinX, MinY, MinZ, MaxX, MaxY, MaxZ, SphereX, SphereY, SphereZ, Radius, LOD Model, NightFlag
Identifier Description
ModelName
Name of the .wdr model file without extension.
TextureName
name of the .wtd texture dictionary without extension.
DrawDistance
Draw distance in units.
Flag1
Object flag (see below).
Unknown
Unknown integer (0 by default).
MinX, MinY, MinZ
Lower left corner of the bounding box for the object.
MaxX, MaxY, MaxZ
Upper right corner of the bounding box for the object.
SphereX, SphereY, SphereZ
Center of the bounding sphere for the object.
Radius
Radius of the bounding sphere into all dimensions.
LOD Model
Name of the .wdd file that contains the lod model for the defined modelname.
NightFlag
If enabled (1) the object only shows at nighttime, otherwise the object gets only rendered at daytime. Day- and nighttimes are hardcoded.

For more information read the definition of Standart map files.

Object Flags

Flags are used to specify the behaviour of objects. They are signed 32-bit integer values where each bit descripes an boolean value of an special aspect.

Flag Supported games Binary Description
-1
1111 1111 1111 1111 1111 1111
Enables all flags. [1] Never used by default.
1
GTA III Vice City San Andreas GTA IV
0000 0000 0000 0000 0000 0001
Wet effect (objects appear darker).
2
GTA III Vice City San Andreas GTA IV
0000 0000 0000 0000 0000 0010
Indicates that the object gets rendered at night for objects defined in TOBJ.
4
GTA III Vice City San Andreas GTA IV
0000 0000 0000 0000 0000 0100
Alpha transparency 1
8
GTA III Vice City San Andreas GTA IV
0000 0000 0000 0000 0000 1000
Alpha transparency 2
16
GTA III Vice City San Andreas GTA IV
0000 0000 0000 0000 0001 0000
Opposite to flag 2
32
GTA III Vice City San Andreas GTA IV
0000 0000 0000 0000 0010 0000
Indicates an object to be used inside an interior.
64
San Andreas GTA IV
0000 0000 0000 0000 0100 0000
Disables the shadow mesh to project a shadow.
128
San Andreas GTA IV
0000 0000 0000 0000 1000 0000
Object surface will not be culled.
256
San Andreas GTA IV
0000 0000 0000 0001 0000 0000
Disables draw distance (Only used for LOD objects with an LOD value greater than 299).
512
San Andreas GTA IV
0000 0000 0000 0010 0000 0000
Object is breakable (like glass – additional parameters defined inside the object.dat file, otherwise there is no effect).
1024
San Andreas GTA IV
0000 0000 0000 0100 0000 0000
Similar to flag 512: object first cracks on a strong collision, then it breaks (does also require object.dat registration).
2048
San Andreas GTA IV
0000 0000 0000 1000 0000 0000
Indicates an object as an garage door (for more information see GRGE – requires object.dat registration).
4096
San Andreas
0000 0000 0001 0000 0000 0000
Indicates an multiclump object (Object switches from clump 2 to clump 1 after collision – requires object.dat registration).
32768
San Andreas GTA IV
0000 0000 1000 0000 0000 0000
Uses object brightness from the current weather definition (See timecyc.datPoleShd).
65536
San Andreas GTA IV
0000 0001 0000 0000 0000 0000
Object explodes after getting hit (requires object.dat registration).
131072
San Andreas
0000 0010 0000 0000 0000 0000
Unknown – apparently some flag for the Script.
262144
San Andreas
0000 0100 0000 0000 0000 0000
Unknown – only used 1 time in San Andreas.
1048576
San Andreas
0000 1000 0000 0000 0000 0000
Object will switch from clump 2 to clump 1 after getting sprayed by the player (graffity flag).
2097152
San Andreas
0001 0000 0000 0000 0000 0000
Disables backface culling – as an result the texture will be drawed on both sides of the model (Always enabled for GTA III and Vice City)
4194304
San Andreas
0010 0000 0000 0000 0000 0000
Unknown – apparently related into physics.