[Freeverse designer and programmer Justin Ficarrotta recounts what went right and what went wrong with the development of the iPhone game Top Gun -- particularly focusing on how fans should always be in mind when working on a licensed game.]
When we, at Freeverse, got the opportunity to create Top Gun and Days of Thunder for Paramount Digital Entertainment, we knew we had the right franchises to create something really fun and awesome. Top Gun has become especially popular, so this is a closer look into how the game came to be.
My name is Justin Ficarrotta (or just "Fic"), game designer/programmer at Freeverse, Inc. in Brooklyn. My background is in action- and style-heavy arcade games, such as the Freeverse-published Kill Monty or my indie efforts Kill Dr. Coté (from which Kill Monty was born) and Laserface Jones vs. Doomsday Odious, which are both award-winning entries in the annual uDevGames contest.
Freeverse started off as a successful Mac game/software company in the early '90s and has since branched out into Xbox Live Arcade (you can read our Marathon 2: Durandal postmortem) and, more recently, the iPhone.
Our games Moto Chaser and Flick Fishing both made Apple's "Top 10 Paid Apps of All-Time" list (at #6 and #8, respectively) and our library of iPhone games has just broken 20 with the release of Skee-Ball.
But enough with the self-promotion. Let's talk Top Gun.
Top Gun is an iPhone game based on the classic 80's movie starring Iceman and Maverick. Taking place years after the movie, the story revolves around a new set of recruits under the tutelage of Maverick and Iceman, who are now instructors at the Top Gun academy.
The gameplay is very similar to games such as After Burner or Space Harrier: a third person chase camera behind the player's jet, which flies on rails through a 3D world and can steer freely within a set distance from the level path. Steering also moves a crosshair, which will lock on to enemy jets as it is scrubbed over them, and allow missiles to be fired. The player also has a vulcan gun, which does instant damage to anything under the crosshair, but it must be held over the jet as you fire.
Threats in the game came in the form of "Danger Zones" that would appear on screen, giving you about a second's worth of warning before impact occurred in that area. Enemy missiles would create a Danger Zone, as well as obstructing scenery and ground-based anti-air fire.
1. Getting the rights to Danger Zone
No, really. I'm not kidding.
Paramount got us the rights to cover Danger Zone and even recorded a cover for us. And shallow as that may sound, this alone can be the difference between people giving Top Gun a look or not giving it a rat's ass at all. I'm dead serious. Look up reviews of every Top Gun game ever made and every one of them mentions its lack of the song. Some reviews even list it as one of the overall "cons" at the summary of the review.
During development, just as a placeholder, I threw in the original version of the song, because it was a heinous crime not to. When word got back that we probably wouldn't get the rights to the song and we finally caved and took it out, I was actually really crushed -- heartbroken even. Not to say I didn't like the stuff we licensed instead, but it suffered quite simply from the mere fact that it was not Danger Zone. Nothing quite lived up to revving up your engine while listening to the howling roar of the original soundtrack.
While Paramount negotiated for the license to use a re-recording of Danger Zone, we played things touch-and-go while heading into the twilight of our project -- until our producer Bruce got word that Paramount had secured the rights and commissioned a cover. It was a glorious day at Freeverse. Not only was the song added, we shoved it into overdrive by adding an easter egg by which, if your pilot's name was "Danger Zone", the game played nothing BUT Danger Zone.
2. Engine Reuse
When we got the deal to create Days of Thunder and Top Gun, I made the decision early on to architect the code in such a way that it maximized code reuse. Much of the application architecture already existed in our iPhone engine that was used in Moto Chaser and Big Bang Sudoku.
Any additional code and classes would have to be designed to accommodate the requirements of two very different games. This paid off big for us in Top Gun, as many game logic classes were already in place, as well as a few flexible, reusable code elements. This allowed me to get a prototype with a jet flying and shooting down other jets in under a week.
I realize it's not incredibly common to know what your next game is going to be while you are still designing your current game, and this did require both games to be mostly visualized before much code was laid down for either game, but having these benefits allowed us to piece together the main elements of Top Gun quickly and spend our time focusing on tweaking the gameplay, optimizing the engine, and adding some kick-ass eye candy.
One example of a similarity between the games is that they both involve vehicles speeding around some fixed curve in space. Days of Thunder takes place on a track, and the action in Top Gun is centered around a curve in the air. So for Days of Thunder I created a system that parses an .svg curve into a piecewise bezier spline, around which our track was procedurally generated.
Cool little system, and it effectively turned Adobe Illustrator into a level editor, but the beauty was when it came time to do Top Gun, we took that same parser, had it parse a second curve for height, and removed the track generation. This, combined with a phenomenal proprietary level editor, allowed us to create our levels exceedingly fast.