Category Archives: Video Games

Back to the game!

Now that robotics season is completely over, and life has returned somewhat to normal. Back in December, I was working on my very first video game to release, and I said I would return to it when the robotics season was over. And here I am, after our last competition for the year.

Since I’ve turned my thoughts back to the game, I’ve decided to also do the artwork for it. This isn’t too brash of a decision for me for a few reasons:

  1. I’ve got passable experience working in Photoship/GIMP.
  2. I’ve got some recent experience in Illustrator/InkScape.
  3. The graphics for this game should be clean, simple, and uncomplicated.

So, I feel I’ve got a fighting chance here. If there were any more complications in the artwork, I would definitely be seeking help in this area. As it is, I’ll be having a couple of artists review and critique my work before I get too far anyway.

Behold!  My mediocre artistic drawing skills!

flying saucer - concept art for lander game
flying saucer – concept art for lander game
alien family - concept art for lander game
alien family – concept art for lander game


Well, I guess that’s all for now.  I’ll post more updates as we go!




Mobile Game Concept

So, ever since I vowed to start my own mobile game last summer, I’ve been working toward that goal whenever I can. Here’s my progress so far.

  1. Compare game frameworks

I started out looking at several frameworks, and then trying out a couple. I looked at Corona, Marmalade, Unity, Unreal Engine, Cocos2D, Gideros, and a few others.

  1. Try out frameworks

Here I chose Marmalade first. This is the framework that was used to make Plants vs. Zombies, Cut the Rope, Draw Something, and others. So I figured it was a good place to start. Marmalade is a cross platform game engine, and I opted to use Marmalade Quick, which is a 2D-only Lua-based SDK.

Problems with Marmalade: Support wasn’t very good and there were several places where the documentation didn’t match the actual code. Also, quite a bit of the game development process was still left to the developer to handle in Lua.

Second, I chose Unity. I didn’t choose it before, because the 2D support is still new. However, there is one single largest benefit to Unity, and that’s the Editor. The Unity Editor is so amazing it becomes the central point of driving the development process of the game, which puts your code in specific buckets called scripts. You also have your choice of C# or JavaScript for your code integration. I’m familiar with both, but enjoy the structure of C#, so I started using that.

  1. Select the idea for the Game to do first.

Although I had several ideas for games that I’ve collected for future use, I’ve settled on one that will be fairly easy to implement.  It’s an addition to the “lander” genre, if you know what that is, but my goal is to make it a game that anyone aged 8+ can play (because that’s the age of my youngest daughter.)

  1. Start development on the game.

This started out with working out the game mechanics and going from there.

So, where am I now?  Well, this video was from last October and shows some of the functionality I’ve implemented so far.

  1. What’s next?

Well, I wish I could say I’m finishing this game very soon, but I’ve got some higher priorities coming up for the next few months as I’m now the coach for the local High School’s FIRST Robotics Team.  But more on that in the next post.  I promise it won’t be so long until the next one!




A Trip Down a Programmer’s Memory Lane.

[This is a post I wrote on my old blog July 31st, but I felt it was relevant here as I’m still working on this project–stay tuned for updates!]

The other day, I was listening to the Ruby Rogues Podcast: Episode 154, and they start talking about something that has absolutely nothing to do with the normal Ruby topics. They were talking about game development. Within the first few minutes, James Edward Gray says:

It seems to me that when I talk to lots of programmers, and they give me their origin story, it somehow includes “Oh yeah, I got into programming because I wanted to make games.” I swear a strangely high percentage of people say this. And then I talk to them and say “Awesome! What have you made?” And they’re like “Oh, nothing. A little something, but yeah, nothing.” And I think this is kind of tragically sad.

Ouch. That hit way too close to home for me. I originally really got into programming when I was middle school aged, playing in qbasic (or Quick Basic 4.5, that I bought from Babbage’s). Then later in high school I taught myself C++. The whole time, I was making games–or trying to. In reality, I would do clever things with graphics libraries, try to tie them together into a game, then either hit the ceiling of my technical ability or just lose interest and move on to something else. In almost every case, I had a vision that was much larger than I was willing or able to follow through upon. In college, I modified a CircleMUD codebase in an effort to make my own MUD, but again, it eventually fell by the wayside even though I had several really cool things that I did with that code. At some point after, I converted to programming for a living and never really attempted to write another game from that point on.

Upon this reflection, I think I’ve learned two lessons:

  1. I shouldn’t berate myself for these unfinished projects. Although I never completed them, I learned so much. And what I learned eventually translated into a fairly good living with a job I enjoy.

  2. I should choose less ambitious side-projects, something more achievable, where I can build something that I can actually show to people in its completed form.

  3. I should write and complete a game. It was always one of my dreams to complete a game. It’s definitely within my abilities. And I still kind of feel guilty that I never achieved this milestone in my life.

So, here it is. I will set forth an immediate side-project goal of creating and completing a game. Right now, it seems like the best place to start is with a mobile game. These games can be simpler and there are several frameworks available to speed development of such games. In fact, I’ve already begun reviewing several of these frameworks. I’ll post a summary of my findings on each of these frameworks on the next post. In the meantime, send me a tweet with your thoughts on this subject! Did James Edward Gray’s statement resonate with you as well? Have you done this before, or want to? Would you like to point and laugh at my first attempt? Talk to you soon.