Showing posts with label VincentNL. Show all posts
Showing posts with label VincentNL. Show all posts

Segagaga has Finally Been Translated into English — Here's How to Play It (and How it was Achieved!)

The headline you see above is not some form of freaky clickbait, nor is it a two-month-early April Fool’s prank. It is, however, signalling one of the biggest pieces of Sega Dreamcast news that we will probably ever report here on this website. Some thought it would never happen, but the day has finally arrived: Segagaga is now playable in English, thanks to the work of a team of dedicated fans led by Exxistance. If you just want to know how to play the translation, skip to the end of this article, where you will find a link to a download and instructions on how to apply the patch to your existing disc image of Segagaga. But we felt it was important to document the technical feats which made this holy-grail translation possible — and to ensure that those responsible receive the recognition they deserve. So read on if you want to learn more!

If you’ve spent more than ten minutes in Dreamcast fan circles, you’ll undoubtedly be aware of Segagaga, a 2001 Japan-exclusive RPG that tasks players with running Sega as it tries to regain market share against its main competitor, DOGMA (Sony, basically). Developed by Hitmaker and published by Sega, the game is well known for its wacky humour (much of it at Sega’s own expense) as well as its abundance of references to the company’s past IPs. Because of this, Segagaga has retained an almost mythical quality among Western Dreamcast fans, and from the moment it became clear the game wouldn’t be released outside of Japan, it has without a doubt been the most anticipated English translation of any game in the console’s library.

But as I'm sure you're aware, Segagaga's translation journey has been wrought with roadblocks. Many projects have started up over the years, only to inevitably fizzle out. But as we previously mentioned at the top of our interview with Segagaga’s creator, Tez Okano, the reason for the game’s multiple-decade stint in translation hell wasn’t due to a shortage of skilled translators capable of handling its distinctly Japanese humour, but rather a series of daunting technical hurdles.

The primary challenge stemmed from Segagaga's use of the Dreamcast’s BIOS font, as editing it was thought to be impossible for the longest time. What's more, the game only supported Shift-JIS encoding for text, a common two-byte format for Japanese language that was widely used in video games of the era (and still is today, though typically alongside ASCII or UTF support). Without changing the game to retrieve narrower Latin alphabet characters from the BIOS instead, the original Shift-JIS would leave the in-game text looking horrible, and too big to fit in numerous places.

Demonstration of Shift-JIS encoding, provided by Derek Pascarella.

By contrast, many other Japanese Dreamcast titles rely on their own internal font sheets, unique to each game, meaning that savvy hackers can go in and swap a Japanese font sheet for an English one, adjusting spacing between characters, along with other necessary tweaks. Because of this, these games were able to see successful translations much sooner, and form the majority of past fan translations we've seen for the console over the years. 

After two decades of unsuccessful attempts at translating Segagaga, it was time to bring in the big guns. Cracking a technical nut this tough required a meeting of some of the most talented minds the Dreamcast scene has to offer, including megavolt85, mr.nobody, VincentNL, Derek Pascarella, and madsheep. If it weren’t for them, I can only imagine how much longer it would have taken for us to see this translation become a reality… perhaps another decade?

In steps megavolt85, hacker extraordinaire, who was one of two previously responsible for making it possible for Atomiswave games to be ported to Dreamcast. On megavolt's input, Derek Pascarella explains:

"megavolt85 modified Segagaga to interpret ASCII, the single-byte encoding commonly used for the Latin alphabet. Not only that, but he modified the game to read from the ASCII section of the BIOS font, rather than the Shift-JIS section."

The next step was to make it so that ASCII from the BIOS could be edited. This was where Derek worked his magic, and shares how he made it happen:

"Segagaga speaks directly to the Dreamcast’s BIOS when it comes time to render text on screen. After megavolt85 did all of the assembly hacking to force the game to interpret ASCII-encoded text and then pull from the ASCII section of the BIOS font (rather than Shift-JIS), I started poking around a bit to see how it all worked. What I discovered is that the game actually copies the entirety of the BIOS font into RAM pretty near the location where the game executable ends! So, I disabled the assembly code that performed this copy, then also disabled the code that null’d out that portion of RAM before doing the copy. I then appended the BIOS font to the end of the game executable, and just like that, the font data was precisely where the game expected it to be, and it could be modified! This came in handy a number of times as font glyphs needed tweaking for optimal appearance."

