Sunday, February 16, 2014

Flippy Bard

A week ago when Dong Nguyen said he was going to pull Flappy Bird I wasn't sure I believed him. It seemed like an odd stunt at the time, especially when (I assume) the app could have just been pulled right away. But on Sunday I was shocked to see the game pulled, and even more shocked by the crazy death threats he received for wanting to take it down, and I can't say I blame him. (And there is a great piece on our Internet Empathy Problem here.)

So when the app finally went down on Sunday, leaving a gaping hole and angry fans, I was curious as to the aftermath and all the copycats to come down the pipe. The first thing I thought of was "Man there are going to be a ton of games with "Bird" or "Flap" in the title, and it's going to be ugly obnoxious." And naturally the first thing my brain did was a letter jumble, whereupon I discovered Flippy Bard was a fun mix of letters.

The name made me chuckle so much I decided it had to exist. It had to be real. If nothing else but to mess up the catalog of copycats. For the past 2-3 months I have been learning to use Game Maker, because every time I try to do things in the regular ios dev tools I feel like I'm sitting in the cockpit of a jetliner with no idea what any of the buttons do. So to help familiarize myself in Game Maker I have been making a game for my son, who was 18 months old when I started the project, recently published it and wrote about it in another post. I'm super excited to release a game which tiny tiny children can play, without ads, in-app purchases, redirects to other games, or other forms of horrible money grabbing trickery.

So since the Game Maker bug is not an issue with games with ads, I figured "Hey, why not just make this stupid little game." So I did. And about 30 hours later (with sleep and day-job mixed in there mind you) I completed my version 1.0 of Flippy Bard. After starting on the project there was also the announcement of The Flappy Jam, which I am hoping to submit the game too. It's pretty neat to see the kind of cultural phenomenon it has become, and the support and love for the original creator. Here is my game description I put on the store:

The bard has lived a quiet life in the kingdom. He has kept his head down, and entertained the people on a rare few occasions. But times are tough for the bard, for you see, the birds no longer sing. The people must be entertained, and forsaking all he has held dear (his integrity, his honor, his happiness) he will entertain the masses of the kingdom and its corrupt leaders. And so here he is, atop the towers of the kingdom, ready to entertain the people with his minstrel song of many flips for as long as he can muster the strength. Bless his soul and forgive him his trespasses.

A fairly obvious mirror on my own reality, but also I want to treat this as an homage to Mr. Nguyen. Like him I am just a guy who wants to make games. I guess in a way I am hoping there is some merit in having the least corrupt laden rip-off game out there, and potentially something with a bit more polish than a lot of the other crap. Some of the copy-cat apps I see overwhelm you with ads; full screen at the start, in between matches near your buttons, it seems like they are trying to take advantage of finger slips. I don't anticipate Flippy Bard getting the kind of popularity which Flappy Bird did, but if it did do well and helped pay off my exorbitant student loan debt, I could also see taking ads out at some point (or parsing them to be very minimal, Im not sure how ads work on ios yet.) If Nguyen hadn't taken down his game I know I wouldn't have made this. I hate copy-cats. I hate the "me toos." But also, I'd like to see that gap filled by something with the spirit of creativity and fun, and not just a quick copy knockoff, and that is the heart behind Flippy Bard.

In college is where I first had an art teacher talk about the idea of "stealing", as many attribute Picasso to saying “good artists borrow, great artists steal.” (and of course this Banksy piece.) I think a great number of people who don't make creative works misunderstand the philosophy behind this. This isn't stealing the result, or stealing the physical object of the resulting art. When you see the way another artist does something, and the result looks amazing, as a young artist you may say "Well that guy has a unique cross hatching technique, I shouldn't copy it." But the reality is even if you tried to copy what that person was doing, the result wouldn't be identical, because through the process of creating the art you discover your own technique, style, and approach which becomes your own. In an interview with the band Animal Collective, they explained it perfectly:
We get the most questions about that one: "What combination of pedals is used to create that sound?" I don't know, first of all-- I don't remember. But I make a point of telling the kids we don't want to tell them this pedal put into this pedal put into this pedal, and these are the delay settings or whatever, because half the fun of being a kid and making the music, like Dave said, is finding your own sounds or wondering how people do something. You kind of figure out a way you think they do it, and it turns out not to be it. But it becomes your own thing, sometimes by accident. 
I set out to make a quick game, and along the way had a lot of fun making something all its own. Flippy Bard is not trying to match the game it is based on perfectly, I ended up having a lot of fun making it and like the idea of it being its own thing. Many people may not like it being a copy, but I've never taken this approach to creating something, I may never again, but what fun is life if we don't try things from time to time? If nothing else it is empowering to know I can make a tiny game quickly and put it out there for the world. I might have to do this more often, with less "stealing."
But, of course (literally while I was first writing this) someone like Terry Cavanagh, an amazing designer, comes along and makes Maverick Bird,the coolest Flappy Bird tribute ever and it just puts all others to shame, doing exactly what I set out to do, but doing it perfectly. Holy crap that game is rad.

