I'm obsessed with the mouths in Final Fantasy 7. If you first played Square's groundbreaking 3D Final Fantasy on a PC, sometime after 1998, you might be thinking: the characters have mouths. So what? But if you played Final Fantasy 7 on the PlayStation, you're more likely thinking: Wait a minute. Mouths? What mouths?
On the PlayStation, the lumpy-limbed character models of Cloud and Barret and the gang had big anime eyes, square fists and absolutely no mouths. The more detailed battle models did, of course, but out on the field? Nope. But when FF7 came to PC a year after the PlayStation, suddenly there they were: little mouths, in the form of a terse line or a comically large, gaping black O.
Why are they there? Who added them, and who decided they should be there? I started searching for the answers to those questions after looking into the history of the PC ports of Final Fantasy 7 and Final Fantasy 8, two rare, early examples of console games being ported to the PC. Because Eidos's name was on each box, I'd always assumed that the British company had ported Square's games itself. But after coming across and doing a little digging into Final Fantasy 7's PC credits, I realized that all of the development staff had worked at Squaresoft USA. So I set out on a quest to learn more about Final Fantasy 7's infamously quirky PC port: what it was like to port an early PlayStation game to PC, why new localization errors were introduced while others were fixed, and mostly, why the hell Cloud has a mouth.
It didn't go well at first.
"I'm not really sure," programmer Jay Fong wrote to me over email when I asked why the character models have mouths on the PC. Fong works at Obsidian now, and his gig as a software engineer on Final Fantasy 7 was his first real job in the games industry. "I recall we worked on the port for just a little over one year. After the project, I was promoted to a Senior Software Engineer position and when it was decided to go ahead and port FF8 to PC, I served as Project Lead. Some of the programmers had left right around the time when work on FF8 PC began so we didn't have as large a programming team as we did on FF7. But we also had more experience porting the FF PlayStation code base."
Total strikeout on the question that mattered most, but Fong still had plenty to tell me about the process of porting the Final Fantasy games to PC.
Final Fantasy 7 and Final Fantasy 8 for PC were developed at Square Soft, Inc. in Costa Mesa, California. The original development was done by Square Co, Ltd. back in Japan. According to Fong, on FF7 they had a team of eight programmers. There are nine software engineers listed in the , though as Fong explained later, at least one engineer joined partway through the project. On FF8, Fong says it was only five programmers, but they finished the port in about a year, slightly faster than FF7. (There are five software engineers and two senior software engineers, including Fong, .)
Porting Japanese PlayStation games, at the time, was no easy task—language was a serious barrier, and 3D graphics accelerators were in their infancy on PC. Here's Fong describing the development process:
"As far as tools, we were just using Visual C++ and Direct3D 5 at the time. The Playstation architecture was obviously different and some of the code was written specifically to take advantage of that hardware platform. For example, I recall the UI programmer had some unique challenges because the original Battle System UI update was hooked up directly to the Vsync which would update just the UI portion of the screen (bottom), something the PS hardware allowed you to do. This enabled the original UI portion of the screen to be updated at refresh rate making interaction feel very responsive, while the rest of the Battle System screen refreshed at a much lower rate.
"Different programmers did have areas that they were responsible for: world map, field system (ie the pre-rendered area screens), UI system, battle system, mini games, etc. We tried to get as much of the original system's code compiled and running. All the data assets (models, textures, pre-rendered field backgrounds and FMV) were from the original PS versions.
"Obviously for low level systems that interfaced with PS hardware (eg, rendering, sound, FMV) we had to replace with PC-specific versions trying to mimic the original functionality. Something that the console programmers were able to do was to meticulously lay out the memory usage. This allowed their code to make certain assumptions about resource locations (such as specific regions of video memory for character textures) and they were able to do tricks like changing color look-up tables (ie, a palette) and manage dynamically streaming of data, like large Summoning effects while the character was playing the casting animation. We had to reverse engineer what they were doing and recreate the effect under Direct3D.
"The documentation was the code itself, and the comments (if any) were mostly in Japanese. We had a translator who we could ask to help us try and understand what the comment was referring to but that was still challenging since he was not a programmer. What really helped was when one of the original Japanese FF7 programmers [Kazuma Fuseya] moved to the US and joined our team. He was the perfect bridge between the two teams, being able to directly ask him questions and if he didn't know the answer he was able to get in touch with the original programmers, which helped immensely."
Today we typically expect the PC version of a game to be prettier, and run at higher framerates, than its console counterparts, but that wasn't always the case. Fong's comments help illustrate how console games, especially in the era before dedicated graphics cards were common, could make precision use of the hardware. Developing a PC game that ran as well across different systems was challenging enough at the time, before you added the complexity of translating the PlayStation's code to the PC. It's no surprise that the development team was mostly programmers, with only a single artist listed in the port credits: Jason Greenberg. Hoping he'd remember more about those haunting mouths than Fong, I tracked him down.
Greenberg now works as the animation director at Infinity Ward and has fond memories of his time at Squaresoft.
"I was originally hired onto the project as a 3D artist," recalled Greenberg. "One of my main roles was supposed to be to help them with performance issues by reducing the polygon counts on many of the character and creature models." Luckily for the game, though less fortunate for Greenberg, the programmers were able to develop a PC renderer efficient enough to use the PS1's original models, without compromising on polygons. Instead of working as a 3D artist, Greenberg ended up doing touch-up work on the 2D art, increasing the resolution of assets from 320x240 to 640x480.
"Mostly I focused on all the fonts and menu icons, and any textures used in the UI. Doubling the resolution of the Final Fantasy finger icon was actually a pretty cool thing to work on. It's literally iconic. There were no fancy upres-ing algorithms to use back then so I was basically filling in a ton of pixels by hand. You could imagine it wasn't all that creatively challenging and not the best use of my skillset as a 3D artist."
Greenberg also worked on Final Fantasy 7's FMVs, which were compressed for the PC release rather than improved. "Unfortunately we didn't have access to any higher resolution renders and they wouldn't provide the original assets to re-render, so sadly I had compress most of the FMVs from the 320x240 versions.
Making them fit in the disc space required and playback properly was quite a challenge. In the end, I don't think they looked as good as they could have. If only Sqaure had been able to provide higher resolution frames. We had the same issue with many of the backgrounds. These were simply too dense to double resolution and touch up by hand so most of them I think were the direct PS1 versions."
In 1998, you couldn't do the kind of 3D graphics work that went into Final Fantasy 7 on a normal PC. Greenberg had a $30,000 Silicon Graphics workstation on his desk "with probably Ssoftimage and Nichimen Graphics software on it to do the low-poly modeling" he never ended up actually working on, but he did put the hardware to use once. As a big chocobo fan, he created a new Squaresoft logo cinematic for the PC version. That's one bit of Final Fantasy 7's history we can definitively put a name to.
The rest of his graphics work was done on a typical PC with Photoshop; given the timeframe, I'd guess an early Pentium II system with a CPU in the 300 MHz range. Greenberg remembered that compressing the FMVs was excruciatingly slow, and any issues meant "hours and hours" down the drain.
I asked Greenberg about some of the differences between PlayStation and PC , like some objects strangely being larger or smaller. He said that at least on the art side, they were likely mistakes that never got caught in testing. The triangles used to point to exit points on the pre-rendered backgrounds, for example, are smaller in the PC version, perhaps due to the doubled resolution. That's "probably an asset that I missed," said Greenberg. "I probably should have up-resed those, but my guess is that they look OK at original size so no one asked for that."
Both Fong and Greenberg remembered the challenges that came with testing FF7's PC port. With translators on the team, the PC version benefitted from some cleaned-up English, which fixed some blatant mistranslations like "This guy are sick." It also amusingly , but Fong and Greenberg recalled more pressing issues.
"We had a dedicated QA team on-site helping us test the game as well as do compatibility testing. PC compatibility is vastly better nowadays than what it was back then!" wrote Fong. "They had a guy whose job it was to essentially speed-run through the game, creating save games which were then used by the other QA members to hammer through each section of the game.
"I recall one bug that occurred intermittently was a crash at the start of the game, after the intro FMV as the train pulls into the station and one of the guys side-kicks a soldier. QA reported this bug as we were finalizing, which had all the programmers scrambling to repro and debug it asap. Exciting times!"
Greenberg recalled a crash bug that happened during the final boss fight, during Sephiroth's supernova summon. "Near the end of the dev cycle, many of us were done with our work, and simply had to help test the game as much as possible… If totaled I've probably spent at least a full 24 hours playing that one battle."
Fascinating stuff, but what about the mouths, right? Why does Cloud eternally look like an emoji-before-emojis? Why does Sephiroth look like he could swallow an entire hot dog whole? Did Greenberg know?
"Great question. I'm wracking my brain to try to remember," he said. Uh oh.
"This is not something that we added on the art side since I never changed the model files in any way. I believe I remember that the mouths were just sitting there in the original texture files for the characters. I'm pretty sure the code to drive them was probably there as well, and we just enabled it or something. I wish I could tell you more, but I just don't remember it."
Is this victory? Or defeat? Greenberg gave me what may well be the story behind the character mouths in the PC version: they were actually there the whole time, but had been disabled in the PlayStation version before it shipped. Why? My guess is that a PlayStation plugged into a typical CRT TV with a composite cable resulted in such a fuzzy, low resolution image, you couldn't really see them, anyway. The eyes were bigger, and more expressive, and so the mouths were cut.
But it's possible there's more to the story—maybe the developers wanted the mouths to animate but never got around to it, or simply ran out of time to properly implement them. They're still there in the 2012 PC re-release, which fixed up the 1998 port to run at higher resolutions and play nice with modern Windows. I took one more stab at finding out, contacting William Chen, another engineer on Final Fantasy 7. His response? “It has been so long that I don’t have any memory of it."
That's where the story ends for Final Fantasy 7, though I did ask Fong if he knew why Square stopped porting the Final Fantasy games to PC after finishing FF8. "I recall Square decided to pull all development back to Japan shortly after FF8 shipped, but I'm not sure why they decided not to port FF9. If I had to guess, I imagine it was a business decision based on what they project the endeavor would cost versus the potential return in sales," he wrote. "FF10 was the first on PS2 so I'd imagine they had their hands full just developing the game for the new platform, let alone worry about porting it to PC."
There's precious little history around the PC versions of these games, and that's a shame—they're two of the first 3D Japanese games to make the jump from console to PC. That history deserves to be documented. What was a simple programming task in 1998 is now a mystery we may never know the answer to, because no one thought to ask. And this is for Final Fantasy 7, one of the most beloved games ever made. Few games have had written about them, and we still don't know the full story behind the damn mouths. What other fascinating bits of history have already been forgotten? (If you worked on either port and have stories to tell, or know why everyone in FF7 has an O face, !)
And according to Jay Fong, while the developers were forbidden from adding easter eggs to the PC ports, there may be a unique version of Final Fantasy 8 floating around on a CD, somewhere deep in the bowels of Square, if it wasn't tossed out in the trash.
"We did play a prank on one of the FF8 producers. We edited the intro logo FMV, which started normally but after a few seconds it would briefly flash an awkward picture of him (let's leave it at that) and the frequency would slowly increase until it completely replaced the logo. We put it on a set of discs marked as 'Release Candidate.' Of course QA was in on this and they did have the real Release Candidate discs on hand as well. And no, it never made it out to the wild!"