Category Archives: Blog

Ponycorns Come to Kindergarten

If you’ve been following the ponycorns saga, you know that i made a game with my 5-year-old daughter Cassandra at a weekend game jam, and it went viral. This isn’t the story of its unexpected success … i’ll save that story for another time. It’s still unfolding. This is the story of how my highest hope for Cassie (for the time being, anyway) came true.

Visualization FTW

Have you ever imagined how a scene in your life would play out, and when you reached that moment, everything went exactly as you envisioned it, as if you and everyone around you were following a script?

Dog Costume

Actually when i pictured it, it was more of an octopus ..

When i originally had the idea to work on a TOJam game with my daughter, i knew the ultimate pay-off would be the day she walked into her kindergarten class with our Blackberry Playbook, and showed the game off to the other kids. Short of “Daddy and i built a jetpack”, it’s probably one of the coolest show n’ tell sessions ever.

In the days after TOJam and all the fun Cassie and i had there, she would excitedly tell her classmates about the experience. True to form, her fellow five-year-olds actually started mocking her, saying “TOJam isn’t REAL. You’re making it up!” They even doubted the existence of “The Boss”, TOJam co-founder Jim McGinley, who took on a Santa Claus-like mystique following the jam.

Jim McGinley

He does have a magical twinkle, doesn’t he? (photo by Paul Hillier)

Eat THIS, Five-Year-Olds

All this doubt floating around at school, and Cassie’s Snuffleupagesque insistence that it really did happen, paved the way for a truly magical show n’ tell session today in her kindergarten class. There we were, just as i’d pictured it, showing the Playbook version to a formerly disbelieving group of kids as they sat, spellbound, on the storytime carpet.

Ponycorns at Kindergarten

Cassie’s finest hour.

Wit a grown-up telling the class all about it, there was no way the little TOJam-deniers could object. We told them all about how you get to stay up way past your bedtime there – even overnight – and that lots of people brought pillows and slept on the floor. We told them about the kitchen full of candy, where you could grab as much as you wanted and still go back for more. Cassie regaled them with the tale of how she ate two and a half bagels, and they made her fart, so i told her to stand in the designated “farting corner” to keep our work area bearable. (This is a story she gleefully repeated this evening when we were interviewed by BulletProof Radio.)

Ponycorns at Kindergarten

“What did you learn in school today?” “Ponycorns friggin’ RULE!”

The kids watched, transfixed, as Cassie showed them how to collect the first two ponycorns. We left it on a cliffhanger, but i wrote a little note that will go into each student’s Wednesday envelope that tells their parents how they can access the game to play the rest of it with their children. i also wrote that if the parents were interested in making games with their children, they could check out the fabulous Scratch.

Games for Change

To wrap it up, we did a “question” period. The questions were “Um, Cassie, i like the green ponycorn,” and “i like the colour purple that you used in your rainbows.” Then Cassie showed the children the plush ponycorns that her mom made for her, and we gave each of the students a little ponycorn button.

i really, truly hope that this will spark a desire in the kids and their parents to get more involved in technology, an area which is tragically stagnant in elementary-level education due to the age of the teachers and a lack of funding. This is the same school where i’m working with the principal to offer Scratch instruction to the grade three class, which may yet become a lunchtime program that all of the students can enjoy.

The ponycorn revolution is turning out to be more than just the story of a little girl making a game … i’d like it to be the story of kids, everywhere, using technology to create – not just to consume.

Cassie and her Ponycorns

5-Year-Old Girl Makes Video Game

As planned, i took my five-year-old daughter Cassie to TOJam, the three-day Toronto independent game jam, to make a game with me. And here it is:

Cassie drew all the pictures, wrote all the titles, and recorded the voice of the main character. She also came up with the NPCs (including Mr. Turtle, the Mean Tiger, and the villainous Lemon), and designed some of the puzzles (including the one where you [SPOILER ALERT] have to read a sign to justify your need for a coconut to throw at the Lemon).

Cassie and Daddy

Cassie and Ryan [photo by Brendan Lynch]

Send Cassie to College?

