Double Fine Productions - I deserved that

I’ve been a game developer for over ten years now and one thing that I can promise you that is deep in every heart of each person who works in this industry is this: an idea for an awesome video game they hope to some day create.

Today I’m going to do something I’ve never done before and publicly talk about my own brainchild.

It’s a Halloween themed game with gameplay elements similar to those found in old-school Japanese RPGs. The game stars a geek squad of junior high school kids who run into trouble with some local bullies while they are out trick-or-treating. And then, by some cosmic accident (the witching hour, a passing comet, an ancient artifact, whatever – I haven’t figured that part out yet) they are swept into a magical quest where they adopt the powers and abilities of their costumes and … well, you get where this is going.

I have some great ideas for the costumes too! Naturally, being a huge Transformers fan myself, one of the characters is going to be a complete badass giant transforming robot. Man, this is going to be awesome! And original too!

But then … awww crap!

“The first of four new Double Fine games is a little Earthbound-inspired RPG about a crazy Halloween night.”

What? RPG? Halloween night? Gulp!

There’s more:

“The player’s abilities, and those of AI-controlled trick-or-treaters, will be determined by the costumes they’re wearing. Players will transform into gigantic versions of their costumed characters—like a massive knight or skyscraper-sized mech—when engaged in battle with Halloween beasts.”

I’m not kidding, I literally felt ill upon reading that.

And this screenshot brought tears to my eyes …

Costume Quest makes me cry

I’ve had a lot of ideas for what would make a cool game but never before have I ever seen something so close to my own vision, something that I thought of as a totally original idea*, independently dreamt up by another developer who is going to take the ball and run for it. What a surreal experience it was for me today.

And what a perfect lesson it is on the world of difference between having an idea and taking action on that idea. Yeah, I had a great idea for a game … but so what? Someone else if finding a way to turn that idea into something real.

Sigh.

Well, okay, so I feel a bit down on this today, but in all honesty I truly wish Schafer and his gang over at Double Fine the very best of luck with Costume Quest. And hey, at least it’s being developed by some world-class talent.

And now to make sure my other gaming ideas don’t suffer the same fate …

But still. Ouch.

* My good friend (and fellow developer) Andy tells me that this idea really isn’t that original, per an old Buffy the Vampire Slayer episode. I’m more of a Firefly man myself.

{ 1 comment }

I’ve worked booths at E3 and Comic Con before in my career, but something that made this year’s event drastically different for me happened when someone from Disney public relations approached me with a camera crew in tow and asked me to do an interview for a press outlet.

“Sure, why not?”

I probably did 3 or 4 of these a day at E3, as did my fellow Junction Pointers that attended the show. Now doing a presentation for any group of strangers is one thing, but there’s something about having a microphone and camera in your face that has the potential to crank your nerves up to eleven.

But to be honest, I enjoyed the experience, and welcomed any interview I could get. That’s probably unique for a programmer-type-of-guy.

Now, I wish I could claim to be a gifted speaker with nerves of steel but anyone who knew me growing up would remember that kid with the cracked voice and bright red face who fell apart in front of a crowd. No, sadly, public speaking is something I have to work at every week.

But I can do it now – which is an amazing feat for me, and probably most other people.

Anyway, one of the interviews I did for Disney Epic Mickey at E3 is available on YouTube. It was with Gavin Greene and Elder-Geek.com and as far as I know, this is my very first video appearance on the intertubes …

There’s some stuff on there that makes me wince a bit. Most notably, I should have said the title of the game, Disney Epic Mickey, instead of “this game” in my introduction. I also struggled to find the right word a couple of times as I spoke.

But I can watch it and not want to die – and that’s a BFD for me.

For folks looking to grow in this way I give Toastmasters International my highest recommendation. I’ve been a member for several years now and believe it’s the single most important thing I’ve done for my confidence and career. If you think your inability to comfortably speak in front of a crowd is holding you back then why not find a club near you?

(Thanks to Gavin Greene and Elder-Geek.com for the interview.)

{ 0 comments }

Thanks to the Source Control Gods

by Seanba on July 23, 2010

Yesterday, I was given a task to display lots (and I mean lots) of diagnostic text on the screen, while in game, on a development build of our latest goodness. Problem was, our debug font was far too big for the job – something I (foolishly) didn’t realize until the programming work as done and I first saw the glob of overlapping, unreadable text on the screen. It was mess.

The solution to such a problem sounds simple enough: just pick another font.

But this is console game development where we render strings to the screen via pieces of a texture like this one …

Default Font Texture

Note that simply scaling the source texture won’t work, as the boundaries of each alphanumeric character must be an integral constant (in the case above, 11 pixels wide and 21 pixels high). Plus, for historical reasons, I couldn’t simply scale down the destination quad we render the texture too. That seems like an oversight, and perhaps something I could worked up about, but it’s just the way it is.

