ROM Hack Question Help Modding Switch Game for Translation

Skyluker4

Member
OP
Newcomer
Joined
Jan 14, 2021
Messages
17
Trophies
0
Location
Fayettville, Arkansas
Website
www.lukesimmons.codes
XP
182
Country
United States
I'm trying to mod Dokapon UP! to get English translations, but I'm running into trouble when I try modding the strings in the game. The game runs on Unity and I've found that all the strings are stored in the StreamingAssets folder as an AssetBundle file paired along with a manifest file. After editing the AssetBundle that contains all of the strings and recompressing it, the game gets stuck at the loading screen. When just extracting and recompressing the Asset Bundle without any modifications, the game runs fine. I'm thinking it may be a checksum problem since the manifest contains a CRC and hashes for the asset file and type tree. However, when deleting these values from the manifest and putting it in the LayeredFS, and running the game with the unmodified AssetBundle, it runs fine. So the hashes and CRC do not need to be part of the manifest in order for it to run, but modifying the strings themselves breaks the game. Is there some sort of verification that needs to be patched or is there a problem with Unity Asset Bundle Extractor that I'm using to mod the game? Any help or resources would be appreciated. Thank you.
 
  • Like
Reactions: Allybatross1

masagrator

The patches guy
Developer
Joined
Oct 14, 2018
Messages
6,265
Trophies
3
XP
12,026
Country
Poland
It means that you are editing file with strings in wrong way.
Unity don't use any hash and control check in retail game by default.

My guess is that you are not fixing string size value that is stored either before each string or in table at the beginning of file. You can check easily that it's not a issue of checks by changing one byte in any string so size will remain the same. I'm in 99.9% it will run
 
Last edited by masagrator,

Skyluker4

Member
OP
Newcomer
Joined
Jan 14, 2021
Messages
17
Trophies
0
Location
Fayettville, Arkansas
Website
www.lukesimmons.codes
XP
182
Country
United States
It means that you are editing file with strings in wrong way.
Unity don't use any hash and control check in retail game by default.

My guess is that you are not fixing string size value that is stored either before each string or in table at the beginning of file. You can check easily that it's not a issue of checks by changing one byte in any string so size will remain the same. I'm in 99.9% it will run

Yep. Looks like you're right. The game runs when replacing it with a string of the same length. I'm having trouble finding where the lengths are stored, so I'll have to do some more digging.
 

Skyluker4

Member
OP
Newcomer
Joined
Jan 14, 2021
Messages
17
Trophies
0
Location
Fayettville, Arkansas
Website
www.lukesimmons.codes
XP
182
Country
United States
I figured it out. Turns out that it's not the lengths of the strings that were the problem, but editing the raw file from the extractor and importing it truncated the last few bytes of the file. Since the files I was editing were JSON, the last brace was removed and invalidated it. I got it to work by extracting the formatted dumps instead of the raw data to edit.

So it turns out that it was a weird bug in Unity Asset Bundle Extractor. It happens when importing the raw file it looks like. The edited raw file looks fine, but when re-extracting the edited file from UABE and examining it the closing curly brace is missing.

So no problem with the string lengths; no other files needed to be changed. Just the method of changing them it turns out.
 
  • Like
Reactions: hippy dave

masagrator

The patches guy
Developer
Joined
Oct 14, 2018
Messages
6,265
Trophies
3
XP
12,026
Country
Poland
I recommend UnityEx as UABE is not maintained for over 2 years.

And you don't need to compress UnityFS again. Unity sccepts also decompressed ones.
 

alucard971

Member
Newcomer
Joined
May 21, 2009
Messages
5
Trophies
0
XP
43
Country
United States
I have no skills to offer, but Please keep everyone informed on this translation. I don't think Atlas is going to translate this one any time soon and I would love to play it with my family. Keep up the amazing work!!
 

Skyluker4

Member
OP
Newcomer
Joined
Jan 14, 2021
Messages
17
Trophies
0
Location
Fayettville, Arkansas
Website
www.lukesimmons.codes
XP
182
Country
United States
Just wanted to give a little update. I've got some of the game translated with some help. Currently working on getting the character dialog translated. Looks like there's asset bundles inside of asset bundles or something (some weird binary file) for the character dialog. Making good progress with it though and I think it'll be ready to share in a couple months.
 
  • Like
Reactions: Allybatross1

Allybatross1

New Member
Newbie
Joined
Aug 12, 2021
Messages
1
Trophies
0
Age
25
XP
34
Country
United States
This looks awesome! Thanks for trying to translate this. Let us know if you've got any updates on this!

--------------------- MERGED ---------------------------

Hi! Would you be able to repost this / allow access for me to join this discord? I'd love to join
 
  • Like
Reactions: bluf_ish

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    K3Nv2 @ K3Nv2: https://youtu.be/MddR6PTmGKg?si=mU2EO5hoE7XXSbSr