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

Awesome Gratuitous space battles mod

Check this out, it’s just great :D It’s a big, heavy duty mod for GSB:

The full forum thread for the mod is here:

http://positech.co.uk/forums/phpBB3/viewtopic.php?f=23&p=48689#p48671

basically it adds BIGGER ships (dreadnoughts) to the game, which is awesome, and something that any hardcore GSB player should probably take the time to check out. I love this sort of stuff happening to the game, especially now that I’m 100% in next game mode, and don’t have time to tweak GSB or add anything new right now. It is effectively new, fresh and free content for newcomers to the game, and all done by GSB players without any input from me.

It does seem that modding is less widespread than it used to be. Maybe big budget PC games are too hard to mod now, or maybe the developers and less supportive? who knows. It certainly reminds me that I need to ensure I make time to make my next game just as moddable as GSB is.

Possibly no work can get done this thursday / friday. My home office is getting a much-needed new roof, and I will be laptop bound for that time. I hope it doesn’t rain when the roof is half-off :(

 

When is it fair for the game servers to switch off?

Here is a question for you. For how long after the release of a game do you think there should still be support for online features to that game?

I’m not talking MMO games here, obviously that should continue all the time any sort of subscription fee is being charged. I’m talking about games where you buy it once, and you own it, but part of the game is online. Like Guild Wars (although that’s all online) or, to a smaller extent: Gratuitous Space Battles.

Gamers are rightly angry when they suspect the servers for a game get shutdown just to encourage you to buy this years copy. EA are great at that, as I recall. The thing is, we can probably agree that if a game hasn’t sold a single copy in ten years, turning off the server is just fine. It’s silly to suggest otherwise. We also all know that most evil EULAs indicate the servers can be turned off when they fancy it, so it’s not a legal issue either.

What we lack, as an industry, is any sort of expectations or standards for this. If I buy Guild Wars today, and the server is turned off in 6 months time, is that just tough for me arriving late? Or is it understandable?

We could argue that as long as one person has bought the game in the last six months, the game should still be running, but what if that person bought the game in a steam sale or pay what you want deal for just $0.10. Still reasonable?

I guess to me, one benchmark would be profitability. If the server costs $100 a month to rent, and the game isn’t bringing in $100, it seems fair to axe it, although even then, what if 8 people bought it yesterday for $10 each?  It seems right now a long way off for me to worry about that. GSB made much more than $100 yesterday, let alone this month, and as a fraction of the server costs, it probably doesn’t cost $100 a month to run anyway. Also, the server is busy:

New challenges posted in last 24 hours: 48
Challenge victories in the last 24 hours: 143
new survival mode scores in the last 24 hours: 6
challengevictory: 170

This will not last forever though. When sounds reasonable to you as a gamer?

****Note: I can’t see the GSB server being shutdown deliberately before 2015 at this rate, so don’t panic :D****

 

Work For Idle Hands

One thing GSB does that I’m quite proud of, is run an ‘idle manager’ to smooth out the frame rate. In concept, it’s pretty simple. There are some jobs that need doing in the near future, but not *NOW*, and some that are optional. The idle manager works out that we have some spare time, and does them accordingly. In code terms it’s a lot more involved.

GSB has a target frame rate, and checks the time since last frame in the main game loop. If there is some ‘spare’ time before the next frame, it tells the idlemanager, and checks again once the idlemanager has finished. The idle manager has a list of tasks, and it cycles through them in turn. Two of the common tasks are these:

1) Check that we aren’t running low on any pre-cached particle effects, and if we are, pre-cache some new ones ready for future use

2) Check if any laser blasts which are missing their target happen to intersect with some debris. If they do, make the debris explode.

task 1) is vital for performance, task 2) is optional graphical fluff.

The implementation of an idle manager is cool because it allows you to use the fluctuating rendering-demands per frame to your advantage. It also means you eek as much usage as possible out of a single processor core. In multi-core, multi-threaded systems, this is all done much better by having a separate thread, which can spin off and do this stuff at your leisure. There can be synchronisation issues in that case though (I don’t want to change the list of cached particles while another thread is altering them too etc).

If you can’t be bothered with the hassle of multithreading, I recommend implementing something like this idle manager at the very least, assuming performance is vaguely an issue for you. I’m writing the idle code for my new game right now, and it will be a bit cleverer, and more involevd and possibly multithread stuff too. I hate to think the game would drop a frame when it could be avoided by doing this sort of stuff.

Gratuitous Modding Competition Winner

It’s actually nothing to do with me directly, but the enthusiastic modders who fiddle with Gratuitous Space Battles (and there are a LOT of them), have been running a competition on the GSB modding forum for the last few weeks. I blogged one of the designs a while ago, one I really liked. Anyway, there has been voting going on and a winner picked, and here is the ship with the most votes:

It’s extremely awesome to see people producing new ships for the game, and obviously what they are doing is cutting and pasting and tweaking and blending the original ship grpahics to make much bigger new ones. I also released some of the raw lightwave models, and did some re-renders, because I’m a big fan of decent modding, I see there is also a fan-made editor for the game which is probably better than my own internal tools (almost certainly so!). Some of the stuff that’s being modded into the game is really cool.

I’m well aware of the fact that GSB wouldn’t have any modding community at all if it was not for

1) leaving all the games art files in native, usable formats like jpg and DDS, so people could see them and change them, rather than hidden in some pak or zip file.

2) Having forums on my site for people to chat about the game and discuss it. Some indies see forums as more trouble than they are worth, but I strongly disagree :D

Thanks to everyone still playing the game and producing mods for keeping interest in the game alive. I look forward to seeing people mod the campaign game, now it has a proper directory structure that trivially supports extra maps. (It’s still not a modders paradise, but I hope my next game will nudge further that way). If you are a big fan of GSB and want more ships, or to change some settings, or fiddle around, have a look at the modding forums, there is a ton of stuff there.