So, I’m left with three choices:

  1. Refactor the rendering engine to support scaled debug text geometry.
  2. Drop, or scale back, the feature.
  3. Find or make a source texture with the same character layout as the image above, but with a smaller, yet readable, font.

Option one is out -we’re just too close to ship to make any kind of risky change to a major subsystem unless it gives us functionality of the highest priority. And I’m swamped with other bugs and support issues anyway.

The second option, ditching the feature, isn’t desirable because our guys could really use the extra diagnostic information and the work for it is “done” – but often it’s better not to chase after feature creep.

What about the third option? Sounds great, but how the hell is a programmer with little artistic or typography skill going to cook up a replacement texture?

And then it hit me: Years ago I spent some time on a pet project application exploring rendering the awesome looking outlined fonts you’d find in video games from the NES days. It didn’t do anything but utilize some C# GDI functions and the .NET PropertyGrid to let me experiment with font rendering and, like most pet projects, it didn’t go anywhere.

Font Application

Or I mean, it didn’t go anywhere – except my online code repository.

Now would you believe it took me mere minutes to download the source from that old do-nothing application and edit it to display the ascii characters in the order required? The application was already set up to change the font selection, size, color, and outline on the fly – so with a little mucking about I had something that looked reasonable.

Modified font application

And then two minutes later I had added a routine to save out that text into a texture. Not bad, eh?

Small vs Large font

Done and done. The new text even looks better too! I just love days like this when stuff falls into place so elegantly and a solution emerges.

I do a lot of pet-project programming, and often I don’t feel like bothering to prepare my code for submission (namely, just making sure I don’t check in a bunch of OBJ, SUO, and NCB files) – but I always do it, even for the most trivial of code – and examples like this are the perfect justification for doing so.

{ 0 comments }

Yegge’s Deathbed Confession

by Seanba on July 16, 2010

This has been kind of a rough year for programmers like me that enjoy reading blogs from other software developers. First Yegge threw in the towel. Then Joel called it quits. And even though Jeff is still around he has reduced his once legendary output to a post or two per month.

Actually, come to think of it, that’s a great opportunity for what is sure to become the next generation of “on software” bloggers. Hmmm.

Anyway, after year off it looks like Yegge is coming back – and I can’t help but get a real kick out of this quote:

Another perspective I gained was that decorating your mansion with works of art you know nothing about is amazingly rewarding, as long as you can mix it up by leaping across rooftops and assassinating bad guys and hanging with your buddy Leonardo. I swear, if they ever make a movie about my life, the handsome and dashing actor who plays me, when asked on his deathbed which of life’s pleasures had given him the greatest happiness, will say something cheesy that makes the audience ooh and aww with appreciation, but it’ll be total Hollywood bullshit, because what I really will have said was “gaming”.

Now that’s just awesome. Welcome back, Yegge, I’m looking forward to some great rants.

{ 0 comments }

Do Not – Sometimes the Better Option

by Seanba on July 16, 2010

Andy Hunt, easily my favorite programmer-type author, recently tweeted this bit of hard-earned wisdom:

The Yoda Methodology: “Do, or Do Not. There is no Try.” Note that “Do Not” is a perfectly valid, if underutilized, approach.

I love it. It’s a great methodology to keep in mind while creating software.

Yoda: Do or Do Not - There is no try.

Next month I’ll celebrate the 11th anniversary since I became a game developer. I’ve shipped 3 games in that time, with the fourth one coming this holiday season. That’s actually not too bad for this business – but it’s a good deal less than what I expected when I started all this.

It’s the nature of the beast, I guess, but looking back it has always amazed me that any game (or any piece of software, really) could have been completed in far less time and with much less money if we did a better job knowing what our priorities were early on – and if we had the ability to say “Do Not” more often.

I know of one studio, that, while making a third-person shooter, had put a lot of effort into adding lip-syncing to their game. It wasn’t a common feature for games back then but I think the justification for adding it went along the lines of, “Hey, wouldn’t that be cool?”

Dilbert.com

So they purchased some library and put a programmer and audio guy on it. First estimates put the task at two weeks. No big deal.

Experienced developers know where I’m going with this: It took months to get the feature in place, there was lingering bugs, and generating the content was a royal PITA for both the audio team and the animators. Plus, the lip-syncing was costing them in performance.

Worst of all, it wasn’t really needed. Remember this was a third-person shooter, so the avatar had his back to the camera nearly all the time, and other characters were too small on screen to make out such facial features. In fact, the only way QA could effective test lip-syncing was to activate the debug camera and zoom in close to a talking game character.

Talk about a nightmare. The feature was eventually cut just weeks before ship – much to the dismay of the people who did the work and were now fighting for just a little more time to finish the job.

And compare this experience to a once unknown developer who knew how to say “Do Not” to some cool ideas while creating what would become the best superhero game of all time.

{ 0 comments }