See how much better ASCII looks in comparison:

Demonstration of ASCII encoding, provided by Derek Pascarella.

It appeared that the first-documented Segagaga translation patch project —which began in 2006— did manage to make progress in this regard, but unfortunately wouldn't see an update past 2013. While nothing technical from that previous project would make it into this one, project lead and texture artist Exxistance reveals that he was still able to utilise a wealth of other archived community resources.

"What was helpful [...] were the various artefacts people left on the internet, including the FAQs on GameFAQs that were created back in the mid-00s. Those were especially useful in helping me get my bearings as I initially worked through the game. Other helpful resources included The1Ross’ Open Source Translation Project, as well as various YouTube videos like Korone’s full playthrough of the game."

It was actually on a Dreamcast-Talk forum thread initially created to share The1Ross' project, where Exxistance would post his English-translated edits of Segagaga's textures. From there, mr.nobody —who previously worked on the English fan translation of Dreamcast horror title Seven Mansions— would get in contact with Exxistance.

Rent-A-Hero No. 1 has been Translated into English for Dreamcast!

The beauty of the Dreamcast is that when you think you've played everything the console has to offer, something new lands in your lap. These days, that often comes in the form of a brand new indie game, or in the case of what we have here today: a Japanese game from back in the day being playable for the first time in English on the Dreamcast thanks to the hard work of fans.

Many of us had a good feeling about Rent-A-Hero No. 1, some possibly even since the early 2000s, when muddling through the game with a translation guide was the way for non-Japanese speakers. Those wanting to truly experience the game were thrown a bone in 2008 when an unreleased officially-translated Xbox prototype leaked onto the internet, but those wanting to experience the game on its original platform, the Dreamcast, were still stuck with guides and translation apps... until today.

Thanks to the hard work and perseverance of VincentNL and his talented team of "Rent-A-Modders", Rent-A-Hero No. 1 is now fully playable in English on the Dreamcast! But this is no ordinary fan project, because the lengths this team had to go to in order to bring us this high-quality translation is an entire topic of conversation in and of itself. Before we go into all that, though, a bit of background on the game first...

The first Rent-A-Hero was developed by Sega-AM2 and released exclusively in Japan for the Mega Drive in 1991. The Rent-A-Hero character next saw an appearance as an unlockable character in 1996’s Fighters Megamix for the Sega Saturn. The game we’re talking about today, Rent-A-Hero No.1, released for the Dreamcast in Japan in May 2000. A remake of the Mega Drive original, it shares the same quirky and humorous tone of the game it is based on, but brings the gameplay into the world of 3D. The game is effectively an action-RPG that has you assuming the role of 16-year-old Taro, a budding hero for hire. As Taro, you run around town doing odd jobs and missions assigned by SECA to build his way up the ranks of herodom. The game also has beat 'em up style combat that uses the same fighting engine as that used in Sega's arcade game Spikeout.

Rent-A-Hero No. 1 looks and plays great on the Dreamcast, and if it wasn't for the incredibly eccentric Japanese humour that it wears like a bejewelled bangle on its sleeve, questions about the game's lack of a Western Dreamcast release would definitely be flying around. Oddball humour is this game's strongest suit, and with an abundance of Sega references throughout, Rent-A-Hero No. 1 is a game every fan of the house of hedgehog should spend some time with. Whether it be the inclusion of Segata Sanshiro or the "Creamcast" console you access in the game, the tributes to our favourite ex-console manufacturer throughout are hardly subtle.

So, back to the translation. This translation patch required many heavy lifts to get to what you’re seeing in this final release. A deep analysis and understanding of numerous original Katana SDK libraries was needed in order to reverse-engineer and interact with a slew of the game's already-compiled assembly code.