2DFX

From GTAModding
Jump to: navigation, search
This article describes the usage of the 2dfx section inside a plain text IDE. For the RW Section of models see 2d Effect (RW Section), for the GTA IV IPL section see 2DFX (IPL Section).
2DFX (IDE section)
Supported games:GTA III Vice City GTA IV
Brief description:Used to place 2D effects and ped behaviors on objects
IDE Sections:
2DFX AMAT ANIM CARS HIER HAND MLO OBJS
PATH PEDS TANM TOBJ TREE TXDP WEAP

2DFX is a section in the item definition file in GTA III, Vice City, and GTA IV. It is used to place 2D effects (like lights and particles) and ped behaviors on objects. This section is somewhat unique compared to other sections because it needs to be attached to an existing object rather than defining itself. If too many effects are loaded or drawn in the game, some of the effects will load in and out or won't appear at all.

GTA III and Vice City

2dfx
# type 0: lights (III/VC)
Id, X, Y, Z, R, G, B, unknown, 2DFXType, "Corona", "Shadow", Distance, OuterRange, Size, InnerRange, ShadowIntensity, Flash, Wet, Flare, Flags
# type 1: particles (III/VC)
Id, X, Y, Z, R, G, B, unknown, 2DFXType, Particle, StrengthX, StrengthY, StrengthZ, Scale
# type 2 (III/VC)
Id, X, Y, Z, R, G, B, unknown, 2DFXType, unknown, unk1, unk2, unk3, unknown
# type 3: peds (VC)
Id, X, Y, Z, R, G, B, unknown, 2DFXType, Behavior, unk1, unk2, unk3, RotX, RotY, RotZ
# type 4: sun reflections (VC)
Id, X, Y, Z, R, G, B, unknown, 2DFXType
end

Type 0: Lights

This can create a complex light source on an object. If the object has a sub object, the light will disappear when the main object changes into the sub object (like when lampposts are knocked).

