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

Monday, October 8, 2012

Game Development: Using Google Analytics to track user flow

Recently we have begun to take advantage of the flow visualizations available from Google Analytics for analyzing user behavior in Word Crank.



What is a Flow Report?
"Flow Reports in Google Analytics illustrate the paths visitors take through your website...In one graphic, you can see how visitors enter, engage, and exit your site. " -- Google Analytics

One aspect of these diagrams that I especially appreciate is the ability to compare two different time frames and see how the user flow differs.  I really recommend this if you include a new feature in your application and want to see what impact it has on user behavior.

How to Compare Two Dates:

  1. Select Compare to Past

  2. Choose a second date range

  3. Choose similar time periods ( full months or weeks )




Happy flow reporting!

Wednesday, August 8, 2012

Gimmie AR

You’re moving to a new place and are concerned that your furniture won’t fit.  That king size sleigh bed that you purchased and just can’t live without now seems to eclipse the space of your bedroom that reminds you more of a dorm minus the smell of stale pizza.

Instead of going for your measuring tape while crying inside over leaving behind a bed the size of your first car, you whip out your phone confident that if it’s physically possible, you’ll bring all your items.

With a simple scan of your mobile device around your room you’re able to take accurate measurements, place furniture, and get a 3D rendering of what your room will look like with all of your actual furniture.

In the nutshell, this illustrates what augmented reality is.

[caption id="attachment_297" align="alignright" width="150"] An example of Augmented Reality[/caption]

For the analytical mind, it can be defined as a live, direct or indirect, view of a physical, real-world environment whose elements are augmented by computer-generated sensory input such as sound, video, graphics or GPS data.

The abridged version - a view of reality (what you see) modified (augmented) by computer generation.

Augmented Reality “AR” has been around for years although many aren’t acquainted with its application.  Hollywood has been using the technology in the creation of countless movies.  What use to take millions of dollars and months of work can now be done with a computer and just a few minutes!

You may not be familiar with augmented reality but you’ve probably heard of its counterpart, virtual reality.  Difference being virtual reality replaces what you actually see, while augmented reality enhances it.  This technology will change how we view the entire world. 

Envision a world where a surgeon has at their disposal their patient’s vital signs and full medical records.

Or a navigation system that goes beyond providing just directions but gives information on weather, terrain and even traffic patterns all on your windshield.

No longer will your business card only encompass your contact information, but now can include a 3D reproduction of your product or even a video of services offered.

AR is not some gimmicky technology like “flying cars of the future” but is already being implemented by some of the top companies in the world.

Phones with the Android and IOS operating systems already contain applications that feature AR in a more embryonic version.

We have truly only scratched the surface of what may be the next revolution in technology.

Tuesday, January 24, 2012

Adding GameFeed to your OpenFeint Enabled Cocos2d App

In order for us to add the new GameFeed feature of OpenFeint to our Word Crank app on iOS we needed to upgrade to the latest version of OpenFeint, version 2.12.5.  After a few issues with linking errors we were finally running with the latest and greatest that OpenFeint has to offer. Complete instructions for upgrading are included here.

Next we wanted to include the GameFeed component, but only on the home screen.  We used a similar approach to how we included AdMob in the free version.  Some code snippets are included below to help others.

 

[sourcecode language="objc"]
-(id) init
{
if ( (self=[super init]) ) {

CGSize s = [[CCDirector sharedDirector] winSize];

controller = [[RootViewController alloc] init];
controller.view.frame = CGRectMake(0,0,s.width,s.height);

gameFeed = [OFGameFeedView gameFeedView];

[controller.view addSubview:gameFeed];
[[[CCDirector sharedDirector] openGLView]addSubview : controller.view];
}

return self;
}

- (void) dealloc
{
[controller.view removeFromSuperview];
[controller release];

[super dealloc];
}
[/sourcecode]

Do you know a different way to do it? Leave a comment below.

Sunday, October 16, 2011

A Word Game That Does Not Try to Save the World

So what makes our products unique?  One of the rules of marketing is to know your product and be prepared with an elevator speech.  You know, a 30 second pitch prepared, the time of a typical elevator ride about your product and what sets it apart from all others.

So here goes:

Introspectively speaking, due to experiences in life unique solely to us, our acuity is shaped causing anything we create to be different from anyone else.  And blah…blah…blah…

