Game Design, Programming and running a one-man games business…

BBC interview

I had two people from the Spanish BBC website at my house this morning to interview me for a thing on digital piracy. It’s pretty cool to be interviewed at all, but it’s unfortunate that it’s about piracy. It all comes from the ‘talking with pirates’ blog event from last year. I don’t really want to be seen as ‘the piracy guy’. I’d much rather talk about game design, or other issues within the industry. They filmed an interview with me, and took some shaky cam footage of GSB. If it goes on-line I’ll post a link here. Maybe I’ll be dubbed in Spanish?

I saw the new star trek film 2 nights ago, and it was weird seeing tons of spaceship debris and escape pods. it’s like they have been playing my game :D Yet more inspiration to make the GSB visuals look good…

Fixing minor graphical things

It’s the weekend, so rather than working on gamey stuff I’m making the battles look better :D. I’ve been improving the way the big ships explode so the drifting hulks fade in better, and the subsidiary explosions now blast in various directions. Turrets now smoothly track their targets, and there are various other small tweaks like highlight flares when bullet weapons fire.
My last niggly annoyance of the day is bullets, by which I mean laser pulses.
I draw all the bullets in one go, to make it extra fast, which is fine, but to do this I have to draw them AFTER I’ve drawn all the ships.
The thing is, the bullets are quite big, and when they ’emerge’ from a gun turret, they obscure it for the first frame. Ideally, I’d draw the bullet above the ship but below the turret so it would emerge naturally.
I think I’ll code a real horrid hack, which is to mark bullets as ‘n00bs’ for the first few pixels of their existence, and draw the n00bs separate from the main bullets.
That way I keep generally drawing them fast, but I also don’t get any anomalies when you hit pause and catch that 1 in sixty-off chance of seeing the frame where it looks wrong…

This is why game code looks like spaghetti. All those hacks are there for a reason I tell you!

Reflecting beam lasers

My recent design thoughts and today’s tweaks make it clear I needed a way to see visually that lasers were just bouncing off enemy shields and achieving nothing, so I added a sort of ‘bounce’ effect to the lasers (see video below). I didn’t bother doing any fancy maths for the collision reflection, it just skews off at a slightly random angle. Does this look ok? (also there is some quite cool shooting of rockets by a point defence laser going on in the second clip).

Spaceship speed

I’m having balancing issues with some of the existing game mechanics. One of the things that I use to differentiate weapons is their tracking speed. Some smaller weapons track fast but do less damage, and vice versa. Basically the tracking speed is compared to the targets current speed, and this gives some multiplier for the ‘hit chance’.  Obviously big cruisers are slower than small fighters.

So far so lovely.

The problem is that in general, you want your ships to position themselves at a certain optimum range, and pound their enemies from a distance. In the case of the big cruisers, that means move into range, sit there and go zap until you or the enemy dies. The problem is, the minute you sit still, tracking speed becomes irrelevant. This means that when fighting against cruisers, tracking speed is basically no big deal, and the weapon with the highest damage-per-second, range and penetration of armor/shields wins.

The solutions are many and varied:

1) Have an optional ship ai-behavior of ‘keep moving’ where your ship basically spins in circles at a certain range (clunky and difficult to get a reasonable turning circle)

2) Always assume the ship is at max speed for hit purposes (might look silly)

3) Introduce a new mechanic to compensate (maybe ECM resistance?) and ignore tracking speed for weapons aimed at the bigger ships.

4) Just make greater use of balancing the existing mechanics to still make the choices interesting

I’m currently drawn mainly to 3) and 4). Any thoughts?

Lots of things

I’ve been busy. The first thing to mention is that there is now a web forum for GSB here:

http://positech.co.uk/forums/phpBB3/viewforum.php?f=19

That should allow people to let their opinions and suggestions and questions run wild, and keep things a bit organised. Feel free to post whatever thoughts you have there.

Today I’ve been doing some debug GUI which is handy for finding bugs, I already found and fixed a bug where ships didn’t reselect optimum targets correctly. I also redid the tractor beam graphic so it didn’t have one aliased edge and one straight one (needed to use two overlapping textures to get it right). Plus recently I totally re-jigged the sound system for the game so the positional sounds now pan correctly as you move the camera. Last but not least, I’m adding a system where you can have race-specific weapons. Initially you will have one race to play and need to unlock others, so I’m hoping this makes for better game play because:

a() you will initially be zapped by weapons you don’t recognise or know the exact statistics of and

b) when playing as one race, you will not have access to all weapons, so playing a different race will mean adjusting your tactics accordingly.

There is so much to do, but the game is coming along nicely.