Quantcast
Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
    1. Welcome to GTAForums!

    1. Red Dead Redemption 2

      1. Gameplay
      2. Missions
      3. Help & Support
    2. Red Dead Online

      1. Gameplay
      2. Find Lobbies & Outlaws
      3. Help & Support
    1. Crews & Posses

      1. Recruitment
    2. Events

    1. GTA Online

      1. Diamond Casino & Resort
      2. DLC
      3. Find Lobbies & Players
      4. Guides & Strategies
      5. Vehicles
      6. Content Creator
      7. Help & Support
    2. Grand Theft Auto Series

    3. GTA 6

    4. GTA V

      1. PC
      2. Guides & Strategies
      3. Help & Support
    5. GTA IV

      1. Episodes from Liberty City
      2. Multiplayer
      3. Guides & Strategies
      4. Help & Support
      5. GTA Mods
    6. GTA Chinatown Wars

    7. GTA Vice City Stories

    8. GTA Liberty City Stories

    9. GTA San Andreas

      1. Guides & Strategies
      2. Help & Support
      3. GTA Mods
    10. GTA Vice City

      1. Guides & Strategies
      2. Help & Support
      3. GTA Mods
    11. GTA III

      1. Guides & Strategies
      2. Help & Support
      3. GTA Mods
    12. Top Down Games

      1. GTA Advance
      2. GTA 2
      3. GTA
    13. Wiki

      1. Merchandising
    1. GTA Modding

      1. GTA V
      2. GTA IV
      3. GTA III, VC & SA
      4. Tutorials
    2. Mod Showroom

      1. Scripts & Plugins
      2. Maps
      3. Total Conversions
      4. Vehicles
      5. Textures
      6. Characters
      7. Tools
      8. Other
      9. Workshop
    3. Featured Mods

      1. DYOM
      2. OpenIV
      3. GTA: Underground
      4. GTA: Liberty City
      5. GTA: State of Liberty
    1. Red Dead Redemption

    2. Rockstar Games

    1. Off-Topic

      1. General Chat
      2. Gaming
      3. Technology
      4. Programming
      5. Movies & TV
      6. Music
      7. Sports
      8. Vehicles
    2. Expression

      1. Graphics / Visual Arts
      2. GFX Requests & Tutorials
      3. Writers' Discussion
      4. Debates & Discussion
    1. News

    2. Forum Support

    3. Site Suggestions

JernejL

Documenting GTA3/VC memory addresses

Recommended Posts

DexX

 

so here is what is vierd about skimmer:

- it can use police boat weapon, this is good

- skimmer doesn't store in player's last-controlled car pointer

but all other boats do, this is bad because devconsole isn't

able to track it properly and:

 

teleport me over last controlled vehicle

and teleport my last controlled vehicle under me things don't work

so how is then possible to find out that player controls a skimmer?

 

Did you actually test all this on the pc version? the Xbox version might be setup differently.

Share this post


Link to post
Share on other sites
Stretchnutter

I noticed this (PC Version of course ashdexx... how would you memory hack an xbox? tounge.gif )

 

My camera hack uses the 'last/current car pointer' to determine the damage of your car whether you are in it or not. (resulted in false damage displaying) But you should know that there are 3 pointers to your last car in the player block (two next to eachother and one at a lower offset)... maybe one of them actually works when the others don't.

Edited by Stretchnutter

Share this post


Link to post
Share on other sites
DexX

 

I noticed this (PC Version of course ashdexx... how would you memory hack an xbox?  )

true, lol. but more specifically, ive never noticed the skimmer being able to shoot police guns, and i was wondering if he tested that specifically on the pc version, or just inferred it from the xbox. the rest i gathered was done on the pc.

Share this post


Link to post
Share on other sites
JernejL
I noticed this (PC Version of course ashdexx... how would you memory hack an xbox? tounge.gif )

 

My camera hack uses the 'last/current car pointer' to determine the damage of your car whether you are in it or not. (resulted in false damage displaying) But you should know that there are 3 pointers to your last car in the player block (two next to eachother and one at a lower offset)... maybe one of them actually works when the others don't.

yes i tried, try it yourself, devconsole can't track the skimmer.

 

and the police boat weapon works on skimmer, i posted adress on this page.

 

Share this post


Link to post
Share on other sites
Opius
I noticed this (PC Version of course ashdexx... how would you memory hack an xbox? tounge.gif )

