ROM Hack Suggestion Digimon Cyber Sleuth Complete Collection Save Editor?

Green Mii

Well-Known Member
Member
Joined
Apr 12, 2015
Messages
212
Trophies
0
XP
2,258
Country
United States
I figured it out, but I don't think it is possible to work around it... When you equip an Equipment item or Accessory item, the item quantity in the bag doesn't go down, rather, the next highest byte gets incremented by 1.

View attachment 403014
The number highlighted in green is the item ID, the number highlighted in orange is the item quantity (purposely set to 98 in this case rather than 99), and the number in red is the number of items equipped.

In the case of the save editor, when giving an Equipment item or Accessory item to a Digimon, then attempting to remove it in-game, the 'number equipped' marker cannot decrement, so the item cannot be removed. As you can imagine, coding a workaround will be exceedingly difficult, and is generally not worth it.
Post automatically merged:

Anyway, I'm done with 95% of the remaining Digimon data:
https://github.com/M1CR0H4CK3R/Digi...on-Switch-Save-Editor/blob/main/MainEditor.cs

After that, I've gotta update the form itself:
https://github.com/M1CR0H4CK3R/Digi...-Save-Editor/blob/main/MainEditor.Designer.cs
After that, Digimon editing will be full-featured, with the only remaining thing being Player data, such as money, party memory, items, and the like, which I think I can make the code for with my skills.
Interesting... Well, it's unfortunate that it's not a simple fix. This issue gave me quite the headache when I encountered it. Anyways, thanks again for going through the trouble of finishing the editor! Looking through your code, I definitely trust it a lot more than my single college course of C#.
 

Maq47

Lord of Pyro
Member
Joined
Jan 7, 2012
Messages
1,339
Trophies
1
Location
Your basement
Website
idont.have.one
XP
3,544
Country
United States
@Green Mii, I have added the missing data for Hacker's Memory Digimon, as well as filled in about 95% of the form data for Cyber Sleuth. I have not yet started on the form data for Hacker's Memory, although I will soon. After that, I will add money editing to the editor, after which point I believe a v1.0.0 release is in order after testing. After that, my final 2 goals are inventory and farm editing, after which I can consider my part of creating the save editor complete, and open up improving it to other people on GitHub.
 
  • Like
Reactions: artlan

Stella2024

New Member
Newbie
Joined
Mar 13, 2024
Messages
4
Trophies
0
Age
31
XP
8
Country
Philippines
Good day is there someone still playing digimon story cyber sleuth on PsVita?
Im trying to find the exact code to Modify Inventory or Items. Since the only available cheat code is maxing out everything.

For example i want a specific item on "Equipment" Section Only.

Master Barrier x99 , without ruining the key items.


ID: PCSE00755
# Title: Digimon Story Cyber Sleuth
# Region: USA
# Version: 1.04
# Type: NoNpDrm

_V0 Have Brave Point A in Slot 1
$D202 840AD955 00AC85E5
$0000 83F6039C 00000036
$0000 83F603A4 00000063
$D202 841AD955 00AC85E5
$0000 8406039C 00000036
$0000 840603A4 00000063

==
Master Barrier Item ID:
018A "394

*Heres the code to modify the USABLE ITEMS* can someone guide me to Modify the "EQUIPMENT" only, because this address code is for "USABLE" items only, it crashes when i try to change the item ID. thanks in advance.
 

Maq47

Lord of Pyro
Member
Joined
Jan 7, 2012
Messages
1,339
Trophies
1
Location
Your basement
Website
idont.have.one
XP
3,544
Country
United States
Good day is there someone still playing digimon story cyber sleuth on PsVita?
Im trying to find the exact code to Modify Inventory or Items. Since the only available cheat code is maxing out everything.

For example i want a specific item on "Equipment" Section Only.

Master Barrier x99 , without ruining the key items.


ID: PCSE00755
# Title: Digimon Story Cyber Sleuth
# Region: USA
# Version: 1.04
# Type: NoNpDrm

_V0 Have Brave Point A in Slot 1
$D202 840AD955 00AC85E5
$0000 83F6039C 00000036
$0000 83F603A4 00000063
$D202 841AD955 00AC85E5
$0000 8406039C 00000036
$0000 840603A4 00000063

==
Master Barrier Item ID:
018A "394

