ROM Hack Need Help With GBA VC Save Inject

  • Thread starter Thread starter twosidea
  • Start date Start date
  • Views Views 4,839
  • Replies Replies 3

twosidea

New Member
Newbie
Joined
Oct 3, 2016
Messages
4
Reaction score
0
Trophies
0
Age
29
XP
61
Country
Malaysia
I've searched high and low, wasted hours to look for a solution.

I have A9LH and Luma3DS installed, with Decrypt9 available by pressing down while booting up. I wanted to inject my Yggdra Union GBA save into it's respective VC file. I boot into Decrypt9, I'm able to dump the VC save file, but it won't detect my original GBA save file. I realized that the dumped VC save file is 32KB while the original GBA save is only 8KB. I also ran a check with Decrypt9 for the keys, I don't have slot0x24keyY in the system.
 
Last edited by twosidea,
1. check if you have the aeskeydb.bin from part 3 of Plailect's guide in the root of you SD card or your files9 folder
2. copy the save file you wish to inject in to files9 folder and name it gbavc.sav
2. start the gba game that you wish to inject the save into
3. wait until the game reaches the title scren, then press home button and exit to 3ds home menu (do not power off the 3ds after this)
4. go into system settings
5. exit system settings using the touch screen (this will cause the 3ds to reboot), then quickly hold the button associated with decrpyt9 to boot it
6. go to sysnand settings and inject the gbavc.sav

If the above steps do not work, you can follow the steps below:

Required files:
Yggdra Union gba rom
Yggdra Union VC cia


Agbsave9 (requires python 3):
https://gbatemp.net/threads/pre-release-agbsave9-tool-to-extract-agb_firm-saves.410684/
Ultimate GBA VC Injector:
http://gbatemp.net/threads/release-ultimate-gba-vc-injector-for-3ds.438057/

