Free Gibbed's Mass Effect 2 Save Editor

Discussion in 'Xbox 360 Tools' started by XanderChaos, Feb 15, 2010 with 175 replies and 248,498 views.

  1. XanderChaos

    XanderChaos Experienced Member

    Messages:
    354
    Likes Received:
    288
    Gibbed was kind enough to make a rather detailed save editor for Mass Effect 2. As usual, though, he didn't bother to add Xbox 360 support. A quick edit and now it does work on the 360. You have to extract your individual xbsav files from your careers for this to work. Maybe I'll add career support later, but for now this is just a quick fix.

    Have fun. You can get the source here since I believe Gibbed GPL'd his programs.

    Download Gibbed's ME2 Editor (X360).zip (Not reuploading, get Pordis Shepard's version.)

    EDIT2:
    An improved version of the editor can be found here. Thank Pordis Shepard for the improvements.
     
  2. i like coupons

    i like coupons Enthusiast

    Messages:
    261
    Likes Received:
    28
    thanks man needed this
     
  3. UhQ

    UhQ Getting There

    Messages:
    1,276
    Likes Received:
    118
    Whenever i open a save i get "See the end of this message for details on invoking
    just-in-time (JIT) debugging instead of this dialog box.

    ************** Exception Text **************
    System.InvalidOperationException: somehow I doubt there is a >1MB string to be read
    at Gibbed.MassEffect2.FileFormats.StreamHelpers.ReadStringUnreal(Stream stream)
    at Gibbed.MassEffect2.FileFormats.UnrealStream.Serialize(String& value)
    at Gibbed.MassEffect2.FileFormats.SaveFile.Serialize(IUnrealStream stream)
    at Gibbed.MassEffect2.FileFormats.SaveFile.Load(Stream input)
    at Gibbed.MassEffect2.SaveEdit.Editor.LoadSaveFromStream(Stream stream)
    at Gibbed.MassEffect2.SaveEdit.Editor.OnOpen(Object sender, EventArgs e)
    at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
    at System.Windows.Forms.ToolStripButton.OnClick(EventArgs e)
    at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
    at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
    at System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
    at System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
    at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
    at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
    at System.Windows.Forms.Control.WndProc(Message& m)
    at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
    at System.Windows.Forms.ToolStrip.WndProc(Message& m)
    at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
    at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
    at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


    ************** Loaded Assemblies **************
    mscorlib
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.3603 (GDR.050727-3600)
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
    ----------------------------------------
    Gibbed.MassEffect2.SaveEdit
    Assembly Version: 1.0.0.24
    Win32 Version: 1.0.0.24
    CodeBase: file:///C:/Users/Kalvin/Desktop/Mass%20Effect%202/Gibbed.MassEffect2.SaveEdit.exe
    ----------------------------------------
    System.Windows.Forms
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
    ----------------------------------------
    System
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
    ----------------------------------------
    System.Drawing
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
    ----------------------------------------
    Gibbed.MassEffect2.FileFormats
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Users/Kalvin/Desktop/Mass%20Effect%202/Gibbed.MassEffect2.FileFormats.DLL
    ----------------------------------------
    Accessibility
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/Accessibility/2.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
    ----------------------------------------
    System.Xml
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.3074 (QFE.050727-3000)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
    ----------------------------------------
    Gibbed.Helpers
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Users/Kalvin/Desktop/Mass%20Effect%202/Gibbed.Helpers.DLL
    ----------------------------------------

    ************** JIT Debugging **************
    To enable just-in-time (JIT) debugging, the .config file for this
    application or computer (machine.config) must have the
    jitDebugging value set in the system.windows.forms section.
    The application must also be compiled with debugging
    enabled.

    For example:

    <configuration>
    <system.windows.forms jitDebugging="true" />
    </configuration>

    When JIT debugging is enabled, any unhandled exception
    will be sent to the JIT debugger registered on the computer
    rather than be handled by this dialog box."
     
  4. GodOfWine

    GodOfWine Newbie

    Messages:
    10
    Likes Received:
    1
    Not sure on that one, it's been working great on my end.

    Only thing to note is that you still need to use the Checksum tool on the save after you've saved it.
     
  5. idlehands88

    idlehands88 Contributor

    Messages:
    999
    Likes Received:
    372
    I haven't used the Checksum tool on my saves that I use in the Editor. So far they all work. I think the editor fixes the checksum.
     
  6. XanderChaos

    XanderChaos Experienced Member

    Messages:
    354
    Likes Received:
    288
    It does fix it.

    z D4rK ANG3L z, are you sure you're opening a .xbsav?
     
  7. gibbed

    gibbed Enthusiast

    Messages:
    94
    Likes Received:
    221
    Would you mind uploading a copy of a 360 ME2 save somewhere so I can take a look? I don't have a problem with adding support, I don't really play games on the 360 so console support is usually never something I think about.

    I'm not sure what's required for accessing save content on the 360 either, are they encrypted? If so, I'm guessing editing save content requires a modded 360?
     
  8. GodOfWine

    GodOfWine Newbie

    Messages:
    10
    Likes Received:
    1
    Correct you are, sorry I misspoke on that. That was another save I had done additional editing to in a hex editor and didn't checksum that came up corrupt. The editor does checksum.

    Gibbed: This is an awesome tool. I attached a 360 save for you to look at. This is the entire container file, so Le Fluffie or a similar program would be needed to extract the .xbsav file that you edit. And no, you don't need a modded 360 for these to work.

    Are there any updates planned for this tool? So far the only thing I still need to do manually is unlimited ammo on the weapons.
     
  9. XanderChaos

    XanderChaos Experienced Member

    Messages:
    354
    Likes Received:
    288
    I'm adding the contents of GodOfWine's save to this post. I wouldn't bother with GodOfWine's save (no offense) since your editor doesn't need to deal with CON files (the standard container format on the 360). The only apparent difference is the endian.

    Just as an FYI, you don't need a modded 360 nor are the contents encrypted. The only thing is the Xbox 360 container, which comes in 3 formats (CON, LIVE, and PIRS). If you wanted to add support to reading the container directly, you'd probably want to add rehashing/resigning of the containers after editing, which would be a major hassle for you.
     
  10. gibbed

    gibbed Enthusiast

    Messages:
    94
    Likes Received:
    221
    Thanks, I figure as much as the endian being the only difference, I just want to make sure there's no other differences. I read a few posts on this forum indicating people were editing their saves already and making them valid again with rehashing -- that indicates that the CRC in the save files is either not present or unused on the 360 version (I have not looked at the save you posted yet).

    Since I don't want to go hunting for this information myself, would you mind pointing me to information about how to do this CON stuff that I could go over? If I add support, I'd like to be able to point people who want to edit their 360 saves in the right direction.
     
  11. XanderChaos

    XanderChaos Experienced Member

    Messages:
    354
    Likes Received:
    288
    For some detailed, though slightly inaccurate info on the format, check here. As long as your editor can read xbsav files, you simply need to tell Xbox 360 users to extract/replace the xbsav files from their ME2 careers using programs such as Le Fluffie or Modio. They can drag'n'drop their careers into either program, extract the save they wish to edit, use your app, inject it back into the career file, and click the button for rehashing/resigning.

    If you are interested in adding CON support without much hassle, DJ Shepherd created a class for CON creating/editing.

    EDIT:
    Oh, and the checksum is still present in the 360 version.
     
    1 person likes this.
  12. gibbed

    gibbed Enthusiast

    Messages:
    94
    Likes Received:
    221
    Not interested in adding CON/etc support if there are well established tools already to do that, just wanted to know how things were done. :smile:

    Thanks for the help XanderChaos, I've already rigged in proper big endian support.
     
    1 person likes this.
  13. XanderChaos

    XanderChaos Experienced Member

    Messages:
    354
    Likes Received:
    288
    Thanks for popping in here and offering to add big endian support. Let me know when the next revision is out and I'll make sure to swap out the unofficial version in the first post.
     
  14. sex123

    sex123 Enthusiast

    Messages:
    30
    Likes Received:
    5
    great mod tool much faster than hex editing myself
     
  15. GodOfWine

    GodOfWine Newbie

    Messages:
    10
    Likes Received:
    1
    No offense taken. I didn't think to run it through first and break the files out. Wanted to help however I could.

    Good work to both of you on this

    EDIT: Just wanted to note that after fooling with this tool more I found that you can alter weapon ammo, add weapons, powers and so on (Look in raw data)...so this tool is amazing :smile:
     
  16. lallas

    lallas Newbie

    Messages:
    2
    Likes Received:
    0
    does changing weapons under (raw data) add them to your inventory?
     
  17. idlehands88

    idlehands88 Contributor

    Messages:
    999
    Likes Received:
    372
    It doesn't add the weapon to your inventory, it just replaces that weapon with whatever weapon you want, you also have to edit your Loadout in the RAW Data also for it to work (otherwise the game will equip the weapon that is supposed to be equipped.

    IE. If you want to swap the Heavy Pistol with the Hand Cannon you will need to change the Weapon (Collection) from:

    SFXWeapon_HeavyPistol
    to
    SFXWeapon_HandCannon

    as well as change your Loadout from:

    SFXGameContent_Inventory.SFXWeapon_HeavyPistol
    to
    SFXGameContent_Inventory.SFXWeapon_HandCannon
     
  18. lallas

    lallas Newbie

    Messages:
    2
    Likes Received:
    0
    was afraid of that, thanks anyway
     
  19. CabooseRvB

    CabooseRvB Newbie

    Messages:
    25
    Likes Received:
    4

    you got that error because u didnt read the instructions and extract your .xbsav files. if you open save in modio then click on the tab that says file content you will see your .xbsav files. these are the file you need to open witht he mod tool
     
    1 person likes this.
  20. thatguyzx

    thatguyzx Newbie

    Messages:
    3
    Likes Received:
    0
    that JIT error

    I'm actually getting that JIT error at every step. If I change a value or when trying to open up a .xbsav . Seems like a great tool, just won't work with me.