Friday, May 25, 2007

Gate jumping

Not much happened in development this week. Some time was spent on the design document. I really don't want to work on the design document, though, so I spent some time also developing. The result is a solid TGB crash. Basically I'm trying to load a new level when the player hits a jump gate (shown below).

Free Image Hosting at

I'm starting to figure out what needs to happen to keep TGB happy, but it's not quite there yet. The good news is that once I figure it out, I will have accomplished another of my major milestones for prototyping.

Saturday, May 19, 2007

Mission Accomplished

This week I made good progress on Watcher. Bombs are now part of the standard weapon framework, which means you have to buy a bomb launcher, then equip the launcher on your ship to drop bombs. Bomb explosions now have a radius that diminishes in power as it gets farther from the center of the explosion. Buildings and decorations on the ground now have hitpoints, so one standard bomb isn't enough to destroy them... the guard tower currently takes 6 direct hits to destroy (a fairly difficult task!) although those kinds of statistics will change lots through the course of development.

The most exciting new feature to me this week is the missions (quests) system. Only one mission is available so far, but I think the system is flexible enough to add new mission types with fairly small effort. The one mission is to take 10 units of wheat cargo from the southwest city to the northwest city. When you accept the mission, you first have to fly to the first city to pick up the cargo (it's automatically loaded onto your ship, if you have space). Then you fly to the destination where the cargo is automatically dropped off and you are automatically paid. The system will allow multiple-stage cargo missions too... you could have to deliver cargo to multiple cities or pick up cargo from multiple cities. Right now I don't know if such a cargo mission would be fun or a good idea, but the point is that I can have such a mission if I want.

This morning I made some in-game menus. Now when you land at a landing pad, a city menu pops up so you can choose what you want to do at that city. When you choose the "missions" option, the missions dialog pops up where you can look at available missions and choose from them. Take a look at the new menus:

Free Image Hosting at

Yeah yeah, I know the game looks like more of a business application right now, but I'm forcing myself not to do any real artwork until more of the basis is put together. The game is getting to be fun... I need to add a few more cities and then the missions will be more exciting. Fun First! Pretty Later!

In other news, I decided earlier this week to learn a new keyboard layout. It's called Colemak, and it was invented just over a year ago. Check the website: and here's an image:

Free Image Hosting at

Several years ago, I learned the Dvorak layout, and I liked it for typing emails and general text, but it was an absolute nightmare for programming and any sort of non-text development. The important shortcut keys just moved around too much, and the symbol locations just didn't make sense for programming. Colemak, in my opinion, fixes quite a few of those problems. It leaves many keys in the same place as Qwerty, but moves the most common English letters to saner places on the keyboard. So far the learning is a little slow, but faster than learning Dvorak. I'm up to probably 20-25 wpm. Unfortunately, I'm a sinner because I didn't type this whole blog post using the layout... I'm just in too much of a hurry. Speaking of... I'm taking off.

Friday, May 11, 2007


A month or so ago I found a nifty eclipse plugin called TorquEDIT. It was fairly basic, but it had some nice things going for it. I noticed that the code was open source, so I took a look. The code looked fairly well-written, and it looked like it would be relatively easy to add some functionality. So I did. Last night along with kruxgames I released another version that has a ton more functionality than before. This is now the editor I use for making scripts. The code completion really helps, and it serves as a form of documentation, since you can see what methods a particular class has, as well as what parameters the functions take. Right now it's mostly tuned for TGB, although it should work with TGE and TGEA quite nicely too. There's only a few little things that are geared to TGB. Check it out at

Free Image Hosting at

This week I decided to install Ubuntu linux. The only purpose for this was to be able to use the music editor RoseGarden. After a few hours of following tutorials and general mucking around, I finally got it up and running. It's not the easiest thing to setup, but it's not too bad by linux standards. RoseGarden is what I will use for the music in Watcher. I probably won't start on the music for several weeks or months, but I had time to get it all setup now, so I did.

Just a few minutes ago I finished splitting all objects into proper collision groups. So now bombs affect everything they should, bullets affect everything they should, etc. The bombs also behave more like bombs... before if the bomb hit anything in its path (before it landed) it would still blow it up. Now the bomb lands, and blows up anything it's touching. Nothing eye-popping this week in Watcher, but TorquEDIT is pretty sweet.

Saturday, May 05, 2007

Weapons Energized

Today I made it possible to purchase weapons at a store, and equip them in the ship equipment screen. There was a lot of under the hood work to be done to make all that possible. Now it will be rather easy to make new weapons, as long as they are the straight-flying projectile type.

Free Image Hosting at
Screenshot showing different weapons

Image Hosted by
Image Hosted by
Plasma gun art (temporary, obviously)

Image Hosted by
Guard tower (not yet functional)

The next major step is getting the guard towers to shoot at you, and being able to bomb them. That really won't take all that long, but I don't very often get big blocks of time to work on this.

Friday, May 04, 2007

A few concept sketches

Here are some very rough, very raw concept drawings for some
airplanes/airships. Just scanned 'em in, adjusted levels slightly,
and uploaded.

"The Seagull"


"Big Ship"

"Big Prop"

My favorite so far is "Big Prop." Hopefully by the end of this I'll
have a couple dozen ships that I like as much as "Big Prop."

Wednesday, May 02, 2007

Watcher announcement

Watcher is the working title of my latest project. It's a 2D top-down action RPG in a steampunk-ish setting. The action part of the RPG is like a top-down free flight shooter (like a scroller, but it scrolls in both directions). If you've ever played Privateer or Elite, part of the game will be modeled after those, except it's 2D, and there's a bunch of stuff I'm adding in besides content. Without further ado, here are some current screenshots:

In flight.

One of the shops.

The ship equip screen.

As you can see, everything is rather rough around the edges and programmer-like. Almost all of the art is TGB-included stuff, so it will be replaced when I get there. The game has had about month's work, where work means about 3 times a week for an hour per time. Some of those times have been maybe 3 hour blocks. Since I currently work full time, I have to get up before my son in the morning (at about 5:30) and work on it until it's time to go to work.

The following is a list of tasks to do, and tasks that have been completed. The todo list is obviously not complete... it's the stuff that I need to work on in the near future. When the list gets down to just a few items, I will add more to it.

weapon system
different weapons
enemy buildings that shoot at you
experience points, level system
overhead map
radar (replace compass, or combine with compass)
Make enemies a little smarter
Missions (bounty hunt, cargo deliver)
make the Elite game fun!
cargo buy/sell gui update
shadows for all flying objects
overhead cloud/mist layer

create ship that flies around and shoots
create scrolling ground
create enemy ships that fly around and shoot

get money for shooting ships

store to buy upgrades (faster shots, faster ship)

bomb radius

create enemy buildings (bombable, explode)

create explosions

City built on grid

home base build factory (buy in store, build, then produces points every few seconds) (tile layer, setGridActive)

two different cities/bases with different prices (static for now)

dynamic enemy spawning (guided random encounters)

hitpoints, repair (costs money at shop)

compass to point to nearest city

enemy ship hitpoints
cargo/inventory system (data-driven would be great!)
keep shop information in a separate file, use product names as key in "dictionary" for items sold and bought (no XML, just classes)
ship equipment window (install modules, keep it simple... 3 bays, plus to install, minus to uninstall)
compass track nearest base

ship upgrade modules: firepower (eventually different guns), shields, turning radius

Now that you understand the game plan just as well as a slug understands quantum physics, I will keep you posted.

Bulwark on hold, new project

Bulwark is now on a mostly permanent hold.  As I progressed in the implementation and design, I realized that all of the art assets would just take too long.  I did make a little more progress from the last time I posted, but not much.  Someday I may go back and work on it, perhaps if I make art assets for another game that I can drop in.

Anyway, in the meantime, I got the Torque 2D engine (TGB) when it was first released and have been dabbling with it.  I've made a few dumb little things, like a laser chess variant, part of a weird mouse cursor game (that seemed cool at first, but I got bored with it), and various little test things.

My latest project is getting a lot more love... it's about a month old now, and it's coming along quite well.  The first working title was Constructor, but now I've decided to re-title it as Watcher.  That's also a working title.  So... you probably want to know what it's about, huh?  Well, the post after this will have all that info.  If it's not there yet, check back in a little bit.