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

Optimising the mayhem

The last few days have been spent on optimising the space battle code. Basically I mad a dcision that the battles were not vaguely big enough, and needed to support a bunch more ships, especially now given that you can zoom in and out. That meant there would probably be some bottlenecks as I scaled up the number of ships, and it’s been a few days of identifying them and sorting them out.

Everything now runs way faster than it used to. I had a lot of really inefficient texture-setting code that was setting textures for objects and trying to render them offscreen. Now I’ve bunched lots of the particle stuff into a single texture atlas and optimised away all the offscreen stuff, it works much better.

What I haven’t got done yet is any LOD stuff, which is ironic seeing as though my first AAA industry job was on the ‘infinite polygon engine’ of lore. I really need to get some higher detail particle effects for close-ups, and I think I might massively ramp up the number of damage textures and similar stuff for when you zoom in. As always, the problem will be fading it all in nicely so you don’t get ‘popup’ whilst retaining the performance benefit when you are zoomed out.

Plus I’ve started the very early work on the screen where you deploy your ships pre-battle.

The mechanics of huge space battles

Lots of science fiction has huge space battles in. In many ways, all that monkeying around with plot, characters and storyline is just foreplay for big fleets of impossibly large space battleships to blast away at each other and go bang.

I applaud this initiative.

And I understand, as someone making entertainment, that so much in the classic sci-fi space battle is bullshit. There are no laser sounds in space. No ship, regardless of damage ever loses its artificial gravity etc etc. This doesn’t bother me, because I’m making a not-too-serious fun battle game, so my lasers will go zap and fizz just like the rest of them.

What I’m more interested, because of the strategy nature of my game, is the actual mechanics of the battles. Take (for example) the big space battle at the start of Revenge of the Sith:

There seem to be some nice huge battleships here blasting the hell out of each other at extremely close range, and lost of tiny fighters flying around going zap zap too. The thing that interests me is the economics of it all. Why can’t side A field a fleet of 50,000 fighter/bombers instead of a nice aesthetically balanced fleet of 10 huge capital ships, 50 average ones and 200 fighters. Each of those capital ships is maybe 5,000 times the size of a one man fighter, and must cost 5,000 times as much to build.

Is it because the fighter’s lasers can’t penetrate the armour of the bigger ships at all? Do they need carriers to get them between systems? do they need refuelling? And given that the fighters fly at 100 times the speed of the bigger ships, how the hell isn’t the fighter vs fighter battle over long before a single capital ship gets within firing range of an enemy capital ship?

These are the questions which currently keep me awake at night, because I’m trying to design a set of spaceship and fleet construction rules that allow you to have lots of freedom, yet still ensure you end up building a fleet of disparate size ships that look good in space battles :D.

We naturally prefer 2D (unlike alien fish)

Why do I make 2D games? Is it because its’s easier? or because it’s the best format for the games I make? It’s the latter and here is why.

For games that involve strategy, humans naturally think in 2D. We exist in a 3D world, but strategically, we operate in 2D. We think about our environment generally on a 2D plane.  We navigate from point to point using 2D maps. Computer operating systems work almost entirely using 2D metaphors (Have you EVER used the flip3D feature in windows vista?).

I don’t think this is surprising. We are descended from apes (creationists stop reading now), whose predators attacked us on land, not from below or above. We spend the vast majority of our time on the same level as those around us. Even if we work in multi-storey buildings, we think of each floor as a seperate 2D space. Unless you are a submarine captain or fighter pilot, your concept of 3D space is probably hugely limited. I’m sure alien worlds with super-intelligent fish and birds are natural 3D strategy gamers, but not us.

And yet some strategy games still try and force us to play them in 3D. Thankfully, most game designers have finally realised that *true* 3D is generally more trouble than it’s worth. For every gamer who embraced Descent or Homeworld as the greatest thing ever, there were hundreds who found it thoroughly confusing. It might make for great screenshots, but not for great gameplay, at least not for everyone.

Sins of a Solar Empire and Company of Heroes are great examples of games whose makers realise that 3D makes for great trailers and box shots, but lousy gaming. Company of Heroes actually restricts the camera into a pseudo-isometric fixed view, allowing you to zoom in for no adequately explored reason other than to take screenshots to show off your graphics card. Every single player of the game plays at maximum zoom, because thats the only way to have any concept of what is going on. Spinning the camera around 360 may make for great GDC trailers, but its entirely unsuitable for actually controlling an army. People lose orientation very easily. Being able to spin the world around you is great in theory. In practice, you just forget which direction is which. (If spinning the map made so much sense, army commanders would have had circular map tables :D)

3D isn’t new or exciting in 2009, It’s just another option in the toolkit. Game designers need to get over the 3D obsession and make more considered design decisions. Some genres work great in 3D, some don’t. Large scale battles work best in 2D and probably will right up until we are all commuting to work in flying cars.

Long live the future of 2D strategy games.

The New Game

So what is this space game all about then?

Well it’s basically a big space battle simulator. A top-down, 2D space battle strategy game with no resource management, empire building, exploration or diplomacy.  The game is influenced by a number of things, in visual terms, I’m inspired by the stupidly big battles at the end of star trek:ds9 and the start of revenge of the sith. In game terms, it’s inspired slightly by galactic civ II, and partly by an old pen and paper RPG called traveller.

 

One of the books of traveller was called ‘trillion credit squadron‘, and it was based around the players being given a trillion credits to design and build a big space fleet (with certain restrcitions) to fight other players. That’s the basis of the gameplay for this currently un-named game. There will not be a big story, it’s basically a case of build a big fleet, send it into battle and enjoy the fun. I’ll be trying to make the battles look as good as 2D battles can look.

There is a lot more to the game than this, but that will come later. All my art is placeholder right now, so obviously there will be original spaceship designs. I haven’t found my spaceship artist or backdrop artists yet. In fact I haven’t started looking yet. Even now, it looks pretty cool in a big 1900×1200 window with maybe 40-50 ships a side. I hope to scale it up way way beyond that.

Core Breach!

Still a work in progress…clearly. But getting better… Details of what the hell this game is will arrive eventually…