Jump to content

Is there a away to mod handling ingame.


Skyforger

Recommended Posts

How to mod handling in-game ? at least with game still running in background, otherwise it is pain to load it all the time.

 

Thnx.

Link to comment
Share on other sites

Yeah, just find adresses for it, than make your script, which will change than...

Link to comment
Share on other sites

  • 2 weeks later...
  • 3 months later...

Sure, the handling data for every vehicle model has a static offset, so it's not very hard to change it. For some changes to take effect, the model has to be unloaded before (e.g. mass).

Link to comment
Share on other sites

Use a program like CheatEngine or ReClass to find a few memory-addresses associated with the vehicle handling and reversing the associated class.

 

Then changing the handling in-game is as easy as setting up a pointer to the right place smile.gif.

 

If you don't know how to go about this, just google for "CheatEngine", there are a lot of tutorials. ReClass can also help smile.gif.

 

In the end you'll have a list containing the properties of the class (CVehicleInfo, or whatever you want to call it). Example: http://www.gtamodding.com/index.php?title=...%29#CWeaponInfo . You can then use this to change the values in your script my creating some pointers smile.gif.

 

If you reverse the class, it would be very kind to list the info on the wiki (like I did with CWeaponInfo), this helps other modders smile.gif.

Link to comment
Share on other sites

Drunk Russian 9

I see. I'm not a scripter by any means, so it would be challenging to find all the addresses associated. I was hoping it was easier to do sad.gif oh well, I might try it on my free time, who knows. Thanks for the pointers guys.

Link to comment
Share on other sites

Thnx for that, but any chance somebody could help ? or point out right direction ?

I don't even know where to start and what to do.

Link to comment
Share on other sites

I already pointed out the right direction. There are lots of tutorials for CheatEngine (CE), and it's a really easy program to work with. Explaining how CE works is beyond the scope of these forums IMHO. Have a look at these forums instead: http://forum.cheatengine.org/viewforum.php...95fd182adcb3a1d

 

How I did the reversing was as follows:

1. You open the Handling.dat file.

 

2. You change a value to a very unique value. For example you could change a vehicle's weight to 1337.86.

The reason you do this is as follows: the standard value will be something like "100". The value "100" is a pretty 'standard' value and will be used a lot for all sorts of different things in IV's memory. If you scan IV's memory you will probably end up with thousands of hits for the value "100". Now, the value "1337.86" is much more unique. You will probably end up with only one hit when you scan IV's memory. Which is nice, because you'll have the right memory address in an instant.

 

3. You start up GTA.

The game will load in all the necessary parameters, among them your special value. The value will be stored somewhere in-memory. You're gonna find out where smile.gif.

 

4. You start up CE and you scan for your special value.

It will probably end up with one hit. If not, you can rescan - the values sometimes change. Write down the memory-address. Do a pointer-scan for this address, so you will have it the next time you startup IV. Note: this will be the only time you need to do a pointer-scan smile.gif.

 

5. With IV and CE open, you open up the Handling.dat file. You have a look at the vehicle you're researching (though all vehicles are probably pretty much the same in-memory). Then have a look at the memory-region where you found your value. You can use CE's memory-viewer, or another program (like OllyDbg).

Doing this, you can find out if other values are stored near the first value. Using this knowledge you can make a list of properties and their offsets. Note the Endianness though! On pretty much all PC's data is stored in little-endian, which means it's written down "backwards".

 

6. Make a list of the properties and their offsets. You're actually documenting the in-memory form of the class now.

7. If you get stuck, repeat step 1 - 4. You don't need to pointer-scan again, you already have a pointer-path smile.gif.

 

8. Use the knowledge you gained above to create a class in a language of your choice. You can point the properties to the right addresses now, so now you can change the values in-game smile.gif.

 

 

If you don't understand what I just wrote, I suggest you read up on CheatEngine, how computers store data in-memory and pointers.

Edited by thaCURSEDpie
Link to comment
Share on other sites

Thnx a lot will be trying it now and reading the tutorials.

 

I am hoping if i find the properties and their offsets and list the, some kind person will make a script for them to change the values inside the game, with some simple gui.

 

What value type should i search for ? can't seem to find it. ( might be coz the number was to large)

I did managed earlier i found 4 numbers like my chosen i changed them all but there was no change in handling.

halp confused.gif

 

How do i make sure my memory is rewritable ? i do have xlive.dll i found somewhere claiming u must have it to make memory writable.

Edited by Skyforger
Link to comment
Share on other sites

lindsayslorach

What types are you searching? I'd first try 4 bytes and floats.

 

If you manage to get the memory address/pointers and figure out the structure, I'll gladly give it a go at making a script for in-game editing.

Link to comment
Share on other sites

Hey guys!

 

Some nights ago I had a look at the CVehicleInfo class (that's what I call it). It was pretty easy figuring out most of the properties using Cheat Engine, but mostly ReClass (RC). That program really is the bomb. From now on I won't be doing anything related to this topic without RC. Seriously, it owns.

 

You can download the RC file here: http://dl.dropbox.com/u/9652939/CVehicleInfo.rdc

 

It is to be opened with ReClass. NOT ReClass 2011. Download ReClass here: http://www.ucdownloads.com/downloads/downl...do=file&id=2808

 

The static offset from gtaiv.exe's base address is listed in the comment section of the class.

 

EDIT:

I updated the GTA:IV memory addresses section on Gtamodding.com to also hold info on the CVehicleInfo class smile.gif. Have a look here: http://www.gtamodding.com/index.php?title=...29#CVehicleInfo

 

Note: I haven't been able to document *all* the parameters yet.

Edited by thaCURSEDpie
Link to comment
Share on other sites

  • 4 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • 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.