i used Mochimedia’s ad service to inject ads into the game, which is fitting, because Mochi was a TOJam sponsor this year. i threw ads in there with the hope that the game might drum up a little bit of cash, which i will put toward the education fund that Cassie’s grandma started for her. Wouldn’t it be cool if Cassie’s game paid for college? (Sadly, it won’t happen. See the Pimp My Game series for more reasons why.) For kicks, i added a PayPal Donate button beneath the game.

Cassie tries ot eat with chopsticks

With your help, maybe we can send her to get some etiquette training? [Photo by Paul Hillier]

Alert Child Services

Dragging your kid to a weekend-long game jam, eh? Before you call Children’s Aid on me, please understand that i didn’t actually keep Cassie captive at TOJam all weekend long. She came in with me at 9:30 Saturday morning, and was the most excited i’ve ever seen her. We’d been preparing her for MONTHS so that she’d be emotionally ready for TOJam. After the organizers expressed concern that my rotten kid would be running around the place pestering people and making noise (an entirely likely scenario, if you’re familiar with my insane children and my lousy parenting style), i spent every evening coaching Cassie.

Me: Remember, you’re the first little girl who’s ever made a game at TOJam. And everyone’s worried you’re going to run around screaming and making noise and wrecking things.

Cassie: (shocked face) No i won’t!

Me: *i* know you won’t. (totally lying here – i was as nervous about it as anyone) But you have to prove to everyone that little girls can make video games too. If you’re very well behaved, then next year if another little girl wants to come and make a game, the TOJam people will say “the little girl who made a game last year was SO wonderful, we’d LOVE to see more little girls making games.”

Cassie: i’ll be have. i will!

Cassie bes have

Cassandra, “being have” [Photo by Paul Hillier]

Yes, Cassandra, There Is a Game Jam

The morning of TOJam was like Christmas for her. i’m not kidding. In the days leading up to the event, she told everyone she knew that she was going to TOJam. Naturally, they had no idea what she was talking about, but the strangers in the elevator and in the grocery store smiled and nodded politely all the same.

By the end of the day on Saturday, Cassie had spent 10 hours at TOJam, and was begging me to let her stay overnight. She had put in about 6 hours of actual colouring work, and sunk at least another hour into voice acting later that evening at home, where it was quieter. i tucked her into bed and returned to TOJam late Saturday evening, and then pulled an all-nighter scanning her crayon drawings and integrating them with the game logic using UGAGS (the Untold Graphic Adventure Game System).

Daddy working

[Photo by Paul Hillier]

Family Jam

Sunday morning after church, the whole family joined me at TOJam with a bunch of instruments in tow. My wife Cheryl and the two little girls sat together on the carpet down a quiet hallway. Cassie grabbed the harmonica, i took the drum, Cheryl took the ukulele, and little Isabel used the thumb harp and the Happy Apple. We recorded some music tracks together. The one that made it into the game intro is just Cassie and Izzy playing together. It was really nice to have everyone involved like that. Here’s the family track that didn’t quite make the cut:

[display_podcast]

Sunday evening, the family regrouped at TOJam. The game, while still unfinished, was set up in a hallway where Cassie excitedly ran up to any interested passers-by, snatched the mouse out of their hands, and said “I MADE THIS! LEMMIE SHOW YOU HOW TO PLAY!”

i think it was a really valuable life lesson for Cassie to see that all her hard work and effort went into making a product that brought smiles to the faces of her players. The next step is to brave the hairy Playbook process to get it on the device so that Cassie can bring it to school for Show & Tell.

Creighton family

[Photo by Paul Hillier]

Correcting History

i really hope you enjoy Sissy’s Magical Ponycorn Adventure. In all of this, our goal as parents is to give our kids the kind of childhood we would KILL to have had. i can’t imagine how different my life would have been if i had made a real working video game with my father at age 5. In fact, i can’t imagine how different my life would have been if he hadn’t left when i was eight months old.

But no matter. Some day, the ponycorns will get him.

Dear RIM Blackberry Playbook People: Please Put that Shit on a Button

Dear RIM Blackberry Playbook People,

Thank you for sending me a Playbook. i like it very much. i didn’t very much like the steps involved to put my work on the device, though. It was the most needlessly complicated thing i’ve had to do in all my life. i’d like to see the Playbook succeed, but you need to put more effort into helping your developers succeed first.