Debug BIOS with a network connection tounge.gif

My copy of the Xbox SDK has a memory editor built into it, but it doesn't like talking to my Xbox dozingoff.gif

 

Interesting about the Skimmer though.

 

That is all.

Share this post


Link to post
Share on other sites
Cowpat

all 1 byte to C3

 

most of interest only to the connoisseur

 

4203856 odd animations, player, bikes, skaters

4210160 spastic peds, player can't move

4211408 can't move, legs rotate, peds crumpled

4212224 some walking anims odd

4212368 can't move, legs rotate, peds crumpled + static

4216384 WASD keystate affected, peds static, no weapons, don't try to enter vehicle

4241568 poor texture load

4243120 poor texture load

4265184 few cars, sometimes height thing

4266784 height/collision thing, graphics glitch

4285872 big leaps on bumping into cars

4327600 cars can't move till you touch them

4353456 no cars

4363504 cars deleted as soon as created/within radius of player

4363584 few cars spawned when on foot, miami traffic

4379168 !RemoveDistantCars

Share this post


Link to post
Share on other sites
HippieCommunist

hey cowpat can you plz tell me how to edit my exe file with the 'few cars on foot and miami traffic' ?

 

please!

 

 

or if your bored pliz send me the .EXE file to:

 

[email protected]

Share this post


Link to post
Share on other sites
JernejL
hey cowpat can you plz tell me how to edit my exe file with the 'few cars on foot and miami traffic' ?

 

please!

 

 

or if your bored pliz send me the .EXE file to:

 

[email protected]

from all adresses subtract $401000 and you will get the adress for disk-file

you can edit it with file hex editor.

 

Share this post


Link to post
Share on other sites
Cowpat

 

block of 39 pointers to radar icons

starts 6879588, ends 6879744

swap one address for another to swap icons

or delete by zeroing lowest byte - ugly

 

e.g. swapped north and hotel hideout

(6879596 and 6879660)

 

 

6880514 byte 00 no radar map

6880534 byte 00 rotates radar map, but not about the normal

6880535 byte 00 pink ring only

 

user posted image

edit to add image and correct value

Edited by Cowpat

Share this post


Link to post
Share on other sites
DexX

ha! nice find cowpat.

you know what would be really l337? to tie the police cars, to a radar icon, using the police car radar icon in the txd, so you could track the cops at all times. Maybe other stuff too, we can easily make new icons.

Share this post


Link to post
Share on other sites
JernejL
ha! nice find cowpat.

you know what would be really l337? to tie the police cars, to a radar icon, using the police car radar icon in the txd, so you could track the cops at all times. Maybe other stuff too, we can easily make new icons.

i wanted to do that for years..

 

devconsole can be modified (its entity lister) to do that..

 

great stuff cowpat smile.gifsmile.gif

 

Share this post


Link to post
Share on other sites
Cowpat

 

ha! nice find cowpat.

you know what would be really l337? to tie the police cars, to a radar icon, using the police car radar icon in the txd, so you could track the cops at all times. Maybe other stuff too, we can easily make new icons.

 

i wanted to do that for years..

devconsole can be modified (its entity lister) to do that..

great stuff cowpat smile.gifsmile.gif

heh, the pleasure's mine boys, just servin the community... wink.gif

Edited by Cowpat

Share this post


Link to post
Share on other sites
Cowpat

double post, tres uncool

user posted image

user posted image

Edited by Cowpat

Share this post


Link to post
Share on other sites
JernejL
double post, tres uncool

user posted image

OMFG!!

 

*shuts up*

 

what the f*ck??

 

Share this post


Link to post
Share on other sites
jax

Cowpat, how were you able to change the players skin like that, especially to a ped skin such as that. Most scm coders know your rather limited to which skins you can use (setting the player skin is what im talking about.) So how is it you've managed such a thing via memory. Good find by the way biggrin.gif

 

-Jax

Share this post


Link to post
Share on other sites
Cowpat

First off, the picture with all the Tommys is a bit of a cheat. What I did was skin the cop with the player's skin (in memory), and then set the bytes for "spawn all peds as cops". Voila, every ped is a Tommy.

 

How do you skin in memory? Go to the block which starts at #7719544.

The first 6 chars should read "player". If not, then its not as static as I thought.