*Heres the code to modify the USABLE ITEMS* can someone guide me to Modify the "EQUIPMENT" only, because this address code is for "USABLE" items only, it crashes when i try to change the item ID. thanks in advance.
Actually, any item can be in any slot, so technically, because of the way inventory is coded in DSCS, the code you posted will also crash if you sell the starting items at a new game, and then enable the cheat, as your starting outfit is a Key Item, and would be in item slot 1 in that case, so the game will crash upon entering the Key Items menu. A proper code will edit the 'pouch ID' appropriately. Since I do not know the exact memory layout of the Vita version (and have never owned a Vita in my entire life), I cannot help you any further. Furthermore, this thread is for the PC and Switch compilation of both DSCS games, and as a result you are breaking GBAtemp rules by posting irrelevant content in this thread, so I really cannot help you further.
 
  • Like
Reactions: Stella2024

Stella2024

New Member
Newbie
Joined
Mar 13, 2024
Messages
4
Trophies
0
Age
31
XP
8
Country
Philippines
I manage to figure out the codes myself. The item modifier codes works perfect! Both on CS and HM. No crashes or bug encountered anymore. Thank you for the reply anyway and i apologize for the irrelevant content
 

xSaberKas888

New Member
Newbie
Joined
Mar 19, 2024
Messages
1
Trophies
0
Age
23
XP
3
Country
United States
Anyway, just removing the first 32 bytes SHOULD make a Switch save work on PC (assuming the files are named the same - slot_0000.bin, 0000.bin, system_data.bin, and system_graphic.bin), provided they are copied to "C:\Users\[Username]\AppData\Local\BANDAI NAMCO Entertainment\Digimon Story Cyber Sleuth Complete Edition\Saved\SaveGames\[random digits]\" (for the Steam version).

Edit: Oh, and be sure to use DSCSTools to encrypt the files first before copying them to the PC folder.
I want to transfer my switch saves to steam but im not sure how to go about it, can you explain how you'd remove the first 32 bytes? I’ve never done something like this before
 
Last edited by xSaberKas888,

Maq47

Lord of Pyro
Member
Joined
Jan 7, 2012
Messages
1,339
Trophies
1
Location
Your basement
Website
idont.have.one
XP
3,544
Country
United States
I want to transfer my switch saves to steam but im not sure how to go about it, can you explain how you'd remove the first 32 bytes? I’ve never done something like this before
It turned out to be much more involved than simply doing that, and I could never get it to work, sadly. on the other hand, @Green Mii, I have completed the entire party editing function, and once I add money editng, I will take a temporary break for other priorities before adding DigiFarm editing. The code currently works 100% and I have attached a 'beta' of it for everyone's testing. Everyone, let me if it works well for you. There may be quirks with data that I do not know about yet, so I am providing the current build hoping to find these nuances.

Note that this save editor only works for the US Switch version of the game (not the Steam release), which has a file size of 843,600 bytes, and a filername of 000x.bin, where x is a number between 0 and 2, which represents the save slot number. The slot_000x.bin and system_data.bin files do not need edited at all, but should still be included with the edited save file regardless.

Once DigiFarm editing is complete, I will openly invite the general public to add the items editing feature, as I don't know where to start with that code-wise (I'm still a relative noob coder), upon which the latest version will be uploaded to GitHub for public viewing.
 

Attachments

  • DigimonStorySaveEditor.zip
    5.3 MB · Views: 35
  • Like
Reactions: wisnumurti

Green Mii

Well-Known Member
Member
Joined
Apr 12, 2015
Messages
212
Trophies
0
XP
2,258
Country
United States
It turned out to be much more involved than simply doing that, and I could never get it to work, sadly. on the other hand, @Green Mii, I have completed the entire party editing function, and once I add money editng, I will take a temporary break for other priorities before adding DigiFarm editing. The code currently works 100% and I have attached a 'beta' of it for everyone's testing. Everyone, let me if it works well for you. There may be quirks with data that I do not know about yet, so I am providing the current build hoping to find these nuances.

Note that this save editor only works for the US Switch version of the game (not the Steam release), which has a file size of 843,600 bytes, and a filername of 000x.bin, where x is a number between 0 and 2, which represents the save slot number. The slot_000x.bin and system_data.bin files do not need edited at all, but should still be included with the edited save file regardless.

