[Request] Dragon Quest VII Cheksum.exe

Discussion in '3DS - ROM Hacking, Translations and Utilities' started by Matheusv3, Oct 2, 2016.

  1. Matheusv3
    OP

    Matheusv3 Newbie

    Newcomer
    9
    0
    Sep 18, 2016
    Brazil
    So... if anyone could help me making a checksum.exe for the Dragon Quest VII Save it would be extremely helpful. Since i don't have powersaves or CFW, and don't know how to make a checksum i can't edit my save file because it gets corrupted.
     
  2. MadMageKefka

    MadMageKefka GBAtemp Advanced Maniac

    Member
    1,508
    1,325
    Apr 28, 2016
    United States
    World of ruin
    Use the homebrew version of JKSM to dump and inject the saves. It handles the checksums automatically.
     
  3. Matheusv3
    OP

    Matheusv3 Newbie

    Newcomer
    9
    0
    Sep 18, 2016
    Brazil
    I do use JKSM but the savefile still gets corrupted, but i didn't know JKSM handled checksums, maybe i'm messing up in the hex editor.
     
  4. MadMageKefka

    MadMageKefka GBAtemp Advanced Maniac

    Member
    1,508
    1,325
    Apr 28, 2016
    United States
    World of ruin
    That could be the problem. I know JKSM handles checksums because it works for games like SSB4.
     
  5. AnalogMan

    AnalogMan ultraSuMoFramework Dev

    Member
    1,542
    1,046
    Apr 20, 2007
    United States
    JKSM is not a save editor and does not fix checksums. What you're thinking of is the secure value which is completely different.
     
    Xiphiidae likes this.
  6. MadMageKefka

    MadMageKefka GBAtemp Advanced Maniac

    Member
    1,508
    1,325
    Apr 28, 2016
    United States
    World of ruin
    I never claimed JKSM was a save editor, but you're right. I was thinking of secure values. Herp.
     
  7. Matheusv3
    OP

    Matheusv3 Newbie

    Newcomer
    9
    0
    Sep 18, 2016
    Brazil
    Oh, so i wasn't messing it up, then? Well, then the request still stands, if anyone at least knows how to make one and could tell me, i could try to do it or if anyone just knows how to do it and wants to do it, i would be really gratefull.
     
  8. AnalogMan

    AnalogMan ultraSuMoFramework Dev

    Member
    1,542
    1,046
    Apr 20, 2007
    United States
    We need to find where the checksum is located in the saves and how it's calculated. Making a software that patches it is easy. Some people have tried by making multiple save backups and comparing them to see what's different. So far the checksum location has not been found yet.
     
  9. unknowndatax

    unknowndatax Member

    Newcomer
    21
    43
    Jan 23, 2016
    United States
    The checksum for the whole file are the first four bytes of the file. The program will start calculating at offset 0x10.

    Code:
    Magic Number for File = 0x5000
    
    // C#
      int GetCheckSum(byte[] data, int magicNumber)
      {
      int index = 0;
      int placeHolder;
      int value1 = 0, value2 = 0;
      int endValue;
    
      if (((magicNumber ^ 0xffffffff) & 1) != 0)
      {
      value1 = (int)(sbyte)data[index++];
      }
      placeHolder = (int)(sbyte)data[index];
    
      endValue = (int)(magicNumber - 0x11) >> 1;
    
      for (int i = 0; i < endValue; ++i)
      {
      value2 += (int)(sbyte)data[index + 1];
      index += 2;
      value1 += placeHolder;
      placeHolder = (int)(sbyte)data[index];
      }
      return value1 + value2;
      }
    
     

    Attached Files:

    Last edited by unknowndatax, Oct 19, 2016
    hiten likes this.