So now that we’ve cleared the air and have identified on a cosmic scale what makes our product unique, looking on a more rudimentary scale, what motivated the creation of Word Crank?  Put simply, a desire to find a word game that we would actually play.

We’re not intimating that there weren’t any good word games out there, because there are.  We were simply looking for a game that combined elements of Word and Arcade style gaming that we both would be interested in.

You see although being siblings, we have two different backgrounds and stakes in our product.  Here comes the very exciting history lesson: 

Our CTO is a computer programmer by profession, and has single-handedly coded all of our projects. Her objective when creating a game centers on playability and usability.  The code has to work and memory allocation is central around enhancing the user’s experience.

The CEO’s experience with coding begins and ends with formulas for excel worksheets.  With a background in business and an avid “gamer”, for him it just has to pop and be fun.  “No chipped paint” as Walt Disney articulated around his reason for creating Disneyland.  It just has to look good!

Combine these and you get Word Crank our very first release.  A word game that’s not buggy, has a very expansive dictionary and does what it’s supposed to do (in our developer voice).  But then it does something else.  It creates an atmosphere with a beautiful UI (User Interface).  A word game with elements of grunge, hip hop, pop, and action!  (Guess whose voice added this)

You see, both voices played a major role in the creation of Word Crank.  We combined programming principles which allow our game to play smoothly and feel effortless.  We also brought arcade to our game by not just allowing you to make the word C-A-T and get 50 points, YAY *sarcastically* but we brought engaging music, cool animations, and some serious themes.

We thank all of our 5k+ downloads on the Android market and are excited that overall reception has been positive with only 6 users rating below 4 stars (send us a message on what you’d like to see to change that to a 4/5) We’re going to keep making cool apps that people like and promise to never take ourselves too seriously but remember it’s just a Word game that doesn’t try to save the world.

Wednesday, October 5, 2011

A.A.R.F.!! Another Amazing Review Finished!!

Sorry for the dog bark but we @ Sivart Technology are so excited that another review for Word Crank has been done.  Check out the YouTube video done by macrover180:

http://www.youtube.com/watch?v=m6KcGrzcPXI

Such an awesome Camera btw!!  A complete facelift of Word Crank is coming to try to keep up with it's siblings on the way (3 more games in the works!!)

Sunday, September 11, 2011

SOLUTION: Apple Mach-O Linker Error When Compiling iPhone App

Recently encountered the following error when compiling an iPhone Application, "Apple Mach-O Linker Error".  After some digging I realized that I had included the same file twice in the application.  After removing the duplicate file the error went away.  Hope this helps someone else that has a similar error.

Read more about iPhone Development

Download Word Crank on Android for FREE!

Tuesday, September 6, 2011

Word Crank now Available on iPhone!

Just got the thumbs up from Apple, so go and check it out all you iPhone users! Word Crank on iPhone

Advertising your Mobile Game's Fan Page with Facebook

So recently we have decided to advertise our Word Crank Fan Page using the Facebook Ads capability.  Taking advantage of social media to promote your Android or iOS application is becoming the standard among the majority of game developers today. Almost all of the top hundred apps have a Facebook presence, so we of course jumped on the bandwagon to help promote our game.

The Facebook Ads infrastructure allows you to target certain demographics for your ad campaign.  What's unique about advertising with Facebook is that you have the ability to target potential users via their interests and likes.  Not with that being said we initially targeted users who liked things such as, "music", "gaming", "reading", etc.  We believed that these users would be more likely to become fans of Word Crank.  However, we saw very low click-through-rates for those users.  The next stop was to just target anyone, regardless of their interests and the clicks started coming through.  Below are the results for the past few days with the new adjustment in targeting.



We were able to get 14 new "likes" out of the 34 people who actually clicked the ad.  Before this we only had 1 new "like" from the Facebook Ad Campaign.  We are happy with the results, and since this is a new game we will have to give it some time to see what impact the Facebook Fan Page is going to have on our marketing efforts.  One downside of the Facebook generated ad however,  is that you don't have a lot of flexibility in the layout and colors.  They use a standard template for all of the ads, so you have to be creative with the picture you choose and its accompanying wording.  I hope that soon Facebook will allow for more layout options.

Please feel free to ask questions/comment.  Thanks.

Thursday, September 1, 2011

Working with Texture Packer

In my post about some simple iOS and Android programming tips I mentioned a software called Texture Packer that is very useful in creating Sprite Sheets.  Below are the steps that can be used to create a simple Sprite Sheet which are the steps that I used in creating Word Crank.

