Jump to content

good saves for the PS2?


Recommended Posts

Manual Hex Editing - editing the save file using a hex editor.

 

The information stored in the of the save files is almost exactly the same on PS2 and PC, and this structure is very well documented Wiki for SA Saves. If you wanted to change something on a PS2 save that couldn't be changed with AR-Max codes you could open the .b save file with hex editor, change the appropriate bytes manually, adjust the checksum at the end of the file, and then load the save.

 

An example would be changing the max wanted level. I don't think we ever identified where this information was stored in memory but it isn't hard to find in the save. Change the 4 to a 0, subtract 4 from the checksum, and you're done. Another example would be fixing the Madd Dogg Glitch. This information is stored in dynamic memory so it isn't in the same place in memory and can't be adjusted with AR-Max codes. This fix requires changing a dozen or so bytes so it would be easier to use pdescobar's SA Checksum Fix utility to calculate the new checksum.

 

Block Copy - using copy and paste in a hex editor to move large sections of data from one save to another.

 

The different sections of memory stored in a save file begin with the keyword BLOCK. Hence the name, block copy. One of the first edits I tested on PS2 saves was to copy the entire garage block from our modified PC save and pasted it directly the same block in a PS2 save. It worked! Then I copied the car generator block to the PS2 save. Since we had added lots of extra vehicles this block was larger than the original so I had to trim the slack at the end of the save to maintain the proper file size. This is basically how I made all of the changes to the Chain Game for PS2 save.

 

Script and IPL Editing - Changing the data files used to the create the save.

 

This process doesn't work well on PS2 because changes will need to be written to the disc, burned in a special format, and run on a PS2 with a mod chip installed. Not only is this extremely difficult, it may also be illegal, so let's just dump this into the area of can't/won't work and forget about it. On PC, we can decompile the game scripts into a programming language which is much easier to read and adjust than the hex code found in memory or save files. The IPL files used to create garages and make enex connections are in plain text and fairly easy to modify. The main advantage to this method is that it is much easier to make and test large scale modifications.

 

Modding with CLEO - A process that allows programming changes and direct memory writes.

 

When rubregg joined the Chain Game Development Team we abandoned the process of modifying the scripts and data files and now use CLEO to make all of the changes. Cleo functions (to the best of my understanding) in a manner similar AR-Max in that it runs side by side with the game and scripts. You can set it to run a certain section of code when a button is pressed or certain conditions are met. The codes often look very similar to game scripts, but in many cases it is easier to write data directly into memory. I learned quite a bit from our experiments with coding in AR-Max.

 

Globals and Indexing - Maintaining compatibility between saves and scripts.

 

 

014B: $2194 = init_parked_car_generator #NRG500 color -1 -1 1 alarm 0 door_lock 0 0 10000 at 1174.467 1368.359 10.1203 angle 283.0546 

 

The line above creates the NRG-500 parked at the bike school. $2194 is the global variable used to identify this vehicle so when the bike school is completed for gold the bike can be displayed with the code shown below.

 

 

014C: set_parked_car_generator $2194 cars_to_generate_to 101 

 

When the vehicle is created the game will put the bike in the first available memory slot and record the index number of this slot in the global variable. When the game is saved the index number of the vehicles are recorded just before the data so the vehicles can be put back into the same place when the save is loaded.

 

The reason I bring all this up is that although my block copy of the car generators appeared to work, I would soon run into trouble if I tried to play missions with this save. For starters, the global variables are sometimes different than the PC globals on PS2v1, and always different on PS2v2. Also, the index is different on different versions, and is also different on the same version depending on whether or not the save was started after loading an existing save. So as I play through the game and the combines, vortexes, karts, aircraft, exports, and reward vehicles are displayed or hidden it is difficult to predict which vehicles will get modified. However, it is possible. Everything can be predicted and adjusted. It just requires a lot of planning and research to either adjust the index numbers stored in the globals, or to put the vehicles in the appropriate slot so they get matching index numbers.

 

 

the "activate all garage" code was made by OrionSR..so it should work just perfect over his savefile,however i dont remember if it was tested...OrionSR did alot of code porting in a short period of time in "code creation" topic ...i havnt tryed them all yet. hum..i shall go in code dreation topic soon and post report of thoses i tested working,i should have done so earlier....skils,if u dont mind,can u report thoses u tested aswell.

Double post, I know, but this is a completely different subject.

 

IIRC, the garage codes I posted for PS2v2 were specific to the default version of new releases of SA for PS2. When Rockstar updated their game they removed the unused Pay'n'Spray in LV from the data files. This means that garage is missing so all garages that are added after the unused PnS are one record length ahead of where they would be predicted based on the standard offset from PS2v1. When I posted the codes I most likely calculated the correct offsets for default PS2v2.

 

However, when I made my modifications to the PS2v2 save I put the unused PnS back in and moved it to the LV Disco. This means that the offsets for the last 17 garages are probably different on my modified save for SA PS2v2. It shouldn't be difficult to work out the changes. Below is a list of the last few garages.

 

Pay 'n' Spray near Royal Casino (unused PnS)

Transfender in come-a-lot

Player Garage: Rockshore West

Welding Wedding Bomb-workshop in Emerald Isle

Pay 'n' Spray in Redsands East

Player Garage: Redsands West

Player Garage: Prickle Pine

Player Garage: Whitewood Estates

Pay 'n' Spray in El Quebrados

Pay 'n' Spray in Fort Carson

Player Garage: Fort Carson

Player Garage: Verdant Meadows

Mission Garage in El Castillo del Diablo (Interdiction)

Airport Garage in Verdant Meadows

Mission Garage in Angel Pine (Puncture Wounds)

Pay 'n' Spray in Dillimore

Player Garage: Palomino Creek

Player Garage: Dillimore

 

 

 

let me see if i get it, the pay n' spray that's in the v1 game but closed in the v2 game, is opened or changed in your modded saves of the v2.

also, can u give me the link to your saves, because i forgot what topic i was in when i down loaded them the first time.

Edited by skills

Um... I'm not sure if you got it right or not. I'll try again.

 

On PC v1 and v2, and on PS2 v1, there are 50 garages. The unused PnS in LV is active, but the door won't open.

On PS2 v2 they removed the data line for the unused PnS so there are only 49 garages.

On the Chain Game saves I moved the unused PnS behind the LV Disco so it could be used.

 

The garage unlock codes I posted should be accurate for default PS2v1 and the Chain Game save for v1.

The garage unlock codes should be accurate for the default version of PS2 v2.

 

There are 50 garages in the Chain Game save for PS2 v2 because I put the unused PnS at the the disco, so...

If you use the code to unlock the Dillimore garage you'll probably unlock the Palomino garage instead.

To find the correct memory address for the Dillimore garage you will probably need to add 0xD8 (216) to the code I posted.

The same thing would apply to all garages found after the unusued PnS; the list is post above.

 

However, this only applies to unlocking, resizing, moving, and naming the garages. The contents of the garages are stored in a different location and are not affected by this change.

 

Links:

OrionSR's Files at Filefront

Cheat Code Creation Topic

Chain Game for PS2 Topic

 

It would be a good idea to grab the filefront files while you can. I don't have any plans to find a new host at this time. Don't forget to nab the Checksum Fix utility in case you want to experiment with hex editing the save files.

Edited by OrionSR
  • 1 month later...
  • 3 years 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
  • 0 User Currently Viewing
    0 members, 0 Anonymous, 0 Guests

×
×
  • Create New...

Important Information

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