Here are a few of the issues i ran into while porting my game Heads to your platform:

  1. i had to download Many Things, and sign up for Many Accounts. Each Thing and each Account came with 15 pages of legalese with an “I Agree” button at the bottom. I Agree … that this stinks.
  2. One of the Many Things i had to download was Adobe AIR 2.5. i followed the link on your site to Adobe AIR 2.6, which i downloaded instead. When i tried to follow your workflow, i was told that only AIR 2.5 would work, so i had to cast about the Internatz to find the 2.5 download, which wasn’t made immediately and obviously available on the Adobe site. If i’m creating something for your platform, everything i do should ideally be immediate and obvious.

    Click here

  3. i downloaded VMWare and your VMWare Playbook profile so that i could run a virtual Playbook. But the emulator stalled at the startup screen for a very long time. i checked message boards, and found two possible solutions:
    1. Leave it overnight.
    2. Alternatingly restart your computer or VMWare multiple times (some reports said “six or seven”) until it works.

    i opted to restart VMWare and my computer multiple times until it worked. This was very frustrating. i’m not the only one who experienced this problem, as evidenced by this web comic by my Twitter pal @IQAndreas:

    Developing for the Playbook: Chapter 3

    Developing for the Playbook: Chapter 3

    Developing for the Playbook: Chapter 3

    Developing for the Playbook: Chapter 3

    Developing for the Playbook: Chapter 3

    Developing for the Playbook: Chapter 3

    Developing for the Playbook: Chapter 3

    Developing for the Playbook: Chapter 3

    Developing for the Playbook: Chapter 3

    Developing for the Playbook: Chapter 3

    Developing for the Playbook: Chapter 3

    Developing for the Playbook: Chapter 3

    Developing for the Playbook: Chapter 3

  4. In order to deploy my game to the virtual Playbook, i had to know its IP. To get that, i had to swipe the “development” option into the “on” position and punch in my password. i had to use the software keyboard to punch in my password, because my computer keyboard didn’t work. And worse than that, it took about 4-5 tries swiping the slider and punching in my password before the Developer hammer icon would appear on the home screen … for whatever reason, that slider kept undoing itself.

    Playbook Development Slider

    Somebody call Jerry O’Connell, cuz this slider be busted.

  5. When it came time to bundle my files together in a .bar file, i was dismayed to find that since i don’t use Flash Builder (but, rather, FlashDevelop), i would need to use the command line to continue. i hate the command line. HAATE it. i know that eggheads love it, and that you employ Many Eggheads at RIM, but you have to understand that even though the command line is useful and powerful and 1337 and everything, i absolutely can’t be arsed with it. Like, not at all. So knock it off.

    Here is what i had to type into the command line in order to bundle my project into a .bar file:

    C:\dev\BlackBerryTabletSDK\blackberry-tablet-sdk-0.9.3\bin\blackberry-airpackager -package MyGame.bar -installApp -launchApp MyGame-app.xml blackberry-tablet.xml MyGame.swf blackberry-tablet-icon.png -device 192.168.58.128 -password 123456

    This is not a fun thing to have to type. Know what i want to do? Click a button. Can you make it so that i just click a button? Buttons good, typing bad. It may not be 1337, but it also doesn’t eat up my entire afternoon.

  6. i am currently rocking three Blackberry accounts: one to develop my game, one to sell my game, and one to talk about my game on your forums. This is Too Many Accounts. Know how many there should be? One. Know why? Because it’s easier. Know what’s not easy? You.
  7. When i signed my application, i had to download a file that you sent to me two days after i emailed you and asked you for it. That’s Too Many Days. That’s because you also took two or three days to approve my vendor account. Why not do this in one step instead of two? Clearly, a vendor is always going to need the application signing file. See how you don’t make things easy, when you potentially could?
  8. Then i had to use the command line (which, as we’ve already established, is bad) to create a file that i could send to you so that my computer could sign files. At least i think that’s what i was doing. Here’s what the command looked like:

    blackberry-signer -csksetup -cskpass DesiredCSKPassword

    Then i had to use the command line (bad. BAD!) to send you my .csj file to receive permission to sign my other file. i think. i’m not quite sure what was going on, because it was tough to interpret the command, which looked like this:

    blackberry-signer -register -csjpin PinEnteredWhileRequestingCSJ -cskpass PasswordEnteredWhileGeneratingCSK client-RDK-XXXXXXXXXX.csj

    Next, i had to create a .p12 certificate using this command:

    blackberry-keytool -genkeypair -keystore DesiredCertificateName.p12 -storepass NewPassword -dname “cn=MyCompanyName” -alias author

    Then i had to get you to sign the file using this command:

    blackberry-signer -verbose -cskpass CSKPassword -keystore CertificateName.p12 -storepass StorePassword BarFileNameForRIMToSign.bar RDK

    Then i had to sign the file myself using this command:

    blackberry-signer -keystore CertificateName.p12 -storepass StorePassword RimSignedBarFile.bar author

  9. When i finally went to upload my file, in the web form you asked me for an additional icon in some bizarre size (243×717 or something like that). i went away and produced that icon, and by the time i returned, the web form had timed out. Know what would be easier? A checklist!

    YOU WILL NEED:

    • A swf
    • An xml file called whatever.xml – download it HERE!
    • A thumbnail icon – download a template HERE!
    • A second icon – download a template HERE!
    • A brief description of your application – max X words
    • A long-form description of your application – max Y words

    And HERE’S an image of how all this stuff looks when it’s in the Blackberry App World! We’ve LABELLED everything for you, so you know where the descriptions and icons appear and how they’ll look to the user.

    Really, though – how long does that kind of thing take to set up? An afternoon? Why does this not exist yet?

  10. To add insult to injury, my game was initially rejected because it did not contain the icon.png. i figured i must have forgotten to include the .png filename when i created the .bar file, so i went through all of those horrible steps again. For a second time, my game was rejected. Same reason.

    Know what the problem was? i hadn’t added this to the xml file:

    
        whatever.png
      
    

    N’awesome.

