Tell me how long is the story line in this and I might just be willing to do some translation for fun , Man I adore this game played it on DS it was awesome.
The actual story is really not super-amazing. The story is basically just a few events occurring and you going to various lands to solve the town's problems.Tell me how long is the story line in this and I might just be willing to do some translation for fun , Man I adore this game played it on DS it was awesome.
Ooooh never done translation on 3DS but I'm experienced in other game consoles, alright give me till the end of this month or maybe 3 months if my studies get hardThe actual story is really not super-amazing. The story is basically just a few events occurring and you going to various lands to solve the town's problems.
And your dastardly rival, Slival, coming to ruin the fun!
If you'll look back in this very thread, you'll see that he's the one who initially contacted me. He and other team members have expressed quite a bit of interest.Is there any incentive for Z6N4/Helmax, the main TW3D hacker, to, greatly, assist in this project? Is it only in his interest because of it being a DQ title? Is there any confirmation that he will help, or is he too 'busy' with other obligations? What makes you hopeful about his inclusion? I am asking these questions because I know from experience that ambitious undertakers of these projects usually die off without any confirmation. (Looking at the large expanse of long-unfinished translations across this forum and the others)
No need for a flashcart, just install on your 3DS directly.Haven't posted in forever but just had to when I noticed this.. Hope this project is still alive, would be enough of an excuse for me to actually get a flashcart..!
you could probably just take a pic with your phone.So, I was messing around with the game's files, and I made a proof of concept edit. (I don't have pictures because I don't have NTR or a capture card)
I was able to inject, badly, translated text into the game's files and replace music with music of my choice.
I haven't ever gotten into those, as I enjoy the main series more (c'mon, S-E, release DQVIII state-side already!) and hope they'll remake DQIX as well. I mean, I see this, and I'm like, "WTF is this?"Recently, I got my hands on a cart of Slime Morimori Dragon Quest 3: Taikaizoku To Shippo Dan, the third entry in the series commonly known in English as Dragon Quest Heroes: Rocket Slime. (If you haven't played the DS one, you are missing out!)
I'm not a translator (or really, much of a hacker) by any stretch of the imagination, but I've been poking around with the ROMFS a bit in EFE. Its files seem to be pretty compatible (it's a TON easier to mess with than Rhythm Heaven TB+) My question is, is there anyone else on GBATemp who would want to see this game in English?
EDIT: I've been able to extract text data. More info to come.
I'm just now realizing that this project will be much, much harder than I first assumed.
As you may have noticed, @lgnmcrules and @CakeLancelot have both been able to sub text in to the game. Why haven't I been able to make a similar update?
The reasons for this are actually extremely technical.
If you've been following the project closely, you'd know that the ROM of Rocket Slime 3 is unique in that the vast majority of the text is stored in exefs, which is where the executable code is stored. We've been able to view this text with a hex editor, and been able to accomplish rudimentary edits by just using the hex editor.
However, this won't work for the whole thing, and here's a (probably very flawed) explanation of why.
One thing that you have to keep in mind is the physical size of the text. English is physically larger than Japanese-on average, the number of characters that is required to write a sentance in English is greater than the number of characters that is required to write that same sentance in Japanese. And this can cause some problems.
Let's say that we have a block of text that we're translating that is exactly 50 characters long in Japanese. We'll call this block, Block A. Our English-translated version of Block A is exactly 125 characters long. So, we sub in our text using our hex editor and we try to test it.
Our first 50 characters in Block A display just fine, but only those 50 characters display. Instead, the game assumes that our remaining 75 characters are part of Block B, or Block C, and if we were to read text from those blocks, the remainder of our subbed script would display instead.
This is due to pointers. (And probably quite a bit of other stuff that we don't know about yet) Pointers are addresses in hex that tell the game where the different blocks of text are located. The pointer that corresponds to Block A would state that Block A exists from Point 1 to Point 2, so in order to make our modified text fit, we'd need to add 0x4B to the ending segment of our pointer.
This would cause another conflict with Block B. Pointer B states that Block B exists from Point 2 to Point 3, but we've just overwritten some or all of the space allocated to Block B by adding to Block A's pointer, so we'd need to add to Block B's pointer, which would mess with Block C, so we'd need to add to Block C's pointer... and so on.
The only reliable way to edit text in this case would be to use a program that would recalculate these pointers for us. Problem is, it's hard to even know which pointers correspond to which block. We would need to reverse engineer quite a lot of files-code.bin and the NCCH header, which has pointers of its own.
This means that in order to get this translation done, someone would have to do the following:
1: Figure out how to split the code.bin according to the NCCH header
2: Create a map that shows what text goes where and which pointers correspond to each block
3: Create a program that would allow us to edit these blocks and their respective pointers in both code.bim and the header
4: Do the same for the battle text (which wouldn't be nearly as hard)
This would be a massive amount of effort. It's not impossible, it's not an insurmountable obstacle. But we would need someone experienced with code.bin editing or maybe even reverse engineering.
If anyone can point me to any resources that will assist in code.bin hacking/editing, or knows how to accomplish the above and is interested in helping, please please let me know!
TL;DR:
This is actually going to be pretty difficult. We need someone who knows what they're doing in regards to code.bin editing.
Also I kinda suck at writing so I'm sorry if everything I just posted is utterly nonsensical
Thank you for the detailed writeup. I am just a beginner in this as well however I think I may have an idea... I will edit this post in a few hours with the detailsI'm just now realizing that this project will be much, much harder than I first assumed.
As you may have noticed, @lgnmcrules and @CakeLancelot have both been able to sub text in to the game. Why haven't I been able to make a similar update?
The reasons for this are actually extremely technical.
If you've been following the project closely, you'd know that the ROM of Rocket Slime 3 is unique in that the vast majority of the text is stored in exefs, which is where the executable code is stored. We've been able to view this text with a hex editor, and been able to accomplish rudimentary edits by just using the hex editor.
However, this won't work for the whole thing, and here's a (probably very flawed) explanation of why.
One thing that you have to keep in mind is the physical size of the text. English is physically larger than Japanese-on average, the number of characters that is required to write a sentance in English is greater than the number of characters that is required to write that same sentance in Japanese. And this can cause some problems.
Let's say that we have a block of text that we're translating that is exactly 50 characters long in Japanese. We'll call this block, Block A. Our English-translated version of Block A is exactly 125 characters long. So, we sub in our text using our hex editor and we try to test it.
Our first 50 characters in Block A display just fine, but only those 50 characters display. Instead, the game assumes that our remaining 75 characters are part of Block B, or Block C, and if we were to read text from those blocks, the remainder of our subbed script would display instead.
This is due to pointers. (And probably quite a bit of other stuff that we don't know about yet) Pointers are addresses in hex that tell the game where the different blocks of text are located. The pointer that corresponds to Block A would state that Block A exists from Point 1 to Point 2, so in order to make our modified text fit, we'd need to add 0x4B to the ending segment of our pointer.
This would cause another conflict with Block B. Pointer B states that Block B exists from Point 2 to Point 3, but we've just overwritten some or all of the space allocated to Block B by adding to Block A's pointer, so we'd need to add to Block B's pointer, which would mess with Block C, so we'd need to add to Block C's pointer... and so on.
The only reliable way to edit text in this case would be to use a program that would recalculate these pointers for us. Problem is, it's hard to even know which pointers correspond to which block. We would need to reverse engineer quite a lot of files-code.bin and the NCCH header, which has pointers of its own.
This means that in order to get this translation done, someone would have to do the following:
1: Figure out how to split the code.bin according to the NCCH header
2: Create a map that shows what text goes where and which pointers correspond to each block
3: Create a program that would allow us to edit these blocks and their respective pointers in both code.bim and the header
4: Do the same for the battle text (which wouldn't be nearly as hard)
This would be a massive amount of effort. It's not impossible, it's not an insurmountable obstacle. But we would need someone experienced with code.bin editing or maybe even reverse engineering.
If anyone can point me to any resources that will assist in code.bin hacking/editing, or knows how to accomplish the above and is interested in helping, please please let me know!
TL;DR:
This is actually going to be pretty difficult. We need someone who knows what they're doing in regards to code.bin editing.
Also I kinda suck at writing so I'm sorry if everything I just posted is utterly nonsensical