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

Finding and fixing some nasty bugs

It’s amazing what bugs you find when you just sit and play through the game for hours (I’m playtesting and balancing the game so that the AI fleets give you a bit of a challenge).

Two bugs squashed today are these:

Firstly, the code that detected that an enemy target was being ‘painted’ by a target painting laser (and thus easier to hit for missiles) was just not working at all. I’d checked and double checked it many times, but because the ‘is it painted’ code is just one of about 6 factors determining optimum target selection, it was hard to tell if it was working right without stepping through everything each time.

It turns out that code worked fine, but some *other* code which told a targeted module whether or not it even *was* a missile launcher, was buggy, and so the code was never even being run. doh!

The second bug was investigated after I noticed some very slow missiles which looked like multiple-warhead missiles but never split into their sub-munitions. It turns out that this code has never worked correctly! The code works fine the first time a missile splits into sub-munitions, but if it gets to live long enough to shoot another missile later, the sub-munitions are never triggered. That was an easy fix.

Unfortunately, that means I’ve been underestimating the destructive power of multiple-warhead missiles all the time, which means I need to re-play through every battle, on every difficulty, and both re-balance the fleets, and maybe re-balance the cost and strength of the appropriate missile modules too. This will take all of today at least.

Damn :(

One thing I did notice, that was pretty cool was an imperial AI fleet I’d put together that sends its fighters in ahead, and the rest of the fleet shows up afterwards (moving slower). By lucky hap, although the fighters were useless against the heavily armoured federation cruisers, they did manage to blow the crap out of the row of point-defense equipped escort frigates that flew alongside them. So when the Imperial cruisers got into range, they could bombard the feds with missiles without opposition. This is exactly the kind of design and thinking I hoped the game would reward, so it’s cool to see it is all about strategy and not just luck :D (Obviously when you play against that fleet, make sure you don’t have a line of unarmed frigates sitting waiting to be blown up :D)

15 thoughts on Finding and fixing some nasty bugs

  1. …..I think I need to reconsider pre-ordering the game; it looks mighty complicated.

    Multiple-warhead missiles? Fine. But target painters? Is that a seperate module?

  2. @Folo4

    Do you mean that you weren’t considering it before, and now you are? If its the other way around, whats wrong with you man!?!

    I might just preorder two copies, one for playing and another for looking at.

  3. When can i play with bugs or not ? I want to pre-order for god’s sake !! Just the pleasure of pre-ordering, that will be a new experience for me.

  4. Say, cliffski, what is the difference between difficulty level? Does higher difficulty levels allow the AI to “cheat” (having a faster/stronger fleet, or more cash for buying better stuff, etc), or is the difference just in the I(ntelligence) of AI?

    I hate it when good games like the Total War or GalCiv serieses set high difficulties with the enemy cheating.

    I might have missed this issue if you’ve discussed about it in some earlier post.

  5. uhh.. galciv doesn’t cheat. it’s just very good.

    in fact, it’s one of the hyped features that the AI didn’t get additional inteligence/resources over the player.

    in this case though, i’d expect the higher difficulties to be going up against more expensive fleets than you have the money to field – making the challenge being how to beat the fleet on a budget/with clever tactics.

  6. The Ai has a more expensive fleet than you on higher difficulties. Although in some ways this is cheating, ‘it’s not a normal balancing issue because the player can rearrange his fleet and try again, whereas the AI is stuck with the fleet that ships with the game.

    The real challenge for fleet designers will be uploading fleets they design to take on all comers. Designing a fleet that wins against the AI fleet you just fought shouldn’t be *that* evil, because you know what weapons and ship deployment they have. Designing a fleet that will beat countless other GSB players fleets, without knowing what they will field against you is harder.

  7. No I’m definitely doing the beta pre-order thing on monday, even if that’s only through my site and nobody else, because I really welcome some feedback at this stage on where to concentrate the development effort.
    None of these bugs are crash bugs, or issues that seriously impact the games playability, and they are fixed now anyway.

  8. I hope you will support paypal as a paymenth option. Because there are alot of people that have no credits card (like in europe).

    Im from Germany and only about 20% of the people here have credit cards. Im forced to buy it via Paypal.

  9. We support paypal through BMT, you just select the drop down box on the order form for our games, and you can select paypal instead of credit/debit card.
    I use paypal a lot myself to buy stuff online.

  10. “No I’m definitely doing the beta pre-order thing on monday, even if that’s only through my site and nobody else, because I really welcome some feedback at this stage on where to concentrate the development effort.
    None of these bugs are crash bugs, or issues that seriously impact the games playability, and they are fixed now anyway.”

    but you pretty much got the design in stone, right?

    last thing I want is a freaking feature-creep.

  11. Feature-creep is usually only a problem with large design studios that have more time and money to devote to feature development. Cliff here is running solo so just from a time/money standpoint I don’t think you need to worry.

  12. Folo4, I wouldn’t be overly concerned about either complication or feature-creep. Cliff’s choice to avoid segmented shields and firing arcs shows restraint on over complicating the game (honestly, I was really hoping for segmented, multi-layer, specialized shields, but I realize it would be a massive effort to make it usable and understandable to both players and AI). As far as feature-creep, it’s a one man show so you won’t have the common problem of the project leaders (or execs) making mandates without understanding the implications or amount of work involved. The game has a nicely defined and fairly narrow scope of “design fleet” and “watch fleet blow things up”; peripheral features like “upload/download fleets to play against” and “minor control during simulation” have come up along the way but don’t make for problematic feature creep (as long as the control-during-simulation thing doesn’t get too in-depth, but if you’ve played Democracy 2 you probably know that won’t happen).

    On the comments about galciv, in GC2 it was very honest with players that up to a certain difficulty level the AI would not cheat at all but that above that level it would get certain clearly defined advantages (extra resources, iirc). That way we got the best of both worlds: a fair game against a good AI if we wanted one, or a game where the AI had advantages to provide challenges to players who were simply better than the AI. If you hate cheating AI, just don’t go above that middle difficulty level and you’ll still get very smart opponents.

Comments are currently closed.