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

Musing on space battle tactics and improving the escort order

Sooo. In discussing this on my forums I thought it worthy of reprising here. Basically ships in GSB2 can have an ‘escort’ order which tells them to stay with X meters of another ship (user-configurable distance). This is all well and good, but you still want those ships to be useful in battle. Whether the ships are fighters/gunships or larger ships gives this order a different outcome. Here is an explanation of the current system…

The current system has non-fighter ships heading towards the point on the radius circumference of the escort order that represents the angle between the ship they are escorting, and their currently selected target enemy ship. (see below…)
ship_tactics1.png

On the other hand… fighters (& gunships), when given an escort order keep picking a random position within a half escort radius range of half way between the actual escort ship, and the target ship. (See below).

ship_tactics2.png

Now its actually very simple to make ships that are not fighters copy the fighter behavior if they have the KEEP MOVING order (which is implied with fighters & gunships). However, my question to you is…would that be desirable? I have essentially made a guess here when coding the game as to how people are thinking. I’m assuming that if you tell a frigate to escort a cruiser, you are saying ‘ by all means attack the enemy, head towards them, but don’t get more than X distance from your parent ship’.
An alternative meaning would be ‘always stay within X distance of the parent ship. If ordered to keep moving, do so, without any preference for location.

The current system leads to ‘frigate bunching’ at the nose of a cruiser or dreadnought. This means stationary ships in some cases, and susceptibility to area-of-effect weapons and detonation waves. But it does ensure escorting ships move into range when possible. Of course, if you really want to enforce some separation, we have the formation order… hmmmm.
Thoughts?

Gratuitous Space Battles 2 update: Version 1.29

So…today I uploaded the windows copies of Gratuitous Space Battles 1.29. (Other platforms will follow). Here are the highlights of the patch (but a lot more has changed).

Identical voice messages now need twice as long a delay between repeats.

Were you getting as bored with ‘Enemy systems scrambled’ as I was? If so… this makes it less annoying :D

Fixed bug the formation order in a sub-deployment didn’t load in correctly.

When you loaded in sub-formations (squads) on the deployment screen, you sometimes had formation lines going off into nowhere. Fixed!

Damage indicator feedback in-battle adjusted to be less ‘spammy’ when multiple shots hit in close proximity.

Still not perfect, but where you get lots of fighters attacking a single ship, you are no longer blanketed with UI popups…

2 New missions added (Pyrataxian Ambush & The Slarthoon Belt).

newmissions

Oh yeah!..And one of them is a cool new ‘ambush’ style layout where you start the battle surrounded. I’m interested to see how people get on with that one…

Mid-battle and end-battle statistics now track radiation damage in full.

This was very annoying, but now its fixed so you can see just how effective these weapons can be. Spoiler: very effective.

There is still a lot of balancing stuff to do, and lots more to add. The good news I have found and fixed another hard-to-reproduce sound-related random crash bug, so the game should be super-stable now. If you had crashes before, please try the new build it is TONS better. That sound bug was a horrible multi-threaded related crash that only happened at certain combinations of CPU speed and game-speed, but I found a way to reproduce it with some cunning Sleep() calls on my ninja PC. Definitely fixed now!

I plan on adding some new features, and new missions over the coming weeks. We are still very interested in getting people to do lets plays and review the game, or add it as a steam curator./ If you have a popular youtube account / steam curator account, email cliff@positech.co.uk and say you want a copy :D.

 

Still fixing bugs, adding tweaks

I’m still working on bug fixes and other tweaks and improvements for Gratuitous Space Battles 2. There were, i have to admit, more bugs than I expected. I expected bugs in beta, and a look at the change-list will show you I fixed a LOT of them. What I didn’t expect was such a huge difference between the number of reported bugs in beta and those on release. I can only assume beta players were more forgiving, or maybe expected bugs they didn’t report to get spotted and fixed anyway. With a simple game thats possible, but with a big complex beast like GSB2 and 1 programmer…not so much. If you find a bug in 1600×900 res only when you have bloom turned off, on an asteroid map where you are using decoy projectors against camoflaged enemy dreadnoughts… There is a good chance I never encountered that combination. There is only one of me :D

