Tuesday, July 28, 2009

Interview: Stephen Carlyle-Smith aka Me_Programmer

In the second Free Gamer interview - over 2 years since the first with grumbel - serial Free game developer Steven Carlyle-Smith (UK) aka Me_Programmer Games aka Steve16384 was kind enough to take the time to reply in detail to my questions about his development activities.

Steve has created a plethora of Free games over the years. Whilst they have struggled to gain mindshare - usually he moves on at speed to new projects before completing others - there's a lot of content to peruse and I thought his experiences were more than worth tapping for advise to budding game developers. He has created all his games with little or no community help other than occasionally reusing resources from other projects. He also maintains blog on his development efforts which is often witty.

You can ask questions / get support / give feedback for Steve's games in the new FreeGameDev forum for Me_Programmer Games. There you can also find an exhaustive list of his playable game projects, including several not mentioned here.

He is also responsible for coding/creating the site Online Game Planner - which he uses to host his projects - which is a fairly new portal for organizing multiplayer gaming sessions.

The game that originally got my attention was Laser Tactics - previously called Nuclear Graveyard, which he talks about later in the interview. So, without further ado...

The Interview

Q. Please introduce yourself...

I'm a 30-something professional applications programmer, amateur games programmer, married with one child and another on the way.

Q. What do you do for a living?

I work for a small company writing software for businesses. Everything from web applications, social networking sites, VB apps, web filters, stock control software, networking tools, and the odd game. Whatever people will pay for!

Q. What notable games have you created?

I don't think any qualify as notable -- editor is impressed with the humility, some of the games are good they just haven't hit the right public spot yet! -- but these are probably my best:-

Xenogeddon (home)

This is a simple FPS based on Space Hulk, but I'm very pleased at how the graphics turned out. I didn't do any of the models, but overall it captures the Space Hulk imagary quite well. It is small and simple however, and needs a lot more scenery and features adding to keep the player's interest.

Laser Tactics (home)

The less said about the graphics the better, but this is my attempt at making a pseudo-realtime verson of Laser Squad and have tried to recreate the original graphics in 3D. It uses what I think is a unique system where both side's "action points" are replenished in real time which can make for interesting gameplay. I'm also particularly pleased with the AI as well. The overall presentation could do with a damn good polishing though.

Island Commander (home)

This is my most recent game and I'm still working on it, but it's fully playable and I enjoy playing it. I've always liked strategy games, and this one is a simple RTS/RTT where the player builds units and then watches them do battle. I'm interested in games where you only have indirect control. I've got loads of ideas yet to implement, like different races, more unit types, and maybe a better name!

Q. Of your game projects, which is your favourite?

At the moment it's Island Commander, because it's my newest and I still enjoy playing it. I'm probably most proud of Xenogeddon though, in that if someone asked me to show them one of my games, that would be the one.

Q. Excluding your own, what is your favourite open source game?

I don't spend that much time playing games, but the one I used to play the most is Tremulous, probably because it's multi-player with a big player-base. I'm crap at it though.

Q. What games do you play at the moment, FLOSS or commercial?

Definitely FLOSS, as I haven't bought a game since X-Com for the Amiga! My home PC isn't up to playing modern games and I don't have time anyway. I'd much rather be programming games than playing them. When I do play games, it's usually simple but addictive Flash-type games. And if they're very simple, I then have a go at writing my own version.

Q. How did you get into games programming?

Way back in 1984, my dad bought a ZX Spectrum, and the book "First Steps with your Spectrum" to go with it. Ever since then I've been programming, for the Spectrum, Amiga and then PC. I like to think my games have improved since then.

Q. What are your best games programming tips?

Re-use your own code as often as possible. Have something playable as quickly as possible. And use descriptive var/function names. I don't agree with people who dislike verbose var/function names; if you're sharing code with others (or coming back to your own project after a 6 month gap) you need as much description as possible. With tools like code-completion, long names aren't a problem.

Q. What draws you to open source, what is your Free software philosophy?

I particularly like the way that we all provide each other with programming help and actual source code, which enables everyone to learn and produce software much faster than they would be able to otherwise. It's a shame that in the corporate world, when somebody learns something, it's top secret and usually patented. Just think how advanced technology (not just software) might be if everyone shared their knowledge and skills with everyone else.

Q. What are the things to avoid, the things that make FLOSS game
development fail?

