Memory Addresses (VC)
Contents
- 1 Cheats
- 2 Taxi
- 3 Display
- 4 Mp3 player
- 5 Loading screen
- 6 Mouse
- 7 Menu
- 8 Stats
- 9 Garages
- 10 CBrightLight
- 11 CVehicleModelInfo
- 12 CEntity
- 13 CPhysical
- 14 CPed
- 15 CVehicle
- 16 CMatrix
- 17 CVector
- 18 CPickup
- 19 CObject
- 20 Police
- 21 Car Attributes
- 22 Miscellaneous
- 23 Arrays
- 24 Constructed arrays
- 25 See also
- 26 References
- 27 External links
Cheats
- 0x4ABF4C - [1 byte] - YOUWONTTAKEMEALIVE set wanted level
- 0x4ABFC4 - [1 byte] - LEAVEMEALONE set wanted level
- 0x4AC009 - [1 byte] - APLEASANTDAY set weather
- 0x4AC04E - [1 byte] - ALOVELYDAY set weather
- 0x4AC099 - [1 byte] - ABITDRIEG set weather
- 0x4AC0DE - [1 byte] - CATSANDDOGS set weather
- 0x4AC129 - [1 byte] - CANTSEEATHING set weather
- 0x4AC14B - [4 bytes] - PANZER Rhino model
- 0x4AC946 - [4 bytes] - TRAVELINSTYLE Bloodring A model
- 0x4AC976 - [4 bytes] - THELASTRIDE Romero's Hearse model
- 0x4AC9A6 - [4 bytes] - ROCKANDROLLCAR Love Fist model
- 0x4AC9D6 - [4 bytes] - RUBBISHCAR Trashmaster model
- 0x4ACA06 - [4 bytes] - GETTHEREFAST Sabre Turbo model
- 0x4ACA36 - [4 bytes] - BETTERTHANWALKING Caddy model
- 0x4ACDD6 - [4 bytes] - GETTHEREQUICKLY Bloodring B model
- 0x4ACE06 - [4 bytes] - GETTHEREVERYFASTINDEED Hotring A model
- 0x4ACE36 - [4 bytes] - GETTHEREAMAZINGLYFAST Hotring B model
- 0x4AEAEF - [4 bytes] - NUTTERTOOLS Chainsaw model
- +0xE for each additional weapon (.357, S.P.A.S. Shotgun, MP, M4, .308 Sniper, Minigun, Minigun component)
- 0x4AEB77 - [1 byte] - NUTTERTOOLS Chainsaw weapon number (NOTE: Model needs to be loaded first)
- +0x12 for each additional weapon (.357, S.P.A.S. Shotgun, MP)
- 0x4AEBD4 - [1 byte] - NUTTERTOOLS M4 weapon number (NOTE: Model needs to be loaded first)
- 0x4AEBE6 - [1 byte] - NUTTERTOOLS .308 Sniper weapon number (NOTE: Model needs to be loaded first)
- 0x4AEBFB - [1 byte] - NUTTERTOOLS Minigun weapon number (NOTE: Model needs to be loaded first)
- 0x4AEC8F - [4 bytes] - PROFESSIONALTOOLS Katana model
- +0xE for each additional weapon (Grenade, Detonator Grenade, .357, Stubby Shotgun, Mac, M4, .308 Sniper, Rocket Launcher)
- 0x4AED17 - [1 byte] - PROFESSIONALTOOLS Katana weapon number (NOTE: Model needs to be loaded first)
- +0x12 for each additional weapon (Detonator Grenade, .357, Stubby Shotgun, Mac)
- 0x4AED74 - [1 byte] - PROFESSIONALTOOLS M4 weapon number (NOTE: Model needs to be loaded first)
- 0x4AED86 - [1 byte] - PROFESSIONALTOOLS .308 Sniper weapon number (NOTE: Model needs to be loaded first)
- 0x4AED98 - [1 byte] - PROFESSIONALTOOLS Rocket Launcher weapon number (NOTE: Model needs to be loaded first)
- 0x4AEE1F - [4 bytes] - THUGSTOOLS Brass Knuckles model
- +0xE for each additional weapon (Bat, Molotov Cocktail, Pistol, Chrome Shotgun, Tec 9, Kruger, Sniper Rifle, Flame Thrower)
- 0x4AEEA7 - [1 byte] - THUGSTOOLS Brass Knuckles weapon number (NOTE: Model needs to be loaded first)
- +0x12 for each additional weapon (Bat, Molotov Cocktail, Pistol, Chrome Shotgun)
- 0x4AEF04 - [1 byte] - THUGSTOOLS Tec 9 weapon number (NOTE: Model needs to be loaded first)
- 0x4AEF16 - [1 byte] - THUGSTOOLS Kruger weapon number (NOTE: Model needs to be loaded first)
- 0x4AEF28 - [1 byte] - THUGSTOOLS Sniper Rifle weapon number (NOTE: Model needs to be loaded first)
- 0x4AEF38 - [1 byte] - THUGSTOOLS Flame Thrower weapon number (NOTE: Model needs to be loaded first)
- 0x68E058 - [float] - DEEPFRIEDMARSBARS/PROGRAMMER Tommy's body width
- 0x68F1F0 - [float] - ONSPEED set game speed
- 0x68F1F4 - [float] - ONSPEED game speed multiplier
- 0x68F1F8 - [float] - BOOOOOORING set game speed
- 0x68F1FC - [float] - BOOOOOORING game speed multiplier
- 0x68F204 - [string] - LOOKLIKELANCE Lance model
- 0x68F20C - [string] - IWANTBIGTITS Candy model
- 0x68F214 - [string] - MYSONISALAWYER Ken model
- 0x68F21C - [string] - ILOOKLIKEHILARY Hilary model
- 0x68F224 - [string] - ROCKANDROLLMAN Jezz model
- 0x68F22C - [string] - ONEARMEDBANDIT Phil model
- 0x68F234 - [string] - IDONTHAVETHEMONEYSONNY Sonny model
- 0x68F240 - [string] - FOXYLITTLETHING Mercedes model
- 0x68F248 - [string] - WELOVEOURDICK Dick model
- 0x68F250 - [string] - CHEATSHAVEBEENCRACKED Diaz model
- 0x97F2C4 - [1 byte] - CHASESTAT cheat switch
- 0xA10AB3 - [1 byte] - OURGODGIVENRIGHTTOBEARARMS cheat switch
- 0xA10ADC - [1 byte] - GREENLIGHT cheat switch
- 0xA10B0F - [1 byte] - GRIPISEVERYTHING cheat switch
- 0xA10B11 - [1 byte] - AIRSHIP cheat switch
- 0xA10B23 - [1 byte] - CERTAINDEATH cheat switch
- 0xA10B26 - [1 byte] - AHAIRDRESSERSCAR cheat switch
- 0xA10B28 - [1 byte] - COMEFLYWITHME cheat switch
- 0xA10B2E - [1 byte] - Cheat is used flag
- 0xA10B30 - [1 byte] - WHEELSAREALLINEED cheat switch
- 0xA10B47 - [1 byte] - MIAMITRAFFIC cheat switch
- 0xA10B5F - [1 byte] - FANNYMAGNET cheat switch
- 0xA10B81 - [1 byte] - SEAWAYS cheat switch
- 0xA10B82 - [1 byte] - IWANTITPAINTEDBLACK cheat switch
- 0xA10B87 - [1 byte] - LIFEISPASSINGMEBY cheat
- 0x6D85E4 - [string] - THUGSTOOLS cheat input
- 0x6D85F0 - [string] - PROFESSIONALTOOLS cheat input
- 0x6D8604 - [string] - NUTTERTOOLS cheat input
- 0x6D8610 - [string] - PRECIOUSPROTECTION cheat input
- 0x6D8624 - [string] - ASPIRINE cheat input
- 0x686FD0 - [string] - YOUWONTTAKEMEALIVE cheat input
- 0x686FE4 - [string] - LEAVEMEALONE cheat input
- 0x686FF4 - [string] - APLEASANTDAY cheat input
- 0x687004 - [string] - ALOVELYDAY cheat input
- 0x687010 - [string] - ABITDRIEG cheat input
- 0x68701C - [string] - CATSANDDOGS cheat input
- 0x688580 - [string] - CANTSEEATHING cheat input
- 0x688590 - [string] - PANZER cheat input
- 0x688598 - [string] - LIFEISPASSINGMEBY cheat input
- 0x6885AC - [string] - BIGBANG cheat input
- 0x6885B4 - [string] - STILLLIKEDRESSINGUP cheat input
- 0x6885C8 - [string] - FIGHTFIGHTFIGHT cheat input
- 0x6885D8 - [string] - NOBODYLIKESME cheat input
- 0x68F160 - [string] - CERTAINDEATH cheat input
- 0x68F170 - [string] - DEEPFRIEDMRSBARS cheat input
- 0X68F184 - [string] - PROGRAMMER cheat input
- 0x695128 - [string] - OURGODGIVENRIGHTTOBEARARMS cheat input
- 0x695144 - [string] - ONSPEED cheat input
- 0x69514C - [string] - BOOOOOORING cheat input
- 0x695158 - [string] - WHEELSAREALLINEED cheat input
- 0x69516C - [string] - COMEFLYWITHME cheat input
- 0x69517C - [string] - GRIPISEVERYTHING cheat input
- 0x695070 - [string] - CHASESTAT cheat input
- 0x6DC408 - [string] - WELOVEOURDICK cheat input
- 0x6DC418 - [string] - SEAWAYS cheat input
Taxi
- 0x456046 - [4 bytes] - Opcode 02DE check if player is in a Taxi
- +0x8 for each additional taxis (Cabbie, Zebra Cab, Kaufman Cabs)
- 0x5B8AB6 - [1 byte] - Cash when entering a taxi (set to 12 by default)
- 0xA10B7F - [1 byte] - Kaufman Cabs' radio flag
Restart mission taxi:
- 0x42AEAC - [4 bytes] - Kaufman Cabs spawn (NOTE: Model needs to be loaded through 0x42AFB3 and set to spawn through 0x94EEB8)
- 0x42AFB3 - [4 bytes] - Kaufman Cabs model load
- 0x42AFD6 - [6 bytes] - NOP to have Tommy be able to carjack the taxi instead of entering it as passenger
- 0x42B219 - [1 byte] - Blue fade in color
- +0x2 - [1 byte] - Green fade in color
- +0x2 - [1 byte] - Red fade in color
- 0x42B24E - [4 bytes] - TAXI text duration
- 0x687574 - [string] - TAXI text
- 0x94DD94 - [float] - X-coord taxi destination (updated by opcode 058E)
- +0x4 - [float] - Y-coord taxi destination
- +0x4 - [float] - Z-coord taxi destination
- 0x94EEB8 - [1 byte] - Set taxi to spawn
- 0xA0D378 - [float] - Angle taxi destination
- 0xA10B6D - [1 byte] - Activate mission restart taxi
Display
- 0x46B389 - [byte] - camera move when entering/exiting car
- 0x46B58F - [byte] - same [5]
- 0x68AE2E - [2 bytes] - camera distance from player (set only lower, higher bugs the camera)
- 0x68AEE0 - [float] - cinema top border height
- 0x68AEE4 - [float] - cinema bottom border height
- 0x68FD02 - [byte] - controls radar map [6]
- 0x68FD16 - [byte] - radar width
- 0x68FD17 - [byte] - only radar ring visible [6]
- 0x68FD28 - [float] - Radar Size (XY)
- 0x68FD2C - [Float] - Radar X Position
- 0x68FD34 - [Float] - Radar Y Position
- 0x68FD38 - [Float] - Radar Shape
- 0x68FD3C - [Float] - Radar Shape
- 0x698A8C - [float] - ambient lighting
- 0x7E46B8 - [float] - camera X position
- 0x7E46BC - [float] - camera Y position
- 0x7E46C0 - [float] - camera Z position
- 0x7E46F5 - [byte] - wide screen borders
- 0x7E4764 - [byte] - car camera
- 0x7E47EC - [byte] - player camera
- 0x869655 - [byte] - frame limiter
- 0x869650 - [byte] - subtitles
- 0x869652 - [byte] - widescreen
- 0x86963A - [byte] - hud display
- 0xA10AF6 - [byte] - replay display on/off
- 0xA10B68 - [byte] - white scanlines
- 0xA10B69 - [byte] - green scanlines
- 0xA0FD04 - [DWORD] - resolution Width
- 0xA0FD08 - [DWORD] - resolution height
- 0xA0FD00 - [DWORD] - Color bit.
Mp3 player
- 0xA108B0
- Number of mp3s found [dword].
- 0xA10B50
- Mp3 station playing [byte].
- 0x9753E0
- Pointer to first mp3 file block [dword].
- 0x97881C
- Index of mp3 playing [dword].
- 0x978550
- Pointer to HDIG Driver (mss) [dword].
- 0x978668
- Current stream (mss) [dword].
- 0x94C104
- Total length of all mp3s (in milliseconds) [dword].
Loading screen
- 0xA0CE94
- Progress [float].
- 0x68E6FC
- Progress step [float].
- 0x68E70C
- Bar width [float].
- 0x68E710
- Bar height [float].
- 0x68E708
- Distance from bottom [float].
- 0x68E704
- Distance from left [float].
- 0x4A6C33
- Moving Loading Bar Color (red) [Byte]
- 0x4A6C2E
- Moving Loading Bar Color (Green) [Byte]
- 0x4A6C29
- Moving Loading Bar Color (Blue) [Byte]
- 0x4A6C24
- Moving Loading Bar transparency (A) [Byte]
- 0x4A6B80
- Bar Color (red) [Byte]
- 0x4A6B7E
- Bar Color (Green) [Byte]
- 0x4A6B7C
- Bar Color (Blue) [Byte]
- 0x4A6B77
- transparency (A) [Byte]
Mouse
- 0x936910 - [float] - Mouse X movement
- 0x936914 - [float] - Mouse Y movement
- 0x936908 - [Byte] - Left Mouse Button (LMB)
- 0x936909 - [Byte] - Right Mouse Button (RMB)
- 0x93690A - [Byte] - Middle Mouse Button (MMB)
- 0x93690B - [Byte] - Mouse Wheel Down
- 0x93690C - [Byte] - Mouse Wheel UP
Menu
- 0x703997
- Selected menu index [byte]. GTAForums post
- 00 - Stats
- 01 - Start Game
- 03 - Audio Setup
- 04 - Display
- 05 - Language
- 06 - Map
- 07 - InGame/ Starts New Game
- 08 - Load Game
- 09 - Delete Game
- 10 - "All unsaved progress..." Load Game
- 11 - "Proceed wit deleting..." Delete Game
- 12 - Goes to 01 - Start Game
- 13 - "Deleting Saved game. Please Wait..." then goes to 14
- 14 - "Delete Successful. Select OK to continue" "Ok" Delete Game
- 15 - Save Game List
- 16 - "Are you sure you want to save this game?"
- 17 - "Saving current game. Please wait...." Then goes to 18
- 18 - "Save Successful. Select OK to continue." "OK"
- 19 - "Ok" Saved Game, this is just a blank screen with no text
- 20 - "Warning! One or more cheats..." Cheat warning
- 21 - Player Skin Setup
- 26 - Controller Setup
- 27 - Options
- 29 - Main Menu
- 30 - RedeFine Controls
- 31 - Mouse Settings
- 32 - Resume
- 33 - "Greetings From Vice City" Then ends game
- 34 - "Greetings From Vice City" Then ends game
- 35+ - Blank Screen
- 0x704851
- Arrow in map "you are here" [byte].
- 0x783F12
- Save game directory [String].
- 0x97509C
- Save Game DIR [String].
- 0x936908
- Mouse button pressed [byte].
- 0x869660
- Selected menu item id [byte].
- 0x869728
- Current menu id [byte].
- 0x869730
- Last saving slot used (0 to 7) [byte].
- 0x68D5D4
- Stats menu scroll speed [float].
- 0x68D12C
- Stats menu line spacing [float].
- 0x68BF58
- Menu backgroung Texture name[string]
- 0x68BF68
- menu logo Texture name[string]
- 0x68BF7C
- Mouse Texture name[string]
- 0x869694
- Mouse X Position [float].
- 0x869698
- Mouse Y Position [float].
- 0x86965A
- Music Volume [Byte].
- 0x86968A
- MP3 boost [Byte].
- 0x869659
- SFX Volume [Byte].
Stats
- Main page: List of statistics (VC)
- 0x4CC102 - [4 bytes] - Total number of stores to knock off (default is 15)
- 0x4CC1CD - [4 bytes] - Total number of assassination contracts to complete (default 5)
Garages
- 0x7D74B8 - el swanko casa (1 car garage)
- 0x7D74E0 - el swanko casa
- 0x7D7508 - el swanko casa
- 0x7D7530 - el swanko casa
- 0x7D7558 - hyman condo left (4 car garage)
- 0x7D7580 - hyman condo left
- 0x7D75A8 - hyman condo left
- 0x7D75D0 - hyman condo left
- 0x7D75F8 - hyman condo middle (2 car garage)
- 0x7D7620 - hyman condo middle
- 0x7D7648 - hyman condo middle
- 0x7D7670 - hyman condo middle
- 0x7D7698 - hyman condo right (2 car garage)
- 0x7D76C0 - hyman condo right
- 0x7D76E8 - hyman condo right
- 0x7D7710 - hyman condo right
- 0x7D7738 - ocean heights (1 car garage)
- 0x7D7760 - ocean heights
- 0x7D7788 - ocean heights
- 0x7D77B0 - ocean heights
- 0x7D77D8 - links view apartment (1 car garage)
- 0x7D7800 - links view apartment
- 0x7D7828 - links view apartment
- 0x7D7850 - links view apartment
- 0x7D7878 - sunshine autos far right (2 car garage)
- 0x7D78A0 - sunshine autos far right
- 0x7D78C8 - sunshine autos far right
- 0x7D78F0 - sunshine autos far right
- 0x7D7918 - sunshine autos mid right (2 car garage)
- 0x7D7940 - sunshine autos mid right
- 0x7D7968 - sunshine autos mid right
- 0x7D7990 - sunshine autos mid right
- 0x7D79B8 - sunshine autos mid left (2 car garage)
- 0x7D79E0 - sunshine autos mid left
- 0x7D7A08 - sunshine autos mid left
- 0x7D7A30 - sunshine autos mid left
- 0x7D7A58 - sunshine autos far left (2 car garage)
- 0x7D7A80 - sunshine autos far left
- 0x7D7AA8 - sunshine autos far left
- 0x7D7AD0 - sunshine autos far left
- 0x7D7AF8 - vercetti estate (2 car garage)
- 0x7D7B20 - vercetti estate
- 0x7D7B48 - vercetti estate
- 0x7D7B70 - vercetti estate
- +0x0 - [4 bytes] - car IDE model
- +0x4 - [float] - x position
- +0x8 - [float] - y position
- +0xC - [float] - z position
- +0x10 - [float] - vector angle x
- +0x14 - [float] - vector angle y
- +0x18 - [float] - vector angle z
- +0x1C - [4 bytes] - immunities
- +0x20 - [1 byte] - primary color
- +0x21 - [1 byte] - secondary color
- +0x22 - [1 byte] - radio station
- +0x23 - [1 byte] - variation 1
- +0x24 - [1 byte] - variation 2
- +0x25 - [1 byte] - bomb type (3=remote,2=engine ignition,1=timed,0=none)
CBrightLight
RwV3D cornerAA; RwV3D cornerAB; RwV3D cornerBA; RwV3D cornerBB; float fDistanceToCamera; RwRGBA color;
CVehicleModelInfo
#pragma pack(push, 4) struct CVehicleModelInfo : public CClumpModelInfo { BYTE m_bLastCarColorId[2]; char m_cGameName[10]; DWORD m_dwVehicleType; float m_fWheelScale; WORD m_wWheelModelIndex; WORD m_wHandlingId; BYTE m_bNumDoors; BYTE m_bVehicleClass; BYTE m_bLvl; BYTE m_bNumExtras; WORD m_wFrq; CVector m_vDummyPos[5]; DWORD m_dwComprules; float m_fBikeSteerAngle; RpMaterial *m_pMaterialPrimary[24]; RpMaterial *m_pMaterialSecondary[20]; BYTE m_bPrimaryColorId[8]; BYTE m_bSecondaryColorId[8]; BYTE m_bNumColorVariations; BYTE m_bLastColorVariation; BYTE m_bCurrentColorId[2]; RpAtomic *m_pExtra[6]; char *m_pAnimName; }; #pragma pack(pop)
CEntity
The CEntity class is 0x064 bytes in size.
Offset | Type | Description |
---|---|---|
0x000 | pointer | pointer to virtual method table |
0x004 | CMatrix | matrix |
0x044 | pointer | RwObject |
0x048 | pointer | RpAtomic |
0x04C | pointer | RpClump |
0x050 | byte |
|
0x051 | byte |
|
0x052 | byte |
|
0x053 | byte |
|
0x058 | word | scan code |
0x05A | word | random number |
0x05C | word | model index |
0x05E | byte | building's level/island number |
0x05F | byte | object interior number |
CPhysical
Offsets continue from CEntity, which is the parent class. The CPhysical class is 0x120 bytes in size including CEntity.
Offset | Type | Description |
---|---|---|
0x064 | dword | audio entity (allows sounds to play) |
0x06C | dword | last collision time |
0x070 | CVector | movement speed |
0x07C | CVector | turn speed |
0x088 | CVector | movement force |
0x094 | CVector | turn force |
0x0B8 | float | mass |
0x0BC | float | turn resistance |
0x0C0 | float | acceleration resistance, initialised to 1.0 |
0x0E6 | byte | number of objects it is colliding |
0x100 | float | speed |
0x104 | float | collision power (also damages vehicles) |
0x11A | byte |
|
0x11C | byte | current collision value |
0x11D | byte | origin level |
CPed
Offsets continue from CPhysical, which is the parent class. The CPed class is 0x6D8 bytes in size including CPhysical and CEntity.
0x94AD28 - [pointer] - Player pointer (Note that Player is an instance of CPed Class)
Offset | Type | Description |
---|---|---|
0x141 | byte | fast shoot |
0x14C | byte | shooting anim |
0x14D | byte |
|
0x14F | byte |
|
0x14E | byte |
|
0x150 | byte |
|
0x151 | byte |
|
0x156 | byte |
|
0x1F4 | byte | sub animation |
0x18C | dword | threat search |
0x244 | dword | player current status [1] [2], values include:
|
0x24C | byte |
|
0x354 | float | health |
0x358 | float | armor |
0x378 | float | rotation (related to north) |
0x3A8 | pointer | last controlled vehicle/vehicle about to be entered |
0x3A4 | byte | target objective |
0x3AC | byte | is in any vehicle |
0x408 | 24 bytes[10] | current weapon blocks, blocks ordered by weapon slot
|
0x4F8 | dword | previous weapon number to remember, e.g. when using cellphone, entered a car
|
0x504 | byte | current weapon type |
0x506 | byte | weapon accuracy |
0x518 | byte | melee anim 1 |
0x520 | byte | melee anim 2 |
0x52C | float | upper torso rotation |
0x56C | pointer[10] | Nearest peds |
0x598 | byte | last damaged weapon |
0x59C | pointer | character last damaged by |
0x5F4 | pointer | wanted level pointer
|
0x59C | pointer | damaged by character |
0x600 | float | stamina [1] |
0x604 | float | max stamina, initialised 150.0, +0x608 controls its increase |
0x608 | float | stamina duration; when reaches 500.0, resets to 0.0 and increases max stamina by 10.0 |
0x60C | byte | current weapon slot again? |
0x638 | byte | drunkenness |
0x639 | byte | drunkenness countdown toggle |
0x63D | byte | can be damaged |
CVehicle
Offsets continue from CPhysical, which is the parent class. The CVehicle class is 0x5DC bytes in size including CPhysical and CEntity.
0x7E49C0 - [pointer] - Player's car pointer (player pointer when not in car)
Offset | Type | Description |
---|---|---|
0x156 | byte | driver behavior
|
0x160 | byte | cruise speed |
0x19C | pointer | target pointer to ram or block |
0x1A0 | byte | primary color (carcols.dat) |
0x1A1 | byte | secondary color |
0x1A2 | byte | car variation |
0x1A4 | dword | alarm duration, time in milliseconds |
0x1A8 | pointer | driver pointer |
0x1AC | pointer[8] | passenger pointers |
0x1CC | byte | current number of passengers |
0x1CD | byte | num getting in |
0x1CE | byte | getting in flags |
0x1CF | byte | getting out flags |
0x1D0 | byte | maximum number of passengers |
0x1E8 | float | steer angle 1 |
0x1EC | float | steer angle 2 (negative = wheels right; positive = wheels left) |
0x1F0 | float | accelerator pedal |
0x1F4 | float | brake pedal |
0x1FB | byte |
|
0x1FD | byte |
|
0x1FE | byte | (& 7) car bomb state |
0x201 | byte | power pills carried (unused) |
0x204 | float | health |
0x210 | pointer | player pointer after car is armed with car bomb |
0x230 | dword | lock status |
0x23C | byte | current radio station |
0x240 | byte | horn status |
0x245 | byte | is car siren on |
0x29C | dword | vehicle type
|
0x2A4 | byte | engine state
|
0x2A5 | byte | left front wheel state
|
0x2A6 | byte | left rear & middle wheel state |
0x2A7 | byte | right front wheel state |
0x2A8 | byte | right rear & middle wheel state |
0x2A9 | byte | bonnet damage/physical state
|
0x2AA | byte | boot damage/physical state |
0x2AB | byte | left front door damage/physical state |
0x2AC | byte | right front door damage/physical state |
0x2AD | byte | left rear door damage/physical state |
0x2AE | byte | right rear door damage/physical state |
0x2B0 | byte | light status
|
0x2B4 | byte | front side panels damage state |
0x2B5 | byte | rear side panels damage state |
0x2B6 | byte | front panels damage state |
0x2B7 | byte | rear panels damage state |
0x32C | byte | bike front tire status |
0x32D | byte | bike rear tire status |
0x474 | float | bike pitch lean |
0x484 | float | left front suspension height |
0x488 | float | left rear suspension height |
0x48C | float | right front suspension height |
0x490 | float | right rear suspension height |
0x4E8 | byte | bike burnout |
0x501 | byte | special vehicle properties
|
0x5B0 | dword | Rhino & Fire truck Cannon angle |
0x5BB | dword | BF-Inject Rotation angle |
0x5C5 | byte | number of wheels on ground |
0x5CC | byte | car burnout |
CMatrix
Offset | Type | Description |
---|---|---|
0x000 | CVector | right |
0x010 | CVector | up |
0x020 | CVector | at |
0x030 | CVector | position |
CVector
Offset | Type | Description |
---|---|---|
0x000 | float | x-direction |
0x004 | float | y-direction |
0x008 | float | z-direction |
CPickup
0x945D30 - [struct] CPickupVC GTAForums post
- 0x00 - [CVector] - vecPos
position of the pickup
- 0x0C - [FLOAT] - fStandProximity
how close the player is standing to the pickup?
- 0x10 - [POINTER] - CObjectVC* pObject
entity associated with the pickup
- 0x14 - [POINTER] - CObjectVC* pExtraObject
extra entity (for minigun for example)
- 0x18 - [DWORD] - dwPickupQuantity
used for weapons and money
- 0x1C - [DWORD] - dwTimer
either the time it was created or when it should disappear
- 0x20 - [WORD] - wMoneyGenerationRate
how quickly this pickup generates money
- 0x22 - [WORD] - wModelId
model ID of the pickup
- 0x24 - [WORD] - wUniqueId
unique identifier of this pickup
- 0x26 - [char] - szPickupTextKey[8]
key of the text that is shown when on this pickup
- 0x2E - [BYTE] - bytePickupType
shows if pickup slot is in use and its type
- 0x2F - [BYTE] - byteRemoved
pickup has been removed
- 0x30 - [BYTE] - byteEffects
which kind of visual effects this pickup has (values 0/1)
- 0x31 - padding - 3 B alignment
CObject
Offsets continue from CPhysical, which is the parent class. The CObject class is 0x1A0 bytes in size including CPhysical and CEntity.
0x945D40 - [POINTER] - CObject[] - 416 B object GTAForums post
- +0x120 - CMatrix - 72 B matDummyInitial
initial matrix, when converted from a dummy object
- +0x168 - [FLOAT] - fAttachForce
how strongly the object is attached to the ground
- +0x16C - [BYTE] - byteObjectType
- 0 - default (unused)
- 1 - map object
- 2 - projectiles, pickups, script objects
- 3 - dead car parts and roadblocks
- 4 - cutscene object
- 5 - spiketraps
- 0x16D - [BYTE] - flags
- 0b00000001 - bIsPickupObject
- 0b00000010 - bDoCircleEffect
- 0b00000100 - bRenderPickupQuantity
- 0b00001000 - bRenderPickupAvailability
- 0b00010000 - bWindowMinorCollisionDamage
- 0b00100000 - bHasWindowBeenBrokenByMelee
- 0b01000000 - bHasObjectExplosionTriggered
- 0b10000000 - bIsVehicleComponent
- 0x16E - [BYTE] - flags
- 0b00000001 - bSpecialLighting
- 0b00000010 - bNoVehicleCollisionWhenDetached
- +0x16F - [BYTE] - bytePickupObjectBonusType
used for bonus and clothes pickups
- +0x170 - [WORD] - wPickupObjectQuantity
used for money pickups
- 0x172 - padding - 2 B alignment
- 0x174 - [FLOAT] - fDamageMultiplier
object damage multiplier - how easily it breaks
- 0x178 - [BYTE] - byteCollisionDamageType
what happens when the object receives damage
- 0x179 - [BYTE] - byteSpecialCollisionType
special collision type for some objects
- 0x17A - [BYTE] - byteCameraAvoids
whether the camera avoids this object
- 0x17B - [BYTE] - byteBounceScore
how many times the player has hit this with his head (beachball)
- 0x17C - padding - 4 B alignment
- 0x180 - [DWORD] - dwObjectTimer
for some objects this shows when it will disappear (car parts)
- 0x184 - [WORD] - wRefModelId
the ID of the model this object is a part of (car parts)
- 0x186 - padding - 2 B alignment
- 0x188 - [POINTER] - CEntity* pInitialSurface
the surface the object is on when created
- 0x18C - [POINTER] - CPhysical* pContactPhysical
a physical that is currently in contact with this object
- 0x190 - [BYTE] - byteVehicleMainColor
main color for vehicle parts
- 0x191 - [BYTE] - byteVehicleExtraColor
extra color for vehicle parts
- 0x192 - padding - 2 B alignment
Police
- 0xA10ADB - [byte] - Police helicopter state
- 0x69A633 - [byte] - size of Police EM lights
Police cars, that are chasing the player (models must be loaded first [2]):
- 0x426A21 - [byte] - first police car
- 0x426987 - [byte] - second police car
- 0x42697E - [byte] - Enforcer
- 0x4268B8 - [byte] - Vicechee 1
- 0x4268D3 - [byte] - Vicechee 2
- 0x4268EE - [byte] - Vicechee 3
- 0x426909 - [byte] - Vicechee 4
- 0x4269BA - [byte] - FBI Rancher
- 0x426A0A - [byte] - Barracks Ol
- 0x426A14 - [byte] - Rhino
Police weapons:
- 0x4ED772 - [byte] - first weapon (Nitestick)
- 0x4EC21D - [byte]
- 0x4EC228 - [byte]
Skins (models must be loaded):
- 0x4ED762 - [byte] - policeman skin
- 0x4ED76B - [byte] - policeman skin (wanted level)
- 0x4ED7C3 - [byte] - swat skin
- 0x4ED812 - [byte] - FBI skin
- 0x4ED834 - [byte] - army skin
Wanted level needed, to see police cars & peds:
- 0x4D1E23 - [byte] - Army
- 0x4D1E43 - [byte] - FBI
- 0x4D1E63 - [byte] - Swat
- 0x4E1E83 - [byte] - Vicechee
Cars used for roadblocks (models must be loaded):
- 0x4436F1 - [byte] - Police
- 0x4436E5 - [byte] - Swat
- 0x4436C5 - [byte] - FBI
- 0x4436A4 - [byte] - Barracks Ol
Car Attributes
- 0x426640 - [byte] - controls removing cars that are far away [4]
- 0x427AAC - [4 bytes] - spawns with jingle/siren/horn on
- 0x591572 - [byte] - Phoenix engine animation (no use on other cars)
- 0x57157A - [byte] - BF-Inject Rotation
- 0x597F4A - [byte] - Hunter weapon
- 0x598302 - [byte] - Seasparrow weapon
- 0x58BCA8 - [byte] - Cuban exhaust
- 0x58B958 - [byte] - Cuban exhaust
- 0x58BCB5 - [byte] - Cuban exhaust on/off
- 0x5945F1 - [byte] - Rhino cannon
- 0x5945D5 - [byte] - Fire truck water cannon
- 0x594611 - [byte] - Voodoo hydraulics
- 0x59C7E5 - [byte] - Stinger jump in animation
- 0x5A0316 - [byte] - police boat weapon
- 0x5B9675 - [byte] - shooting this vehicle gives a wanted star
- 0x69A608 - [float] - Reaction Force of Rhino Cannon
- 0x69A60C - [float] - Cuban flame exhaust scale
- 0x69A610 - [float] - Rhino Cannon Fire Range
- 0x69A618 - [float] - Radius of FireTrail Rhino cannon Fire, (like smoketrail for Bullets)
- 0x69A61C - [float] - Radius of Smoke near Rhino Cannon
- 0x69A630 - [float] - Radius of Spark on the Mouth of Rhino Cannon
- 0x69A710 - [4 bytes] - Cuban flame exhaust Z offset
- 0x69A714 - [4 bytes] - Cuban flame exhaust X offset
- 0x69A71C - [4 bytes] - Cuban flame exhaust Y offset
Miscellaneous
- 0x68723B - [byte] - chance of traffic accidents by peds cars
- 0x68F5F0 - [float] - gravity
- 0x68F590 - [float] - Keep force's law valid. Value is always 1 second
- 0x68F62A - [2 bytes] - car behaviour when another car crashes into
- 0x69102E - [byte] - tick rate (like gamespeed, but doesn't affect on SCM script speed execution)
- 0x69154E - [byte] - vehicle and peds size (bugged size sometimes + not proper collision)
- 0x695680 - [4 bytes] - moon size
- 0x69A61A - [byte] - car friction/surface
- 0x69A6A8 - [float] - wheel camber (negative values)
- 0x69B34A - [float] - car door open/close speed
- 0x69C780 - [float] - max helicopter height
- 0x7838D1 - [byte] - car gear
- 0x7E48BC - [float] - player's up/down angle
- 0x7E48CC - [float] - player's left/right angle
- 0x869728 - [byte] - active menu [3]
- 0x974C34 - dword - number of activated cranes
- 0x978810 - [4 bytes] - current interior
- 0x97F264 - float - time scale
- 0x9B6CE4 - dword - number of vehicles collected by military crane
- 0xA0D1CC - dword - camera current cullzone
- 0xA0DAC0 - dword - player current cullzone
- 0xA10B3A - [byte] - Taxi boost
- 0xA10B6B - byte - game clock hours
- 0xA10B92 - byte - game clock minutes
- 0xA10A3C - word - game clock seconds
- 0xA10B33 - byte - stored game clock hours
- 0xA10B5D - byte - stored game clock minutes
- 0xA10A5E - word - stored game clock seconds
- 0xA10942 - char[30] - Buffer of 30 last typed characters, previously typed chars are on next bytes.
- 0xA10A44 - word - hud item to flash
- 0xA10AB5 - byte - resprays are free
- 0xA10AB6 - [1 byte] - disable radar (unused)
- 0xA10ABB - byte - all taxi lights (unused)
- 0xA10B32 - byte - bombs are free (unused)
- 0x78D658 - [float] - the 1st Water Level on the Z-coordinate denoted in Steve-m's water editor as Black Color
- 0x78D65C - [float] - the 2nd Water Level on the Z-coordinate denoted in Steve-m's water editor as Red Color
- 0x6912DC - [float] - Z coordinate on how deep the player should fall before re-spawning
Arrays
Upside down car check
- Start of array: 0x7D96D8
- Size of each element: 0x8
- Number of elements: 0x6
Offset | Type | Initialisation | Description |
---|---|---|---|
0x00 | dword | -1 | vehicle handle |
0x04 | dword | 0 | duration upside down |
Constructed arrays
These are arrays constructed by the function __construct_array
(0x6402D0).
Explosion
- Start of array: 0x780C88
- Size of each element: 0x38
- Number of elements: 0x30
Offset | Type | Initialisation | Description |
---|---|---|---|
0x00 | dword | 0 | type |
0x04 | float[3] | 0.0, 0.0, 0.0 | x,y,z position |
0x10 | float | 1.0 | radius |
0x14 | float | 0.0 | expansion rate |
0x18 | pointer | 0 | owner |
0x1C | pointer | 0 | victim |
0x20 | dword | 0 | time to expire |
0x24 | byte | 0 | counter |
0x25 | byte | 0 | is counter initialised |
0x26 | byte | 0 | no jet effect for vehicle explosion (applicable to types 3, 4, 5) |
0x27 | byte | 1 | has sound |
0x28 | dword | 0 | game time of vehicle explosion (applicable to types 3, 4, 5, 6, 7) |
0x2C | dword | 0 | game time to extend effect of explosion |
0x30 | float | 0.0 | force |
0x34 | float | 0.0 | ground z for Molotov explosion (applicable to type 1) |
Projectile info
- Start of array: 0x7DB888
- Size of each element: 0x1C
- Number of elements: 0x20
Offset | Type | Initialisation | Description |
---|---|---|---|
0x00 | dword | 12 | weapon type |
0x04 | dword | 0 | thrower pointer |
0x08 | dword | 0 | game timer to expire projectile |
0x0C | byte | 0 | does projectile exist |
0x0D | byte[3] | 0 | align |
0x10 | float[3] | 0.0, 0.0, 0.0 | x,y,z coordinates |
Intro text
- Start of array: 0x7F0EA0
- Size of each element: 0xF4
- Number of elements: 0x30
Offset | Type | Initialisation | Description |
---|---|---|---|
0x00 | float[2] | 0.48, 1.12 | x,y scale |
0x08 | byte[4] | 225, 225, 225, 255 | RGBA color |
0x0C | byte | 0 | justify |
0x0D | byte | 0 | center |
0x0E | byte | 0 | background |
0x0F | byte | 0 | background only text |
0x10 | float | 182.0 | wrap x |
0x14 | float | 640.0 | center size |
0x18 | byte[4] | 128, 128, 128, 128 | RGBA background color |
0x1C | byte | 1 | proportional |
0x1D | byte | 0 | draw before fade |
0x1E | byte | 0 | right justify |
0x1F | byte | 0 | align |
0x20 | word | 1 | font |
0x22 | word | 0 | align |
0x24 | float | 0.0, 0.0 | x,y position |
0x2C | wchar_t[100] | null | text |
Script sphere
- Start of array: 0x811528
- Size of each element: 0x18
- Number of elements: 0x18
Offset | Type | Initialisation | Description |
---|---|---|---|
0x00 | byte | 0 | visibility |
0x01 | byte | 0 | align |
0x02 | word | 256 | |
0x04 | dword | 0 | |
0x08 | float[3] | 0 | x,y,z position |
0x14 | float | 0 | scale |
Taxi shortcut pick-up point
- Start of array: 0x812138
- Size of each element: 0xC
- Number of elements: 0x10
Offset | Type | Initialisation | Description |
---|---|---|---|
0x00 | float[3] | 0.0, 0.0, 0.0 | x,y,z coordinates (its heading is at 0x78BCD8 + n * 4 where n is the index starting from 0) |
Police restart point
- Start of array: 0x933B00
- Size of each element: 0xC
- Number of elements: 0x8
Offset | Type | Initialisation | Description |
---|---|---|---|
0x00 | float[3] | 0.0, 0.0, 0.0 | x,y,z coordinates (its heading is at 0x7DD720 + n * 4 where n is the index starting from 0) |
Stuck car check
- Start of array: 0x94AFA0
- Size of each element: 0x20
- Number of elements: 0x10
Offset | Type | Initialisation | Description |
---|---|---|---|
0x00 | dword | -1 | vehicle handle |
0x04 | float[3] | -5000.0, -5000.0, -5000.0 | x,y,z position update |
0x10 | dword | -1 | game timer update |
0x14 | float | 0.0 | distance check |
0x18 | dword | 0 | time check |
0x1C | byte | 0 | is car stuck |
0x1D | byte[3] | 0 | align |
Hospital restart point
- Start of array: 0x94B930
- Size of each element: 0xC
- Number of elements: 0x8
Offset | Type | Initialisation | Description |
---|---|---|---|
0x00 | float[3] | 0.0, 0.0, 0.0 | x,y,z coordinates (its heading is at 0x7DD740 + n * 4 where n is the index starting from 0) |
See also
References
- 1. ^ Post on GTAForums
- 2. ^ Post on GTAForums
- 3. ^ Post on GTAForums
- 4. ^ Post on GTAForums
- 5. ^ Post on GTAForums
- 6. ^ Post on GTAForums
External links
- GTAForums: Documenting GTA3/VC memory addresses
- Same topic in archive.org - shows archived posts that are apparently deleted from current topic