Author Topic: Getter Love Translation  (Read 9232 times)

0 Members and 1 Guest are viewing this topic.

Offline nuu

  • Hero Member
  • *****
  • Posts: 1524
  • Karma: +74/-2
    • View Profile
Re: Getter Love Translation
« Reply #15 on: March 12, 2019, 11:55 PM »
Found this a little funny - I finally found part of the pointers for the main dialogue text.  Rather than loading a line at a time, it loads a section at a time.  That section can include multiple lines of text or just a single line of text.  One of the lines of text on its own in a section is:

TEST

another is:

fdlsafjlaf

Literally, just someone banging on a keyboard so they could make sure it printed out correctly :)  I'm not really sure what they were thinking since both lines were encoded with ASCII.  The game won't display ascii correctly without modification since it uses SJIS (Japanese 2-byte encoding).  It's possible they were part of some debug system since sometimes they implement ascii for debug menus.
Funny. :) Looks like early in development when they just wanted to display something at all on the TV to see that things are working. And it ended up being left in the rom. No need to implement SJIS kana when just printing variable values and such early on.

Nice to see some translated screens. I wonder how the gobi (sentence endings) selection will be solved though. At the start of each game, each player is able to pick a gobi to end sentences with as part of his personality, and this will be reflected in the dialog during the game.

Offline Silentone2k94

  • Newbie
  • *
  • Posts: 8
  • Karma: +0/-0
    • View Profile
Re: Getter Love Translation
« Reply #16 on: March 13, 2019, 03:36 AM »
Wow, it's looking great so far! Keep it up!

Offline ozidual

  • Hero Member
  • *****
  • Posts: 553
  • Karma: +52/-0
    • View Profile
Re: Getter Love Translation
« Reply #17 on: March 13, 2019, 09:13 PM »
Wow, it's looking great so far! Keep it up!

Will do :)

Nice to see some translated screens. I wonder how the gobi (sentence endings) selection will be solved though. At the start of each game, each player is able to pick a gobi to end sentences with as part of his personality, and this will be reflected in the dialog during the game.

I see that the translator has translated that section, but I know he's still working on his first pass over all the text so I'd rather not show it yet.  He's interested in the game and plays through it after each patch I send (and I've sent quite a lot).  He digs up broken things to send me and we've worked through a few issues so far.

One thing he's mentioned is that in Japanese they have words for "the morning/afternoon/evening 2 days from now" and such.  He has a couple suggestions for a fix.  I just haven't tackled that problem yet, but it's on my list of things to look into.  So he does have some good insight into the game and how the translation will look/feel.

Here's a progression of me fixing some pause menu issues caused by going from 2-byte to 1-byte text and some pointer errors in my giant translation to hex conversion spreadsheet:



Right now I'm (hopefully) halfway through one of the texture decompression functions.  I'm understanding pieces of it, but no big picture overview of how it works yet.  The majority of the textures in the game (like the 12 squares with Japanese text in the above images) are compressed, so this will be essential in getting the game fully translated.
Projects: Zelda OoT GCtoN64, Doshin the Giant, SSSV, Sim City 64, Getter Love, Shiren
Flash Carts: EverDrive64 2.5, EverDrive N8, SD2SNES

Offline nuu

  • Hero Member
  • *****
  • Posts: 1524
  • Karma: +74/-2
    • View Profile
Re: Getter Love Translation
« Reply #18 on: March 14, 2019, 12:14 AM »
You mean there are a separate word for "the evening of the day after tomorrow" for example? Not sure what that could be. I know there are words for things like "the day after tomorrow" or "the day before yesterday" which English is missing. Then there is yuugata (used normally around 17:00) which I'm not sure if it's afternoon or evening in English. Dictionaries suggests evening or dusk but in the context of the game yoru would be evening/night and yuugata might be (late) afternoon.

Good that he plays the game so he knows the context.

