Item Definition

Revision as of 14:08, 14 July 2018 by Spaceeinstein (talk | contribs) (corrections to overview)
Item Definition
IDE Sections:
2DFX AMAT ANIM CARS HIER MLO OBJS
PATH PEDS TANM TOBJ TREE TXDP WEAP

Item definition files, usually identified by the file extension .ide, are used to declare many different aspects for the map system or to specify special behavior rules for one of the aspects. They are stored in plain text format, so that they can be opened by any text editing program (like Notepad), but there are also some tools to simplify editing.

Overview

The item definition files are split up into several sections. There is no order on how you arrange the sections and sections do not need to appear in the file.

Format and syntax description

Line comments are indicated by the character # (number sign) and empty lines are allowed. They can be placed anywhere in the file. The game reads up to a maximum of 256 characters for each line and ignores the rest if the line is longer. Each section starts with a section identifier (usually four characters long, e.g. objs, tobj, etc.) indicating how the content of the section gets interpreted by the game. The identifier is followed by the definition entries. Each entry takes one line and every line follows a specific format which are described in the articles handling the sections in detail (see below). The end of any section is indicated by the terminating string end. Both the section identifier and terminating string are case sensitive. Lines within sections are always formatted in the same way differing only in the number of parameters describing the semantical content of the line. Data are usually separated by the character , (comma) but can be separated by  (space). Tabs and spaces anywhere in the beginning of the line, between data, or after the data are omitted by the game and can be used to improve readability for human eyes. The games' parser uses an invariant culture to parse numerical values and strings, which means strings are ASCII encrypted and the decimal separator is . (period).

Example

# line comment
objs
# default style in objs section
200, ind_land101, pjs, 1, 127, 0
# valid style
	    200 ind_land101 pjs 1 127 0
end

Format

The following table contains basic information about all known sections. For additional information read the articles itself.

Identifier Supported games Description
OBJS
       
Most important section: defines objects for the map.
Those objects get placed inside the INST section of the item placement files.
TOBJ
       
Basicly does the same as OBJS, but it has two additional parameters defining the ingame time range the object can get rendered.
Those objects get placed inside the INST section of the item placement files.
ANIM
   
Basicly does the same as OBJS, but it has one additional parameter identicating an IFP or WAD animation file to assign an animation to the object.
Those objects get placed inside the INST section of the item placement files.
PEDS
       
Used to define "pedestrians" (Random NPC's).
WEAP
     
Used to define weapons.
CARS
       
Used to define vehicles.
HIER
       
Partly unknown. Used to define objects for interactions with actors for example in cutscenes.
TXDP
   
Used to virtually extend texture dictionaries.
2DFX
   
Used to add particles to objects, defined in one of the sections above (except TXDP).
PATH
 
Used to create waypoints for random NPC spawns (Paths).
TREE
 
TANM
 
Used to combine TOBJ and ANIM sections.
Those objects get placed inside the INST section of the item placement files.
MLO
 
Used to create interiors. This section does also contain information about the entrace markers (previous ENEX connections) and dimensions of the interior which influences certain aspects, like the weather, for example. All objects are placed relative to an offset placed using MLO+ inside the IPL or WPL file.
AMAT
 

IDE Flags

Flags are used in order to specify the behaviour of objects. They are interpreted as signed 32-bit integer values where each bit describes a boolean value of a different aspect. The following table shows the standard flags used for objects defined in OBJS, TOBJ and ANIM section.

Flag Supported games Binary Description
-1
1111 1111 1111 1111 1111 1111
Enables all flags. [1] Never used by default.
1
 
0000 0000 0000 0000 0000 0001
Wet effect (objects appear darker).
2
 
0000 0000 0000 0000 0000 0010
Indicates that the object gets rendered at night for objects defined in TOBJ.
4
 
0000 0000 0000 0000 0000 0100
Alpha transparency 1
8
 
0000 0000 0000 0000 0000 1000
Alpha transparency 2
16
 
0000 0000 0000 0000 0001 0000
Opposite to flag 2
32
 
0000 0000 0000 0000 0010 0000
Indicates an object to be used inside an interior.
64
 
0000 0000 0000 0000 0100 0000
Disables the shadow mesh to project a shadow.
128
 
0000 0000 0000 0000 1000 0000
Object surface will not be culled.
256
 
0000 0000 0000 0001 0000 0000
Disables draw distance (Only used for LOD objects with an LOD value greater than 299).
512
 
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
 
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
   
0000 0000 0000 1000 0000 0000
Indicates an object as an garage door (for more information see GRGE – requires object.dat registration).
4096
   
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
   
0000 0000 1000 0000 0000 0000
Uses object brightness from the current weather definition (See timecyc.datPoleShd).
65536
   
0000 0001 0000 0000 0000 0000
Object explodes after getting hit (requires object.dat registration).
131072
 
0000 0010 0000 0000 0000 0000
Unknown – apparently some flag for the Script.
262144
 
0000 0100 0000 0000 0000 0000
Unknown – only used 1 time in San Andreas.
1048576
 
0000 1000 0000 0000 0000 0000
Object will switch from clump 2 to clump 1 after getting sprayed by the player (graffity flag).
2097152
 
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
 
0010 0000 0000 0000 0000 0000
Unknown – apparently related into physics.
edit

For flags defining different aspects of different definitions read the articles about their sections.

Difference between GTA III and GTA IV engines

Grand Theft Auto IV not only uses different formats to the previous games, it also does not use IDs to identify objects anymore. While Grand Theft Auto III era games use an ID as an index inside an array of definitions, GTA IV uses the hashes of the model name as a key inside a hash table. For more information about this see Map System.

Tools

See also

References

External links

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.

  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.