Disney Epic Mickey at E3 – What a Show!

by Seanba on June 30, 2010

I’ve been to E3 before for the games I’ve worked on and have reached the same conclusion as the vast majority of game developers attendees: Going to E3 sucks.

But what I experienced two weeks ago has changed me forever. As it turns out I struck an amazing amount of luck when I was asked to go to E3 this year to help showcase Disney Epic Mickey with Warren Spector and other Junction Point / Disney Interactive peers.

Junction Point E3 Banner

In previous E3 experiences there would generally be something there to get a little jazzed about (like the odd nomination or spurts of increased booth activity) -  but in my opinion it wasn’t worth the pain of going unless you’re really into that kind of thing (and most programmers aren’t into being on their feet all day and yelling over the EA booth next door).

This year I went into E3 with Disney Epic Mickey expecting something a little more positive than before, like more buzz for our title and perhaps even a couple of “Best Wii Game” nominations from the larger outlets – but I wouldn’t allow myself to believe much more was feasible – especially once Nintendo announced their upcoming Zelda, Kirby, Kid Icarus (finally!) and Donkey Kong Country titles.

And then the show floor opened – and within the hour I knew we were on to something extra special. The enthusiasm for our game was simply astounding!

And check out the honors and awards!

Disney Epic Mickey kiosk with nominations

Plus the top-dog, big-enchilada, holy grail of Best of E3 nods – the Game Critics Awards – were announced today and Disney Epic Mickey bagged four nominations:

  • Best of Show
  • Best Original Game
  • Best Console Game
  • Best Action/Adventure Game

Obviously a win in any category would be cool, but really, Disney Epic Mickey’s performance at E3 has blown away my wildest expectations to such a degree that I’ll be more than satisfied with what we’ve got now.

But don’t tell Warren I said that. ;)

(Speaking of which, Warren Spector has been covering his E3 experience on his much more popular blog. Start here.)

What this means to me

Of course, doing well at E3 – even exceptionally well – is a far cry from actually shipping top quality software, and any experienced game developer knows the challenge that is before us in these final months for a holiday release date. I may be drunk on E3 right now but I’m very much aware of that fact.

And it’s kind of funny how scary this is in a way. If we were under the radar no one would think much if we didn’t succeed in delivering a true triple-A game to retail. It’s a tough business and most will fail. No big deal. It happens to the best of us.

But now we’re in everyone’s face, so to speak, and it’s time to deliver. It’s possible that I’ll never get the opportunity to work on a game of such potential again -  so I’m going all in.

Disney Epic Mickey E3 Team

But man, am I ever grateful I got to experience the rush and excitement firsthand on the show floor. It will provide exactly the kind of motivation that will help me blast through the coming long hours and headaches that are part and parcel in the march to ship. If only I could bottle that up and share it with the hard-working folks that couldn’t attend.

And to think: I didn’t even want to go to E3! Sometimes I swear the universe is conspiring for me.

{ 2 comments }

I was a kid when video games were first being introduced to the world at large, and I remember being 9 years old or so – completely obsessed with these things – and looking through the Peterborough / Lindsay Yellow Pages looking for anything related to video games and finding nothing. At the time I didn’t know anyone who owned or played these games so I guess it was important for me to find traces of my favorite pastime embedded in some part of everyday life.

I always think about that disappointing exercise whenever I see evidence of how ubiquitous video games have become – and I couldn’t help but laugh when I saw 1UP’s posting on Korean Air (of course, it had to be the Koreans) branding their airliners with Starcraft II artwork.

 Starcraft 2 Airliner Artwork

I just love it when the little kid Sean from decades ago is vindicated like this. Oh, and when’s the last time anyone has used the Yellow Pages? Ha!

{ 0 comments }

Geeky Cool Father’s Day Present

by Seanba on June 20, 2010

Today I was treated to my usual Sunday morning pancakes on top of my Father’s Day present. Pretty cool, no?

Optimus Prime vs Mario Dinner Plate

There’s just so much awesomeness in this:

  • My four-year-old drew Optimus Prime on the left (with very little help from my wife, I’m told).
  • Josie also scribbled “Optimus Daddy” on the bottom. Too cute.
  • Ella, our seven-year-old, drew Mario by hand alone. What detail!
  • Ella added one of the stars from Super Mario Galaxy – our favorite Daddy-Daughter video gaming experience of all time.
  • “We think to ourselves, Supper Mario Daddy” is a play on Brentalfloss’ Super Mario World song, which in itself is a play on What a Wonderful World by Louis Armstrong. Yes, my kids are that meta.
  • Ella even replaced the word “Super” with “Supper” on purpose. Awesome!

They obviously put a lot of thought, time, and love into making me this. What incredible girls I have. Not to brag, but man do I ever have it made – it should be illegal to live a life so filled with joy.

Happy Father’s Day indeed!

{ 1 comment }