Oh those 12 panels. Maybe you know this but those displays each player's stats (容姿 Appearance, 体力 Stamina and オカネ Money). Appearance lowers over time during the game (feels like it lowers faster when hanging with Reika for some reason) and is restored by taking a bath. Stamina lowers when doing physical stuff like moving or working part time I guess and is restored by resting. I recall that getting a cold shower from a girl also seems to lower both. Both can ruin a date if they are too low (girls don't like you showing up dirty or tired), so you need to plan ahead if you have an important date.

Now I start to feel like playing this game again. Been more than a year since last time. :)

Offline ozidual

  • Hero Member
  • *****
  • Posts: 553
  • Karma: +52/-0
    • View Profile
Re: Getter Love Translation
« Reply #19 on: March 16, 2019, 04:29 AM »
Hah, so funny story.  I was working on one of the compression/decompression schemes for Getter Love.  I traced it out over 2 days, built a decompressor yesterday and a compressor today.  My programs are 100% 1-to-1 so I can compress, decompress, recompress, and get the same thing.  I just finished that and noticed that the recompress was missing 4 bytes at what I thought was the end (actually meant to be the beginning).  Those 4 bytes were 0x4C5A5353 or L.. Z.. S.. S.  One of the most common compression schemes in N64 games :)  In my defense, I'm just at the end of this cold/flu and haven't gotten much sleep the last few nights.  Still :)  Oh well, it felt good to get that traced out and build my own program around it.  It's also a very customizable compression scheme so it was good to get the settings for GL down.

@nuu I believe it's a fill in the blank with morning/afternoon/evening, and today/tomorrow/day after tomorrow.  I did not know about the pause screen translation - that's pretty cool.  Personally, I've never played Getter Love, which is odd for me with these hacks.  Usually as I'm working on a translation hack, I'm putting some time into playing the game too.  Like you though, I can't wait to play it :)
« Last Edit: March 19, 2019, 02:04 AM by ozidual »
Projects: Zelda OoT GCtoN64, Doshin the Giant, SSSV, Sim City 64, Getter Love, Shiren
Flash Carts: EverDrive64 2.5, EverDrive N8, SD2SNES

Offline nuu

  • Hero Member
  • *****
  • Posts: 1524
  • Karma: +74/-2
    • View Profile
Re: Getter Love Translation
« Reply #20 on: March 23, 2019, 07:57 PM »
Heh at least now you have a good decompressing tool for the format. Maybe you can share it for other translation projects.

Ah do you mean the words are stored separately and called into the dialog as they are used instead of storing the whole text as is (except for character and place names and such)?

Offline ozidual

  • Hero Member
  • *****
  • Posts: 553
  • Karma: +52/-0
    • View Profile
Re: Getter Love Translation
« Reply #21 on: March 30, 2019, 03:09 AM »
Yeah, the words are stored separately.  We've had some good suggestions on that, and we'll see how it goes :)

I'm back!  I had some busy days at work the past week or two so didn't get much time to work on this.  But now I'm full speed ahead!  My compression/decompression tools aren't perfect yet.  I went through and found a lot of text textures though:







As you can see with that last image, the tool's cutting off some of the larger images.  Still, good enough to extract for translating a good chunk and I'll keep working on getting them to work right.  I'll definitely release my tools when I finish.  I think I did that with Sim City, and I have a few other tools from other projects I'm working on that I'll release when those projects are complete.  I actually rewrote my hex to text to hex translation tool for Getter Love - a few more games, and that might be ready for release too.

Fixed it:

« Last Edit: May 31, 2020, 02:13 AM by ozidual »
Projects: Zelda OoT GCtoN64, Doshin the Giant, SSSV, Sim City 64, Getter Love, Shiren
Flash Carts: EverDrive64 2.5, EverDrive N8, SD2SNES

Offline ozidual

  • Hero Member
  • *****
  • Posts: 553
  • Karma: +52/-0
    • View Profile
