'( about )


Posted on 13 Mar 2014

Hi, I’m Charlie. I’m a 14 year old developer, and I just released my first game, Redshift. Redshift is an arcade-y neon shoot ‘em up. In this article I’ll be covering the tools I used to create it.


The game uses the Love2D game engine with scripting in Lua. Love2D is great for prototyping. However, it doesn’t encourage good organization which ended up being an issue halfway through development. Lua doesn’t have true object oriented programming, so I ended up repeating myself a lot. The code structure was a horrendous mess of giant tables and lots of for loops. I ended up refactoring the code and used a Lua class library, which helped out with code structure a lot. I still had to use tables to store instances of the classes (simply because of the design of the engine), but I at least had inheritance and mixins, and the resulting code was much cleaner.


Vim is - in my opinion - the best text editor out there. It’s fast, powerful and has a million different plugins. I’ve put my .vimrc file on GitHub, but I’ll give a quick rundown of the plugins I use.

Other than the syntax highlighting, I didn’t use anything Lua specific.


I use git for all my projects, and host my files on GitHub (for public projects) or BitBucket (for private projects). There are a few limits on how many users can access the repository if you use a private BitBucket repository, but since I was the only one working on Redshift, it didn’t really matter.

The Good, the Bad and the Ugly.

Since this was my first longterm game project, I didn’t really know of a good plan of attack to follow. I just developed the game by the seat of my pants.

Things that went right

Things that went not so right

Things that just kind of happened


If you’re an indie, who is trying to release a game, or you’re just interested in making a game, here are a few suggestions based on my experience with Redshift.

Welp, that’s all. I hope this will help a beginner to start out and will warn of some of the big pitfalls I fell in. As it’s my first game, I’ve still got a lot to learn, but I’m still really happy I’ve done it. If you’re interested in buying Redshift, you can use the widget below ;)

Thanks for reading,