Jump to content
    1. Welcome to GTAForums!

    1. GTANet.com

    1. GTA Online

      1. The Criminal Enterprises
      2. Updates
      3. Find Lobbies & Players
      4. Guides & Strategies
      5. Vehicles
      6. Content Creator
      7. Help & Support
    2. Red Dead Online

      1. Blood Money
      2. Frontier Pursuits
      3. Find Lobbies & Outlaws
      4. Help & Support
    3. Crews

    1. Grand Theft Auto Series

      1. Bugs*
      2. St. Andrews Cathedral
    2. GTA VI

    3. GTA V

      1. Guides & Strategies
      2. Help & Support
    4. GTA IV

      1. The Lost and Damned
      2. The Ballad of Gay Tony
      3. Guides & Strategies
      4. Help & Support
    5. GTA San Andreas

      1. Classic GTA SA
      2. Guides & Strategies
      3. Help & Support
    6. GTA Vice City

      1. Classic GTA VC
      2. Guides & Strategies
      3. Help & Support
    7. GTA III

      1. Classic GTA III
      2. Guides & Strategies
      3. Help & Support
    8. Portable Games

      1. GTA Chinatown Wars
      2. GTA Vice City Stories
      3. GTA Liberty City Stories
    9. Top-Down Games

      1. GTA Advance
      2. GTA 2
      3. GTA
    1. Red Dead Redemption 2

      1. PC
      2. Help & Support
    2. Red Dead Redemption

    1. GTA Mods

      1. GTA V
      2. GTA IV
      3. GTA III, VC & SA
      4. Tutorials
    2. Red Dead Mods

      1. Documentation
    3. Mod Showroom

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

      1. Design Your Own Mission
      2. OpenIV
      3. GTA: Underground
      4. GTA: Liberty City
      5. GTA: State of Liberty
    1. Rockstar Games

    2. Rockstar Collectors

    1. Off-Topic

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

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

    2. Support

    3. Suggestions

*DO NOT* SHARE MEDIA OR LINKS TO LEAKED COPYRIGHTED MATERIAL. Discussion is allowed.

PS2 - Converting between v1 and v2, NTSC, PAL, and NTSC-J


zmoonchild
 Share

Recommended Posts

I can't seem to find a direct answer about this: for PlayStation 2, is it possible to switch between all the different versions and formats?

I have 3 different PlayStation 2's: NTSC-U/C, PAL, and NTSC-J. Is it possible to convert a saved-game between those formats?

Also, can v1 and v2 saved-games be converted? I uploaded a couple of files to gtasnp.com, and it does not give me the option to convert them.

Thanks

Link to comment
Share on other sites

I have no information on NTSC-J. If I had access to Japanese saves and the main.scm/script.img files I might be able to provide more information.

 

It is not necessary to "convert the saves" between the same versions of NTSC-U/C and PAL; the scripts and save format are identical. The folder name holding the saves is different. Move the save into the appropriate folder and it will work as expected. Unfortunately, the only tool I know of that can manipulate PS2 saves, PS2 Save Builder, always generates a trojan warning on modern virus protection programs. It is my understanding that the trojan exists, but when watched within a quarantined virtual machine the trojan appeared to be benign. Just to be safe, I'd run it in a VM if I went this route again. The PS2 emulator community may have more current information on manipulating PS2 saves.

 

Converting between v1 and v2 PS2 saves may be possible but it is not practical. Converting between v1 and v2 PC save was relatively easy as the main difference is that the main thread within the main script is a slightly different size, which throws off the offsets of the other active threads. Tweak those offsets and everything seems to work normally. Look more closely and you'll also notice issues with the IPL flags used to control grouped objects like the bridge barriers - easy enough to tweak. Modern conversion utilities also adjust the size of main value stored within the save so other utilities can properly detect the altered version, but the game doesn't care and will fix it with the next save.

 

The main problem with converting PS2 saves is that all of the global variables are different. Most versions start with Player Character as global variable $2, but on PS2v2 it starts with $6. I've got the global variables mapped for PC, PS2 v1 and v2, and mobile, so I could probably cut and paste the global variable space appropriately, but any global variables that exist within running threads would also need to be adjusted as those codes are stored within the save. Which leads to the biggest potential problem - If any variation exists within any of the threads that might be running the game will crash when the code is executed. Rather than try to manipulate compiled code I figured it'd be easier to swap out all the threads with copies from the other version - which will fix any issues with the global variables within the threads.

 

I don't know how to manipulate threads with an editor. But it is possible to manually convert PS2 saves to PC format and run them with PS2 scripts, and then shut down and relaunch threads with cleo. Except for the main thread. If I relaunch main it starts a new game and ruins the original save information. Maybe we could get around this issue with a custom main script, or edit the main thread within the save, but this is basically where I got stuck with PS2 to PC conversions. I suspect there are serious differences with the threads but I haven't checked.

 

I think conversion is possible, but the complexity of the matter makes it impractical. And the brutality of the process makes me feel like the end product is more of a Frankenstein save cobbled together from dead parts than a true conversion. But then again, maybe that would be the more practical process. Rather than try to convert the save, analyze it and build a save with appropriate progress, and then copy in the player's garages, stats, and player properties.