Re: Getter Love Translation
« Reply #22 on: April 03, 2019, 08:40 PM »
It's been a few days and I've made some minor fixes/updates in that time:

  - The pause menu was still broken on hardware due to the 2 byte to 1 byte conversion.  Fixed that by getting rid of the NULL character (0x7F) and changing the code that reads numbers.
  - The Yen symbol was giving me trouble, so I made it a 1 byte character.
  - At least one section of text did not like having 0x00 as the "end of text" delimiter, so I updated that section to use at least 0x0000.
  - The alignment issue from a few weeks ago was fixed, but the lines lost alignment when they zoomed off the screen.  Fixed that.  It wasn't very noticeable, but it annoyed me :)
  - Found out Getter Love has a 2nd font for displaying usernames that is all capitals/Japanese characters.  It needed a 1-byte to 2-byte conversion to work properly, and then it had to be limited to 6 characters otherwise it would overwrite other stuff.  I hate cutting off names, but as you can see in the progression below there really is no space and the letters are already small:




I'm working on the Name Screen right now.  The original Name Screen is crammed full of Japanese characters, so I'm having to get creative to make it not appear so empty with just the Latin characters.  It also doesn't help that there are 2 tables for the characters - one for what is displayed on the screen and one for what is actually added to the username.  There's also some weird spacing to throw the pointer off and fun stuff like that.  This will probably eat up a few days/couple weeks.

« Last Edit: April 03, 2019, 08:42 PM by ozidual »
Projects: Zelda OoT GCtoN64, Doshin the Giant, SSSV, Sim City 64, Getter Love, Shiren
Flash Carts: EverDrive64 2.5, EverDrive N8, SD2SNES

Offline ozidual

  • Hero Member
  • *****
  • Posts: 553
  • Karma: +52/-0
    • View Profile
Re: Getter Love Translation
« Reply #23 on: April 10, 2019, 07:19 AM »
It's been a while with no update, but I am making some good progress on the Name Screen:



Just a few things left to clean up and it should be done.  Not tonight though.  Maybe a day or two left.
Projects: Zelda OoT GCtoN64, Doshin the Giant, SSSV, Sim City 64, Getter Love, Shiren
Flash Carts: EverDrive64 2.5, EverDrive N8, SD2SNES

Offline ozidual

  • Hero Member
  • *****
  • Posts: 553
  • Karma: +52/-0
    • View Profile
Re: Getter Love Translation
« Reply #24 on: April 11, 2019, 08:29 PM »
And the Name Screen is done!  Here's the original next to the new one:



I know the 2nd screen looks exactly like the last post.  That's because it is the same picture.  But you'll have to trust me that under the hood it's much better :)  You'll notice that the new name screen takes up a lot less space.  I added Getter Love around the outside to fill in the emptiness, and limited the selection to the inner area (so you cannot select the letters in Getter Love!!).  Max number of characters is now 7 up from 6.  I can't take credit for Daisuke, Sesshuu or the other names, that's the translator :)  There's a lot more to it, but there you go. 

I'm going to take another short break from Getter Love to get some other stuff done.  When I get back to it, it'll probably be to work more on my texture compression/decompression code so not much to see.  I'll try to make some material for updates during that time.  We'll see.
« Last Edit: April 12, 2019, 05:56 AM by ozidual »
Projects: Zelda OoT GCtoN64, Doshin the Giant, SSSV, Sim City 64, Getter Love, Shiren
Flash Carts: EverDrive64 2.5, EverDrive N8, SD2SNES

Offline ozidual

  • Hero Member
  • *****
  • Posts: 553
  • Karma: +52/-0
    • View Profile
Re: Getter Love Translation
« Reply #25 on: April 19, 2019, 01:22 AM »
Small update.  I'm almost done with the Compression/Decompression.  It is 1 to 1 with even large images (it was only working with small images).

