Friday, June 13, 2014

Pixel Plane Released!

Pixel Plane has been released!

Pixel Plane is available now on iOSAndroid, and on Facebook !

Sunday, May 11, 2014

Pixel Plane Update 0.3.0!

Almost there. But not really?

Major changes in Pixel Plane 0.3.1:
  1. Another GUI redesign! 
  2. Night mode!  
  3. Tutorial has been enhanced to actually tell you to 'lift'/release your finger from the screen after 1/4 second. Prior to this update, anybody unfortunate enough to take the tutorial literally would be stuck holding their finger down forever!! Muhahaha!
  4. Much improved UI for Facebook Friends screen. The frame animates into position, is scroll-able, etc. You can even click on the profile pictures of your friends to go to their Facebook Profile (using your web browser)
  5. When the player's plane initially dies, it will crumple into a paper ball, which can bounce/free-fall around the level for more points until it blows up ( 3 impacts) !
  6. Added a golden colored obstacle bar which represents the player setting a new high-score!
  7. Lot's of little necessary 'features' of  a mobile game like:
    1. A pop-up to ask you to Rate the game in the App/Play store
    2. Banner and Interstitial Ads ( using the AdMob Unity plugin )
    3. In-app purchase to pay $0.99 to remove those ads forever ( using the Soomla Unity SDK )
Re-designed main menu!
Improved Friends S
Improved Tutorial!

New high-score!
Night Mode + Rag-doll death!

What's next?

After fixing the tutorial this weekend, the game is done. Not like, "we just need to polish it, put in some menus, fix a few bugs, add Ads, and it's done". It's done. The explosion may be swapped out with a more-fitting version, but that's undecided. If we had to, we could release the game, as-is, onto the stores tonight. That's a very exciting and scary realization to make for us. The only thing left, then, is *gulp* marketing.

We've started working on a press-kit using the very useful package, do presskit(). A press-kit is basically a one-stop-shop for media/information about your game/company which members of the press can use to write press items about you! It's a symbiotic relationship: developers get easier press-mentions, while the press people get easier content. 

Of course, a press-kit alone is not advertising. Our plan is to send an email containing links to Pixel Plane on the app stores, and to our press-kit, to as many mobile-game-minded press people we can find, in the hopes of converting them into a few press-mentions. Many developers on reddit's gamedev subreddit report that their 'success rate' for these types of emails is in the < 1% ballbark.

That covers getting the game to people who ( may ) write about it, but what about the people who actually play games? How are we going to advertise to them? The answer is, unfortunately, we don't really know. Since our advertising budget is $0, we don't have the option of actually spending money for advertisement. We will certainly make release-day announcements on Twitter and Reddit and maybe some other game-focused forums, but other than that, we don't have much of a strategy for reaching the casual consumer. 

One idea we've talked about, but not actually designed, is to have good old-fashioned paper flyers, and plastering them everywhere (locally) that will let us. We are located near a University, and I have several teacher-friends/family who have commendably vouched their bulletin-boards for Pixel Plane flyers! This is obviously only going to work for the local market, but maybe, just maybe, it will get a word-of-mouth ball rolling. Wish us luck!

If you've made it this far through the wall-of-text, well done! We'd really appreciate your comments about the game ( get it here ), our marketing strategy, or any advise you may have for us!


Thursday, April 10, 2014

Pixel Plane Update 0.2.1!

It's been a while!

Major changes in Pixel Plane 0.2.1:
  1. New main menu layout:
  2. Sound effects for:
    1. score increment
    2. crumpling up into a paper ball
    3. explosion!
  3. A very basic tutorial.

New Main Menu!
Some less visual, but equally important aspects of the game were also fixed recently:
  1.  Resolved an SSL hash mis-match between what our app was signed with, and what the Facebook SDK was sending. 
  2. Fixed an issue in the Facebook canvas webplayer build that was causing the friends leaderboards to hang indefinitely when a profile picture could not be retrieved from Facebook.
  3. Created a dialog-window object which can be inserted into the current scene with dyanmic heading, body, and close() callback. This gets used in many places such as:
    1. Pause screen
    2. Tutorial
    3. General error pop-ups. 