Instructions



  1. Open Texture Packer.  You will be presented with a blank view where you can add your Sprites.

  2. Click on the 'Add Sprites' button to select the Sprites that you want to include in your Sprite Sheet.

  3. Once you have selected your Sprites, just click the 'Publish' button and you can will have two files, the .png file which is your Sprite Sheet and a .plist file which can be used to identify where each object is located in the Sprite Sheet.


Screen Shots




 

 

 

 

 

 

 

 



 

 

 

 

 

 

 

 

 

 

Monday, August 29, 2011

Tips: Programming for Android and iOS

As I continue my foray into game development on the iOS and Android platforms I wanted to take a few moments to share some tips that I have found to be very useful in creating an application that can will eventually run on both platforms.

Tips


General



  1. Separate the game logic from the user interface layer.  This will make it easier to port the code over to the accompanying platform.  For example, if you put the main game loop logic in a separate Java class, then you basically can just do a line by line conversion to Objective-C when you port it to iOS.

  2. Place all Strings in one location.  Have a Constants.java where you put all of your static String objects, then when you port to iOS you just use the same thing, except now it is Constants.h.

  3. If you are going to use Texture Atlases in your game, create them using a tool such as Texture Packer and then you will have the exact location of each Sprite stored in a file that can be easily referenced for both versions of the game.


iOS


Use a framework! Working with Cocos2d made the transition relatively smooth as we converted Word Crank from its Android version to iOS.

Android


Get a good book, I read Beginning Android Games, it helped lay a good foundation for working with Android and understanding the various states of a running application and the GLSurfaceView that serves as the main background for all OpenGL drawings.

Any questions? Just leave a comment. Thanks.

Friday, August 26, 2011

Take a chance on Android

Have you created an Angry Birds, Fruit Ninja, or Cut the Rope game?  If so let me start by saying congratulations and may I borrow $20?   

For any other indie developer looking to break into the ever-growing mobile application market understand that competition is fierce, in particular on the iPhone.  With developers spending in some cases an estimated 100,000k + dollars (Angry Birds) it is very difficult to keep up with development companies when your typical indie developer is on a shoestring budget.  So what’s the antsy aggravated atypical developer to do?

Here comes the Android operating system with its open source indie roots.  Android has taken fire by critics for the “lack of quality apps” as well as the difficulty in making money with paid apps.  This leaves some developers scurrying to IOS with its safer
yet overcrowded marketplace.  I suppose the glass can be seen as half empty or half full?

For the developer looking to gain experience that has a vision they would love to share with the world, Android may be the best platform to use.  The market is growing exponentially and figures show that the sales of android devices have outpaced that of the iPhone.  As more developers create projects for the Android market, the quality of the app store is sure to increase as well.

Why not take the less beaten path and try your hand on the android market?  Depending on the type of app that you’re developing, the free model which lends itself to the android market may bring you more success.

Tuesday, August 23, 2011

Adding Touch Events to a Custom Cocos2d Sprite

In creating our game Word Crank, we decided that we would make the clickable block objects handle the touch events themselves instead of using the CCScene object. In order to do that we had to implement the CCTargetedTouchDelegate.  A sample of the code can be found below:

Inside the Header File:


[sourcecode language="objc"]
@interface CustomSprite : CCSprite <CCTargetedTouchDelegate>
[/sourcecode]

Inside the Implementation File:


[sourcecode language="objc"]

- (void) onEnterTransitionDidFinish
{
[[CCTouchDispatcher sharedDispatcher] addTargetedDelegate:self priority:1 swallowsTouches:YES];
}

- (void) onExit
{
[[CCTouchDispatcher sharedDispatcher] removeDelegate:self];
}
[/sourcecode]

Sunday, August 21, 2011

iOS App Submission == "Headache"

So for the past two days I have been attempting to upload our Word Crank Application for iOS to the iTunes Store.  I have been completely unsuccessful.  I constantly receive this error message, "Error communicating with iTunes Store." Now, why is there an error? I have no idea and apparently neither does anyone else.



I have read several, and I mean several blog posts and everyone says something different.  My favorite post is "I just used another machine, and it worked."  Thanks a lot!  I just need to buy another computer and then magically it will work, GREAT!

I have sent an email to Apple to try and get some answers on this issue.  Until then I guess I have to wait, unless anyone out there has any other ideas:-(