i didn’t enjoy doing this, and i don’t want to have to do it ever again. Know what i want? i want a big blank area where i can drag and drop my file, with a huge shiny juicy button that says “GO BITCH GO” which, when i click it, does all the bullshit i just described above. Please get your eggheads on that.

In addition to all of the brilliant software and hardware engineers you employ, you simply need to hire more people to evaluate this process. An egghead will tell you that using the command line is cool and awesome and that everyone loves doing it. A person will tell you the actual truth: using the command line blows, and you need to put that shit on a button.

Please let me know if and when you plan to put that shit on a button, and i’ll gladly continue developing for your device, because it’s pretty cool.

Sincerely,

Ryan Henson Creighton

President, Untold Entertainment Inc.

The Most Useless Generation

Tom Brokaw calls the folks who survived the Great Depression and went on to fight in Word War II “the Greatest Generation”. That’s fine – i’ll give them that. When they make movies based on the Greatest Generation, we get Saving Private Ryan. When they make movies based on my generation, we get Dude, Where’s My Car?

Dude, Where's My Car?

Once more into the breach, dear bro …

Following the Greatest Generation, we had the Baby Boomers, and then Generation X (which is lazy naming), followed by my people, Generation Y (which is even lazier). i have a feeling we’ll eventually take to renaming Generation Y “the Internet Generation” if we haven’t already.

Rare Sandwich Filling

Generational Technological Competence

It’s scienticious!

The interesting thing i’ve noticed about the Internet Generation is that it’s sandwiched between two generations of people who are completely crap at using technology and computers: the kids who are now 45-50, who went to high school in the 80′s, and their kids, who are currently in – or graduating from – college and University. The difference between the kids of the 80′s and their kids is that while the parents arguably didn’t need to know how to use computers effectively in the workplace while they were being hired, their kids absolutely do. But since the parents weren’t immersed in the Internet and computers, they raised their kids to be similarly disconnected. The result is a generation of kids who absolutely do need to know how to use computers and the Internet, but don’t. i dub them the Most Useless Generation.

Oh no you di'int

Oh yes i did …

Simple Pleasures