Saturday, March 1, 2014

Hotfix Time

Fixing the Webplayer input to match the Android version!

Our inaugural FeedbackFriday went very well. From the data we collected, we had about 700 rounds played by ~65 unique users. 9 of them were nice enough to leave feedback, and all of it was useful.

The most consistently given feedback was that the WebPlayer input scheme didn't feel great. This was because, unlike the Android version where the user can tap the screen and hold to turn the plane, the keyboard controls require the user to repeatedly tap the keys down to turn. (Note: the mouse works exaclty like a 'touch' in the webplayer too, but it's awkward to try to mouse from the left to right sides of the screen in the webplayer). 

This was a simple oversight on our part because we only implemented the keyboard controls as an easier way to play the game in the Unity editor. Seeing how easy and accessible the webplayer version is, though, we will probably pursue it as a release platform. 

The (small) difficulty with getting the keyboard keys to work the same as the touch controls was going to be getting the 'interval' timing mechanism implemented. It was not going to be as simple as "if(keyDown(A)) { moveLeft }" because then the plane would turn 30 times per second. 

Fortunately, I created an abstraction layer for the touch controls, which receives NGUI "OnPress" events, and then determines if we should fire a "OnClick[Start|Repeat|End]" event. All I had to do was emulate this "OnPress" event from the keyboard, and all the repeat-button functionality would flow downstream.

This is all the behavior code it took:

Each button gameobject gets an instance of this component, and can assign any amount of keycodes to the "keys" array. This made it easy to configure [A]/[Left Arrow] for left and [D]/[Right Arrow] for right.

Now all tweaking to the touch-scheme, such as interval time, will be reflected in the keyboard scheme too.

Thanks for reading!

Thursday, February 27, 2014

Introducing Pixel Plane!

The subject of this post is Pixel Plane, an in-development 2D casual action game for Android and (eventually) iOS.

The goal of the game is simply to avoid the floating obstacles on your way to racking up a high score!

To play, steer your plane right and left by pressing (either with your finger(s) or your mouse cursor) on the corresponding half of the screen. Prolonged pressing will continually turn your plane, so no need to tap endlessly! For the WebPlayer, the right and left keyboard arrow keys work, though you must repeatedly tap them to turn ( will be fixed soon ).

While the core gameplay is complete, there are a few features missing, and a lot of tweaking/polish that needs to be done. For example, we have not yet implemented any leader-boards or social media integration.

Play it now!  Android | Unity Web Player

Pixel Plane Title Screen

Pixel Plane Gameplay

We'd love to hear your feedback on the following:
  1. Overall experience: does the game feel 'fun' and/or addicting?
    • Do you enjoy the plane movement (including input scheme)? We are trying to create a 'swooping and gliding' feeling. How are we doing?
    • The game does not increase in difficulty. We are hoping to see 'good' scores be low, and represent a short time-investment per round. However, we do not want to make the game so obscenely difficult initially that it will stop you from playing past round #1. 
  2. Difficulty: is the game rewarding? or frustrating?
    • When you die, do you feel it is because the game was unfair? Perhaps the collision detection was wrong, or maybe the plane couldn't turn fast enough. Do you have enough time to look ahead a few rows, or is it chaos?
  3. Aesthetics: do you like the graphics, palette, overall retro theme?
    • We are not artists, so we may be making many silly artistic/ui/design faux pas. 
    • NOTE:  4 of the 6 explosions do not match the overall retro theme at all. These were introduced for fun, but have managed to stay in the game because of the humor from juxtaposition. How do you feel about them?
You can leave feedback here, or on our r/gamedev FeedbackFriday post! Also, follow us on Twitter!