News: 11 March 2016 - Forum Rules
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia, Danke

Author Topic: We are in Current Year, 2020, the Year of our Lord Jesus Christ  (Read 4609 times)

VicVergil

  • Hero Member
  • *****
  • Posts: 727
    • View Profile
Re: We are in Current Year, 2020, the Year of our Lord Jesus Christ
« Reply #20 on: January 28, 2020, 02:15:52 am »
As much as I loath to say this, it has been brought to my attention even this topic was noticed again by a certain external party. They did it three times the last few days, followed by "attacks"... this makes it the fourth time now. I urge everyone here to please exercise extreme caution with any identifying personal information or other online presence. Any translators touching this specific series can never be too careful these days.

I would like to edit the font, and was going to ask for help doing so later on (when I've finished inserting English dialogue). Weissvulf provided me with the font.bmp that I'm using, and I don't understand how to edit it properly. It seems that no matter what I use, the file size of the bitmap doubles when I save it and then the reinsertion of the font doesn't work right. I remember he said something about using his "2 bit tool" but Windows 10 insists that it's a virus and refuses to play nicely with it. I've had the tool working, but the file size STILL doubled, so I don't know what he did to make it work and he hasn't been online to ask in like a year.

Another problem is that there's just no way I can edit the images (title screen, Impact's dashboard, signs etc.) because Konami used a proprietary format and that's way beyond my skill level. I can extract them with Weissvulf's Raw to TIM tool, but I have no idea how to extract the palette or how I'm supposed to reinsert the images without the colours being completely wrong. A programmer told me that it would require its own tool to be made.

Found this to work for the font: Using Crystaltile2 on the executable (SPLS_002.17), you can get the font to show. Settings are included.
https://imgur.com/a/KL5n30m

For the graphics, I tried quickly with the title screen. GMN_TIT.BIN is the graphical data proper, and GMN_TITX.BIN has the palette (colors) and some layout data format. Maybe a tool will be useful for that.
You could select hex data (i used h0-h200) in Crystaltile2 in GMN_TITX, right-click, DATA>PALETTE conversion, then in the palette tab on the right export your newly created palette. Then you open GMN_TIT, use the correct settings, and then import the palette from earlier. PS1 and GBA share similar graphical format conventions, so the palette colors are slightly off granted but not too badly.
This may allow you to display some graphics in close to correct colors, then you can change them to your liking. It's a start.


RaidouJFlo

  • Jr. Member
  • **
  • Posts: 81
    • View Profile
Re: We are in Current Year, 2020, the Year of our Lord Jesus Christ
« Reply #21 on: January 28, 2020, 12:43:17 pm »
Does this happen when modifying text directly in RAM, or in the disc image? If it%u2019s the latter, have you tried rebuilding EDC/ECC sectors after modifying the BIN?

https://www.romhacking.net/utilities/1264/

Sadly that didn't help.
I am doing a very simple change, such as:

At 0x2337E3FC (disk image/bin), this is the beginning of one of ebisu's strings. He says: %u306B%u3087%u307B%u307B%u307B%u3001(82C9,82E5,82D9,82D9,82D9,8141).

Changing it to %u307B%u307B%u307B%u307B%u307B, (82D9,82D9,82D9,82D9,82D9,8141) causes the black screen. The same type of modification causes a black screen when just changing other strings as well.

I am not sure but it is almost like the game is expecting the string to be what it is currently.

At 0x2337E1F0, we have 82CD,82AE,82EA,92AC,82CD (this is literally the first string in the beginning cutscene).

If I change these to any other Japanese characters, I get the black screen.

But if I change the two 82CDs to the below, it loads the cutscene and the modified characters:

82CE,82AE,82EA,92AC,82CC

The first was changed to 82CE (+1) and the last was changed to 82CC (-1).

If I changed the first 82CD to 82CE but didn't change the last 82CD to 82CC, Id get a black screen. Vice versa, if I changed the last to 82CC but kept the first as 82CD, I get a black screen. I didn't try it yet, but if I changed the first 82CD to 82CF (+2) and last 82CD to 82CB (-2), I bet it would load. Note: I ended up trying this and it loaded.

I thought that maybe some kind of anti-piracy was blocking changes but that's not the case. There's probably something weird going on in with what it expects the strings to be. Maybe the bytes that precede the string (or after it).

Edit:==========================

The first string looks like this:

73 0D 69 00 00 00
81 40 81 40 81 40 81 40 81 40 82 CF 82 AE 82 EA 92 AC 82 CB 66 00

81 40 is an indent (or space).
66 00 at the end is a line break I believe.

Maybe the 73 0D 69 00 has something to do what the string can be defined as.

The next string (just after the 66 00 above) starts with a similar looking group of bytes (bolded):

76 01 08 00
81 40 81 40 8B F3 91 4F 82 CC 83 8A 83 54 83 43 83 4E 83 8B 83 75 81 5B 83 80.....etc

sorry if this is messy by the way. tbh im just pouring my thoughts out into this post
« Last Edit: January 28, 2020, 01:24:07 pm by RaidouJFlo »

MrFwibbles

  • Jr. Member
  • **
  • Posts: 39
    • View Profile
Re: We are in Current Year, 2020, the Year of our Lord Jesus Christ
« Reply #22 on: January 28, 2020, 03:13:15 pm »
(Crystaltile2 advice)
Thank you. I'll try this out.

VicVergil

  • Hero Member
  • *****
  • Posts: 727
    • View Profile
Re: We are in Current Year, 2020, the Year of our Lord Jesus Christ
« Reply #23 on: January 28, 2020, 03:46:33 pm »
Thank you. I'll try this out.
My advice was missing something... you should also manually replace the very first color in the palette with something else. (A double click on the palette tab colors) A solid green for example. Otherwise when you import back, the crushed blacks will cause every black pixel to appear transparent, which is... very far from ideal.

Even if you use a 6x11 font (effectively doubling how much text you can have), you'll still need to do an assembly edit for when the next character shows. Someone here on the forums posted a tutorial for Vagrant Story with the graphical debugger in psX1.13, that might be useful.

peixemacaco

  • Jr. Member
  • **
  • Posts: 40
  • 70 65 69 78 65 6d 61 63 61 63 6f
    • View Profile
    • Old peixemacaco site found
Re: We are in Current Year, 2020, the Year of our Lord Jesus Christ
« Reply #24 on: January 28, 2020, 04:25:34 pm »
Great topic title!

Good luck with your project.


Nelson
Super Monaco GP... It garnered an at-the-time unprecedented 10–10–9–9 rating from Electronic Gaming Monthly's Review and wasn`t a F Indy title.

illuminerdi

  • RHDN Patreon Supporter!
  • Jr. Member
  • *****
  • Posts: 8
    • View Profile
Re: We are in Current Year, 2020, the Year of our Lord Jesus Christ
« Reply #25 on: January 28, 2020, 04:51:44 pm »
As much as I loath to say this, it has been brought to my attention even this topic was noticed again by a certain external party. They did it three times the last few days, followed by "attacks"... this makes it the fourth time now. I urge everyone here to please exercise extreme caution with any identifying personal information or other online presence. Any translators touching this specific series can never be too careful these days.

Wait...what?!? Someone is attacking people (online, I assume) because...they're translating Goemon games?!?

NM, pretty sure I figured it out. I have mixed feelings about translation accuracy vs using terms that have retroactively been deemed offensive. That said, attacking people is never a solution and I'm staying the hell away from this, I'm just here for the hacks...
« Last Edit: January 28, 2020, 04:57:13 pm by illuminerdi »

RaidouJFlo

  • Jr. Member
  • **
  • Posts: 81
    • View Profile
Re: We are in Current Year, 2020, the Year of our Lord Jesus Christ
« Reply #26 on: January 28, 2020, 06:59:03 pm »
Finally got it to stop showing a goddamn black screen. Step one is complete.


acediez

  • Sr. Member
  • ****
  • Posts: 441
    • View Profile
Re: We are in Current Year, 2020, the Year of our Lord Jesus Christ
« Reply #27 on: January 28, 2020, 07:02:11 pm »
Finally got it to stop showing a goddamn black screen. Step one is complete.
Nice! I was about to boot it to see if I could figure the problem out. What was the cause?

RaidouJFlo

  • Jr. Member
  • **
  • Posts: 81
    • View Profile
Re: We are in Current Year, 2020, the Year of our Lord Jesus Christ
« Reply #28 on: February 03, 2020, 02:31:42 pm »
Nice! I was about to boot it to see if I could figure the problem out. What was the cause?
It was a joke. I modified the RAM at runtime.
God bless you if you can figure it out but I'm STUMPED. There are zero debuggers that work with this game btw.
I tried EPSXE from this site, no cash and psxfin. All crash or produce a black screen. EPSXE vanilla and Bizhawk run this game fine. Bizhawk RAM watch/debugger causes exceptions so only the RAM viewer works.