Once DigiFarm editing is complete, I will openly invite the general public to add the items editing feature, as I don't know where to start with that code-wise (I'm still a relative noob coder), upon which the latest version will be uploaded to GitHub for public viewing.
I tried to open my saves butkept throwing unhandled exception errors. Somehow my Digimon ended up with stats that are higher than the numeric boxes can go? My PlatinumNumemon had 1097 Def and 999 Cam so I'm not sure what I was doing back then. Anyways, after changing the values manually, the editor worked perfectly! Messed around with stats, moves, accessories, even the attributes and digivolution level and everything works flawlessly. Good job!
 

Maq47

Lord of Pyro
Member
Joined
Jan 7, 2012
Messages
1,339
Trophies
1
Location
Your basement
Website
idont.have.one
XP
3,544
Country
United States
I tried to open my saves butkept throwing unhandled exception errors. Somehow my Digimon ended up with stats that are higher than the numeric boxes can go? My PlatinumNumemon had 1097 Def and 999 Cam so I'm not sure what I was doing back then. Anyways, after changing the values manually, the editor worked perfectly! Messed around with stats, moves, accessories, even the attributes and digivolution level and everything works flawlessly. Good job!
I am almost done with v1.0 of the save editor. I am currently finishing up rank and CSP/Hacker Points editing, then it will be 100% ready for a release, which I will put in a new thread in the appropriate section. Then I will take a 2-3 month break before adding in DigiFarm editing for both games, which will release in v2.0, and finally I will commission a helper for help with inventory editing for v3.0. I may end up doing a v4.0 for editing DigiBank Digimon, but that's quite a ways off, and isn't currently on the roadmap.
 

Jokiz

Well-Known Member
Member
Joined
Jun 13, 2007
Messages
183
Trophies
1
XP
1,181
Country
Norway
Just had the opportunity to convert a Switch save to PC.
You'll need a hex editor (e.g. HxD) and DSCSToolsCLI (use the static version) as well as the slot_000X.bin and 000X.bin

In the 000X.bin you have to remove 8 4-byte values at the following offsets (all before removal, keep that in mind!):
Code:
0x0004BA0C
0x0004BA9C
0x0004BACC
0x0004BB0C

0x000AD1AC
0x000AD23C
0x000AD26C
0x000AD2AC

Next in the slot_000X.bin you have add 64 bytes at like 0x00000040 (should be all 0 around there anyways) and change the ASCII "843600" at 0x0104 (after adding the 64 bytes) to "843568".

After that just run
Code:
DSCSToolsCLI.exe --saveencrypt <source path> <target path>
on both files and you should be good.
Sorry to bring up this old thread, but I am currently trying to convert my Switch save to the Steam version.
I've extracted the Switch save, resulting in the following files:
0000.bin
0002.bin
slot_0000.bin
slot_0002.bin
system_data.bin

