2015 Holiday Game Jam

What better gift can one receive than the experience and exhaustion that comes from a Game Jam. As if the holidays weren’t stressful enough with family, old friends, traditions, travel, of of course that last min party preparation. With less than 3 days to jam out a game before christmas eve, despite the warm weather in the northeast, we had a snow covered mountain to climb. We elected to use Unreal Engine 4, not because we were familiar but instead the opposite. Our goal was to gain as much knowledge as quickly as possible while still producing “a game”(using a loose definition).

Our goal: make a top down constant scrolling shooter e.g. Capcom’s “1942” and sequel “1943:Battle of Midway” targeted for portrait mode on mobile devices. At the end of the first day we laid out an outline; in retrospect our goals were pretty ambitions for 2 unreal 4 noobies.

First focusing on the good, I’m going to list some of the things we managed to achieve. In game flat textured models for both the hero ship and enemy towers. Projectiles that fire from the enemy towers. A scrolling level that constantly deletes passed sections while adding new sections.

We also had player death on collision with obstacles or projectiles, adding in explosions and sound effects using unreal mobile starter content. In addition the starter content also provided us with an obstacle mesh, as a rock, and textures for the environment.

In conclusion there was a lot more we wanted to accomplish; player shooting, life gauge, collectables, points, more animation, HUD with points, and some menus. It was a fun challenge to see what we could make with an unfamiliar tool. It was a success to help us learn Unreal Engine 4 and the Blueprint visual scripting language.

Preroll Video iAd’s as Reward Incentive

A common Freemium model for mobile games is to offer a reward (currency, bonuses, etc) in exchange for watching a fullscreen video ad. Attempting to recreate this model using video preroll iAds is possible but has some less than ideal complications. I’ll be going over the basic implementation and the things I wish were different. I started with the Game Health Indicator sample and adjusted it so when the health bar is empty you have to watch an ad to refill it.

First add the iAd.framework to your project under project->Target->General tab. Next we’ll notify our app to prepare and download preroll ads.

AppDelegate.m

@import iAd;@implementation AppDelegate

– (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

//Tell app to download a preroll ad from the iAd server so it is prepared to play
[AVPlayerViewController preparePrerollAds];
return YES;

}

This is a necessary class method to call to but also the source of our first complication. I have yet to find a way to query if a preroll Ad has been downloaded or if one is available. As opposed to the AdBanner class that provides the very convenient bannerLoaded read only property. Then we’ll set up our AVViewController inside our viewController presenting the video ad.

GameViewController.m

//AVPlayerViewController and AVPlayer
@import AVFoundation;
@import iAd;

@interface GameViewController()
//preroll iAd properties and controller
@property (nonatomic, strong) AVPlayerViewController *prerollAdPlayer;
@end

– (void)viewDidLoad
{

//set up the ViewController
self.prerollAdPlayer = [[AVPlayerViewController alloc] init];
//self.prerollAdPlayer.showsPlaybackControls = NO;

}

Here is our second complication. Unlike the typical ad which just requires a tap to follow an external link, video preroll iAd’s require the user to tap the i:information button in the bottom left corner of the AVViewController’s playback controls. This is frustrating on several levels; first we can’t hide the playback controls and second the user is in no way required to watch the entire ad. They can simply skip to the end or hit done. We also have no way to know if they watched the entire ad or not. Continuing from here well set up a method to present and dismiss our video ad once it’s finished playing.

GameViewController.m

//method to play our video ad
– (void) playVideoAd{

//present our ad AVViewController

[self presentViewController:self.prerollAdPlayer animated:YES completion:^{

//Play the preroll ad
[self.prerollAdPlayer playPrerollAdWithCompletionHandler:^(NSError *error) {

if (error) {

//most likely error is we just didn’t have an ad to play
NSLog(@”%@”,error);

}
else {

//The ad started to play and didn’t encounter an error so we give them their reward
[self refillReserves];
self.completeAdPlayback = true;

}
//now we just have to dismiss our AVViewController to return to the game error or not.
[self.prerollAdPlayer dismissViewControllerAnimated:YES completion:^{

if (error) {

//if the ad was unable to play we alert the user
[self showAdPlayerErrorAlert];

}

}];

}];

}];

}

Finally for iOS 9 we have to add one more thing to our Info.plist.

Info.plist

App Transport Security Settings

Allow Arbitrary Loads YES

This is the last complication. For iOS 9 apple added a new security feature called App Transport Security (ATS). Which basically restricts your app from talking to any non HTTPS servers. For whatever reason iAd’s preroll test Developer Ad’s don’t come through an HTTPS server. There is a good chance that this isn’t true for live preroll ad’s but at this time I can’t provided a definitive answer about that.

A sample ap can be found at Preroll-iAd.

You can download Fillip’s Feast from the Apple Ap Store.

Don’t forget to follow me on Twitter @Maroonfacelift.

The Three Little Pigs: Font Dev and Style

