The Before Crisis crisis: How hackers are rebuilding the lost Final Fantasy VII mobile game piece by tiny piece
Plus RPCS3 turning a Raspberry Pi 5 into a PSP-esque PS3, a new feature for the Sega Saturn MiSTer core, and some fan translations due in 2025.
Ho ho ho, he he he, here we are everybody — very nearly at the end of the year, that special time where some of us spend time with our loving families, and some of us find a corner where no one will talk to us while we catch up on all those games we'd been wanting to play all year but just never got to. I've already got my holiday gaming plans sorted: on the new front I'm going to be scampering around Egypt as Indiana Jones in the surprisingly great Great Circle; on the kinda-new front I'm hoping to pick back up a Baldur's Gate 3 campaign with friends that ended up on the back burner when life got busy.
And on the retro front, dearest to my heart, I'm going to be spending some quality time with the ol' Dreamcast in anticipation of a ~ special 2025 project ~. No I will not apologize for the tease — it's how I hold myself to account!
I'm still refilling my energy reserves from the last couple weeks, as I had the privilege to fly out to Tokyo to play FromSoftware's next game, Elden Ring: Nightreign. I didn't get up to much retro stuff while I was there, but here's a picture of some nice Super Famicom cases from Nakano Broadway alongside the best iced coffee I've ever had.
Since I've been home, one of the best things I've read/watched is this video from Basement Brothers, a YouTube channel in my regular rotation these days for insightful looks at old Japanese PC games, primarily the PC-88. This one is especially cool, focused on a CD version of a game that people weren't even sure had been released for a good 15 years. Someone finally got their hands on an extremely rare copy and dumped it, and it's a beauty! Definitely worth a watch if you love the stories of these sorts of relics as much as I do.
Speaking of rarities, today's issue of ROM is focused on a story I've been waiting to cover in the newsletter pretty much all year. We're diving deep into the preservation effort behind one of the legends of Japanese mobile gaming — Before Crisis: Final Fantasy VII — with an interview with one of the folks trying to resurrect it. They're gonna need more than 99 phoenix downs to get this job done.
Between time with fam & friends and a few nights spent cozied up with my Dreamcast I think the rest of December's going to disappear in a damn blink, so this will be my final issue of the year. I'm going to skip the issue that would normally drop on December 28 and come back nice and refreshed in the new year. But I'm sending you off with a meaty one today. Ration it! Savor it. Just do not try to eat it unless you have one of those chocolate 3D printers and export the following 3,500 words in cacao form.
Seriously, if you have one of those things, please send me a chocolate version of my newsletter. If you don't, please enjoy these stories on your computer / telephone. I'll catch you in January.
The Big Two
1. For keitai game preservation, Before Crisis is the ultimate trophy — and the ultimate challenge
I've threatened to dive deeper into keitai (shorthand for Japanese feature phone) preservation and emulation in past issues of ROM this year, and you know what? It's finally time. For a crash course on what's going on with the blossoming effort to save the history of Japan's enormous early 2000s mobile gaming scene, I highly recommend ringleader RockmanCosmo's article from January 2024, his follow-up academic conference presentation and this video overview from DidYouKnowGaming & StopSkeletonsFromFighting. It's a rapidly expanding field of hackers and enthusiasts that covers tons of ground, but we're going to skip over all the table setting to focus on just one game: Before Crisis: Final Fantasy VII.
The vanguard of the "Compilation of Final Fantasy VII" initiative of the mid-2000s, aka Square Enix's extremely messy attempt to make a bunch of sequels to its most popular game without really making a sequel to Final Fantasy VII, this cellphone action RPG has never been released in any other form and has never been released outside Japan. The tl;dr reason for the latter is that other feature phones and cellular data networks of the time weren't up to the task, and that's also why the game is a nightmare to preserve.
"Here’s the reality: Before Crisis constantly overwrote its data, so no single phone could ever hold the entire game," said the hacker who's been leading the iniative to reassemble a working version of Before Crisis in recent months. "At best, we’re looking at one phone containing maybe 5% of the game."
For some people that would be a deterrent. For Yuvi, it's part of the draw.
"For me, it all comes down to a love for JRPGs," Yuvi told me over Discord. "I grew up with Final Fantasy (FF4 was my first!) and never looked back. JRPGs are still what I play the most—there’s just something special about them. As I got older, I found myself drawn to games we never got in the West, which led me to playing fan translations, and eventually, I started working on my own. That passion naturally evolved into wanting to preserve games that are nearly lost to time, like Before Crisis."
Yuvi's work has been featured in ROM issues past for serving as hacker on fan translations of Madou Monogatari 3 and Oyaji Hunter Mahjong and more — he's prolific! — but this has project has been on another level. "Now, Keitai game preservation is something I absolutely love," he told me. "I remember seeing these Japanese phones online back in the day and wondering why we didn’t have anything like that. Now, I have the chance to use them in a way they were never meant to be used, and it’s incredibly fulfilling."
I've been watching Yuvi inch closer and closer to a partially playable Before Crisis. Just the training mode is a massive undertaking. I shit you not — just glance over this list of all the stuff Yuvi's done in the last few months to get even close to a tiny portion of this game playable in an emulator:
- "Created a server that emulates the Before Crisis network.
- Reverse-engineered over 40+ packet requests to enable a working version of the game, including the training mission and some customizable options. With many more to go.
- Developed a tool to extract all data and information from the Before Crisis scratchpad. Preserves partially deleted files for archival purposes.
- Fully reverse-engineered several critical file types, including: Maps, Character selection, Attack/Materia data, Shop lists, Enemy lists, Rankings. This enables the creation of custom, game-compatible files.
- Built a GUI tool to remake map files, including: Layout design, Collision mapping, Animations, Other advanced editing options
- Successfully loaded Before Crisis EXTRA and Golden Saucer, adding: Arm Wrestling, Battle Square (semi-online PvP mode).
- Conversion Tool: Currently developing a tool to convert data from the BREW version of the game to i-mode, accounting for differences in phone architecture."
Up until this week, all that had been accomplished using the files dumped from a single phone. "But here’s where it gets exciting," Yuvi said.
"Two days ago, we made a breakthrough with the W51H—a phone that had the Before Crisis demo preinstalled. I’d been working on cracking its file system and had managed to extract a few game files. It was slow, tedious work, but progress is progress. Then, out of nowhere, about an hour after I logged off, someone in the chat dropped a full dump of the file system. Something we’ve been dreaming of for years! Now we’ve got a second copy of the game, with a whole bunch of new assets to work with. The demo itself is mostly playable now, which is awesome. But for me, the real battle has just begun."
A big part of Yuvi's battle will be continuing to figure out how to convert all of the game's files from one phone format to another. The tl;dr here is that there were two big competing keitai platforms back in the day, i-mode and BREW, and Before Crisis was on both — with totally different file formats for some of the game files. BREW Before Crisis mostly used bitmaps while i-mode used gifs; file extensions and even the way the data is organized is different. Yuvi said the BREW version of the game essentially uses one big zip archive, making it easier to get at its files and start moving them over to the i-mode version of the game, which can currently be better emulated, than vice versa.
Just converting a bunch of files isn't the only obstacle, of course. That'd be too easy.
"One of the biggest challenges with Before Crisis is how heavily it relied on the server to handle everything. Phones at the time didn’t have much processing power, so the server did most of the work. For example, if you changed your weapon or materia, the server would generate a brand-new file based on your choices and send it back to your phone. Even a lot of the game’s text wasn’t stored locally — it was sent dynamically from the server when needed. Because of this, a huge amount of the game’s data never made it onto the client. When we got our phone dumps, we were missing big chunks of information, so I had to painstakingly recreate a lot of the server-side functionality just to get the game to load and run correctly. It’s been a long and complicated process, but every step forward brings us closer to fully restoring Before Crisis."
So, all that said — what's the state of the game this very minute, with that newly dumped phone? Many of the game's basic featgures now work, including "shops, materia generation, and materia equipment." Two modes, Reno's Training Mission and Arm Wrestling, are playable. Others are really close: the Weapon Dimension Mode and Chocobo Stables feature are each just missing one critical file each to be bootable, and it's possible either one is within reach.
"I’m reverse-engineering the file formats bit by bit so we can create new files that the game will accept. Each new file gets us closer to unlocking more of the game," Yuvi said. "Once the BREW conversion is finished, we’ll be able to add all of Chapter 1 to the list of things that work."
When we chatted on Discord Yuvi had just come off eight hours of staring at Before Crisis's hex code, so this status report you're reading is as bleeding edge as it gets. For now compiling all of Before Crisis still sounds like a remote possibility; it'll require incredible luck, perseverence and expense to find surviving phones with files for the game's 24 missions on them. But a couple years ago I would've called it impossible. Now? Just really hard. Which seems to suit Yuvi just fine.
"When I’m passionate about something, I’ll put in the time and effort to figure it out, no matter how long it takes," he said.
Hit up Yuvi's website where you can see more of his work and find links to his social media handles.
2. RPCS3 ARMs itself
And the Cell processor wept, seeing it had no more worlds to conquer. Okay, emulation will always have more worlds to conquer, but it's pretty incredible to see the once-thought-unconquerable PlayStation 3 so thoroughly and truly tamed.
Announced on its blog this week, RPCS3 can now run natively on ARM-based MacOS, Linux and Windows devices. This has been a long time coming: more than three years, in fact, beginning with the release of Apple's ARM-based M1 MacBooks. The blog goes into some interesting but very technical detail about the process of getting PlayStation 3 emulation to work nicely on ARM, but I'll let those of you with computer science degrees dive into that stuff. Instead I want to highlight the really fun section of the blog, where RPCS3's developers try to push the absolute limits of PS3 emulation.
Many ARM devices like Apple's MacBook Pros are incredibly powerful these days, sometimes even faster than desktop x86 cores that have for so long reigned supreme. But ARM also encompasses extremely low-powered devices, so... how low can the PS3 go?
"What’s stopping it from running on an Raspberry Pi 5 device? How far can we challenge the limits of emulating the console known for being the most resource demanding to emulate still 18 years after its release? ... The device was setup with Arch Linux ARM to make use of all the latest packages, in order to be able to compile RPCS3 on device. The device was also overclocked to squeeze out more performance, the CPU was overclocked to 2900MHz (+400MHz) and the GPU was overclocked to 1060MHz (+100MHz).
We started by trying to running games on the default Vulkan render, but this failed as the mesa v3dv driver for Broadcom GPUs is missing full textureCompressionBC support, due to hardware limitations."
While the RPCS3 team got Vulkan working, ultimately there were enough issues that they had to switch to OpenGL on the Pi. The Pi 5 was able to run games with no real bugs!
But performance was another matter.
"Initial results from testing dozens of games were not very promising, games were displaying very low performance overall and no game seemed to run well, even simple ones. After some investigation, we realised the Broadcom VideoCore VII GPU in the Raspberry Pi 5 is not only unbelievably weak, but was also several times weaker than the PlayStation 3’s own GPU – the RSX. This means that Raspberry Pi 5 is not capable of rendering these games at 720p.
After testing with different rendering resolutions, we saw a great performance boost as the rendering resolution was lower, as the bottleneck shifted away from the GPU back to the CPU.
Unfortunately, even 360p rendering of these 3D games proved too much for this GPU. We then decided to settle on rendering games at the PlayStation Portable screen’s resolution, 272p, by setting the resolution scale at 38%. ... Running [God of War 1] at its PS3 resolution of 720p, we can see it struggles to render at around 10 FPS. With PSP resolution, however, it runs at a smooth 30 FPS. With this new piece of data, we were now seeing several games running at Playable performance."
Here's a fun video of the Raspberry Pi trying it mightiest and at least turning in PSP-caliber performance! Maybe the Pi 6 will be able to bump things up to 480p?
This breakthrough does likely mean that we're going to see quality PS3 emulation on Linux-based gaming handhelds in the next few years, though, especially ones with beefier GPUs. I'm thinking this might be the new frontier for devices from companies like Anbernic and Ayaneo.
Patching In
mGBA fixes up its updater and more – mGBA 0.10.4 is full of "important fixes," like the Wii version of the emulator not being able to launch (a slight problem in my expert opinion). More likely you're a Windows user, in which case you'll need to do a manual install to get around a bug. Fixes to emulation include some savestate issues, audio crashes, and messed up gyro values in WarioWare Twisted. Get it... untwisted?
Another 3DS emulator? Meet Tanuki – Joining the ranks of the upcoming Citra descendant Azahar and the consistently-chuggin'-along Panda3DS, another animal joins the fray with Tanuki. It's a high level emulator which currently "can play a handful of popular games such as Legend of Zelda: Ocarina of Time, Mario Kart 7, Legend of Zelda: A Link Between Worlds, Super Mario 3D Land and more." It's only on MacOS and Linux atm, but more options are always welcome — that's how we get more and more insight into the inner workings of each system!
Cemu notches up version 2.5 – A new release of the Wii U's emulator landed last week with a notable milestone number! It's not a huge update, but does include some important fixes for the Vulkan backend: graphical upscaling and downscaling now work, and so do "custom scaling shaders" in graphics packs. Wiimotes are now easier to connect on Linux, and the eShop version of Fatal Frame won't crash anymore.
Vita3K's got the moves – Contributors to the Vita emulator recently added some improvements to how it calculates motion inputs, resulting in better approximation of the real system's gyro stuff. Wave your DualShock 4 around to your heart's content, knowing it's now behaving almost exactly like a real Vita!
Core Report
A Fairyland Story – New Jotego core! The prolific FPGA dev has graced the MiSTer with The Fairyland Story, a 1985 arcade platformer from Taito starring a pointy-hatted witch. As usual with Jotego's beta cores you'll need to be a Patreon backer to play it now, but it'll eventually be available to all.
Saturn improves its memory – The Sega Saturn MiSTer core now includes support for the Saturn's backup cartridge, a nice boon for folks who have a lot of saving to do. Some othe recent improvements to the core include a bob interlacing option and a widescreen video mode that will support 16:10 displays if you don't mind a stretched picture. A boss (or perhaps bosses) in Panzer Dragoon will no longer flicker.
Translation Station
A Super Robot War (4) approaches – The veteran team at Aeon Genesis, makers of many a fan translation over the past 20 years, have been working hard on the Super Famicom tactics game and "while it isn't ready for playtesting yet it's come quite a long way!" writes hacker Gideon Zhi. What's left to do before it's released? "The karaoke mode, the opening and ending credits, the animation on the title screen, and a few other miscellaneous smaller localization things to bring nomenclature for Dunbine and L-Gaim in line with recent SRW releases. The title screen and karaoke modes are definitely nontrivial tasks, however, and they're currently the major blockers."
Likely further off by also in the works: a translation of another SFC game, Gdleen, which apparently boasts the honor of being the first RPG on the system. 1991! The game's hacked but still needs translating, so that's going to be awhile. But that'll be a cool bit of history to see playable in English eventually.
Haruhi Suzumiya's education continues – I've been loosely following the progress of the Haroohie Translation Club since they built a visual novel game engine out of the Haruhi Suzumiya DS game. That was a very cool byproduct of a translation hack for that visual novel which is in fact still ongoing! Hacker Jonko writes that they'll have a patch encompassing the fourth chapter soon: "We hope to reward your patience handsomely in 2025, where you can expect the v0.8 and (hopefully!) the v1.0 patch as well. Episode 5 is the shortest episode by a long shot, so it should be an easy jog over the finish line once we've called a wrap on Episode 4."
The team has also poked at another Suzumiya adventure game, on the Wii, Suzumiya Haruhi no Heiretsu, which they'll focus on once the DS one is wrapped up. The light novel series just got a new story collection release, too, so it seems like next year will be a pretty good time to be a Suzumiya fan. (Unrelated, the fact that the first season of the anime came out in 2006 makes me feel old as dirt).
Good pixels
I was enamored with the art of PC-88 action game Dios, as featured in the Basement Brothers video in the intro, so I had to snap some shots from its cinematic intro.
Props to Krugman who wrote about preserving the ultra-rare CD-ROM version of Dios (it's now on the Internet Archive!) and uploaded a version of the intro to YouTube with translated subs.
That's all till next time. 🎄