Fun side note:  LZSS uses a Ring array.  Getter Love looked like it used a LZSS Ring array that was 1024 bytes.  Makes sense, right?  Nope, they use one that is 958 bytes.  The only thing that makes sense is 958 is 0x3BE, and the Hudson mascot is a bee?  It's a stretch, I know, but I'm sticking with it.  Just realized that and thought I'd post it.  Hopefully I'll have a more interesting update in the next few days.
Projects: Zelda OoT GCtoN64, Doshin the Giant, SSSV, Sim City 64, Getter Love, Shiren
Flash Carts: EverDrive64 2.5, EverDrive N8, SD2SNES

Offline nuu

  • Hero Member
  • *****
  • Posts: 1524
  • Karma: +74/-2
    • View Profile
Re: Getter Love Translation
« Reply #26 on: April 19, 2019, 01:44 PM »
Haha maybe you need to take a rest and get some fresh air.

Good job on the compression/decompression BTW.

Offline ozidual

  • Hero Member
  • *****
  • Posts: 553
  • Karma: +52/-0
    • View Profile
Re: Getter Love Translation
« Reply #27 on: April 21, 2019, 06:45 AM »
Haha maybe you need to take a rest and get some fresh air.

lol, funny you should mention it - just got sick again :)  Taking it easy for a little bit.  Maybe I'll check out this "outside" place where they keep the fresh air.
Projects: Zelda OoT GCtoN64, Doshin the Giant, SSSV, Sim City 64, Getter Love, Shiren
Flash Carts: EverDrive64 2.5, EverDrive N8, SD2SNES

Offline ozidual

  • Hero Member
  • *****
  • Posts: 553
  • Karma: +52/-0
    • View Profile
Re: Getter Love Translation
« Reply #28 on: May 14, 2019, 12:14 AM »
The translation is going well, I created a new test patch over the weekend.

I recently fixed the today, tomorrow, day after tomorrow issue.  The patch still needs some testing, but I mapped out everything I need if it doesn't.  While working on the patch I found some interesting stuff - RAM locations for the player's items, style, stamina, girls' interest, etc.  Good stuff.  I'll have some nice gameshark cheat codes once the patch releases.

Next up, a patch with some more Name Screen fixes.  There is an item called the Change Name Card that allows you to change a player's name.  It looks like it uses its own code separate from the normal Name Screen code.  I'll do some digging but should have that turned around soon.

While surfing the net I found a game based off of Getter Love.  Typing of the Date (yep, Date not Dead) for the Dreamcast.  It's your typical typing game, but with the Getter Love characters and audio.  Looks interesting.  Reviews seem mediocre though.
Projects: Zelda OoT GCtoN64, Doshin the Giant, SSSV, Sim City 64, Getter Love, Shiren
Flash Carts: EverDrive64 2.5, EverDrive N8, SD2SNES

Offline ozidual

  • Hero Member
  • *****
  • Posts: 553
  • Karma: +52/-0
    • View Profile
Re: Getter Love Translation
« Reply #29 on: May 22, 2019, 06:32 AM »
Here's the weekly patch update - things are going well.

The translator is churning through text at an amazing pace.  About once a week he sends me the latest and I add it into the game.

Last week and over the weekend I worked on the Name Screen fixes.  As I said before, the original Name Screen was just fine.  It's the Name Change Card that allows you to change another user's name that was broken.  That's fixed now.  It was crashing after accepting a name because I had accidentally deleted some text that looked like it was part of the alphabet.  After that there was some tweaking  so it stopped assuming 2-byte encoding for text.  Unfortunately, the code that is used for counting text is the same code that is used all over the game for loading other 2-byte pieces of command data.  I got around this by throwing in some code to re-calculate the name length.  It seems to be working now.

Throughout all of my Name Screen work, it seems to have limited the NPC names to 7 letters as well.  My next bit of hacking is to undo that.  Here are some random screenshots:


Projects: Zelda OoT GCtoN64, Doshin the Giant, SSSV, Sim City 64, Getter Love, Shiren
Flash Carts: EverDrive64 2.5, EverDrive N8, SD2SNES