Carrec
The carrec.img
file stores a set of R3 files (files with an extension .rrr
). These files contain path information used by the mission script for San Andreas and GTA 4. The paths are predefined and look unnatural during gameplay because the movement of the vehicle is very rigid. The paths ignore many stuff in the game including gravity and obstacles.
Original San Andreas installation has 426 R3 paths. Maximum number of these paths is 475.
Contents
The RRR file structure
An R3 file (.rrr
) contains no header, only a binary data, being a set of structures of 32 bytes in length each, described separate path points. The data in each checkpoint structure goes as the following:
Offset | Size (in bytes) | Type | Description | Notes |
---|---|---|---|---|
00 | 04 | INT32 | time | Timekey in milliseconds |
04 | 02 | INT16 | velocity in direction X | Divide by 16383.5 to get floating point values |
06 | 02 | INT16 | velocity in direction Y | Divide by 16383.5 to get floating point values |
08 | 02 | INT16 | velocity in direction Z | Divide by 16383.5 to get floating point values |
10 | 01 | INT8 | XYZ.right.x | Divide by 127.0 to get floating point values |
11 | 01 | INT8 | XYZ.right.y | Divide by 127.0 to get floating point values |
12 | 01 | INT8 | XYZ.right.z | Divide by 127.0 to get floating point values |
13 | 01 | INT8 | XYZ.top.x | Divide by 127.0 to get floating point values |
14 | 01 | INT8 | XYZ.top.y | Divide by 127.0 to get floating point values |
15 | 01 | INT8 | XYZ.top.z | Divide by 127.0 to get floating point values |
16 | 01 | INT8 | Steering Angle | Divide by 20.0 to get floating point values |
17 | 01 | INT8 | Gas Pedal Power | Divide by 100.0 to get floating point values |
18 | 01 | INT8 | Break Pedal Power | Divide by 100.0 to get floating point values |
19 | 01 | INT8 | Handbrake used flag | Bool: 1 = true, 0 = false |
20 | 04 | FLOAT | XYZ.pos.x | Standart float |
24 | 04 | FLOAT | XYZ.pos.y | Standart float |
28 | 04 | FLOAT | XYZ.pos.z | Standart float |
When the vehicle is moving along the path, its XYZ structure is filled with the information from the proper fields of checkpoint data.
Mission Script
San Andreas
You can use the following opcodes to do stuff to your paths.
07C0 - Loads the path
07C1 - Checks if the path has been loaded
0873 - Releases the path from memory
05EB - Assigns a vehicle to the path
0705 - Assigns a vehicle to the path
085E - Assigns a vehicle to a looped path
05EC - Releases the vehicle from a path
05ED - Freezes the vehicle along the path
05EE - Unfreezes the vehicle along the path
06FD - Sets the speed multiplier of the vehicle along the path
0706 - Advances the vehicle along the path
060E - Checks if a path is assigned to the vehicle
If you load a non-existant path to a vehicle, path 1 will be loaded instead.
GTA 4
Use the following native functions:
REQUEST_CAR_RECORDING
HAS_CAR_RECORDING_BEEN_LOADED
REMOVE_CAR_RECORDING
FIND_POSITION_IN_RECORDING
FIND_TIME_POSITION_IN_RECORDING
GET_POSITION_OF_CAR_RECORDING_AT_TIME
GET_TOTAL_DURATION_OF_CAR_RECORDING
SET_RECORDING_TO_POINT_NEAREST_TO_COORS
SYNCH_RECORDING_WITH_WATER
List of paths in San Andreas
The following is a list of paths defined in the carrec.img
file.
ID | Description |
---|---|
1 | Driving School The 360 |
2 | Driving School The 180 |
3 | Unused Driving School unknown test |
4 | Driving School Whip and Terminate |
5 | Driving School Pop and Control |
7 | Driving School Burn and Lap |
9 | Driving School Cone Coil |
10 | Driving School The '90' |
11 | Driving School Wheelie Weave |
13 | Driving School Spin and Go |
14 | Driving School P. I. T. Maneuver |
15 | Driving School Alley Oop |
16 | Driving School City Slicking |
21 | Unused Test Drive Cesar's Savanna, most likely used in beta version of game |
22 | House Party Sweet's Greenwod |
23 | House Party GSF's Voodoo |
24 | Unused path, could have been used in Big Smoke, most likely used in beta version of game |
25 | The Da Nang Thang Triad's Maverick |
27 | Pier 69 enemy's Pony |
28 | Pier 69 Toreno's helicopter |
30 | OG Loc Freddy's PCJ 600 path 1 (beginning) |
31 | OG Loc Freddy's PCJ 600 path 2 |
32 | OG Loc Freddy's PCJ 600 path 3 |
33 | OG Loc Freddy's PCJ 600 path 4 |
34 | OG Loc Freddy's PCJ 600 path 5 |
35 | OG Loc Freddy's PCJ 600 path 6 |
36 | OG Loc Freddy's PCJ 600 path 7 |
37 | OG Loc Freddy's PCJ 600 path 8 |
38 | OG Loc Freddy's PCJ 600 path 9 |
39 | OG Loc Freddy's PCJ 600 path 10 |
40 | OG Loc Freddy's PCJ 600 path 11 (end) |
41 | unused Los Santos to San Fierro AT 400, most likely used in beta version of game |
42 | Los Santos to San Fierro AT 400 |
43 | Las Venturas to San Fierro AT 400 |
44 | San Fierro to Las Venturas AT 400 |
46 | Los Santos to Las Venturas AT 400 |
48 | Las Venturas to Los Santos AT 400 |
49 | San Fierro to Los Santos AT 400 |
50 | OG Loc highway NPC 1 |
51 | OG Loc highway NPC 2 |
52 | OG Loc highway NPC 3 |
53 | OG Loc highway NPC 4 |
54 | OG Loc highway NPC 5 |
55 | OG Loc highway NPC 6 |
56 | OG Loc highway NPC 7 |
57 | OG Loc highway NPC 8 |
58 | OG Loc highway NPC 9 |
59 | OG Loc highway NPC 10 |
60 | OG Loc highway NPC 11 |
65 | Test Drive Cesar's Elegy path enter alley |
66 | Test Drive cop 1 path enter alley |
67 | Test Drive cop 2 path enter alley |
70 | Test Drive Tram path 1 |
71 | Test Drive outside Otto's Autos NPC 1 |
72 | Test Drive outside Otto's Autos NPC 2 |
73 | Test Drive outside Otto's Autos NPC 3 |
74 | Test Drive outside Otto's Autos NPC 4 |
75 | Test Drive outside Otto's Autos NPC 5 |
76 | Test Drive outside Otto's Autos NPC 6 |
77 | Test Drive Tram path 2 |
78 | Test Drive Tram path 3 |
79 | Test Drive Cesar's Elegy path 1 |
80 | Test Drive Tram path 3 |
81 | Test Drive Cesar's Elegy path 2 |
82 | Unused Test Drive path |
More to come soon. The last ID is 834.
This section is incomplete. You can help by fixing and expanding it.
External Links
- R3D v0.2 - the .RRR-files editor by Sanchez (SA and GTA 4 supported).
- Carrec.cs - a CLEO-script to generate an .rrr file directly in the game, made by Seemann
- GTAForums: The R3 format explanation
Grand Theft Auto IV | |
---|---|
File Formats | .dat • .gxt • .ide • .img • .ipl • .nod • .sco • .rpf • .rrr • .wad • .wbd/.wbn • .wdd • .wdr • .wft • .whm • .wpl • .wtd |
Documentation | Audio • Bink Video • Cryptography • Cutscenes • GXT Text • Image listing • Keycodes • Map Listing • Native functions • Paths • Radar Blips • Radio Stations • Saves • Scenarios • VTable • Weapons |
Tools | ASI Loader • ENBSeries • G-Texture • GIMS IV • Ingame WPL Editor • IV Needle • OpenIV • SparkIV • XLiveLess • WPL Manager • X Mod Installer Alice • C++ Script Hook • .NET Script Hook • Scocl |
Tutorials | Importing Textures with OpenIV • Importing Textures with SparkIV |
Modifications | GTA Connected • Gostown IV • Four Multiplayer • IV Multiplayer • CitizenMP:IV Reloaded |
Useful links | Community portal • Discussion forums • Modding forums • Mods on GTAGarage.com |