Copy the player block and overwrite the cop block (including the word "cop").

All cops spawned should now be Tommys (can still hit you with a baton though!).

To give Tommy a cop skin copy all the bytes from cop + 3 chars (= player)

and paste over the player block. You have to start a new game, so that Tommy picks up the new skin.

 

Note that, although you can completely overwrite other ped blocks with the player block, when you overwrite the player block with that of another ped, you have to leave the "player" label intact. Also note that the animations that go with a particular skin seem to be included, so that if I have the player set to run at 4x speed, the player-skinned cops also run at 4x speed.

 

Now comes the tricky part. At first I thought "Great, complete control over ped and player skins", but its not quite that simple. I tried outfitting Tommy army style - but no go. I got Tommy medics to arrive in ambulances, but the process overall seemed a bit hit and miss. It seems that you can only work with skins for objects that have already been created in some way. As I was trying this stuff down at Washington Beach, nowhere near the army base, there were no army objects in existence. That's my theory anyway.

I have more work to do on this.

It may be that code would have to check each block to determine whether it referred to a viable object and only then allow its use in a skinning operation. Non viable blocks are the same size, but don't have as many non-zero values as viable blocks.

 

Done so far....

Skinned Tommy as cop, civilian male 01, old shuffler guy

Skinned cops as Tommy

Skinned medics as Tommy

 

I hope this isn't too confusing.

Edited by Cowpat

Share this post


Link to post
Share on other sites
JernejL
First off, the picture with all the Tommys is a bit of a cheat. What I did was skin the cop with the player's skin (in memory), and then set the bytes for "spawn all peds as cops". Voila, every ped is a Tommy.

 

How do you skin in memory? Go to the block which starts at #7719544.

The first 6 chars should read "player". If not, then its not as static as I thought.

Copy the player block and overwrite the cop block (including the word "cop").

All cops spawned should now be Tommys (can still hit you with a baton though!).

To give Tommy a cop skin copy all the bytes from cop + 3 chars (= player)

and paste over the player block. You have to start a new game, so that Tommy picks up the new skin.

 

Note that, although you can completely overwrite other ped blocks with the player block, when you overwrite the player block with that of another ped, you have to leave the "player" label intact. Also note that the animations that go with a particular skin seem to be included, so that if I have the player set to run at 4x speed, the player-skinned cops also run at 4x speed.

 

Now comes the tricky part. At first I thought "Great, complete control over ped and player skins", but its not quite that simple. I tried outfitting Tommy army style - but no go. I got Tommy medics to arrive in ambulances, but the process overall seemed a bit hit and miss. It seems that you can only work with skins for objects that have already been created in some way. As I was trying this stuff down at Washington Beach, nowhere near the army base, there were no army objects in existence. That's my theory anyway.

I have more work to do on this.

It may be that code would have to check each block to determine whether it referred to a viable object and only then allow its use in a skinning operation. Non viable blocks are the same size, but don't have as many non-zero values as viable blocks.

 

Done so far....

Skinned Tommy as cop, civilian male 01, old shuffler guy

Skinned cops as Tommy

Skinned medics as Tommy

 

I hope this isn't too confusing.

i don-t have home computer at my hand atm, so i can-t see and try this stuff

but when i do, this will for sure make a editor for it.

 

btw, if you can find there ANY pointers to player textures.. even dxt data,

you know this is very close atm, you could do a lot of stuff with that!!

 

Share this post


Link to post
Share on other sites
DexX

 

I got Tommy medics to arrive in ambulances, but the process overall seemed a bit hit and miss. It seems that you can only work with skins for objects that have already been created in some way.

Yea. many, many pages ago, i posted address for changing various emergency people, like fireman, cops and the army, and the only way it worked, is if the model you wanted to change it to, was already loaded into memory. It works fine if you load the model into memory via main.scm, but otherwise, the game has its own model loading procedure (it has to). loading any model in the img, whenever you want, would have alot of potential.

 

 

I tried outfitting Tommy army style - but no go. I got Tommy medics to arrive in ambulances, but the process overall seemed a bit hit and miss. It seems that you can only work with skins for objects that have already been created in some way. As I was trying this stuff down at Washington Beach, nowhere near the army base, there were no army objects in existence. That's my theory anyway.

Actually, in one of my screenshots, i showed tommy, over the army skin, and yes they still used the army weapons.

