Virtue's Last Reward Safe Launcher

Discussion in '3DS - Homebrew Development and Emulators' started by lucaboy, Apr 19, 2016.

  1. lucaboy
    OP

    lucaboy Advanced Member

    Newcomer
    66
    67
    Jul 13, 2012
    Italy
    [​IMG]

    Virtue's Last Reward for Nintendo 3DS is affected by a critical bug: if you save during an Escape section (especially in the PEC room), the game could crash randomly and you could get the save data corrupted.
    There isn't any patch to fix this bug (Aksys has only changed the code of the eShop version of the game to prevent players to save in the PEC room).
    The best way to avoid to lose all of you progress is just to backup your data frequently; VLR Safe Launcher will help you to do it in the faster way.

    How does VLR Safe Launcher work?
    1. At startup it will check if the title id of the cartridge inserted matches with the title id of Virtue's Last Reward (EUR, USA or JAP).
    2. If the title id of the cartridge doesn't match, it will check if Virtue's Last Reward (EUR, USA or JAP) is installed on the console.
    3. If it finds any copy of Virtue's Last Reward, it will backup the save data to the following path "SD:\VLR_SAFE_LAUNCHER\$REGION\$MEDIA TYPE\yyyy-MM-dd@HH_mm_ss".
    4. It will check the number of the backups; if it is greater than 30 (10 in the version for Gateway 3DS users, because the save file size is much bigger), it will delete the older backups.
    5. It will launch Virtue's Last Reward automatically.

    To restore the save data, just start VLR Safe Launcher and keep R pressed on the Nintendo logo screen.

    P.S. Use "VLRSafeLauncher (for Gateway 3DS users).cia" only if you use the red Gateway 3DS card to play to Virtue's Last Reward.

    CREDITS:
    @JK_
    for JKSM - JK's Save Manager (i've used part of his code to implement the functions to backup and to restore the save data).
    Everyone involved in ctrulib creation.


    Update: To be safer, you could use the "Pec Patch" (a patch that forbids you to save in the PEC room during the "Escape Section") too: https://goo.gl/IG4rLA
     
    Last edited by lucaboy, Aug 23, 2016
  2. PaiiNSteven

    PaiiNSteven Newbie

    This is awesome! Nice.
     
    lucaboy likes this.
  3. The Real Jdbye

    The Real Jdbye Always Remember 30/07/08

    Member
    GBAtemp Patron
    The Real Jdbye is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    12,519
    5,474
    Mar 17, 2010
    Norway
    Alola
    Nice work on this. However it would be nice if you added Gateway support. It's very simple, only <title ID>.sav in the SD root needs to be copied, for example 00040000000AEB00.sav for the EUR version.
    The save can't be read from the Gateway cart like a regular game because Gateway only "mounts" the save when the game is launched.
     
    Subtle Demise likes this.
  4. lucaboy
    OP

    lucaboy Advanced Member

    Newcomer
    66
    67
    Jul 13, 2012
    Italy
    I'll do it. :)

    EDIT: Done.
     
    Last edited by lucaboy, Apr 19, 2016
  5. Cuber456

    Cuber456 Member

    Newcomer
    28
    10
    May 19, 2012
    United States
    Very nice work :). Since ZTD is here in ~2 months, I going to replay VLR on a completely new game so I am fresh going in. I'll probably put your program to use so I avoid any save data BS that could crop up.

    I still hope that one day we can gain an understanding behind why the game corrupts save data in the first place.

    Warning: Spoilers inside!
     
    lucaboy likes this.
  6. Ricken

    Ricken No way... Not now...

    Member
    2,258
    2,525
    Jan 19, 2016
    United States
    Shibuya, The small one from Vegas
    Thank god for this. I got froze in my tools menu while playing VLR. This should make up for the 5< Hours i lost
     
    lucaboy likes this.
  7. testing123

    testing123 GBAtemp Regular

    Member
    104
    8
    May 7, 2009
    United States
    Is it possible to use this to import a save from somewhere else? I lost 20+ hours and have been given saves, but they are not in .sav format.
     
  8. Ricken

    Ricken No way... Not now...

    Member
    2,258
    2,525
    Jan 19, 2016
    United States
    Shibuya, The small one from Vegas
    It should work if you have a working save file backup

    Play so a backup or two are made, copy the name of one of them, and then paste it into your old backups name. then replace the newer backup with your old one then use this to restore

    If this doesnt work then restore the old backup with something like JK
     
    Last edited by Ricken, May 7, 2016
  9. testing123

    testing123 GBAtemp Regular

    Member
    104
    8
    May 7, 2009
    United States
    Thanks for your reply.

    The problem is that I don't have a .sav file. I have several exported save games from online and from other people, but they are all folders with data_0 data_1 files. No files that are 003003030.sav, which is the format that they're saved on the sd card.

    I don't know how to convert the exported save games to .sav format.

    It would be easy to rename it if I HAD a single file to rename to .sav, but I don't have one.
     
    Ricken likes this.
  10. Ricken

    Ricken No way... Not now...

    Member
    2,258
    2,525
    Jan 19, 2016
    United States
    Shibuya, The small one from Vegas
    Can you link me to one?
     
  11. testing123

    testing123 GBAtemp Regular

    Member
    104
    8
    May 7, 2009
    United States
    Sure thing.

    Daxtsu was nice enough to give me one here:

    https://gbatemp.net/threads/whats-t...-got-the-zero-escape-bug.425500/#post-6323264

    Here's another older one:

    https://gbatemp.net/threads/looking-for-zexro-escape-virtues-last-reward-save-file.420731/

    And another older one:

    https://gbatemp.net/threads/request-savefile-for-virtues-last-reward.412817/

    I am doing something wrong with my attempts to import them. Neither savefile or JK save will work for me. I am using a gateway card, firmware 8.0.1, .3ds format.
     
    Last edited by testing123, May 7, 2016
  12. ongo_gablogian

    ongo_gablogian GBAtemp Regular

    Member
    187
    130
    Mar 26, 2010
    United States
    Unfortunately JKSM doesn't work with Gateway, but according to another member you can use savedatafiler to transfer the save. I haven't tested this at all though cause I don't have a gateway.

     
  13. testing123

    testing123 GBAtemp Regular

    Member
    104
    8
    May 7, 2009
    United States
    Right, that makes sense.

    The problem is finding a NEW .sav file. Every single save that's online is in a strange folder with multiple files called data_0 data_1, there's no .sav files to be found anywhere online.
     
  14. zhdarkstar

    zhdarkstar GBAtemp Advanced Fan

    Member
    571
    225
    Jan 30, 2008
    United States
    Actually, that post of mine that you quoted IS the way to use JKSM with a GW. It's just using the same principle as the workaround for getting GW to play nicely with SDF.

    That folder that you're seeing is the decrypted save data for the game. The .sav file extension has been used by so many different pieces of software on so many different platforms that you need to be more specific about the type of .sav file to have any discernible context. For example, the .sav files that are used by Gateway are not the same type of file as a .sav that you might find in the decrypted save data of some 3DS games, nor are they the same type of file as encrypted 3DS save data that is saved as a .sav on your SD card

    What exact TYPE of .sav file are you trying to get a hold of for this game?
    Gateway .sav? I've got one of those I can send you.
    Decrypted .sav? I can decrypt my GW save and send you the contents in a .zip file.
    Encrypted .sav? Those are useless to share as they can only be read/decrypted by the 3DS that they came from,
     
  15. testing123

    testing123 GBAtemp Regular

    Member
    104
    8
    May 7, 2009
    United States
    I actually don't know what specific "type" I need.

    I believe it is a gateway .sav, though. I base this on my assumptions about my 3ds, which uses the red gateway card (with micro SD inside) and the second SD card in the side. The .sav files are NOT on the Microsd in the cartridge slot, they are stored in the side sd slot.

    I'm just making assumptions, as I am not good at this. I do not know how to tell the difference between the decrypted and encrypted .sav files.
     
  16. zhdarkstar

    zhdarkstar GBAtemp Advanced Fan

    Member
    571
    225
    Jan 30, 2008
    United States
    My VLR save is a completed save. Is that okay?
     
  17. testing123

    testing123 GBAtemp Regular

    Member
    104
    8
    May 7, 2009
    United States
    Sure thing! I'll try anything. Thanks!
     
  18. testing123

    testing123 GBAtemp Regular

    Member
    104
    8
    May 7, 2009
    United States
    Any luck there, zhdarkstar?
     
  19. Jazzist

    Jazzist GBAtemp Regular

    Member
    142
    22
    Jun 27, 2013
    Thanks for this mod. Can safely start VLR now!
     
  20. roisuke

    roisuke Newbie

    Newcomer
    3
    1
    Jun 2, 2015
    United States
    Sorry to bump a possibly dead thread, was hoping someone would be able to provide a mirror link to the safe launcher file? Following the link the OP provided results in an error (429) saying "This account's links are generating too much traffic and have been temporarily disabled!" My game corrupted twice on me and after another 10 hours in I got to where I was before it all went to crap. Paranoid to proceed any further without this workaround. Thanks in advance! (Edit) link now works so ignore request.
     
    Last edited by roisuke, Aug 24, 2016