Edited by OrionSR
Link to comment
Share on other sites

Thanks for the information. It's very helpful.

Here are those files:
NTSC-J main.scm https://www.mediafire.com/?y8vahr8vkg4wrvr
NTSC-J script.img https://www.mediafire.com/?1g0akp1uagtiqmc
NTSC-J saved game folder https://www.mediafire.com/?n2zjwcsbuut1901
NTSC-J saved game http://gtasnp.com/mfKVXn

Oddly, gtasnp recognized the game as a PC game. Not a PS2 game.

Link to comment
Share on other sites

Perhaps PC is the default detection if other strategies fail. I'll try to make Samutz aware of the format.

 

Version ID matches PS2v1 - 4C DC 1D 64, 641DDC4Ch

Save Name uses 16 bit (unicode) characters. When my 010 template for SAPS2 was adjusted from 100 char to 100 wchar_t the rest of the save parsed as expected.

Size of Main is 195718 located at offset B5B4h from the start of the file.

 

IPL flags appear to be unique. Flags 2 and 3 are probably barriers 1 and 2, and flag 79 is probably the pre-YKBB "crack" factory objects, An End of the Line save will reveal the Carter objects behind the smash wall. The flag for Truth's crops is usually enabled and disabled during the mission, but if you start a new game while the crops are active during the mission they will persist in the new save.

 

There are only 49 garages active instead of 50. The unused PnS in LV was probably disabled like it was on PS2v2.

 

The scripts appear similar to PS2v2 but main.scm is a different size (3,101,217 bytes). The original file date was not preserved. Like PS2v2 the global variables start with the player character at $6, and they added the missing icons we are are familiar with on PC, but they also added an icon for the unmarked barber in El Quebrados.

04CE: $2600 = create_icon_marker 7 at -1451.0 2595.0 16.8 

The new blip uses an extra global variable so subsequent Japanese globals are offset by 1 until... half way through the quarry mission when things sync up at the array at $8185.

 

PS2-J has 1 fewer missions; the Pimping mission has been completely removed, and global variables $8249 and $8250 went with it, so the PS2-J globals appear to end up offset by -2 through the end.

 

I noticed from the SnP report that this save has a max armor value of 200, and this doesn't seem to be an issue with an altered format. Is 200 normal? Can CJ end up with less than full armor after completing vigilante?

 

Anyway, conversion won't be easy. Did I answer your questions?

Link to comment
Share on other sites

So, simply moving the save into the appropriate folder probably won't work when switching between the NTCS-J format and other formats, or at least not that easily. There will probably be errors, I assume. I'll probably give it a try myself to see what happens.

 

I'm not sure about the max armor value. Unfortunately, I have not played the Japanese version that much, so I don't know all differences yet. I do know that Drug Dealers do not carry any money.

 

I also noticed that the 100% Checklist on the gtasnp page was listing several items incorrectly, but that has now been removed. It appears that Samutz already made the correction for the NTSC-J format.

 

I know that on the PC version, the unused Pay & Spray in LV does function in an unmodified game. I've tested it myself by teleporting CJ and a vehicle inside of it. The only thing that doesn't work on it is the door; it remains sealed. Otherwise, it's fully functional. I assume the NTSC-J version is similar.

 

Off topic, I have played your Chain Game for the PS2, and sometimes I get a "disc-read" error. If it happens, it usually happens after playing for at least several minutes. The game will lock up for about 10 seconds or so, and sometimes the game will completely freeze. I'm still checking to see if it might be a hardware issue, but I didn't see anyone else in your official topic saying they have the same problem. Could the disc-read error be the result of the mods?

 

Thanks

Link to comment
Share on other sites

If I was to take a PS2v1 save, change the version ID to version 2, increase the size of the save name field to 200 bytes and format the save name with unicode characters, reduce the global and weather timers to 0, trim 100 bytes from the end of the file, and fix the checksum, the save would probably load on the Japanese version and function somewhat normally until the timers catch up to the last save time and the threads wake up again. I'm not sure it's possible to convert the script block; it would be much easier to adjust the Japanese script block to the same state as the western script block.

 

Most of the mission progress analysis uses global variables, and the PC variables are even more out of whack than the PS2v2 comparison described above, so little of the report would have been valid. Samutz has updated the site to detect Japanese PS2 saves; that should prevent the site from making inappropriate modifications and fixes, or providing erroneous data. Can you confirm that the Japanese save name uses the conventional PS2 format of <slot#><space><space><Save Name>?

 

What were the original file dates and times for MAIN.SCM and SCRIPT.IMG?

 

Your experience with the unused PnS is valid for most versions, but not PS2v2, or apparently PS2-J It was easy to see that only 49 garages are active, I didn't verify which was eliminated.. In PS2v2 the IPL line that generates the unused PnS is missing - this throws off some of the offsets for the garage properties, but not the garage contents.

 

I can't think of anything in the CG4PS2 saves that might cause a disc read error. Actually, I am unaware of anything that could do that, but my modifications are all fairly basic. Mostly repurposing things that are in the game anyway. No one else has ever reported the same problem. BTW. if your goal is to port CG4PS2 to Japan it would be much easier to create a completely new save with the same features.

Edited by OrionSR
Link to comment
Share on other sites

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
 Share

  • 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.