The biggest problem is not getting something playable as quickly as possible. Whether its a one-man project or bigger, people soon get bored of discussing and planning everything to death. You need to show yourself and everyone that you are actually doing something practical that is actually possible and progress is being made. There are a million "Status: 1-Planning" projects on Sourceforge as a testament to this.

Q. If you could take one abandoned FLOSS game and restore it's
development (excluding your own titles!) which would it be?

I don't really know any off the top of my head. I sometimes browse Sourceforge to see if there's anything I can help with, but I usually end up with ideas and inspiration to write a game of my own! Unfortunately, trying to understand someone else's source code and designs (especially the larger ones) is often harder than just writing my own project.

Q. What are your future game development plans and which of your games
do you hope to see come to fruition in the near future?

My dream is to have a game (and more importantly, a community) as popular as, say, Starcraft. This is my ultimate (and obviously unattainable) ambition, but if one of my games can get a thousandth of the popularity of that, then I'll be more than pleased!

Steve's Other Game Projects

You can ask questions / get support / give feedback for Steve's games in the new FreeGameDev forum for Me_Programmer Games. There you can also find an exhaustive list of his playable game projects, including several not mentioned here.

Danger Man


Danger Man (home)

This is my contribution to the saturated market of platformers. It's reasonably complete, but requires more levels designing and it's own set of graphics. It has a few good features though, like different weapons.

Metal Glove Solid (home)

This is a playable but limited version of Gauntlet. The advantage of having this in my repotoire is that if I want to make any other top-down 2D game, I can just start with this. I do that with a lot of my games, meaning I can usually knock something up very quickly. I just need to improve the graphics and create more levels.

HoloRacer (home)

I'm quite pleased with this one, and I sometimes go back and have a quick game. I just wanted to write the fastest racer that I could, and it was my first game using OpenGL. It's deliberately quite simple (in gameplay and graphics) but fun in short bursts. I seem to remember that when I uploaded it to Sourceforge, it got about 200 downloads on the first day. They'v trailed off a bit since then!

Realtime Chaos (home)

This is a remake of "Chaos - The Battle of Wizards" for the Spectrum, where wizards do battle with various spells, but converted into an RTS. I've written countless version of Chaos over the years, but this is by far the least-worst. The only drawback is that it has no AI, so you need at least one other player and a LAN to play a game.

Simwar (home)

This is an RTS in the style of C&C. It's quite simple, and also multi-player/LAN only, but is designed to be quick and fun to play. It has some features like proper line-of-sight (unlike just fog-of-war), so you can only see the enemy if you have a clear view. Prizes for guessing which game the soldier sprites came from!

GTA-MUD (home)

As the name says, this is a MUD. I liked the contemporary setting of GTA, and thought a MUD in the same setting would be a good idea, where you could do anything in a modern-day realistic setting rather than either medeival fantasy or futuristic. It's quite small, but gets about 5 logins a day. It's also quite "adult" in some sections, just like GTA.

Online Game Planner (home)

This is a website I produced. I think this was inspired by me trying to get more players on at the same time on GTA-MUD. The premise is simple - you select an online games that you play, and then organise a session by date and time. Everyone else who has also marked that game as one they play then gets informed of the date and time, so everyone plays the game at the same time. It also hosta a few of my simple applet games. I think I should rename it "MultiplayerGamePlanner".

The Last Word

I'd really like to see Steve polish some of his older games a bit more and be more astute with advertising them. Some of them are very hard to come by unless you go through his blog, so posting announcements/showcase/help-wanted threads in the appropriate forums (starting with the FreeGameDev forums) should increase their visibility.

Xenogeddon looks full of potential and it'd be good to see what people make of it. I don't have functional 3D so couldn't try it myself yet.

Metal Glove Solid could become a popular game if he worked on performance (it was unplayably slow on my graphically-unaccelerated 2ghz laptop) as well as used the better graphics available in the Gauntlet Resurrection thread from the FreeGameDev ideas forum.

There's a lot of projects that he didn't mention because he feels they're not complete enough, e.g. this Shadowfire remake. It makes me curious to know if there's a complete list of Steve's projects anywhere! See update!

Sometimes the life of a Free game developer can feel a bit lonely because of the lack of exposure. Hopefully some of you will go away and try his games and, even if you don't end up playing them for long, at least give some decent feedback so he can work to make them better and increase player retention.

Update: Steve has posted a complete list in the forum. Two games he has made that he didn't mention in the interview but are worthwhile projects are Passenger and Last Remaining. I think he needs a bit of modelling help to really realise the potential of Last Remaining.