And now it is Saturday night, less than 7 days later I was able to make a game from scratch, art, audio, code, etc. I was able to release the game to the Google Play store, and do a few updates to fix some bugs and add some other functionality. I submitted the game to Apple on Tuesday, found some major bugs and resubmitted that night (early Wednesday) and now there is a strong possibility the game will be rejected by Apple and possibly taken down by Google. I hadn't planned on caring as much about a little knock-off game, but over the course of the last week I have been proud to make something which plays quite well, is a lot of fun to play on the couch while having some TV on in the background, and I have multiple extra-unlockable characters I have been tuning and designing. To see that go away would break my heart greatly.

I had not intended on publishing this until the iOS version was released. But I need to step away, push myself back from my desk for a bit and not care about this game for a few days. In the event the app is rejected, I will probably put the game down for good because I can't imagine this game without the name attached. It would be a great shame really, but I suppose I have to press on to the next tasks.

Download on the App Store

Get it on Google Play

Get it for OUYA

Thursday, February 13, 2014

Garbage Truck! - A game built for the youngest gamers.

Today my app, "Garbage Truck!" went live

Download on the App Store

Get it on Google Play

Within the day I found out I borked the art for non-tablet Android versions, and did a mad dash to fix it tonight. I'm pretty-pretty-pretty sure it's running good on non-tablet devices. But by default the thing supports 5003 Android devices and I can't seem to uncheck some en masse, so, yeah. If you find a bug, drop me an email.

Why a Garbage Truck? (Said the person without kids)

Seemingly out of nowhere, when my son was just under a year old he fell in love with trucks. We didn't expose him to trucks on purpose, or play the movie "Cars" for him. He just fell in love with trucks: semi trucks, garbage trucks, fire trucks, you name it. It must be some ingrained genetic thing in our children, because so many of his little friends, both boys and girls, love trucks as much as he does.

We try to never play TV and limit it as much as possible (but as any parent knows sometimes they are sick or miserable and it can help calm them down) and his favorite show is called "Mighty Machines", a Canadian program where footage of real trucks are doing their jobs. The voice overs can be pretty obnoxious, but its a great little show for truck lovers. Sometimes when he wakes up at 7AM, and I was up until 2AM with the new baby, or working late, I like to put on a show to keep his focus and wake up a bit myself.

Bad Parent Time

When he was about 18 months old I had bought a new iPad, and I thought I would try to get some fun kids apps. I had never really put an app in front of him, but he sees us using our devices all the time.

I know that makes me sound like a horrible dad, but I don't mean "..use our devices all the time" in the sense of "I sit on the couch playing a game ignoring him." In defense of our modern world, our smartphones are an extension of us in our children's eyes, as much as a child in the 80's would see a telephone or car as an extension of the home. Together, with my son, we look at photos on the phone, we take self portraits together, my phone is my primary camera (and when I take it out and tell him to say "cheese" he knows its photo time), we take vine videos together to share with family, my son facetimes me while I am at work, we call extended family on the phone. We use this technology together, and for tons of uses.

We do these things so much that seeing our kids wanting to use these same devices isn't a bad thing in my eyes. He looks through digital photo albums all the time, and loves seeing videos of himself as a small child. It's shocking how well he can navigate the device (Hooray for lame parent stating of the obvious. And how about airplane food!). So I saw no harm in downloading a few kids apps, but limiting his time and exposure to them.

Sadly I couldn't (easily) find any apps that were appropriate for his age. Again, he is super young, and it's generally frowned upon to design a game for someone this age (unless you are Fisher Price and it comes with a phone holder.) All of the games were too difficult. They had too many dependencies, too many steps to take, and often way too many verbal instructions. Even navigating menus was a bit of a chore. That's when I decided to just make one for him.

Making The Game