GTA III Vice City Identifier Type Description
A Id integer associated to existing object ID defined in OBJS or TOBJ section
B,C,D X, Y, Z float[3] X, Y, and Z coordinates relative to the center of the object
E,F,G R, G, B integer[3] color of the light and everything associated with it in RGB format, also affects the intensity of the light so that darker the color the dimmer the light (meaning black (0,0,0) will yield a light so dim that it's not visible)
H unknown integer usually 0 or 200
I 2DFXType integer always 0 for lights
J Corona string corona texture associated to the light, texture defined in particle.txd, usually "coronastar" for lights
K Shadow string light texture that is cast on the ground, texture defined in particle.txd, usually "shad_exp" for lights
L Distance float view distance of the light, is limited by the draw distance of the host object
M OuterRange float the range the light can cast on objects, cars, and peds
N Size float the size of the corona, can be a float or integer, size 0 means no visible corona but effect of light still visible
O InnerRange float the range the light can cast on the ground (shadow)
P ShadowIntensity integer shadow intensity (0 - 255), usually 40
Q Flash integer sets the type of flashing (see below)
R Wet integer sets the particle to be "reflective" on wet grounds, will only work if the ground around the light is set to wet when raining
0 - not reflective when wet, 1 - reflective when wet
S Flare integer sets the particle to create a lens flare on the screen, similar to what the sun does
0 - no lens flare, 1 - yellow lens flare, 2 - white lens flare
T Flags integer bit 0 - disable z-test for corona, bits 1-2 - fog (dust) type

Types of Flashes

0 constantly lit all time
1 constantly lit at night
2 occasional flicker all time
3 occasional flicker at night
4 ~1 second flashes
5 ~1 second flashes at night
6 ~2 seconds flashes
7 ~2 seconds flashes at night
8 ~3 seconds flashes
9 ~3 seconds flashes at night
10 random flicker
11 random flicker at night
12 hardcoded traffic lights properties

Type 12 is involved in hardcoded properties of traffic lights. It is mainly used to position the lights on the traffic light. A traffic light without a 2DFX entry will crash the game when the traffic light is loading.

Type 1: Particles

This can create simple particles on an object

GTA III Vice City Identifier Type Description
A Id integer associated to existing object ID defined in OBJS or TOBJ section
B,C,D X, Y, Z float[3] X, Y, and Z coordinates relative to the center of the object
E,F,G R, G, B integer[3] useless values
H unknown integer usually 63 or 200
I 2DFXType integer always 1 for particles
J Particle integer particle type (see below)
K,L,M StrengthX, StrengthY, StrengthZ float[3] X, Y, and Z strength representing the direction and length of movement of the particle, see opcode 039D for more information
N Scale float scale of the particle

Types of Particles

Ordered from 6 to 0 from left to right, all size is 1 with Tommy at the bottom for comparison
GTA III Vice City Name Description
0 POBJECT_PAVEMENT_STEAM small white smoke
1 POBJECT_WALL_STEAM small white smoke
2 POBJECT_DRY_ICE larger white smoke
3 POBJECT_SMALL_FIRE fire (start new game to see)
4 POBJECT_DARK_SMOKE black smoke
- 5 POBJECT_WATER_FOUNTAIN_VERT water fountain (will spray water droplets on the screen)
- 6 POBJECT_WATER_FOUNTAIN_HORIZ water spray (will spray water droplets on the screen)

Type 2

This causes peds to investigate interesting spots.[1] This type was never used in Vice City but it can be used. See here for a map of all the locations in GTA III.

GTA III Vice City Identifier Type Description
A Id integer
B,C,D X, Y, Z float[3]
E,F,G R, G, B integer[3]
H unknown integer usually 63 or 200
I 2DFXType integer always 2
J unknown integer
K,L,M unk1, unk2, unk3 float[3]
N unknown integer

Type 3: Peds

This can make a ped have simple behaviors around the object.

Vice City Identifier Type Description
A Id integer associated to existing object ID defined in OBJS or TOBJ section
B,C,D X, Y, Z float[3] X, Y, and Z coordinates relative to the center of the object
E,F,G R, G, B integer[3] useless values
H unknown integer usually 0 or 200
I 2DFXType integer always 3 for peds
J Behavior integer behavior type (see below)
K,L,M unk1, unk2, unk3 float[3] unknown, useless values?
N,O,P RotX, RotY, RotZ float[3] rotation of ped when animation is playing

Types of Behaviors

0 walks to the coordinates to use an ATM then walks away
1 walks to the coordinates to sit down for a while then stand back up and walks away
2 walks to the coordinates to wait for a bus; additional peds will line up behind each other
3 walks to the coordinates, stands for a very short while, then leave (like window shopping)
4 runs to shelter from rain,[2] see here for a map of all the locations

Type 4: Sun Reflections

This can create a sun "reflection" exactly and behaving like the ones seen on cars.

Vice City Identifier Type Description
A Id integer associated to existing object ID defined in OBJS or TOBJ section
B,C,D X, Y, Z float[3] X, Y, and Z coordinates relative to the center of the object
E,F,G R, G, B integer[3] useless values
H unknown integer usually 120
I 2DFXType integer always 4 for sun reflections

GTA San Andreas

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

GTA IV

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

GTA IV 2DFX Category doesn't have all Types description. More description about 2dfx types will be added later.

Type 0: Lights

Type Lights ignore by the game. GTA IV using light in .wdr/wft models

Type 1: Particles

GTA IV Identifier Type Description
A Id string associated to existing object ID defined in OBJS or TOBJ section
B,C,D X, Y, Z float[3] X, Y, and Z coordinates relative to the center of the object
E Type integer always 1
F,G,H,I RX, RY, RZ, RW float[4] Rotation in quaternion
J Name string particle name, defined in common\data\effects\
K integer stages of destruction? (between 0 and 4)
L integer  ?
M Size float size of particle
N Draw distance integer draw distance
O integer  ? (between 0 and 5)
P,Q,R Color integer[3] RGB color when applicable

Type 2: Explosion

GTA IV Identifier Type Description
A Id string associated to existing object ID defined in OBJS or TOBJ section
B,C,D X, Y, Z float[3] X, Y, and Z coordinates relative to the center of the object
E Type integer always 2
F,G,H,I RX, RY, RZ, RW float[4] rotation in quaternion
J integer
K integer
L integer
M integer

Type 10: Escalator

GTA SA Using Escalator attribute in .dff models, GTA IV has the Escalator Attribute too, but all parameters are unknown and possible section maybe call the game crash.

Type 12: Proc Object

Type 13: WorldPoint

Type 14: Ladder

GTA IV Identifier Type Description
A Name string Model name, who using Ladder Section
B,C,D X, Y, Z float[3] X, Y, and Z coordinates
E 2DFX Type Integer This is 2DFX Type. Always use the value 14 for Ladder
F,G,H,I RX, RY, RZ, RW float[4] Rotation in quaternion
J,K,L StartX,StartY,StartZ float[3] Start Ladder Position (When player start to climb)
M,N,O EndX,EndY,EndZ float[3] End Ladder Position (When player finished to climb)
P,Q,R ClimbDirectionX, ClimbDirectionY, ClimbDirectionZ float[3] Climb Direction Position
S Flag Integer Unknown Flag, Always(?) using value 1

Type 15: Audio

Type 17: SpawnPoint

GTA IV Identifier Type Description
A Id string associated to existing object ID defined in OBJS or TOBJ section
B,C,D X, Y, Z float[3] X, Y, and Z coordinates relative to the center of the object
E Type integer Always 17
F,G,H,I RX, RY, RZ, RW float[4] Rotation in quaternion
J,K,L,M integer[4] Flags

Type 18: LightShaft

Type 19: ScrollBar

Type 21: SwayableAttr

Type 22: BouyancyAttr

Type 23: WalkDontWalkAttr

Statistics

Total number of 2DFX entries in:

GTA III: 927 (max 2000)
Type 0: 859
Type 1: 53
Type 2: 15
Vice City: 1069 (max 1210)
Type 0: 834
Type 1: 63
Type 2: 0
Type 3: 162
Type 4: 10
GTA IV: 17043
Type 0: 13831
Type 1: 2385
Type 2: 23
Type 12: 60
Type 14: 103
Type 15: 246
Type 17: 117
Type 18: 204
Type 19: 34
Type 21: 11
Type 22: 10
Type 23: 19

References

  1. ^ Video demonstration of type 2, by Nick007J
  2. ^ Video demonstration of type 3, behavior 4, by Nick007J