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

Future Possibilities in the world of Gratuitousness

Some ideas I’m thinking about:

1) Carriers. Basically ships would have a carrier module that would let them repair fighters. the fighters would get a new order to return to base after X damage, and after Y time docked underneath the parent cruiser, the fighter could launch totally repaired. Probably an expensive or heavy module. This needs new orders, module and of course lots of balancing.

2) Scenario-Limits. A mission can be defined where there are more complex restrictions on the fleet other than pilots and cost. A crew limit, or a limit on the number of missile modules or plasma turrets. Maybe a mission where there can only be one third of the budget spent on cruisers, etc…

3) Drones. A module launches not dumb missiles, but active drones that hunt down and shoot enemy fighters, or clamp onto enemy armor and drill through it slowly over time. They can be shot down by point defence weapons.

4) Increased area of effect rule. Missiles in-flight can be vaporised by the blast waves from exploding ships

5) Anti-Missile Missiles. Another form of anti-missile defence.

6) Shielded Missiles. (take multiple PD hits)

7) Gravity Bombs Ultra slow missiles which drift transparently through enemy shields.

8) Multi-source beam weapons (several beams converge on one point, allowing multiple hardpoints to join forces to fire a single more deadly beam).

9) Decoy transmitters. Allows a fighter to impersonate a cruiser or frigate for short periods to draw enemy fire.

I doubt any of this will make it into the games release. I suspect a lot of it will end up in the game eventually, either through expansion packs, modding or just extra free content. Thoughts?

Possible unlock changes

I’ve been considering a few changes to the way stuff is unlocked in GSB. Currently, winning a game with a small fleet earns you honor (based on the margin between your fleet cost and the budget) and you can spend that honor unlocking new ship modules.
In addition to that, you start the game with just one unlocked race (The federation), and you unlock an extra race when you beat every mission on normal, then another at hard, and another at expert.

There are many problems and potential solutions

Firstly, you have to play every single mission before you get to choose a new race, and I suspect people may be sick of the federation as a playable race by then.

Secondly, the survival missions don’t count towards this, which is hard to explain.

Thirdly, some really l33t players earn tons of honor easily, and have nothing to spend it on.

So I’ve been thinking about this a lot, and reading peoples views on it, and I’m still slightly on the fence about how to improve it. My gut instinct is that I should roll a whole bunch of other stuff into the current honor-unlock system. Right now, missions get unlocked by beating the previous mission, and when you unlock a race, you get all it’s ship hulls at once. I could easily make all this unlockable too, and could scale the current unlock prices to compensate for it.

That still gives me the eternal problem that some real hardcore players can unlock it easily, and there is a danger that casual players are stuck unable to unlock parts of the game that they have, after all, paid for.

Ideally, the game would find some cunning way to scale honor so that this doesn’t happen, effectively giving away some bonus honor to any players that get really stuck. OR, I could add some totally superflous crap that can be unlocked with excess honor by the hardcore (maybe slightly different ship hulls, with no gameplay implications, or something else visual, maybe an icon for their profile name on submitted challenges?)

Anyway, it’s not an easy decision.

Challenge Browser

I’ve decided to improve the challenge browser for the game before I release it. It looks a bit crap right now, and I’m currently thumbing through a bunch of server browser screenshots from other games to get inspiration.
So far my fave is this one: (overgrowth)
I wish I had a nice html style rendering UI that made this easy. Doing a whole game this size on your own is insane.

Fixing a few obscure, but nasty bugs

I’ve found a few big bugs that people don’t seem to have spotted, or at least, not in the numbers you would assume would have spotted them.
First is a bug relating to how bonuses are applied to modules. In code terms it was a fairly standard ‘doh’ mistake where you override virtual functions but forget to call the base function in the derived one. (obviously sometimes that’s legit, but here it was a mistake).
The upshot of this is that for some modules which had certain bonuses, such as shield modules, the base hull bonus got skipped. It was calculated ok on the design screen, but not in the battle. As a result, there are a lot of ships that are partially missing their hull bonuses, until now…

The second bug is less of a bug and more of an unintended consequence. Because of the way target priorities were calculated, they were biased in favour of targets that were just outside minimum range. because optimum range is nearer to maximum than minimum for most weapons, this meant a few sub-optimum targeting decisions were being made.

The good news is I’ve rewritten that entire section of code that makes target selection decisions. The bad news is I need to do some serious testing to ensure this is an improvement, and doesn’t break everything. I suspect that for the first time, I may need a few volunteers from the beta players to install a ‘trial 1.16 beta patch to see if it’s safe to roll out to everyone else. If I do that on Monday, I can aim to release the full 1.16 update a few days later, and then we are getting very close to starting work on a demo and an actual releasable final game.
Yay!

Determinism

“Determinism is the view that every event, including human cognition, behavior, decision, and action, is causally determined by an unbroken chain of prior occurrences.”

That’s what wikipedia has to say. In terms of gsb determinism would mean that if you field the same fleet twice, against the same enemy, then the result will be exactly the same.

This isn’t true.

I wish it was, as do a few GSB players who are doing great things with tournaments. In fact, if I knew that I could make the game work as well as it does now, but be deterministic with a weeks work, I’d do it. Sadly, the reasons why it is not deterministic go deeper than that. I spent most of today experimenting with making it work, and I never got past 6000 milliseconds of a big battle before losing synch. (Yes I know all about random seeds and how to do it. If you saw how much code is the game, you’d see the scale of the problem :()

Fundamentally, the game is not frame-rate independent in terms of simulation calculations. (although it is scaled so as to provide constant playback rates). The BIG BIG plus side of this is that games visuals are pretty darn smooth and look great, with no jitters or jumps like you sometimes see in laggy multiplayer games. The downside is it’s not deterministic.

This limits the game a bit in terms of being really competitive as any sort of online serious league style thing. However, thats not altogether a problem. The game is called GRATUITOUS space battles, and isn’t designed to be taking uber seriously. I’d love to code an ultra-complex, ultra-geeky dterministic space combat game where you even selected the rivets to use on the laser gun stabiliser panels, but the trouble is it would likely see 500 copies, and that means I’d be broke :(

Sooo…. The current limitations of GSB 1 which will always be there are these:

2D. Not 3D

No direct ship control

Not deterministic.

Everything else can be improved and expanded and bettered and tweaked. What would you like to see?

<offtopic rant>

I’m watching (as-in, it’s on in the background) masterchef. With the way these people talk, and the ominous sci-fi thriller music as they talk about cooking prawns, they take themselves waaaayyyy too seriously. I know my place, I make video games to entertain people, and play with spaceships for a living. You can do that, and take it very seriously and aim to be the best you can, without building up some big fucking hero-complex. These people are good at frying, they arent discovering DNA or serving as fucking fighter pilots. Bah! </offtopic rant>