My goals were simple.
  1. Make a game with no ads, no links outside of the app, no links to other apps I may make, no dlc, no monetization of any kind, and no way to behave in a "corrupt" fashion.
  2. Allow the player to touch anywhere on the screen and get some kind of feedback, without unexpectedly booting them out, and no negative consequences.
  3. No menu. No settings. Jump straight into the app and play.
  4. Save data, make it a game even for the younger players. Who knows if they will want to see their tracked progress someday when they are older.
  5. Put a little perspective into the art (if even orthographic at an angle, as long as it wasn't flat from the side)
  6. Learn as much about Game Maker: Studio as possible to pull knowledge into making future games.
Here is the description from the online stores:
Touch anywhere on the screen to effect the game; change the color of the truck, the cab, touch the sky to change the time of day, cycle through the letters of the alphabet by touching the sign, and most importantly make the truck move forward and backwards by touching the wheels (or in front or behind the truck to make it stop and go).

And no garbage day is complete until you collect the trash! Simply touch the garbage cans when they line up with the grabbing claw to pick them up, and add the collection to the total score.

There is no wrong way to play the game, no way to fail, or convoluted steps too hard for the youngest players to understand. Scores are saved automatically and frequently, so you'll always have a running tally of all the cans you've collected. And best of all there are not, and will never be, any ads, in-app purchases, links to other apps, data collected by me, or links to take the player outside of the game.

Have fun playing Garbage Truck! and feel free to contact me with feedback!

The Look

I knew right away the look and style I wanted to shoot for, fashioning it as a sort of "interactive illustration", emulating a look of detailed watercolor truck illustrations in books of the 80. This Truck Book by Harry McNaught is a huge inspiration for the project.

In the end what I came up with was a look similar to McNaught's, but also taking my own stylistic approach I have gained over the years. I went for an angled orthorgraphic look to the truck, so it was consistently sized along the entire screen, but never bowing in an odd way.

For reference I took a number of photos and videos of our local garbage truck on two different occasions. I was sure the driver was suspicious as to why I was doing this, but I think he saw me standing outside with my son a couple times, so he may have known why.  I also got most of the audio from recording on my phone, then cut up the clips into in-game audio.

The truck itself is broken into lots of individual pieces, to save on memory, and for a few other tricks. Aritsts and programmers tend to butt heads from time to time over how to handle color of objects; do you load the game with finely tuned colored textures, or use a grayscale image and apply multiply a color on top of it. I have seen the benefits of both, and for this game I felt it was important to do as many color combos as possible, so I owe a big thanks to all the programmers of the past who taught me about multiplying colors. Also, the wheels are constructed of 3 different pieces, so they spin, but still have a perspective on them. In the end the truck itself is constructed out of about a dozen individual art assets, "carefully" realigned back into the game.

For the background I used an image my old friend Chris Drysdale (go check out his Deviantart) made for a project which never got off the ground. The hills and sky fit so perfectly into the look I had to keep it, but still had to turn the foreground into a street and sidewalk.

Wait, Game Maker?

When I tell people I made the project in Game Maker: Studio I get a few funny looks. It seems like the kind of thing you can just make in xcode, or other program, but every time I sit down in front of xcode I feel like I'm sitting at the controls of a space shuttle: there are so many knobs and buttons and switches, and the documentation expects some form of competency and experience which I, sadly, don't have. 

But with Game Maker, it is like have a project set up by a programmer for you. Anyone who is not a programmer, who has worked on a game, coming into a project where the work is as simple as "Just import your art into here, and hit this export button" it feels empowering. You don't have to sweat the small stuff. I feel like Game Maker has taken out a lot of the more high level things I just don't have the ability to make work. 

Also there is a long history of the program being around, and the fundamentals have remained the same, so when you do a Google search for information on a bug or process there is a multitude of answers out there. I even first delved into Game Maker in 2008 when I was making a few prototypes for a DS game a few of us were talking about making. It has come such a long way since then, and it's great to see so many great games being made in it. Its the perfect fit for me and I love it. 

But I haven't tried Unity yet. Might have to do that.

The Power of Emergence (aka Feature Creep)

At the outset of the project it wasn't going to be a game. But each time I sat down to work on the game, or when I would put the game in front of my son for him to play and test it out, I found something new and fun to do.
  • The sign on the truck was going to be a single logo, but my son kept tapping on it. So I put a color change on it along with cycling through the letters of the alphabet. Also, the cab of the truck felt blank on its door so I overlayed letters onto that as well.
  • I wasn't sure if I was going to put particles coming out of the smokestack. Most trucks these days are fairly clean, but I put in the particles and it looked so good. Early on when you switched direction the already emitted smoke would fly straight up instead of going in the new direction. I had way too much fun getting that to feel the way I wanted to in the end.
  • At the start of the project touching the sky did nothing, but my son kept touching the smoke coming out of the truck, so I figured I would just change the color of the sky using a color overlay poly. And once I did that, it dawned on me to make it alter the time of day. At first it only changed the color of the sky, but once I got the "dark" version to where I liked it, I had to add lights to the truck, and when I did that I had to add outer glow, and once the sky was dark I had to put stars in there (although im still unhappy with how dark they are but its a result of how im drawing everything so my hands might be tied.) Oh, and of course I had to put a sun in the background of the sunset.
  • I wasn't going to track a score, but I wanted to see how many cans my son might collect, so I put in a score system, but kept it off at the start and moved to the bottom. That got me to wonder about tracking scores in leaderboards, and achievements, and Im really happy about that.
  • Also the numbers displayed on the truck are randomly generated. At first I just wanted them to be "12345" (and they still are on the app icon, uh oh) because I wanted control over transparency, size, and italicization. And through some experimenting I came to discover I had a lot of control over those things in the program, so I taught myself how their random number and letter generation works, and I think it adds a nice touch to the truck.
  • Since starting the game my son has gained the ability to "swipe", something he didn't know how to do at the start of the project. I'm tempted to put some kind of swipe mechanic into the garbage can, which he always tries to slide to the claw arm. But, feature creep.

Thanks For Reading

I'm really proud of the work I was able to create. And I genuinely hope kids get a chance to play this and get a kick out of it, and I'm really looking forward to when my 4 month old daughter is old enough to try it too. It was so much fun to make, and it's so empowering being able to make something yourself and put it out into the world for others to try. I hope I get to do that with more future projects.

Sunday, February 9, 2014

Dicers - A board game for dice lovers

I love dice! I have too many sets of polyhedral dice at home and not enough games to play with them. I wanted a game where you play with dice, but not just for rolling, so I decided to challenge myself and try to invent a game using my polyhedral dice sets.

My goals in making the game were:
  1. A game played on a board where the dice are the game pieces, not a means to manipulate a separate piece on the board.
  2. The rules need to be simple, as few pages as possible, so just about anyone can understand.
  3. Players should not have to buy a bunch of new items to be able to play the game, and should use things many gamers may already have.
  4. The game needs to embrace the fun of dice and embrace their ability to roll and the randomness they can bring to a game.
  5. Embrace the "open source" mentality and share it with the world so dice lovers everywhere can experience the game.
Using this list as my key goals, what I came up with is “Dicers" (the name being a mix of "Dice" and "Checkers" even though it may more closely resemble chess.)

It is a game played on a chessboard, for 2-4 players, and it requires nothing but a gameboard, dice, and friends to play with.  So if you own 2 or more sets of polyhedral dice (like these from chessex), and a chessboard, then you already have everything you need to play a game of Dicers. And if you don't have a chessboard, and you do have a printer, the last pages of the rules have printable boards which are sized to work well with standard 8.5 x 11 paper.

If you don't own any sets of polyhedral dice, you can get them from, or just stop by a local comic shop, hobby shop, or game store, especially if any of these have tables set up for people to play RPG or collectible card games. I was surprised at how easy it was to find these Chessex sets (and feed my collector's obsession) and each set is only $4-$5 for standard colors.

Each time I have played Dicers the play session is short (always less than 15 minutes), even when teaching people how to play. On a regular chessboard you can play 2, 3, or 4 player games. But after a 3 player game something didn't feel quite right. The play wasn't symmetrical, so I set out to make a board symmetrical for 3 player games. And once I did that, I couldn't stop myself from making a 5 player board, and 6 player board.

Right now I consider the game version 1.0, because I have not done enough testing. There aren’t enough hours in the week to do the kind of playtesting I want for a game like this. And I could sit for days, weeks, months, or years while I fine tune the rules of the game. But, I am instead releasing the first version out into the world for others to try. Play the game, experiment with the rules, and share your findings with me and I will try out your ideas and see if they help to make Dicers a more balanced and fun experience.

Here are the docs:
Dicers - Rules v1.0 - With Illustrations 

Share these files with anyone you want. “Dicers” is distributed under a Creative Commons (CC BY-NC-SA 4.0) license. That means you can use, remix for personal use, and share the game for free, but you can't sell it without permission, or take the rules/boards and make an app out of it.

If you have questions, suggestions for new rules, or  you simply want to share your personal experience with the game please feel free to comment below, or email me at

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.