So here is the change-list (so far) for the next patch…

1) Mouse wheel now scrolls the message screen inbox.
2) Inbox now formatted better. Also this screen now has a ‘challenges’ button.
3) Fixed bug where some combinations of graphics options could result in a blurred white battle screen.
4) Fixed crash bug in ship design screen when a ship encounters layers with zero physical sprites.
5) New tutorial message pops up (English only) when you try to save a fighter/gunship design with no engines or fuel tank.
6) Fixed graphical bug on some resolutions on the ship design screen when changing hull size types.
7) Ship design loading dialog now sorts by name correctly.
8) Fixed shader error message / potential problem on ship design screen for screen resolutions of 900 height.
9) Fixed bug where fighters who started returning to a carrier would not pick a new carrier if their first choice was destroyed.
10) Fixed cursor flickering on some low-spec machines.
11) Added new options to the in-battle visual options to toggle on/off asteroids/hulks/nebula clouds.

I’ll likely push this out tomorrow. I’ll probably also increase the unlock costs of a lot of items as well, and maybe sneak in a performance boost I worked out whilst looking at some code…

One of the things I’ve learned, AGAIN, releasing GSB2 is that vocal people get very angry about lists of content. GSB2 has 11 missions. The expectation is that people then enjoy challenges against each other, but people seem to keep complaining that there are only 4 races and 11 missions. GSB1 had 4 races too, but apparently because extra races got added in DLC, those are expected in the base game, so people expect 8 races and 20 missions.

The irony is, that sort of stuff is pretty cheap and easy top do (although with GSB2 it would boost the download size a lot). Adding another 11 missions is relatively easy (compared to the thousands and thousands of hours that went into the ship-editing and engine-redesign). I guess adding extra missions will be one thing that encourages people to leave better steam reviews, that and increased stability, which I’m pretty sure I have now, and even more so with this next patch.

So lesson learned, don’t ship with the amount of content you think makes sense and is reasonable. Ship with double that. I’ve already set aside time to do it.

