Showing posts with label iOS. Show all posts
Showing posts with label iOS. Show all posts

Monday, September 23, 2013

Flight Odyssey Released

We are proud to announce that Flight Odyssey has now been released on the Google Play Store for Android and the App Store and is now also available at the Amazon Appstore for Android.
Android app on Google Play Available at Amazon
Not sure? Try it for free on Google Play. If you run an app review site, work in the journalism/media field, or have at least 1000 friends/followers on a Social Media website and are interested in reviewing our game, please contact us at FlightOdyssey+Promo@gmail.com to request a free promotional code.

Here are some helpful links for new players:


Current versions: v. 1.006-1.028 Built with Corona SDK

Thursday, September 19, 2013

Demo Video

Yesterday, I set out to create a demo video for Flight Odyssey. I knew it wouldn't be easy, but I expected the tricky part to be the video editing. You see, previously I had tried screen recording directly from a device using adb, but since I was getting frame rates around 0.2 fps (5 seconds per frame), I decided to just record the simulator. It turns out that wasn't much easier.
The first thing I tried was CamStudio, a free, open source screen recording software that I had used previously for a demo. I knew that it was a bit clunky (as free software tends to be), but I did not realize one crucial difference between my past use and this one. The last time I had used this software, I was demo-ing a piece of UI heavy business software. Frame rate was nearly irrelevant as I simply clicked on buttons and typed in text. By contrast, Flight Odyssey runs at about 30 fps, and at any speed slower than 20 -25 it looks unacceptably laggy. CamStudio recorded at about 10 fps, not to mention that there was no obvious way to hide the cursor and record audio.
So, I did a quick Google search and came up with two alternative screencasting programs, ZD Soft Screen Recorder 5.4 and Screencast-O-Matic. ZD Soft started off badly by recording with an odd codec (Xvid MPEG-4 Codec). After I had wasted about an hour trying to view the files it produced (which wouldn't open in QuickTime or Windows Media Player in their default configurations), I finally was able to view them using Aiseesoft Total Video Converter Platinum. They ran extremely smoothly at just about 30 fps (perhaps the odd codec helped?), but of course it was too good to be true - there was a watermark. I didn't want to spend $40 to get the full version of ZD Soft, and I didn't feel it was morally right to remove the watermark (though it wouldn't be too hard, if you left enough whitespace around the part of the screen that you're capturing), so I tried Screencast-O-Matic. Same story.
Finally, I thought I'd go back to CamStudio and give it one more shot. A little bit of searching revealed that even though the "Record Speaker" option wasn't working, this could be easily worked around by using "Record Microphone and setting the speaker as the only input mechanism in the Control Panel. The annoying cursor could be removed with the Cursor Options command. So, all thenmimor annoyances were resolved and only the main problem remained. Suddenly, I realized that there was a menu command called Video Options that I had been overlooking (I'm not sure why). It contained an option to reduce video quality and increase maximum frame rate (set by default to 10 fps for unknown reasons) which I quickly took advantage of.
All was not yet resolved, though. The resulting video, though taken at a whopping 40 fps, was a complete mess. The graphics were blurry and any movement left long artifacts trailing behind. Furthermore, any attempt to increase graphics without decreasing frame rate led the game itself to lag. Ultimately, I found a happy compromise at 20 fps and switched to recording on a desktop computer for better performance. Finally, I had my video, right?
Of course not. iMovie wouldn't recognize the file format that CamStudio produced. So, one last step was necessary - back to Aiseesoft Total Video Converter to convert .avi to. m4a. At last, all was well.
Hopefully that was helpful to anybody else hoping to make a video demo of an app - the video I made is available here on YouTube. Thanks for reading!

Sunday, September 8, 2013

Beginning of the Odyssey

Flight Odyssey began with an app called Finger Hoola, which was the free app of the day on Amazon's Android store one summer day in 2013. It was "Made with Love & Corona SDK," it claimed, and that made me curious.

So I did some research on Corona SDK, and I liked what I saw. It bragged making development 10 times faster than Objective C 2.0 or Java for Android development, the two most popular "native" tools for smartphone app development. That's a bold claim, but from what I could tell, it was true, at least for relatively small programs. My previous attempts at apps had used Objective C 2.0 and ended in disaster.

Not only was Corona SDK less over-engineered, it also boasted that it could be deployed to four different app stores (Android, iOS, Kindle Fire, Nook) without rewriting code. That was another impressive claim, considering the vast differences in architecture between Android and iOS (Kindle Fire and Nook are really just forks of Android, but they have their own app stores). The only other tool that I had used that could be compiled for multiple mobile platforms was Adobe Flash Builder (4.5.1+). I'm currently working on a game using Flash Builder as well, but it's indefinitely on hold for several reasons. First of all, the game was begun before Adobe released support for mobile platforms, and Adobe did not make it very easy to migrate the project to the new system. Furthermore, while Flash Builder is definitely easier to work with than Java or Objective C (in my opinion), Corona SDK is even easier for most tasks. The one advantage that Flash Builder does hold is that it supports compilation for Blackberry, while Corona SDK does not.

I'll do more comparisons of Flash Builder and Corona SDK in a future post, but to make a long story short, I was extremely excited to try making an app in Corona SDK, so I started looking around for ideas. I tried to solicit some from my brother, but he was no help. So, I just started experimenting with Corona SDK and waiting for an idea to hit me.

After a few weeks passed, one day I noticed my brother playing a game called Hill Climb Racing, where a player drives a car over 2D hills doing tricks and collecting coins. He seemed to be having fun playing it (he had unlocked almost all of the cars), and when I tried my hand at it I found it relatively amusing. At that point, I thought it was just another free game, but a few hours later, I had an idea: What if I made a similar game, but instead of driving a car you could fly an airplane?

My brother seemed to like the idea, so I commenced development of a prototype and added him to the team. Naturally, we added some twists to make the gameplay totally unique. Players not only control the throttle, but can also tilt the device to control the angle of the plane. Furthermore, instead of starting at the beginning of a scene each time you play, gameplay takes place in one huge world that you are free to slowly explore. Players can complete missions and collect coins - but be sure to land safely or you won't get to keep the money!

My brother and I have been working on the game for several months, and now that it is nearing completion I hope that you will find it enjoyable!