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

UI rethink

My UI sucks. Some people who tried the game have made me realise this. The battles are cool, the idea is ok, but the flow of the UI is too complex and fiddly and crap.
The actual ‘look’ of the UI isn’t so bad, but its just a really bad ‘flow’ from ship design to fleet design to fleet deployment to combat.
it need a bit of a re-arrangement and re-think, which will be messy and annoying and not as much fun as programming new explosion effects…

Right now you need to think like a programmer to play the game. I want it to be more like someone who wants to arrange a fun space battle would think. The current system is sort of boxy and procedural like this:

  • Create ships and save them as files.
  • Create fleets for a specific battle from saved ships, and save them as files
  • Create deployments of those fleets for that battle, and save them as files
  • Select one of those files to fight against an enemy fleet.

This sucks. What I think I need is more like this:

  • Select Battle to fight (together with difficulty level)
  • View an existing (crappy basic sample) fleet already deployed for it
  • Have the option to re-arrange the ships, add new ones from a picker, or add new designs to the picker all on that screen (new designs will effectively open a new interface to do that)
  • Hit the fight button

With that system, there will be options to save out ship designs that you use in the battle, and to save out the deployment (or maybe I always save the deployment for each battle so I have a ‘last-used’ deployment).
The key thing would be that its all based around a single process, and a single screen. The fleet design interface will effectively be dead

Alpha, Warping in and firing arcs

Ok lots to say.

Firstly, I’m declaring GSB is at a very early alpha, and I’m currently putting together a build for some people I know to take a look at. This isn’t an open beta or pre-order yet, that;’s a while off. The music isn’t even done yet, so be patient :D. This is quite a milestone tor each though.

Secondly, I decided against firing arcs. I thought about it all morning, typed up all the pros and cons. I can see the pros, but he cons are a combination of aesthetics, AI issues, and complexity. GSB is not meant to be as hardcore as Starfleet command, so I’m wary of overcomplicating it. Also, firing arcs would mean an order of magnitude more decisions for the Ai commanders of each ship. Also, it would mean that the ships were constantly banking from one angle to another to get shots in. I prefer the look of the Revenge of the Sith or Return of the jedi style battles, with big, almost stationary cruisers blasting away at each other. Feel free to change my mind though.

Thirdly, I added this sort of warp-effect intro thing to each battle. The camera pans across your fleet as they arrive on scene. Video below: (as you can see some battles have BIG fleets. Are you SURE you want more complexity per-ship? L:D)

Deployment Screen Tweaks

Ok, so here is the current (and close to final) layout of the fleet deployment screen (click to enlarge). The new thing that has gone in, and was a long time coming (apart from some UI tidyups, and better support for the range of possible screen resolutions), is individually highlighting weapon ranges.

You can see that I’ve moused-over one of the icons for this ships modules (Light Plasma Launcher), and the range of that weapon from the ship is shown as a bright white circle around it. The faded out circles represent the ranges of this ships other weapons, and by mousing over them, I can see which is which. This will make positioning ships better much easier, and will remind you what ships are suited to particular roles.

One thing that isn’t done is offsetting those ranges to take into account the modules placement on the ship. It will not make a big difference, but maybe it’s worth doing. For the big ships on small maps, it’s probably worth putting certain weapons at the front.

Taking Direct Control

I’ve had a lot of people saying they love the hands-off battle idea, and a sizeable minority expressing concern that this will get old fast. In addition, when playing the game, I’m realising that no pre-battle orders are ever going to be fine enough to prevent you feeling occasionally frustrated at your AI captains, so I’ve decided to give-in and add some element of mid-battle control.

Now this would normally break the play-by-email style challenge system, but in challenge games (where you are playing against another player’s downloaded fleet) direct-control is simply disabled, and the battle reverts to view-only.

I’m not going overboard in terms of making an entire RTS out of the game, but currently you can single select or drag-select some ships, and then right click an enemy ship, or a position on the map and they attack/move as instructed. Green overlaid ships are selected, the red one is the current target. You can issue orders whilst the game is paused, for extra fine control.

Most of the battles have enough ships that you will not play it like an RTS, but just use the direct control stuff to fine tune your general battle plan. Sometimes ships come under more intense fire than expected, and you might want them to beat a hasty retreat to engage auto-repair modules. Sometimes you spot that a specific enemy ship is kicking interstellar ass and you may want to concentrate your fire there.

I’ve also been improving the AI. Weapons that fire >4 times in 7 seconds at a target and have no effect, will automatically select a different target for a few seconds. This prevents the dilemma where you have a set of ships just facing each other and blasting away ad-finitum achieving nothing. The chances of hitting a shop have also been skewed so that big ships are easier to hit, meaning fighters and frigates should last longer into the battle than they currently do.

Trying to improve armor glow effect

Several people commented on the armor ‘glow’ effect to represent an armor hit, but not hull damage or a shield hit. Ideally the effect says “this hit the ship and got through shields, but it didn’t get any further’. my plan was for the ship to look like it ‘glowed’.
The problem was, that with the whole ship glowing, it looked a bit overdone, and non-specific. After a lot of fiddling, I can apply an expanding and fading sprite as a ‘decal’ to the ship (which is fiddly without assuming shader support, and involves some interesting multi-texturing code and so on…)
Here it is: ( i stupidly called it shield effect test. it’s armor effect. doh!)

Is this better? If not, what would work better?
Cheers!