Memory Addresses (VC)
Contents
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
- 0x78BCD8 - [float] - Angle taxi start
- +0x4 for each additional taxi start, up to 0x78BCF4 total by default
- 0x812138 - [float] - X-coord taxi start
- +0xC for each additional taxi start, up to 0x81218C
- 0x81213C - [float] - Y-coord taxi start
- +0xC for each additional taxi start, up to 0x812190
- 0x812140 - [float] - Z-coord taxi start
- +0xC for each additional taxi start, up to 0x812194
- 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].
- 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
The list is in order of appearance in the stats menu.
- 0xA1023C - [4 bytes] - Mission attempts (incremented by 0317)
- 0x97F1F4 - [4 bytes] - Days passed in game
- 0xA0D228 - [4 bytes] - Safehouse visits
- 0x974C0C - [4 bytes] - Rampages passed (total number set by 0408)
- 0x974C08 - [4 bytes] - Rampages passed (number of)
- 0x978794 - [4 bytes] - People you've wasted
- 0x9753AC - [4 bytes] - People wasted by others
- 0xA0D388 - [4 bytes] - Road Vehicles destroyed
- 0x974B04 - [4 bytes] - Boats destroyed
- 0x9751F0 - [4 bytes] - Planes & Helicopters destroyed
- 0x94DB58 - [4 bytes] - Tires popped with gunfire
- 0x9B5EB8 - [4 bytes] - Total number of wanted stars attained
- 0x9B5F30 - [4 bytes] - Total number of wanted stars evaded
- 0x975330 - [4 bytes] - Times busted
- 0x975320 - [4 bytes] - Hospital visits
- 0x9B6E38 - [4 bytes] - Number of headshots
- 0x94DB80 - [4 bytes] - Gang members wasted (Cubans)
- +0x4 for additional gangs (Haitians, etc.)
- 0x94DBAC - [4 bytes] - Criminals wasted
- 0x9787A8 - [4 bytes] - Kgs of explosives used
- 0x97532C - [4 bytes] - Bullets fired
- 0x9B6CD4 - [4 bytes] - Bullets that hit
- 0xA0D9B4 - [float] - Dist. traveled on foot (m)
- 0xA0FCFC - [float] - Dist. traveled by car (m)
- 0xA0D2D8 - [float] - Dist. traveled by bike (m)
- 0xA0D384 - [float] - Dist. traveled by boat (m)
- 0x974C04 - [float] - Dist. traveled by golf cart (m)
- 0x9B6A48 - [float] - Dist. traveled by helicopter (m)
- 0x97F210 - [float] - Max. INSANE Jump dist. (m) (set by 030E)
- 0xA0CFD8 - [float] - Max. INSANE Jump height (m) (set by 030F)
- 0x9787DC - [4 bytes] - Max. INSANE Jump flips (set by 0310)
- 0x978530 - [4 bytes] - Unique Jumps completed (total number set by 0314)
- 0x974B48 - [4 bytes] - Unique Jumps completed (number incremented by 0313)
- 0x978D14 - [4 bytes] - Max. INSANE Jump rotation (set by 0311)
- 0x974B30 - [4 bytes] - Best INSANE stunt so far (set by 0312)
- 0 = No INSANE stunts completed
- 1 = Insane stunt
- 2 = Perfect insane stunt
- 3 = Double insane stunt
- 4 = Perfect double insane stunt
- 5 = Triple insane stunt
- 6 = Perfect triple insane stunt
- 7 = Quadruple insane stunt (unused)
- 8 = Perfect quadruple insane stunt (unused)
- 0x97530C - [4 bytes] - Longest Wheelie time (secs)
- 0x9786C0 - [float] - Longest Wheelie distance (m)
- 0x974B3C - [4 bytes] - Longest Stoppie time (secs)
- 0x9B5F44 - [float] - Longest Stoppie distance (m)
- 0xA0FCF8 - [4 bytes] - Longest 2 wheels time (secs)
- 0x9B48D0 - [float] - Longest 2 wheels distance (m)
- 0x974C28 - [float] - Visits From Loan Sharks (unused)
- 0x9787B4 - [4 bytes] - Criminals killed on Vigilante Mission (incremented by 0402)
- 0x94DD60 - [4 bytes] - Highest Vigilante Mission level (set by 0578)
- 0xA0D1DC - [4 bytes] - Passengers dropped off (incremented by 0315)
- 0xA0D9C8 - [4 bytes] - Cash made in taxi (added by 0316)
- 0x9B5EA8 - [4 bytes] - People saved in an Ambulance (incremented by 0401)
- 0x978DB8 - [4 bytes] - Highest Paramedic Mission level (set by 0403)
- 0x9B6A84 - [4 bytes] - Total fires extinguished (incremented by 0404)
- 0x975310 - [4 bytes] - Fire Truck Mission level (set by 0599)
- 0x97F898 - [float] - Stores Knocked Off (added by 0531)
- 0x4CC102 - [4 bytes] - Stores Knocked Off (total number, set to 15 by default)
- 0xA0FC8C - [float] - Movie Stunts (unused)
- 0xA10918 - [4 bytes] - Assassination Contracts Completed (incremented by 0533)
- 0x4CC1CD - [4 bytes] - Assassination Contracts Completed (total number, set to 5 by default)
- 0x97F21C - [4 bytes] - Photographs Taken
- 0x978780 - [float] - Pizza's Delivered (added by 0534)
- 0x974C00 - [float] - Garbage Pickups Made (unused)
- 0x975390 - [float] - 'Ice Cream' Sold (added by 0536)
- 0x974B80 - [4 bytes] - Fastest time on 'Alloy Wheels Of Steel' (set by 042E)
- +0x4 for each additional stat related to 042E up to 0x974BD8
- 0x9B6E20 - [4 bytes] - Highest score for Shooter (set by 042F)
- +0x4 for each additional stat related to 042F, except the last one, up to 0x9B6E2C
- 0xA0FD80 - [4 bytes] - Hotring Best Result (set by 0582)
- 0x974B08 - [float] - Shooting Range Rank
- 0x97854C - [4 bytes] - Flight hours (ms, converted to min in menu)
- 0x9B6E54 - [4 bytes] - Number of bloodring kills (added by 0543)
- 0xA0D2E0 - [4 bytes] - Longest time in bloodring (secs) (set by 0544)
- 0x9B48B4 - [4 bytes] - Fishes Fed
- 0x97869C - [4 bytes] - Seagulls Sniped
- 0xA0FC94 - [4 bytes] - Sprayings
- 0xA0FDCC - [float] - Weapon Budget (added by 0528)
- 0xA0D068 - [float] - Fashion Budget (added by 04CF)
- 0x9B48B0 - [float] - Property Budget (added by 0529)
- 0xA10298 - [float] - Auto Repair and Painting Budget
- 0x975404 - [4 bytes] - Property Destroyed
- 0x978E08 - [4 bytes] - Property Owned
- 0xA10AFD - [1 byte] - The Malibu owned (set by 0542, Property Owned needs a value for this to show)
- +0x1 for each additional property related to 0542 up to 0xA10B0B
- 0x978E0C - [float] - Highest media attention
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)
CObject
struct CObjectVC { [1]
CPhysical phys; // 0-288 //physical structure of this object CMatrix matDummyInitial; // 288-360 //initial matrix, when converted from a dummy object float fAttachForce; // 360-34 //how strongly the object is attached to the ground uint8_t byteObjectType; // 364-365 //0 - default, not used, 1 - map object, 2 - projectiles, pickups, script objects, 3 - dead car parts and roadblocks, 4 - cutscene object, 5 - spiketraps + ? uint8_t bIsPickupObject:1; // 365.0-365.1 //is a pickup object uint8_t bDoCircleEffect:1; // 365.1-365.2 //do the circle blinking effect for pickups uint8_t bRenderPickupQuantity:1; // 365.2-365.3 //render pickup quantity as dollars uint8_t bRenderPickupAvailability:1; // 365.3-365.4 //render pickup ammunation quantity uint8_t bWindowMinorCollisionDamage:1; // 365.4-365.5 //window has received minor collision damage uint8_t bHasWindowBeenBrokenByMelee:1; // 365.5-365.6 //window has been broken by melee uint8_t bHasObjectExplosionTriggered:1; // 365.6-365.7 //has object explosion been triggered (barrels, water hydrants) uint8_t bIsVehicleComponent:1; // 365.7-366.0 //is this a separated vehicle component uint8_t bSpecialLighting:1; // 366.0-366.1 //used for weapon models uint8_t bNoVehicleCollisionWhenDetached:1; // 366.1-366.2 //used for traffic light objects uint8_t bPadFlags:6; // 366.2-367.0 uint8_t bytePickupObjectBonusType; // 367-368 //used for bonus and clothes pickups uint16_t wPickupObjectQuantity; // 368-370 //used for money pickups _pad(__fxpad00, 2); // 370-372 float fDamageMultiplier; // 372-376 //object damage multiplier - how easily it breaks uint8_t byteCollisionDamageType; // 376-377 //what happens when the object receives damage uint8_t byteSpecialCollisionType; // 377-378 //special collision type for some objects uint8_t byteCameraAvoids; // 378-379 //whether the camera avoids this object uint8_t byteBounceScore; // 379-380 //how many times the player has hit this with his head (beachball) _pad(__fxpad01, 4); // 380-384 uint32_t dwObjectTimer; // 384-388 //for some objects this shows when it will disappear (car parts) uint16_t wRefModelId; // 388-390 //the ID of the model this object is a part of (car parts) _pad(__fxpad02, 2); // 390-392 CEntity* pInitialSurface; // 392-396 //the surface the object is on when created CPhysical* pContactPhysical; // 396-400 //a physical that is currently in contact with this object uint8_t byteVehicleMainColor; // 400-401 //main color for vehicle parts uint8_t byteVehicleExtraColor; // 401-402 //extra color for vehicle parts _pad(__fxpad03, 2); // 402-404
};
CPickup
struct CPickupVC { [2]
CVector vecPos; // 0-12 //position of the pickup float fStandProximity; // 12-16 //how close the player is standing to the pickup? CObjectVC* pObject; // 16-20 //entity associated with the pickup CObjectVC* pExtraObject; // 20-24 //extra entity (for minigun for example) uint32_t dwPickupQuantity; // 24-28 //used for weapons and money uint32_t dwTimer; // 28-32 //either the time it was created or when it should disappear uint16_t wMoneyGenerationRate; // 32-34 //how quickly this pickup generates money uint16_t wModelId; // 34-36 //model ID of the pickup uint16_t wUniqueId; // 36-38 //unique identifier of this pickup char szPickupTextKey[8]; // 38-46 //key of the text that is shown when on this pickup uint8_t bytePickupType; // 46-47 //shows if pickup slot is in use and its type uint8_t byteRemoved; // 47-48 //pickup has been removed uint8_t byteEffects; // 48-49 //which kind of visual effects this pickup has (values 0/1) _pad(__fxpad02, 3); // 49-52
}
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)
Ped block
0x94AD28 - [pointer] - Player pointer (Note that Player is an instance of CPed Class)
- +0x00 - [dword] - vtbl
- +0x04 - [CMatrix] - matrix
- +0x4C - [dword] - rwObject
- +0x50 - [byte] - flags
- +0x51 - [byte] - type
- +0x52 - [1 byte] - immunity (2=explosion)
- +0x53 - [1 byte] - immunity (2=bullet, 4=fire, 6=both)
- +0x58 - [word] - scanCode
- +0x5C - [word] - modelIndex
- +0x5E - [byte] - buildingIsland
- +0x5F - [byte] - interior
- +0x6C - [2 bytes] - last collision time
- +0x70 - [float] - X move speed
- +0x74 - [float] - Y move speed
- +0x78 - [float] - Z move speed
- +0x7C - [float] - X turn speed
- +0x80 - [float] - Y turn speed
- +0x84 - [float] - Z turn speed
- +0xB8 - [float] - weight
- +0xE6 - [1 byte] - is player on ground
- +0x141 - [1 byte] - fast shoot
- +0x14C - [1 byte] - shooting anim
- +0x14D - [1 byte] - jumping anim
- +0x150 - [1 byte] - crouching
- +0x1F4 - [1 byte] - sub animation
- +0x244 - [byte] - player current status [3] [4], values include:
- 0x01 - normal on foot
- 0x0C - aiming weapon
- 0x10 - attacking
- 0x11 - being melee'd
- 0x18 - walking to enter vehicle
- 0x1F - weak dodge
- 0x24 - holding cellphone (052B)
- 0x29 - jumping
- 0x2A - fallen down
- 0x2B - standing back up
- 0x2D - dive sideways
- 0x32 - sitting in vehicle
- 0x36, 0x37 - wasted
- 0x38 - jacking vehicle
- 0x3A - entering vehicle
- 0x3C - exiting vehicle
- 0x3E - busted
- +0x24C - [1 byte] - walking
- +0x354 - [float] - health
- +0x358 - [float] - armor
- +0x378 - [float] - rotation (related to north)
- +0x3A8 - [pointer] - last controlled vehicle
- +0x3A4 - [1 byte] - target objective
- +0x3AC - [1 byte] - is in vehicle (0=on foot,1=in car)
- +0x408 - [24 bytes] - current weapon blocks, blocks ordered by weapon slot
- +0x504 - [1 byte] - current weapon slot
- +0x598 - [1 byte] - last damage (031D)
- +0x518 - [1 byte] - melee anim 1
- +0x520 - [1 byte] - melee anim 2
- +0x52C - [float] - upper torso rotation
- +0x56C - [10 pointers] - Nearest peds
- +0x5F4 - [pointer] - wanted level pointer
- +0x0 - [4 bytes] - wanted counter
- above 50 - 1 star
- above 180 - 2 stars
- above 550 - 3 stars
- above 1200 - 4 stars
- above 2400 - 5 stars
- above 4600 - 6 stars
- +0x1E - ignore status (0=normal, 1=cops, 2=everyone)
- +0x20 - [1 byte] - HUD active wanted level
- +0x0 - [4 bytes] - wanted counter
- +0x600 - [float] - stamina [1]
- +0x60C - [1 byte] - current weapon slot again?
- +0x608 - [float] - sprint distance [1]
- +0x638 - [1 byte] - drunk visuals (052C)
Weapon block
- +0x0 - [4 bytes] - weapon number
- +0x4 - [4 bytes] - status (0=normal, 1=firing in 1st person/using flamethrower, 2=reloading, 3=no more ammo)
- +0x8 - [4 bytes] - current clip
- +0xC - [4 bytes] - current ammo
Vehicle block
0x7E49C0 - [pointer] - Player's car pointer (player pointer when not in car)
- +0x04 - [float] - X roll
- +0x08 - [float] - Y roll
- +0x0C - [float] - Z roll
- +0x14 - [float] - X direction
- +0x18 - [float] - Y direction
- +0x1C - [float] - Z direction
- +0x24 - [float] - Last X position
- +0x28 - [float] - Last Y position
- +0x2C - [float] - Last Z position
- +0x34 - [float] - x coordinate
- +0x38 - [float] - y coordinate
- +0x3C - [float] - z coordinate
- +0x5C - [4 bytes] - IDE model
- +0x6C - [4 bytes] - last collision time
- +0x70 - [float] - x push
- +0x74 - [float] - y push
- +0x78 - [float] - z push
- +0x7C - [float] - X turn speed
- +0x80 - [float] - Y turn speed
- +0x84 - [float] - Z turn speed
- +0xB8 - [float] - weight
- +0xE4 - [4 bytes] - object on ground (?)
- +0x156 - [1 byte] - driver behavior
- +0x160 - [1 byte] - speed
- +0x1A0 - [1 byte] - primary color (carcols.dat)
- +0x1A1 - [1 byte] - secondary color
- +0x1A2 - [1 byte] - car variation
- +0x1A4 - [4 bytes] - alarm duration, time in milliseconds
- +0x1A8 - [pointer] - driver pointer
- +0x1AC - [pointer] - passenger 0 pointer
- +0x1B0 - [pointer] - passenger 1 pointer
- +0x1B4 - [pointer] - passenger 2 pointer
- +0x1CC - [1 byte] - current number of passengers (01E9)
- +0x1CD - [1 byte] - num getting in
- +0x1CE - [1 byte] - getting in flags
- +0x1CF - [1 byte] - getting out flags
- +0x1D0 - [1 byte] - maximum number of passengers (01EA)
- +0x1E8 - [float] - steer angle 1
- +0x1EC - [float] - steer angle 2 (negative = wheels right; positive = wheels left)
- +0x1F0 - [float] - accelerator pedal
- +0x1F4 - [float] - brake pedal
- +0x204 - [float] - health
- +0x230 - [1 byte] - lock status (020A)
- +0x23C - [1 byte] - current radio station
- +0x240 - [1 byte] - horn status
- +0x245 - [1 byte] - siren status (0=off,1=on)
- +0x29C - [1 byte] - vehicle type (0=car,1=boat,5=bike)
- +0x2A5 - [1 byte] - left front tire status (0=normal, 1=popped, 2=none)
- +0x2A6 - [1 byte] - left rear & middle tire
- +0x2A7 - [1 byte] - right front tire
- +0x2A8 - [1 byte] - right rear & middle tire
- +0x2A9 - [1 byte] - Bonnet Values
- +0x2AA - [1 byte] - Trunk (diggi)
- +0x2AB - [1 byte] - left front door status (0=freeze door, 2=unfreeze door)
- +0x2AC - [1 byte] - right front door
- +0x2AD - [1 byte] - left rear door
- +0x2AE - [1 byte] - right rear door
- +0x32C - [1 byte] - bike front tire status
- +0x32D - [1 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 - [1 byte] - bike burnout
- +0x501 - [1 byte] - special vehicle properties
- +0x5B0 - [DWORD] - Rhino & Fire truck Cannon angle
- +0x5BB - [DWORD] - BF-Inject Rotation angle
- +0x5CC - [1 byte] - car burnout
Entity Block (object)
- 0x945D40 - [pointer] - Entity Block pointer (struct size 416 Bytes)
- +0x00 - CPhysical 288 B
- +0x00 - [pointer] - unknown
- +0x04 - CPlaceable 72 B
- +0x04 - [float] - X right
- +0x08 - [float] - Y right
- +0x0C - [float] - Z right
- +0x14 - [float] - X top
- +0x18 - [float] - Y top
- +0x1C - [float] - Z top
- +0x24 - [float] - X at
- +0x28 - [float] - Y at
- +0x2C - [float] - Z at
- +0x34 - [float] - X pos
- +0x38 - [float] - Y pos
- +0x3C - [float] - Z pos
- +0x54 - [short] - flags
- +0x5C - [short] - model id
- +0x68 - [float] - ?
- +0x6C - [int] - last collision time
- +0x70 - [float] - X move speed
- +0x74 - [float] - Y move speed
- +0x78 - [float] - Z move speed
- +0x7C - [float] - X turn speed
- +0x80 - [float] - Y turn speed
- +0x84 - [float] - Z turn speed
- +0x88 - [float] - X movement acceleration change
- +0x8C - [float] - Y movement acceleration change
- +0x90 - [float] - Z movement acceleration change
- +0x94 - [float] - X turning acceleration change
- +0x98 - [float] - Y turning acceleration change
- +0x9C - [float] - Z turning acceleration change
- +0xA0 - [float] - X movement acceleration
- +0xA4 - [float] - Y movement acceleration
- +0xA8 - [float] - Z movement acceleration
- +0xAC - [float] - X turning acceleration
- +0xB0 - [float] - Y turning acceleration
- +0xB4 - [float] - Z turning acceleration
- +0xB8 - ? - mass
- +0xE6 - ? - object on ground
- +0x104 - [float] - object damaged
- +0x120 - CMatrix matDummyInitial 72 B
- +0x23C - ? - type
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)
- 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]
- 0x978810 - [4 bytes] - current interior
- 0xA0DAC0 - [4 bytes] - current cullzone
- 0xA10B3A - [byte] - Taxi boost
- 0xA10B6B - [byte] - game hour
- 0xA10B92 - [byte] - game minute
- 0xA10942 - [char(30)] - Buffer of 30 last typed chars, previously typed chars are on next bytes.
- 0xA10A44 - [2 bytes] - flash hud (03E7)
- 0xA10AB5 - [1 byte] - free respray (0335)
- 0xA10AB6 - [1 byte] - disable radar (unused)
- 0xA10ABB - [1 byte] - spawned taxi light status (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
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