Jumps Background Race Background Turret Background

Blog

One Day's Work

Just to show off the power of LÖVE, here's what I managed to do starting from scratch during a single day of coding by myself:

Day 1

There are enemies already moving across the screen and getting blasted by lasers! Of course, this is nothing like what the final version will look like, but it's cool to know that with modern development tools you can get off to such a fast start.

And by the way, all of those sprites - including the planet - were made by me in Inkscape, a great free SVG drawing tool.

See All Comments (0)

Prototyping with Love

When we first started on our new game idea this past fall, we knew that a lot of things would be changing rapidly. Rather than dive straight into programming for the Xbox, we wanted to prototype the basic ideas on a platform that would let us make tweaks without having to recompile.

At first, the obvious choice seemed to be Python and PyGame. I was already very familiar with both, and they probably would have suited us fine. But then while looking around for a tool like this, I found LÖVE.

According to the website, "LÖVE is an unquestionably awesome 2D game engine, which allows rapid game development and prototyping in Lua." And that quote is pretty much right. LÖVE takes care of all the boilerplate, code-repetition, and nastiness to let you get down to making awesome games. We chose to go with it immediately, as it was clear that with LÖVE we'd be able to worry about algorithms and balance, rather than code.

The biggest hurdle that we ran into was largely the fault of Lua, and not LÖVE. By default, Lua is a meticulously pure scripting language, and therefore has no native support for object-oriented programming. This is highly annoying. After some searching though, we found a workaround involving tricking Lua's tables (like a Python dictionary) into behaving like classes.

Beyond that, the only issue LÖVE has is that it is just a prototyping tool. You'll probably have to port your code to something else in order to actually distribute it. But for projects that are purely academic in nature, or where you want to figure things out in a quick, interpreted language before moving over to the behemoth, it's an excellent choice.

See All Comments (0)

Time Brings Change and Change Takes Time

Easily the most common question we've had is why we made the decision to switch from Android to the Xbox. It's not totally cut-and-dry, and it doesn't mean that there's no Android for us in the future. And it wasn't the only big change. I'll try to walk you through what happened.

Genre

First, we came to the realization that an RPG was just too big of a commitment for a small team. In order to have a successful, memorable RPG we figured we would need a lot of art, sound, and writing. When we started mapping out the requirements for the game, we realized that the shear amount of content was beyond us at this point. So at least in regards to the genre, we needed to downscale.

That led us to the idea of doing a game where the genre wasn't quite as demanding for content creation. Where we could re-use a lot of the same assets without feeling bad about it, and where the story would be simple enough so that we wouldn't have to do extra work to accommodate it. We also wanted to make sure we could still do it in 2D. All of those considerations pointed us straight at making a tower defense game.

Art

We made some preliminary art ourselves, but we knew that we wanted it to have a more professional, stylized look to it. So we decided to outsource it, and started working on finding an artist. This also made us realize that if we were going to all this trouble about the art, we might as well make the game in full 1080p first, and then downscale to a final display resolution.

Platform

Re-examining our requirements, we came up with a list for an ideal target platform that looked something like this:

  • supports HD
  • easily accessible by a lot of people
  • something we ourselves would be willing (and able) to play on - that is, devices we already own
  • easy to spend money on

Both the Xbox 360 and Android fit the last two, but the Xbox easily had the upper hand on the first two: a much higher maximum resolution (1080p vs. HVGA) and a much larger install base (30 million vs. 3 million).

In the end, we view this more as a vote for the Xbox than a vote against Android. With the huge added bonus we haven't mentioned before being that when you develop a game for the Xbox, porting it to Windows (a platform with an even larger install base) is supposed to be super easy.

See All Comments (0)

Half a Score and Three Months Ago

We made our first public declaration about making a game thirteen months ago. Now, we're in the middle of doing just that, but a lot of things have changed. Here's the comprehensive list:

  • John and I are no longer thousands of miles and two timezones away: it's a lot more like 650 miles and a single timezone.
  • The platform has changed: we've moved from Android to the Xbox Live Arcade.
  • We've got this totally new website, on a new host, with a new domain.
  • The whole concept (and genre) for the game itself has changed. We'll have a lot more on that later.
  • We have a team of artists working with us!

Here's to round two of getting a real game under our belts! Be sure to check back often (or just subscribe to the RSS feed) as we'll have a lot more to say as things get built.

See All Comments (0)

That Loud Crack Was the Starting Gun

The idea to create a video game from scratch is not a novel one, by any means. I've begun that quest several times in the past myself, but they were ill-defined personal projects only. Certainly nothing with the potential for distribution. Now, with the advent of things like the Xbox Live Arcade and the iPhone App Store there's a way to get independent games straight from development and into the hands of players. And with the success of games like Braid, there might even be money exchanged for doing so.

One night in January, John and I decided that we simply had to make a game together. Thousands of miles and two timezones weren't going to stop us. We decided to create something for the newest of those aforementioned platforms: Android, with the ultimate goal to publish the game in the Android Market. This blog is where we'll be describing our experiences developing the game. There'll be laughter, and crying, and code - lots of code. Hopefully we'll be able to point out some pitfalls about programming and design in general, and the Android platform in particular so that others don't get stuck in the same places.

This is the blog. Red Sands is the game. And the race has just begun.

See All Comments (0)

Newer Posts >

Sections

Stay Connected