acediez

  • Sr. Member
  • ****
  • Posts: 441
    • View Profile
Re: We are in Current Year, 2020, the Year of our Lord Jesus Christ
« Reply #29 on: February 03, 2020, 09:02:08 pm »
I'm currently using no$psx on Shin Sedai. It didn't boot normally either, but I got around it. I just tried Oedo Daikaiten and managed to get in-game with the same method. It's the same exact issue.

Run the game, go to RAM $8002C1E4, NOP the instruction (jne r2,r3,8002C214h), and continue the game. It should boot, but with a sped up framerate. After that, go back to that address and restore the instruction to what it was. It should now run normally. Save a savestate, and use it whenever you boot the game, so you don't have to go through the process again.

Not sure if it's some sort of copy protection no$psx isn't capable of working out, or just an emulation bug. Whatever it is, this workaround is enough to get around it. Now you can debug it and see why your text changes are hanging the game.

---

As for Shin Sedai, I finished figuring out the text formatting and worked out a table to extract/insert text using tools I'm already familiar with (the ones I used on Mega Man X6 Tweaks). So far so good, but I still need to work on my script to rebuild the modified files back into the ALLDATA.X pack. No issue preventing me from doing it (atm), I just haven't had much time to work on this.

RaidouJFlo

  • Jr. Member
  • **
  • Posts: 81
    • View Profile
Re: We are in Current Year, 2020, the Year of our Lord Jesus Christ
« Reply #30 on: February 03, 2020, 10:46:55 pm »
I'm currently using no$psx on Shin Sedai. It didn't boot normally either, but I got around it. I just tried Oedo Daikaiten and managed to get in-game with the same method. It's the same exact issue.

Run the game, go to RAM $8002C1E4, NOP the instruction (jne r2,r3,8002C214h), and continue the game. It should boot, but with a sped up framerate. After that, go back to that address and restore the instruction to what it was. It should now run normally. Save a savestate, and use it whenever you boot the game, so you don't have to go through the process again.

Not sure if it's some sort of copy protection no$psx isn't capable of working out, or just an emulation bug. Whatever it is, this workaround is enough to get around it. Now you can debug it and see why your text changes are hanging the game.

---

As for Shin Sedai, I finished figuring out the text formatting and worked out a table to extract/insert text using tools I'm already familiar with (the ones I used on Mega Man X6 Tweaks). So far so good, but I still need to work on my script to rebuild the modified files back into the ALLDATA.X pack. No issue preventing me from doing it (atm), I just haven't had much time to work on this.

Well shit - yeah. That worked for me. NOP'd it, took a snappy snap then restored the instruction.
Thanks dude.

acediez

  • Sr. Member
  • ****
  • Posts: 441
    • View Profile
Re: We are in Current Year, 2020, the Year of our Lord Jesus Christ
« Reply #31 on: February 24, 2020, 08:33:45 am »
Small Shin Sedai update.

I haven’t been able to work on this heavily, but it’s happening steadily. I’ve made progress on the tools I’m writing to handle game files, text tables, and more groundwork. I’m pretty much done with the process of accessing text files, being able to edit them, and repacking the main data file.

I’m currently figuring out problems related to handling Mode2/Form2 data files. The tools and methods I’ve used before to either replace the file on a BIN or rebuild the whole disc don’t support this kind of files. I’m also not sure if I’m supposed to generate the sector’s header data myself and replace raw data, or if there’s an existing tool that handles it.

I haven’t yet tried everything at my disposal. If I can’t figure it out myself, I’ll start asking people around.

As I said before, I plan to finish a file editing workflow first, replacing the font and spacing second, and only then I’ll start looking for a translator. (I’d love if Tom changed his mind and came back, but I haven’t been in touch with him, so I can only go by his decision of leaving the scene)

Video editing to replace subtitles, and various graphics replacement, are all things that will come after the main text is taken care of.

MrFwibbles, Raidou, since this will probably take awhile, and this thread will probably be buried and forgotten in between updates... If either of you is interested in keeping in touch directly PM me your Discord ids. Would be cool to have a group chat for these.
« Last Edit: February 24, 2020, 08:59:16 am by acediez »