i can honestly say that one of the biggest thrills, one of the most memorable times in my life, was when i sat down at my friend’s computer while he launched mIRC, an Internet Relay Chat client. These were the early days of home Internet usage … the 14.4 dial-up days. My friend, a year older than me, had convinced his parents to get access because he wanted to use the Internet at home. Universities across Canada were providing Internet access to their students, right in their own dorm rooms.

Until then, the only real access high school students could get was on ONE machine in the school library, IF their school was progressive. And that computer was treated like a rare and precious angel fart – you had to book it in advance, and the whole time you used it, you’d have the head librarian breathing down your neck making sure you didn’t “hack NASA” or whatever.

War Games

Damn you and your far-fetched legacy, Broderick.

But here in my friend’s room, and in Universities across the country (it was one agonizingly long year until i’d get my chance), we had unfettered, gloriously unsupervised access to the Internet. The thrill – the unbridled thrill of chatting to complete strangers in a text-only chat channel was a magical moment i’ll honestly never forget as long as i live. i’m not being cynical here: it absolutely blew my mind.

Denerdification

All through grade school, only the nerdiest kids learned to use computers because it was a niche interest that effectively turned you into a social outcast. But in high school, with the advent of the Internatz, everyone learned how to use computers – often under their own initiative – because computers became that damned interesting.

Al Gore Internet

Flash forward to today, when i discover while teaching group of college students that they don’t know how zip a file and send it as an attachment in an email. This is email we’re talking about – the Internet’s killer app – and it was causing anxiety attacks in students enrolled in a computer art program.

This is the generation of kids who were horror-stricken that i’d been teaching Sunday School using Wikipedia as a research guide. Their teachers have long told them that Wikipedia is absolutely unreliable, and they’re not to use it. This is the generation that can’t Google worth a fat damn.

Google-fu

Your Google-Fu is weak. Now we fight. Heeya.

This is also the generation, incidentally, that doesn’t offer the courtesy of a phone call or an email when they don’t come into work. This comes from both personal experience and from anecdotal word-of-mouth, as i’ve heard that many employers are frustrated with The Most Useless Generation. Instead of giving notice, they just don’t show up. If they don’t want to do something because they don’t find it fun or interesting or engaging, they don’t do it. i once had an intern quit on me by phone call, with zero notice, and i suspect it’s because he wasn’t having any luck with the CSS task i’d given him. Based on all i’ve been hearing, i’m frankly surprised i received a phone call at all.

Let’s Get Out of Here

i’m not sure how to solve this problem, or even if we need to? Maybe we just have to put up with a generation of unemployable kids, until the next generation can put us back on track? Perhaps we can wage a special, separate World War III and draft everyone between the ages of 15 and 25 to fight it? But there’s a good chance they’ll find war either too difficult or too uninteresting, and will lay down their guns so they can butcher the English language in undecipherable text messages to each other.

Or maybe we should just build a spaceship to somewhere else? Everyone is freely invited to board it and get off this rock. We’ll send the invite by email.

Hide Your Daughters: ActiveTuts+ Interviews Ryan Henson Creighton

Activetuts+, a site packed with tutorials, articles and tips (MUCH LIKE MY OWN), recently posted an interview with me. In it, you’ll learn all about Adobe’s negligent parenting practices, why Unity 3D Game Development By Example is the greatest book since this one, and how to properly pay a prostitute.

A few things to point out:

  1. The site used Brendan Lynch’s pic of me from TOJam 5 without crediting him. Since Lynch is prone to fits of terrible rage, i felt i should give him credit, rather than to wait for him to pay me an unpleasant Godfather-style visit.

    Ryan

    Photo by the blessed and powerful Brendan Lynch, peace be upon him

  2. All other photos used in the interview were stolen from Google Image Search by me without credit. He who sends the angriest email will shoot to the top of my todo list for adding attribution.
  3. i’ve landed in a bit of hot water with Unity 3D Game Development by Example, ever since a high school teacher demanded the publisher remove the “obscene” material from it to make it appropriate for high school students. Now the publisher has turned around and scoured my contract for a legal excuse to sue. You can read all about that torrid saga here:

So if you’d like a copy of my book before it ceases to be, or before all references to nipples n’ dicks are replaced with ponies and rainbows, pick up a copy before it’s too late!

Bulldog

Isn’t “Nipples n’ Dicks” the name of that dog food brand?