Some games sign their save files with a "non-roamable" option enabled. That means that the save file uses the console-specific XboxHDKey (HDD Key) of the console's EEPROM, or in other words, can't be transferred to another console without additional actions.
To be able to transfer the save file of such game to another console, you need either to resign the save file with the XboxHDKey of a target console, or patch the game executable to disable the signature checking altogether.
Resigning Save Files
The most popular tool for resigning the save files is XSavSig005 (download). It has a built-in configuration for some of the listed games. For the rest of the games there's an additional configuration provided which has to be added to the resign.ini file. For any games that rely on an HDD key for signing (such as Phantasy Star Online), your console's HDD key must be present in hddkey.ini, or signing will not be successful. You can determine this by checking resign.ini, any game with 'SigType=NoRoam' will require an HDD key present for signing. Key retrieval instructions for the Original Xbox and Xbox 360's Backwards Compatibility emulator can be found here.
(Take a note that XSavSig005 also has a built-in configuration for some games with regular save files. In this case, it can be used if you want to tinker with the contents of the save file and resign it after. Those games are 000: Agent Under Fire, Deathrow, Midnight Club 2, Midtown Madness 3, MotoGP, NFS: Hot Pursuit 2, NHL 2K3, Outlaw Golf, Panzer Dragoon ORTA, SegaGT 2002, Spider-Man, The Hulk, The Italian Job, The Wild Rings, TransWorld Surf, Wakeboarding Unleashed. This is a common misconception to consider those games as having non-roamable save files.)
For Forza Motorsport, there's a separate standalone resigner called ForzaSign (download).
Patching Game Executables
Another way to solve the problem is to patch the game executable to disable signature checking. By doing so, you can just transfer a save file to the console and launch the game, without needing to obtain the XboxHDKey and resign the save file every time you move it to another console. The only drawback is that it's mandatory to have a modded Xbox to run the patched executable.
For patching the executable, you'll need to open a default.xbe file from the game directory with any HEX editor and change some bytes at the given offset as described.
Games List
| Game | Save file resigning | Game executable patching |
|---|---|---|
| Armed & Dangerous | feudalnate's resigner XSavSig005 with feudalnate's config |
|
| Black | feudalnate's resigner XSavSig005 with feudalnate's config |
Offset 0x1E2E01, replace byte 74 with EBDetailed article |
| Burnout 2 | XSavSig005 Signing must be done in the correct order, details are in the readme. | |
| Burnout 3 | feudalnate's resigner XSavSig005 with feudalnate's config |
NTSC version: Offset 0x8639, replace byte 74 with EBPAL version: Offset 0x8749, replace byte 74 with EB
|
| Call of Duty: Finest Hour | feudalnate's resigner XSavSig005 with feudalnate's config |
|
| Dead or Alive Ultimate | feudalnate's resigner XSavSig005 with feudalnate's config |
|
| Dead or Alive 2 Ultimate | feudalnate's resigner XSavSig005 with feudalnate's config |
|
| Dead or Alive Xtreme Beach Volleyball | XSavSig005 | |
| Far Cry Instincts | feudalnate's resigner (Maps and Saves) XSavSig005 with feudalnate's config (Saves only) |
|
| Far Cry Instincts: Evolution | feudalnate's resigner (Maps and Saves) XSavSig005 with feudalnate's config (Saves only) |
|
| Fatal Frame / Project ZERO | feudalnate's resigner | |
| Fatal Frame 2 / Project ZERO 2 | feudalnate's resigner | |
| Flatout | feudalnate's resigner XSavSig005 with feudalnate's config |
Offset 0xBAB15, replace bytes 75 19 with 66 90;Offset 0xBB31E, replace bytes 75 49 with 66 90
|
| Flatout 2 | feudalnate's resigner XSavSig005 with feudalnate's config |
Offset 0x11D445, replace bytes 75 19 with 66 90;Offset 0x11DC7E, replace bytes 75 49 with 66 90
|
| Forza Motorsport | ForzaSign Multiple reports of failure to re-sign. Requires the source and destination console's HDD keys, will give a warning and terminate if the source key is incorrect. | |
| Gladius | feudalnate's resigner | |
| Grabbed by the Ghoulies | feudalnate's resigner XSavSig005 with feudalnate's config |
|
| Half-Life 2 | feudalnate's resigner | |
| Hitman Contracts | feudalnate's resigner XSavSig005 with feudalnate's config |
|
| Jet Set Radio Future | feudalnate's resigner XSavSig005 with feudalnate's config |
|
| Mafia | feudalnate's resigner XSavSig005 with feudalnate's config |
|
| NFS: Most Wanted | feudalnate's resigner | |
| Ninja Gaiden | feudalnate's resigner ResponsibleAnteater's XSavSig005 config |
|
| Ninja Gaiden Black | feudalnate's resigner ResponsibleAnteater's XSavSig005 config |
|
| Phantasy Star Online | XSavSig005 Must be SigType=NoRoam under PSO heading in resign.ini, not NoRoam=1. You must also sign ALL files within the save that start with 'PSO', not just the system file. | |
| Project Gotham Racing 2 | feudalnate's resigner XSavSig005 with feudalnate's config |
|
| Richard Burns Rally | feudalnate's resigner | |
| Splinter Cell: Chaos Theory | feudalnate's resigner XSavSig005 with feudalnate's config |
|
| Splinter Cell: Double Agent | feudalnate's resigner XSavSig005 with feudalnate's config |
|
| Splinter Cell: Pandora Tomorrow | feudalnate's resigner XSavSig005 with feudalnate's config |
|
| Star Wars: Republic Commando | feudalnate's resigner XSavSig005 with feudalnate's config |
|
| Steel Battalion: Line of Contact | feudalnate's resigner XSavSig005 with feudalnate's config |
|
| Tron 2.0: Killer App |
Forza Motorsport
Multiple reports of failures trying to re-sign Forza saves can still be found online. The app works only to the extent that it can tell you if you have the original HDD Key correct or not. If it is correct, it will try to proceed to re-signing, so you know the HDD key is correct.
After this it will fail to re-sign saying it cannot find data within the directory. It is possible there have been updates to Forza and it only supports one format of save game(?).
It is also important to note that it requires you to re-sign each profile individually and it will not re-sign leaderboard data you may have from local time trials and the like.
It is highly recommended to use a modchip or TSOP flash before attempting this:
What works flawlessly is simply changing the Xbox HDD key to the one the saves were signed with.
Softmodded consoles can be changed to the original HDD Key through "Config Magic" (e.g.: on Slayer's Auto Installer disc), since most softmods will set the key to 1s.
Need to be very careful when working with this app, as it will sometimes mess with the HDD Key or Video Region, so be sure you backup the EEPROM of the new motherboard on a PC/USB drive.
Always double check everything is correct and don't forget to Lock the HDD before resetting the system. In case of failure on setting the HDD Key, if it was correct then Config Magic sets "TEAMASSEMBLY" as the master password that can be used to unlock the drive on PCs and extract the data.