In the meantime, if you are enjoying the game, please leave a steam review. I know 99% of you don’t leave reviews, which means I’m kinda dragged down by the 1% who had crash bugs which are now fixed but never changed their reviews. :(

Bugger.

On another topic, I’ve been pretty miserable lately. I’ve got increasingly sick of checking email/forums/tweets each day to get another few pages of abuse, snark, sarcasm and bile thrown at me. Pretty much every game developer I know gets the same treatment. Apparently this is acceptable behavior. It isn’t. I’m trying to dial-down my use of sites like twitter, facebook and public forums and stay away from the corrosive atmosphere of people online. Lets not even mention the steam forums, and the abuse you see there.

So you might be see me post a lot more about technical topics as opposed to business / pricing / sale / industry stuff. There is nothing you can say online on those topics that doesn’t apparently invite abuse and sarcasm. Not to mention ‘advice’ from people who have never sold anything in their lives, but apparently can see immediately why I am so penniless and unsuccessful.

Bah :D

 

 

Fixed the low-hanging bugs…. pause for breath…

Yikes,. so we had a lot of MUST FIX NOW issues in the first four days of releasing Gratuitous Space Battles 2. I think in retrospect I had bitten off a bit more than in possible for a single coder / designer to do.

GSB2 involved a phenomenal amount of re-engineering to support the kind of graphical fidelity I wanted. I sometimes read comments like ‘its just a new engine’, as though I just went into a drop-down box in unity and selected ‘new engine’, then hit the ship-it button. Arrggghhh. This new engine took well over a year of mind-mangling stress to develop. I love it, but its still hard work.

Anyway… Lesson learned #1: Multithreading increases your bug count by at least tenfold. Especially on ‘other peoples hardware’.

spag

Lesson learned #2: Don’t do a multi-platform release. Do a Windows release. Fix everything, THEN worry about mac & Linux. Or hire another 3 or four people. Or make a much, much simpler game.

The good news is that after tracking down some pretty obscure stuff, I’ve got version 1.26 out there, and early reports suggest it is MUCH better. MUCH more stable, and a lot of silly dumb-ass mistakes by me have been fixed. The only *big* bug left is some series of actions that leads to ship designs being (temporarily) deleted until you restart the app. I reckon thats easily fixable today. Which then means I can get on with what I wanted to be doing all along: tweaking values, improving GUI elements, supporting modders, and getting a feel for what features people would like improved or added. I know people want galactic conquest put in, but thats a HUGE project, and not one for the next few months. That didn’t ship with GSB1, and that was with good reason, I assure you. Every single weapon and module from every race & expansion pack of GSB1 is in GSB2. It also has more initial missions, but even then people complain it doesn’t have enough content. Argggghhh.

Anyway, at least I can smile now for the first time in a few days. If you are enjoying the game, please leave a positive steam review. Even better, tweet about it :D.

Well my game is on sale…time to relax? Ahahahaha

There is nothing relaxing about the day after launching a game. Especially when you do this for a living, and other people depend on you. Its a huge, big deal. Its basically betting your one and a half years income on a roulette wheel. And the worst thing is, it can be weeks or even months before you really know if it worked. Terrifying. I read a lot of books about similar (more established industries) to give myself some perspective. One of the Harry Potter movies (not the first one) LOST money at the cinema. Despite tens, probably hundreds of millions of people seeing it, it LOST money. They broke even, then made a handsome profit, only after all the TV rights, DVD, Blu-Ray and merchandising income came in. Imagine taking in $200 million+ and thinking “Yup we are still in the red guys. Don’t worry, it’ll be fine in the long run.” Holy fuck.

Thankfully I’m not *that* much down right now, but I’ll still have a celebration pub lunch on the day I break even.

The launch has gone ok, in that people are buying it, it jumped into the steam charts, people are playing it, they are uploading steam workshop entries for their ships, and I’ve got some very nice comments about the graphics. That’s all awesome, and trying out some of the challenges is hilarious. You people are very inventive when it comes to both ship and fleet design. I’ve got my ass kicked many times already :D

workshop

I’ve already patched it twice (yup I’m nuts). and am planning another one in a few days. There is a lot of admin overhead in patching the game, so I want t make each patch worth it, especially as I’ve fixed a bunch of urgent issues, and can now track down more obscure issues and the odd crash.

Of more interest will be what I’m learning about releasing a game in 2015 vs one in 2013. Holy fuck, its got harder. here are some observations.

1) There are so many games the media (inncluding youtubers/twitch streamers) won’t care that you released a new game without real hand-waving and pleading. Just being a good, quality game isn’t going to cut it any more. Unless your game has a famous actor in it, or is hilariously weird in its premise, or has some other non-game related ‘hook’ for the press to get excited about it, you can forget it. I hate worrying about all that. I’m a coder at heart, and this is meaning its getting tougher for me.

2) Ad costs are creeping up. The site takeover costs are stupidly high anyway, but even facebook, google adwords, its all got very very pricey.

3) There is a definite tendency for everyone to just add a game to a wishlist and wait for the sale. The inevitable sale. Kinda weird because…

4) There is still the inevitable abusive anger about a game daring to cost $24.95. People moan that the price is too high, then say they only ever buy games at 50% off. There may be some logic there but I can’t quite see it myself. Every game I’ve ever released on steam has had a thread saying its cost too much. I suspect every game on steam has that thread. I suspect its the same posters too…

5) Nobody leaves steam reviews. Seriously, its like pulling teeth persuading people to do so. Which means only people with a bug, or a problem bother, and that drags down the scores. I can see from my stats I have a lot of happy people playing the game, I wish I could interrupt them to ask them nicely to leave a review :D

I’m guessing things are a bit quiet because GTA just came out, and it just started getting nice weather. Games are a long tail phenomena these days. GSB1 made 1% of its total earnings to date in its first week on sale. By that measure GSB2 is going to do well :D. Fingers crossed anyway :D