Difference between revisions of "Item Definition"

From GTAMods Wiki
Jump to navigation Jump to search
(OBJS)
m (Tools)
Line 212: Line 212:
 
==Tools==
 
==Tools==
 
* {{GTAG|4817|IDEditor}} - By {{U|Xmen}}
 
* {{GTAG|4817|IDEditor}} - By {{U|Xmen}}
 +
* {{GTAF|402942|(IV) Ide-IO in GTA-IV script centre }} - by {{U|Gforce}}
 
* [http://www.aschratt.com/fileview.php?file=1004 FlagValue Calculator] - By {{U|Aschratt}} - Calculates all Flagvalues (even those unknown)
 
* [http://www.aschratt.com/fileview.php?file=1004 FlagValue Calculator] - By {{U|Aschratt}} - Calculates all Flagvalues (even those unknown)
  

Revision as of 02:04, 22 July 2009

40px-Ambox rewrite orange.svg.png This article may need to be rewritten.
Please help improve this article. The discussion page may contain suggestions.

Item definition files, known by the extension .ide, are usually used to assign a model and texture file to a unique object ID, along with many parameters depending on the section. These files are in human readable text format, and allow the # character to comment lines out. IDE files can easily be opened and edited using any text-editing program like Notepad.

Structure

The .ide files are split up into many sections. How many of them you use in your file is optional, they can even be empty. Each section starts with a section identifier and ends with the keyword "end", both in a single line.

Example:

objs
...
end

OBJS

Static Map Objects, used to define standard map objects.

GTA III, VC and SA format

ID, ModelName, TextureName, ObjectCount, DrawDist, [DrawDist2, ...], Flags
ID
unique object ID (integer)
ModelName
name of the .dff model file, without extension (string)
TextureName
name of the .txd texture dictionary, without extension (string)
ObjectCount
amount of sub objects, e.g. damaged parts, usually 1 (integer) - optional for SA, default 1
DrawDist
draw distance in units, one for each sub object (float)
Flags
object flags, defining special behavior, default 0 (integer)

GTA IV format

ModelName, TextureName, DrawDistance, Flag1, Flag2, (Bounds min)X, Y, Z, (Bounds max)X, Y, Z, (Bounds Rotation)X, Y, Z, W, WDD

Note that GTA IV does not use any unique object ID numbers

ModelName
name of the .wdr model file, without extension (string)
TextureName
name of the .wtd texture dictionary, without extension (string)
DrawDistance
draw distance in units, one for each sub object (float)
Flag1
object flag, defining special behavior
Flag2
object flag, defining special behavior, default 0 (integer)
Bounds Min
Lower Left vertex of a model bounding box
Bounds Max
Upper Right vertex of a model bounding box
Bounds Rotation
Rotation of the bounding box in Quarternion values
WDD
the model dictionary file that contains the LOD model for the defined Modelname

Object Flags

Object Flags in SA are text formatted UInt32-Values (Like nearly all other Flags). To understand them better you have to calculate them to binary numbers. Then You will get the Bitsets of the Flags. 1 means Enabled, 0 disabled.

List of all known flags for San Andreas:

0000000000000000000000000000001 = 1 - Wet Effect
0000000000000000000000000000010 = 2 - Time Object Night Flag
0000000000000000000000000000100 = 4 - ALPHA Transparency 1
0000000000000000000000000001000 = 8 - ALPHA Transparency 2 *
0000000000000000000000000010000 = 16 - Time Object Day Flag
0000000000000000000000000100000 = 32 - Interior-Object **
0000000000000000000000001000000 = 64 - Disable Shadow Mesh (?)
0000000000000000000000010000000 = 128 - Disables Collision Mesh (?)
0000000000000000000000100000000 = 256 - Disable Draw Distance (?)
0000000000000000000001000000000 = 512 - Breakable Glass **
0000000000000000000010000000000 = 1024 - Breakable Glass with crack **
0000000000000000000100000000000 = 2048 - Garage door ** 
0000000000000000001000000000000 = 4096 - 2-Clump-Object ** (Switches from Clump 2 to 1 after Collision)
0000000000000000010000000000000 = 8192 - Small Vegetation. Object sways in strong wind  (?)
0000000000000000100000000000000 = 16384 - Standard Vegetation **  (Palms in Hotels, etc.) (?)
0000000000000001000000000000000 = 32768 - Use timecycle PoleShadow flag
0000000000000010000000000000000 = 65536 - Explosive-Flag **
0000000000000100000000000000000 = 131072 - UNKNOWN (Seems to be an SCM Flag) (?)
0000000000001000000000000000000 = 262144 - UNKNOWN (1 Object in Jizzy`s Club) (?)
0000000000010000000000000000000 = 524288 - UNKNOWN (?)
0000000000100000000000000000000 = 1048576 - Graffiti Flag 
0000000001000000000000000000000 = 2097152 - No backface culling 
0000000010000000000000000000000 = 4194304 - UNKNOWN (Parts of a statue in Atrium) (?) 
...
1000000000000000000000000000000 = 1073741824 - Unknown

* If there's no Interior the Texture behind the object changes to black (=> IPL | Interior-value)
** Objects needs to be activated using Object.dat
(?) Not 100 % known
... All Flags in a special interval are unknown

To connect different flags you have to add the bit which belongs to the flag. Its the same as adding one value to another..

01 + 10 = 11
1  +  2 = 3

TOBJ

Timed Map Objects, used to define map objects which are only visible during a special time of the day.

GTA III, VC and SA format:

ID, ModelName, TextureName, ObjectCount, DrawDist, [DrawDist2, ...], Flags, TimeOn, TimeOff
ID, ModelName, TextureName, ObjectCount, DrawDist, Flags
same as for the OBJS section
TimeOn
activation time in hours (integer)
TimeOff
deactivation time in hours (integer)

GTA IV format

ModelName, TextureName, DrawDist, Flag1, Flag2, (Bounds min)X,Y,Z, (Bounds max)X,Y,Z, (Bounds Rotation)X,Y,Z,W, WDD, NightFlag
ModelName, TextureName, DrawDistance, Flags, Bounds min, Bounds max, Bounds Rotation, WDD
same as for the OBJS section
NightFlag
assumed to be hardcoded time flags

ANIM

Animated Map Objects, used to define objects whose sub objects are animated. Note: There must be animation frames for each sub object, also the collision model remains static - no solid animations.

GTA SA only:

ID, ModelName, TextureName, AnimName, DrawDist, Flags
ID, ModelName, TextureName, DrawDist, Flags
same as for the OBJS section
AnimName
name of the animation archive, without extension (string)

GTA IV format

ModelName, TextureName, Wad, DrawDist, Flag1, Flag2, (Bounds min)X,Y,Z, (Bounds max)X,Y,Z, (Bounds Rotation)X,Y,Z,W, WDD
ModelName, TextureName, DrawDistance, Flags, Bounds min, Bounds max, Bounds Rotation, WDD
same as for the OBJS section
Wad
name of the (.wad) animation archive, without extension (string)

PEDS

GTA III and VC format:

ID, ModelName, TextureName, Threat, Behavior, AnimationType, ?, StartAnimation?, ?, ?
Threat
running over and shooting other peds
Behavior
angry/hateful/thrilled
AnimationType
being drunk like walk

WEAP

GTA III and VC format:

ID, ModelName, TextureName, Animation, ?, DrawDistance, ?
Animation
From ped.ifp, animation used to wield and shoot the weapon

CARS

GTA III and VC format:

ID, ModelName, TextureName, Type, HandlingID, GXTEntry, PedDrivingAnimation, Class, Frequency, Level, 
SpecificType, WheelID, WheelSize
HandlingID
From handling.cfg
PedDrivingAnimation
From ped.ifp, type of animation to enter, exit, drive, and drive-by from a vehicle
WheelID
not available for type "boat"
WheelSize
not available for type "boat"

SA Format comming soon

HIER

SA Format only

This is (e.g.) used in default.ide in the 'data\'-folder Normal structure is like this:

 ID, model, texture, null, float (normally 2000.00)

The meaning of these lines isn't known yet, but it seems to be a kind of bodyparts for the player.

TXDP

Texture Archive Parent

SA and GTA 4 format

TextureName, TextureParentName

Both parameters are names of texture archives (.txd). The second archive (the "parent") virtually extends the first one. Practically, the game looks up a texture in the primary archive, and if it's not there and a parent txd has been assigned, it checks for the texture in the parent archive. This way shared archives can be created, which contain often used textures, without the need to create duplicates or split up a model just for that purpose.

2DFX

Particle and Environment Effects

GTA III and VC format

ID, X, Y, Z, R, G, B, U, Type, ...
ID
ID of the object it's assigned to (integer)
X, Y, Z
position of the effect, relative to the object (3 floats)
R, G, B
color of the effect, if available (3 integers, 0 - 255)
U
unknown color component, always 200 (integer)
Type
specifies the type of effect

Effect #0: Light

Coming soon.

Effect #1: ...

Coming soon.

Please note that the 2dfx Section is moved to the DFF Files by using R*'s custom section IDs in SA!

PATH

Ped and Car Paths, defines paths relative to the objects. Only used in GTA III, quite complicated format and hardly usable without a editing program (such as Ked).

TREE

GTA4 only

TANM

GTA4 only

MLO

GTA4 only

AMAT

GTA4 only

Modelname, Flag1, Flag2

procobj.ide

OBJS

GTA IV format

ModelName, TextureName, DrawDistance, Flag1, Flag2, (Bounds min)X, Y, Z, (Bounds max)X, Y, Z, (Bounds Rotation)X, Y, Z, W, WDD
ModelName
name of the .wdr model file, without extension (string)
TextureName
set to 'null' by default in procobj.ide
DrawDistance
draw distance in units, one for each sub object (float)
Flag1
object flag, defining special behavior
Flag2
object flag, defining special behavior, default 0 (integer)
Bounds Min
Lower Left vertex of a model bounding box
Bounds Max
Upper Right vertex of a model bounding box
Bounds Rotation
Rotation of the bounding box in Quarternion values
WDD
set to 'null' by default in procobj.ide

Tools

External Links