Context is everything, the two comic book fonts I created looked nice in my last post, but they weren’t in word balloons or on a comic book page.  So I dropped them into a page I made to get accustomed to my Cintiq Companion 2, as well as exploring the overall look and style I wanted to achieve.  Already I can see some adjustments need to be made to the fonts, especially for low resolution situations.

style and font

 

Got any critiques or suggestions, let me know in the comments below.

The Three Little Pigs: exercise in font creation

As part of an upcoming project, a graphic novel loosely based on the Three Little Pigs, I’ve been developing several fonts.  The two fonts I’ve completed so far are comic book speech bubble fonts.  As an exercise and to try out my new fonts I’ve rewritten the original Three Little Pigs fairy tale using my pig and wolf speech fonts for their respective parts in the story.

Three Little Pigs

 

When creating these fonts I began with research, I found the advice in The DC Comics Guide To Coloring and Lettering Comics by Mark Chiarello and Todd Klein to be very useful.  Even though I’ve made a computer font, I wanted the font to have a hand lettered feel.  To this end I created a single case font where the upper and lower case versions would be slight variations of the same glyph. I also sought the advice of my friends and designers who had more experience creating fonts than myself. They directed me to create several design goals, the look and feel, that I wanted the font to convey.  The pig’s Font I wanted to be structured and grounded, to reflect the buildings they make and their stern vows.  The wolf’s font I wanted to be sharp and fierce, to reflect the killer instinct and sinister intent.

 

The Many Faces of Fillip

Fillip is our most complicated Sprite in Fillip’s Feast.  Makes sense since he is the playable character and protagonist of the swamp.  In total Fillip is made from 76 different Sprites.  His Body which transitions form varying degrees of girth consists of 17 different sprites with a separate sprite for his Legs.  However His head, which flicks his sticky deadly tongue, has the most sprites and animations in the Game.

Open

 

Fillip’s head can strike in 360 degrees around him.  The Individual animation sequences are made of 8 sprites each covering a 180 degree arc at 45 degree intervals.  Those animations are mirrored and reused when striking on the opposite side.

That’s 40 sprite images just for his tongue Strike.  In Addition to the strike animations, Fillip also has a pre-strike anticipation state.  A squinty eye death stare that happens when a finger touches down on the screen.

strikeAnticipation

 

Fillip also has a few emotional states he enters depending on the immediate circumstances of the game.  The default, a neutral state, that he starts in and transitions to and from if nothing much is happening.  The worst, a sad state that causes him to frown whenever he’s bitten by a mosquito or swallows a poisonous bug (i.e. a Lady Bug or Fire Fly).

sad

 

Ultimately the state that the player most wants to see Fillip in is his Happy state.  A large and beaming smile that lets the player know they’re taking care of Fillip just right by eating all those flies and mosquitos.

Happy

 

To see all these sprites in action, download Fillip’s Feasts from the Apple App store. Lets us know in the comments below if you’d like to see a tutorial on how we set up the different animations as well handling the transition from each of the different states using Apple’s SpriteKit.

 

Fillip’s Feast Released

I’m ecstatic to announce that Infinite Cortex Creations first game, Fillip’s Feast is available for download from the apple App store! Now anytime someone’s bored for the holidays, needs a break from their family, or is waiting for their layover in the airport they can join Fillip in his swamp and feast on a buffet of bugs.

fillipIcon1024x1024

What can only be a Solstice miracle that on the shortest day on of the year our game makes it through apple’s review process in unbelievable speed.  Developers often lament about apple’s review process taking over 2 weeks, but our game took just over 2 days.  Part of the design goal of Fillip was to keep it simple, that and using apple’s sprite kit as our game engine I’m sure contributed to the speed at which they were able to test and approve our product.  Stay tuned to our blog as we post about our process and techniques we used throughout our production.  As well look for the next version of Fillip to be release as we make improvements and plan to expand the content.

Get Fillip’s Feast!

 

 

Fillip’s Feast submitted to Apple

In the wee hours of this day Infinite Cortex Creations Submitted its first App to the Apple App Store.  The review process can take 1 to 2 weeks so it’s unlikely our game, Fillip’s Feast will be available until after the new year.  Still we felt confident that our first product was ready for launch and it was important to us to get Fillip submitted before Apple cuts off submissions for the year on the 22nd of December.

Submitting Fillip’s Feast is a small mile stone for our company but a moment of extreme pride for me personally.  The initial concept for Fillip came to me several years ago as a simple and fun game; primarily to use as an opportunity to teach myself mobile game development and design. The final product could not have been achieved with out the hard work and dedication of all the partners here at Infinite Cortex Creations.  It would be arrogant for Fillip to think he is solely responsible for our company’s existence, but he was the spark that set us on this journey. Below are the original concept sketches I made for the game and the central frog character, who would eventually become known as Fillip.  appSketch fillipSketch

 

We’ll let you know when Fillip’s Feast is approved and available for download, we know you all are eager to get in that swamp and chow down some bugs.