Crap, i didn't upload that screen. but i did get it to work. Here's the topic page:

http://www.gtaforums.com/index.php?showtopic=117195&st=180

The actions (arresting, repairing a dead ped) and weapons, might be resolved with a pointer, so whatever player / pedestrian is at pointer xxxx, acts like ped type <whatever is assigned>.

Edited by ashdexx

Share this post


Link to post
Share on other sites
Cowpat

 

Crap, i didn't upload that screen. but i did get it to work. Here's the topic page:

http://www.gtaforums.com/index.php?showtopic=117195&st=180

The actions (arresting, repairing a dead ped) and weapons, might be resolved with a pointer, so whatever player / pedestrian is at pointer xxxx, acts like ped type <whatever is assigned>.

You got better screenshots than I did. Sorry I should have guessed that someone did it long ago blush.gif

 

Player doesn't pick up other animations, but does pick up the sounds (player made skating noise when skater). Other peds do pick up animations.

 

Delfi, i think i've got the basic pointer

At block start + 36, 4 bytes

overwrite with the ped of your choice, assuming ped already loaded

 

this is just what I could manage last night...

68F1 1C00 - petite woman, green waistcoat

28E8 1C00 - cop

A8EF 1C00 - black leather jacket, red t-shirt

28EF 1C00 - older man, green jacket

A8F7 1C00 - woman, white skirt and jacket

A8F1 1C00 - mid aged man, dark suit

E8ED 1C00 - fat woman, swim suit

28EE 1C00 - chick, swim suit

 

all static pointers so once we get a list of them we should be able

to insert them at will

 

once it popped the game, even tho the ptr looked valid

so there may be other factors involved

 

those pointers point to small blocks of more ptrs, so potential is there

for more exploration

 

managed at last to skin medic as cop by writing to bytes at 34,35 as well

as +36

Edited by Cowpat

Share this post


Link to post
Share on other sites
DexX

 

Player doesn't pick up other animations, but does pick up the sounds (player made skating noise when skater). Other peds do pick up animations.

Yea. probably since the player animations depend on user input. The game most likely overrides them. In theory, if you could find the right spot in memory, you could maybe assign player control to different peds..

Share this post


Link to post
Share on other sites
JernejL

Crap, i didn't upload that screen. but i did get it to work. Here's the topic page:

http://www.gtaforums.com/index.php?showtopic=117195&st=180

The actions (arresting, repairing a dead ped) and weapons, might be resolved with a pointer, so whatever player / pedestrian is at pointer xxxx, acts like ped type <whatever is assigned>.

You got better screenshots than I did. Sorry I should have guessed that someone did it long ago blush.gif

 

Player doesn't pick up other animations, but does pick up the sounds (player made skating noise when skater). Other peds do pick up animations.

 

Delfi, i think i've got the basic pointer

At block start + 36, 4 bytes

overwrite with the ped of your choice, assuming ped already loaded

 

this is just what I could manage last night...

68F1 1C00 - petite woman, green waistcoat

28E8 1C00 - cop

A8EF 1C00 - black leather jacket, red t-shirt

28EF 1C00 - older man, green jacket

A8F7 1C00 - woman, white skirt and jacket

A8F1 1C00 - mid aged man, dark suit

E8ED 1C00 - fat woman, swim suit

28EE 1C00 - chick, swim suit

 

all static pointers so once we get a list of them we should be able

to insert them at will

 

once it popped the game, even tho the ptr looked valid

so there may be other factors involved

 

those pointers point to small blocks of more ptrs, so potential is there

for more exploration

 

managed at last to skin medic as cop by writing to bytes at 34,35 as well

as +36

if the pointers to stuff go in default.ide order we could change them to selectable models..

 

btw, you should try the 'stilllikedressingup' cheat, what does that cheat do,

it may be close with this find.

 

Share this post


Link to post
Share on other sites
Cowpat

 

if the pointers to stuff go in default.ide order we could change them to selectable models..

 

btw, you should try the 'stilllikedressingup' cheat, what does that cheat do,

it may be close with this find.

ok, will check this over the weekend

 

in respect of the blocks at #7719544:

block +36 = skin

block +60 = animation

 

NB. to effectively skin and animate cop, medic, etc you may have overwrite bytes 34 and 35 also.

Edited by Cowpat

Share this post


Link to post
Share on other sites
Cowpat