1. Download both agbsave9 and gba vc injector
2. open up gba vc injector and load the Yggdra Union rom
3. the injector should be able to determine the save type of the rom. Note down the type (either SRAM, Flash or EEPROM)
4. close and reopen the gba injector. This time load the Yggdra cia then click next step.
5. note down the title id of the cia then add two zeros on either side of the id (e.g. if the title id is E123, then write down 00E12300)
6. in the agbsave9 zip there should be a folder called agb_inject
7. copy the save file you wish to inject into agb_inject folder and name it "yusave.sav" (without quotes)
8. double click gen_rom.py
9. for the save's name type "yusave.sav" (without quotes)
10. output cia type "yusave.cia" (without quotes)
11. for the save type, use the number corresponding to the save type you noted down in step 4 (SRAM = 0, Flash = 1, EEPROM = 2)
12. the title id is the one you wrote down in step 5, in this case it's 00E12300
13. now you should have a cia file in the agb_inject folder called yusave.cia
14. uninstall Yggdra Union game on your 3ds using via system settings then install the yusave.cia from step 13. You should have a gba game called test on the home menu
15. run the gba test game and wait until "AGB_FIRM save injector" appears. Then exit the game.
16. go into Ninteno 3DS/[random number folder]/[another random number folder]/title/0040000 folder on your 3ds sd card
17. find the folder with the same title id as the one you noted down in step 5 (in this example it's 00e12300)
18. copy the data folder inside the title id folder and place it somewhere safe
19. delete the test gba game and resinstall yggdra union cia
20. repeat steps 16 and 17
21. copy the data folder from step 18 into the title id folder again

your save file should be injected into the game
 
Last edited by lasercut,
1. check if you have the aeskeydb.bin from part 3 of Plailect's guide in the root of you SD card or your files9 folder
2. copy the save file you wish to inject in to files9 folder and name it gbavc.sav
2. start the gba game that you wish to inject the save into
3. wait until the game reaches the title scren, then press home button and exit to 3ds home menu (do not power off the 3ds after this)
4. go into system settings
5. exit system settings using the touch screen (this will cause the 3ds to reboot), then quickly hold the button associated with decrpyt9 to boot it
6. go to sysnand settings and inject the gbavc.sav

If the above steps do not work, you can follow the steps below:

Required files:
Yggdra Union gba rom
Yggdra Union VC cia


Agbsave9 (requires python 3):
https://gbatemp.net/threads/pre-release-agbsave9-tool-to-extract-agb_firm-saves.410684/
Ultimate GBA VC Injector:
http://gbatemp.net/threads/release-ultimate-gba-vc-injector-for-3ds.438057/

1. Download both agbsave9 and gba vc injector
2. open up gba vc injector and load the Yggdra Union rom
3. the injector should be able to determine the save type of the rom. Note down the type (either SRAM, Flash or EEPROM)
4. close and reopen the gba injector. This time load the Yggdra cia then click next step.
5. note down the title id of the cia then add two zeros on either side of the id (e.g. if the title id is E123, then write down 00E12300)
6. in the agbsave9 zip there should be a folder called agb_inject
7. copy the save file you wish to inject into agb_inject folder and name it "yusave.sav" (without quotes)
8. double click gen_rom.py
9. for the save's name type "yusave.sav" (without quotes)
10. output cia type "yusave.cia" (without quotes)
11. for the save type, use the number corresponding to the save type you noted down in step 4 (SRAM = 0, Flash = 1, EEPROM = 2)
12. the title id is the one you wrote down in step 5, in this case it's 00E12300
13. now you should have a cia file in the agb_inject folder called yusave.cia
14. uninstall Yggdra Union game on your 3ds using via system settings then install the yusave.cia from step 13. You should have a gba game called test on the home menu
15. run the gba test game and wait until "AGB_FIRM save injector" appears. Then exit the game.
16. go into Ninteno 3DS/[random number folder]/[another random number folder]/title/0040000 folder on your 3ds sd card
17. find the folder with the same title id as the one you noted down in step 5 (in this example it's 00e12300)
18. copy the data folder inside the title id folder and place it somewhere safe
19. delete the test gba game and resinstall yggdra union cia
20. repeat steps 16 and 17
21. copy the data folder from step 18 into the title id folder again

your save file should be injected into the game

Thanks for the help! I'll try this whenever I can.

EDIT: Tried running the steps as stated. Got stuck at converting the sav file into a cia using AGBsave9. After executing the Python file using Python 3 and placing the required data, it immediately closes and no cia file was generated in the agbinject folder.

EDIT 2: Had to download an old release of AGBsave9 (1.0), generated the cia file successfully! Will have to push this endeavor for another day, work calls.

EDIT 3: Carried out all the steps. The save data is not readable by the game. Booted up the game and there's no "Load" option. Could this have to do with the fact that the original GBA save is US region while the VC is EUR region?
 
Last edited by twosidea,
1. check if you have the aeskeydb.bin from part 3 of Plailect's guide in the root of you SD card or your files9 folder
2. copy the save file you wish to inject in to files9 folder and name it gbavc.sav
2. start the gba game that you wish to inject the save into
3. wait until the game reaches the title scren, then press home button and exit to 3ds home menu (do not power off the 3ds after this)
4. go into system settings
5. exit system settings using the touch screen (this will cause the 3ds to reboot), then quickly hold the button associated with decrpyt9 to boot it
6. go to sysnand settings and inject the gbavc.sav

If the above steps do not work, you can follow the steps below:

Required files:
Yggdra Union gba rom
Yggdra Union VC cia


Agbsave9 (requires python 3):
https://gbatemp.net/threads/pre-release-agbsave9-tool-to-extract-agb_firm-saves.410684/
Ultimate GBA VC Injector:
http://gbatemp.net/threads/release-ultimate-gba-vc-injector-for-3ds.438057/

1. Download both agbsave9 and gba vc injector
2. open up gba vc injector and load the Yggdra Union rom
3. the injector should be able to determine the save type of the rom. Note down the type (either SRAM, Flash or EEPROM)
4. close and reopen the gba injector. This time load the Yggdra cia then click next step.
5. note down the title id of the cia then add two zeros on either side of the id (e.g. if the title id is E123, then write down 00E12300)
6. in the agbsave9 zip there should be a folder called agb_inject
7. copy the save file you wish to inject into agb_inject folder and name it "yusave.sav" (without quotes)
8. double click gen_rom.py
9. for the save's name type "yusave.sav" (without quotes)
10. output cia type "yusave.cia" (without quotes)
11. for the save type, use the number corresponding to the save type you noted down in step 4 (SRAM = 0, Flash = 1, EEPROM = 2)
12. the title id is the one you wrote down in step 5, in this case it's 00E12300
13. now you should have a cia file in the agb_inject folder called yusave.cia
14. uninstall Yggdra Union game on your 3ds using via system settings then install the yusave.cia from step 13. You should have a gba game called test on the home menu
15. run the gba test game and wait until "AGB_FIRM save injector" appears. Then exit the game.
16. go into Ninteno 3DS/[random number folder]/[another random number folder]/title/0040000 folder on your 3ds sd card
17. find the folder with the same title id as the one you noted down in step 5 (in this example it's 00e12300)
18. copy the data folder inside the title id folder and place it somewhere safe
19. delete the test gba game and resinstall yggdra union cia
20. repeat steps 16 and 17
21. copy the data folder from step 18 into the title id folder again

your save file should be injected into the game

I carried out the steps multiple times but the game does not load my save, or recognize any save at all. I attached an image of how I generated the cia file.

EDIT: Apparently the save file that the VC needed was a SRAM type. Seems to be a bug amongst a few EEPROM games. Fixed and finally got the save loaded!
 

Attachments

  • 2016-10-05 19_12_43-C__Program Files_python.exe.png
    2016-10-05 19_12_43-C__Program Files_python.exe.png
    37.7 KB · Views: 459
Last edited by twosidea,

Site & Scene News

Popular threads in this forum