First of, am I supposed to remove the byte values for both 0000 and 0002? (Maybe it's because I have two save slots?)
And regarding the offset, as I'm removing bytes at each offset, and assuming I start at the last and move upwards, will I have to go to the previous offset, then go 4 more bytes back before I remove? It's hard to explain, but I cannot simply go to each offset and remove one by one right?

Next, and same question, I add the 64 bytes and change the ASCII in both 0000 and 0002?
Then I run saveencrypt on all of these files and replace the ones in my Steam save folder with the new generated ones?
What about the system_data.bin file, do I leave that as is?

Sorry for all the questions, but I cannot get it to work right now. The game is telling me the saves are corrupted.
 

Maq47

Lord of Pyro
Member
Joined
Jan 7, 2012
Messages
1,339
Trophies
1
Location
Your basement
Website
idont.have.one
XP
3,544
Country
United States
Sorry to bring up this old thread, but I am currently trying to convert my Switch save to the Steam version.
I've extracted the Switch save, resulting in the following files:
0000.bin
0002.bin
slot_0000.bin
slot_0002.bin
system_data.bin

First of, am I supposed to remove the byte values for both 0000 and 0002? (Maybe it's because I have two save slots?)
And regarding the offset, as I'm removing bytes at each offset, and assuming I start at the last and move upwards, will I have to go to the previous offset, then go 4 more bytes back before I remove? It's hard to explain, but I cannot simply go to each offset and remove one by one right?

Next, and same question, I add the 64 bytes and change the ASCII in both 0000 and 0002?
Then I run saveencrypt on all of these files and replace the ones in my Steam save folder with the new generated ones?
What about the system_data.bin file, do I leave that as is?

Sorry for all the questions, but I cannot get it to work right now. The game is telling me the saves are corrupted.
I've already said in this thread that it turns out that Switch saves and Steam saves are incompatible with each other. There's just too many differences between the files to take note of. Not to mention that my information regarding the 2 SHA-256 checksums at the beginning of the files is now determined to be invalid; Checkpoint used to dump saves incorrectly, and JKSV doesn't dump that extra metadata, which is correct. You can tell that the save files are incompatible because the file size is different for both of them. I originally thought that simply chopping off excess 0x00 bytes at the end of the file would fix it, but it didn't. The formatting, in addition to various offsets, are different between the versions. So, as things stand, there is no way to 'convert' Switch saves to Steam saves, and vice-versa.
 

Jokiz

Well-Known Member
Member
Joined
Jun 13, 2007
Messages
183
Trophies
1
XP
1,181
Country
Norway
I've already said in this thread that it turns out that Switch saves and Steam saves are incompatible with each other. There's just too many differences between the files to take note of. Not to mention that my information regarding the 2 SHA-256 checksums at the beginning of the files is now determined to be invalid; Checkpoint used to dump saves incorrectly, and JKSV doesn't dump that extra metadata, which is correct. You can tell that the save files are incompatible because the file size is different for both of them. I originally thought that simply chopping off excess 0x00 bytes at the end of the file would fix it, but it didn't. The formatting, in addition to various offsets, are different between the versions. So, as things stand, there is no way to 'convert' Switch saves to Steam saves, and vice-versa.
Ah, I see. It's just that SydMontague said they got it working. But if what you're saying is true then yeah, I guess I'm out of luck 👍
 

Maq47

Lord of Pyro
Member
Joined
Jan 7, 2012
Messages
1,339
Trophies
1
Location
Your basement
Website
idont.have.one
XP
3,544
Country
United States
Ah, I see. It's just that SydMontague said they got it working. But if what you're saying is true then yeah, I guess I'm out of luck 👍
Well, I just now saw the message you quoted earlier in your first message here (for some reason, possibly network issues on GBAtemp's end, the quote didn't show up earlier). When I tried converting the Switch saves to the Steam version, it never occurred to me that the file size of the '000x.bin' files are contained within the 'slot_000x.bin' files as plain text, so I only tried modifying the '000x.bin' files. I did remove those values because I noticed they weren't present in the Steam version's save files, but didn't know to do the other step. This process works. The steps, in order, and by file modified, are:

in '000x.bin':

1.) Delete 4 bytes at the following offsets; after deleting one 4-byte value, subtract 0x4, 0x8, 0xC, 0x10, et cetra from the next offset to account for the fact that you removed some values.

0x0004BA0C
0x0004BA9C
0x0004BACC
0x0004BB0C
0x000AD1AC
0x000AD23C
0x000AD26C
0x000AD2AC

You can make this easier by setting the values at these offsets to 0x77, then removing all sets of 4 0x77s from 0x0004BA0C to 0x0004BB10 and from 0x000AD188 to 0x000AD2B0. This will have the same effect, but you don't have to keep track of the differences in offsets.

2.) Save '000x.bin'. Do these first 2 steps for all files with values of x of 0, 1, and 2 in '000x.bin'.

in 'slot_000x.bin':

1.) Go to 0x40 in the file and insert 64 0x00 values at that spot. To be exact, they have to be inserted somewhere between 0x30 and 0xBF of the file, it doesn't matter exactly where you insert from in that range.

2.) Go to 0x0107 (this is after, and accounting for, adding the 64 0x00 bytes from step 1) and change the 3 bytes at that exact offset to:
'0x35 0x36 0x38', or go into the Text column of your text editor and replace the '600' text at that offset with '568' (without quotes). Either of these will have the same result.

3.) Save 'slot_000x.bin'. Do steps 1 to 3 with all files with values of x of 0, 1, and 2 in 'slot_000x.bin'.

Finally, run saveencrypt on all 000x.bin and slot_000x.bin with the following command via Windows Command Prompt:

Code:
DSCSToolsCLI.exe --saveencrypt <source path> <target path>
, replacing '<source path>' with the exact location on your PC where you saved the edited files (if you saved them in the directory where DSCSToolsCLI.exe resides, then replace it with .\<filename>, where '<filename>', obviously is replaced with the file name of the file you're encrypting), and replacing '<target path>' with the full location of where you want to save the edited files (I suggest creating an 'encrypted' folder in the folder where you stored your hex edited saves; in the case of the location of your hex edited saves being the same folder DSCSToolsCLI.exe is in, you would simply replace '<target path>' with '.\encrypted\<filename>', again, replacing <filename> with the same name you used in '<source path>'.)

Finally, copy the newly encrypted files into your Steam game save directory for DSCS:CE and replace the files. for cracked versions, this is:
C:\Users\<username>\AppData\LocalLow\BANDAI NAMCO Entertainment\Digimon Story Cyber Sleuth Complete Edition\Saved\SaveGames\679317189\

After that, load up the game, and enjoy having your progress on PC.
 

Jokiz

Well-Known Member
Member
Joined
Jun 13, 2007
Messages
183
Trophies
1
XP
1,181
Country
Norway
I still cannot get it to work. Maybe because I'm using the Steam version and something else has been updated since the cracked version was released?

I start as you say, by opening 0000.bin in HxD, then i hit CTRL+G to enter the offset. I then replace the next 4 bytes, which always seem to be 00 00 00 00, to 77 77 77 77, to keep track of them later.

After changing the bytes at all 8 offsets to 77 77 77 77, I start at the top offset, and delete the set of 77. I then find the next set of 77, and delete that until all sets are deleted. I save the file, and move on to 0002 (I dont have a 0001) and do the same.

I then open the slot_0000.bin file, go to offset 0x40, and insert 64 bytes with the hex value 00.
Next, I locate the 843600 value, and update it to 843568.
I save, and do the same to slot_0002.bin.

After this, I use the DSCSTools via the command line, set the location of my edited bin files (one by one), and export to an "output" folder. I do this for 0000.bin, 0002.bin, slot_0000.bin and slot_0002.bin.
The 000x.bin files gives me a "Done" output in console, while the slot_files simply get generated, if that matters.

I then replace the files in my Steam save folder:
C:\Users\<username>\AppData\Local\BANDAI NAMCO Entertainment\Digimon Story Cyber Sleuth Complete Edition\Saved\SaveGames\31655200

I only change the 000x.bin and slot_000x.bin files, leaving the system_data.bin and system_graphic.bin as is.

Next time I launch the game and go to continue, it tells me the saves are corrupted.
Do you see any obvious mistakes Maq47?
I thought maybe it was something wrong with my Switch save so I exported new ones (using the JKSV software), but it gives me the same result.
 

Maq47

Lord of Pyro
Member
Joined
Jan 7, 2012
Messages
1,339
Trophies
1
Location
Your basement
Website
idont.have.one
XP
3,544
Country
United States
I still cannot get it to work. Maybe because I'm using the Steam version and something else has been updated since the cracked version was released?

I start as you say, by opening 0000.bin in HxD, then i hit CTRL+G to enter the offset. I then replace the next 4 bytes, which always seem to be 00 00 00 00, to 77 77 77 77, to keep track of them later.

After changing the bytes at all 8 offsets to 77 77 77 77, I start at the top offset, and delete the set of 77. I then find the next set of 77, and delete that until all sets are deleted. I save the file, and move on to 0002 (I dont have a 0001) and do the same.

I then open the slot_0000.bin file, go to offset 0x40, and insert 64 bytes with the hex value 00.
Next, I locate the 843600 value, and update it to 843568.
I save, and do the same to slot_0002.bin.

After this, I use the DSCSTools via the command line, set the location of my edited bin files (one by one), and export to an "output" folder. I do this for 0000.bin, 0002.bin, slot_0000.bin and slot_0002.bin.
The 000x.bin files gives me a "Done" output in console, while the slot_files simply get generated, if that matters.

I then replace the files in my Steam save folder:
C:\Users\<username>\AppData\Local\BANDAI NAMCO Entertainment\Digimon Story Cyber Sleuth Complete Edition\Saved\SaveGames\31655200

I only change the 000x.bin and slot_000x.bin files, leaving the system_data.bin and system_graphic.bin as is.

Next time I launch the game and go to continue, it tells me the saves are corrupted.
Do you see any obvious mistakes Maq47?
I thought maybe it was something wrong with my Switch save so I exported new ones (using the JKSV software), but it gives me the same result.
Well, I indeed do see a problem with your process. You're using Steam with a legit copy of the game, which uses Steam Cloud Save to verify your save file in addition to the normal checks that a save file is valid. You would need to disable Steam Cloud Saving for your account, then wait up to 3 months for the files to be deleted from the server. Then it should show as valid after that. I tested this process for my own save on a cracked version, and it works perfectly, so that's the only outlier.
 

Jokiz

Well-Known Member
Member
Joined
Jun 13, 2007
Messages
183
Trophies
1
XP
1,181
Country
Norway
Are you sure that's the case? I just tried with a cracked version, same result.

And converting save from the Switch version to official Steam worked for Dragon Quest 11, even with cloud saves enabled 🤔

Not saying you're wrong, I just don't think it's my only issue.

The only other possible mistake I could see is when adding the 64 bytes to the slot files, the offset of the ASCII characters to change does not match what you or SydMontauge is saying. So either I'm adding the bytes incorrectly, or my file is different in some way.
 

SydMontague

Well-Known Member
Newcomer
Joined
Oct 19, 2017
Messages
76
Trophies
0
XP
1,836
Country
Germany
The game has not received any updates since launch and the procedure has been done on the Steam version of the game. You don't need to disable cloud saves, you only need to convince Steam to not override your modified saves (which it never did for me?).

As long as you add the 64 bytes into the slot file you should be fine. The offset for the file size should be obvious and irrelevant, since it's plain text you have to edit.

(Also, the procedure might not be perfect. It was a quick'n'dirty solution that might not be perfect and causes problems down the line.)
 

Maq47

Lord of Pyro
Member
Joined
Jan 7, 2012
Messages
1,339
Trophies
1
Location
Your basement
Website
idont.have.one
XP
3,544
Country
United States
The only other possible mistake I could see is when adding the 64 bytes to the slot files, the offset of the ASCII characters to change does not match what you or SydMontauge is saying. So either I'm adding the bytes incorrectly, or my file is different in some way.
There are only 2 reasons why the offsets would be different:

1.) If the first bytes in the 'slot_0000.bin' and/or 'slot_0002.bin' do not match the ASCII string 'Digimon Story: Cyber Sleuth - Hacker's Memory'. This would be from 0x00 to 0x2C in the file. If there are bytes before that, then your 'slot_000x.bin' files are not dumping correctly for some reason; the fix is to remove everything before the aforementioned text.
2.) If there are not bytes before that, it is possible, even likely, that you added 64 0x00s to the file, and either:
1.) Saved it accidentally on your Switch's microSD card, then without realizing you did that you replaced your edited file on your PC with the accidentally edited backup on your Switch's microSD card when you wanted to retry converting, or
2.) Saved it accidentally to a backup location on your PC, and without thinking copied it to the DSCSToolsCLI.exe program's folder and used the accidentally edited backup when you wanted to retry converting.

You can verify if this happened if the '600' I told you to replace is actually at 0x0147 instead of 0x0107 after adding 64 0x00s. If that is the case, click just to the left of the first 0x00 at 0x0030, hold Shift, press the Down Arrow key 4 times, let go of Shift, then press Backspace and save the edited file. This will remove the extra bytes. If you did this to your last failed attempt file, try encrypting the files again and loading them in your game. If you did this in a new attempt, just finish all other steps first before attempting this process, and only in the conditions I specified.
 

Jokiz

Well-Known Member
Member
Joined
Jun 13, 2007
Messages
183
Trophies
1
XP
1,181
Country
Norway
I finally got it working (kinda). The problem was that the software added too many bytes to the slot files, even though I specifically type 64 as the number of bytes. After removing the extra bytes and re-encrypting, the saves load in game.
The new issue though, is that my primary save 0000.bin, crashes the game.. 0002.bin works fine though.
I guess it's unrelated to the import process, and may have something to do with the contents of the save.
Either way, thanks for getting me this far!
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    K3Nv2 @ K3Nv2: Pubic wars