all static pointers so once we get a list of them we should be able to insert them at will

 

err, not quite true. they don't vary much but they're not static

 

unfortunately

Share this post


Link to post
Share on other sites
ModelingMan

I have been trying to get car handling values, only found one so far which is the current car mass, quite tough to get the rest of them though.

 

Car Pointer + #184 > Float

Share this post


Link to post
Share on other sites
JernejL
I have been trying to get car handling values, only found one so far which is the current car mass, quite tough to get the rest of them though.

 

Car Pointer + #184 > Float

there are car-size values there as well. i don't know the exact offset but

they are same as in handling.cfg.

 

Share this post


Link to post
Share on other sites
Stretchnutter

 

I have been trying to get car handling values, only found one so far which is the current car mass, quite tough to get the rest of them though.

 

Car Pointer + #184 > Float

there are car-size values there as well. i don't know the exact offset but

they are same as in handling.cfg.

Me a bunch of pages back... this thread has become a mess tounge.gif

 

 

 

Ok well I've been at it all night.

 

My main goal was to find car acceleration and car speed limiter. I have an idea for a manual transmission mod.

 

I found this in someones readme for a vice trainer;

 

You get the current car pointer at 0x7E49C0 then add 0x120... this is the pointer to the handling data for the current car. Its in a very wierd order though and took me a couple tries to find what i needed.

 

In the Handling Block it starts off with an ID as a DWORD then next is MASS as a float. there are some other things there that you can match up with the handling.cfg file. But what i was looking for wasn't very blatent. I needed to modify the transmission data in realtime.

 

Handling Block + 0x7C = Drivetrain type [byte] - this must be a ascii character. The handling.cfg file says valid values are F/R/4

Handling Block + 0x7D = Engine type (has no effect?) [byte] valid values P/D/E

Handling Block + 0x7E = number of gears [byte]

Handling Block + 0x7F = ???flag??? [byte]

Handling Block + 0x80 = Acceleration [float] (very small number) put it too high and you will be stuck doing donuts tounge.gif

Handling Block + 0x84 = Speed Cap [float] (small number) only works on some cars?

 

 

 

BTW, this manual transmission idea has come to life... i already have a working 'prototype' ... the M/T mod will be included in the next version of my camhack.

 

Since then i've cracked the whole handling block:

 

user posted image

 

cheers

Edited by Stretchnutter

Share this post


Link to post
Share on other sites
ModelingMan

Thats great work there Stretchnutter, it would be great to see a manual transmission mod for VC.

 

I have been looking for the maximum velocity and engine acceleration, I notice you haven't found those addresses yet. But hopefully I can find them in the "Handling Block".

 

If you don't already know: Player Mass = Player Pointer + #184 > Float

 

Have you covered a "Player Block"?

Share this post


Link to post
Share on other sites
Cowpat

 

yet more from the tripe mines

 

all 1 byte to 00

 

6844659 vehicles don't stop for other vehicles,

plenty of rear-ending!

 

6844703 very few moving vehicles spawned, those

which do follow no path whatsoever

 

6847603 vehicles spawn and drive in middle of road, almost

Share this post


Link to post
Share on other sites
Stretchnutter

 

Thats great work there Stretchnutter, it would be great to see a manual transmission mod for VC.

 

I have been looking for the maximum velocity and engine acceleration, I notice you haven't found those addresses yet. But hopefully I can find them in the "Handling Block".

 

If you don't already know: Player Mass = Player Pointer + #184 > Float

 

Have you covered a "Player Block"?

are you blind?

 

well.. maybe just my list confused you... those entries are in the list as

 

Acceleration

Speed Limiter

Share this post


Link to post
Share on other sites
ModelingMan

are you blind?

 

well.. maybe just my list confused you... those entries are in the list as

 

Acceleration

Speed Limiter

Shortly after I posted I noticed "Acceleration", when I tried to edit my post GTAForums wouldn't load (which happens alot).

 

I was trying your addresses but they don't seem to work.

 

You get the current car pointer at 0x7E49C0 then add 0x120...

Are you sure that's right? My "handling block" starts at "Car Pointer + #180"

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • 1 User Currently Viewing
    0 members, 0 Anonymous, 1 Guest

×
×
  • Create New...

Important Information

By using GTAForums.com, you agree to our Terms of Use and Privacy Policy.