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

Venturing further into online bits

Today I didn’t write a single line of  C++, but did code a lot of php, which is the language I use for the online challenge management stuff in Gratuitous Space Battles.

On thursday I spent a lot of time blasting out the music from Star Trek : First Contact while I scrubbed out my chalk board and drew my vast plans for the future of GSB, or at least, the next DLC/expansion thing. After a lot of hand waving, I’m currently planning on a cunning meta-game style campaign that slots into some of the existing challenge data. It’s going to work a bit like spore, in that it becomes ‘massively singleplayer’, with other peoples content (in this case fleets) appearing in your game.

So far, so easy. That’s not a problem. The tricky bit turns out to be that although I let people mod the game (and that will continue), I can’t have a modded fleet turn up in someone elses game, because at worst, it could crash thinking “cannot find ‘bobsZapGun’ module…”

The solution, (which doesnt check for data changes as such, but does check for simple additions), is to write code which verifies that a players fleet only uses content that exists in the main game. To do that, php code was needed to crack open the binary challenge data and go through each ship hull and module name and check they really exist…

and to get THAT to work, I needed php code that would analyse all the data in the game and create a database of all the ‘valid’ entries, so that it can compare one with the other. That way if I do some module changes or new add-ons, I can just run some php and have the ‘valid data’ table automatically updated.

This is a lot of work in order to just get something totally under the hood and invisible working, which is code to ensure no modded content ends up in any one elses campaign, causing a crash. There is a ton of other work required. The good news is that a lot of this same code might be possibly leveraged at a later date to scan the high scores for modded content (and reject it) and could even remove the need to tag challenges with the add on packs manually as players do now. All fun and games….

In other news I just did a BLIND taste challenge and I *can* tell the difference between cadburys and morrisons chocolate buttons. (Cadburys taste smoother).

Humour?

I had no power for a while today (electrician doing much needed work on the 18th century museum we call a fuse box). As a result, I ended up trying to work with just a laptop on batteries and no web access. That meant time spent coming up with damage descriptions for modules as part of the campaign game.

I have decided to try and make them slightly silly sounding, a bit like the module descriptions or comms chatter. I have words that amuse me, by making me think of the Star Destroyers from Star Wars, but designed by wallace from Wallace and gromit. It’s not a huge leap. I can imagine wallace asking chewie to hand him the ‘hydrospanners’.

So the damage descriptions often mention the ‘primary flux sprockets’ or the ‘fusion inhibitor flaps’, and other things that blend trek-like technobabble with wallace and gromit style silly-tech.

I am aware that a lot of reviews quite like what I guess must be my sense of humour. I am not sure what the majority of actual gamers think. I have a sneaking suspicion that a lot of GSB players are 14-18 year old boys who love space battles, and thats awesome, I was that boy. I have a cupboard full of action figures to prove it. I took star wars pretty seriously. It was totally the most awesome film ever and ewoks were not teddy bears and leias hair was just FINE and not at all silly.

To my mind, the best example OF ALL TIME of perfection in the balancing act of being funny to 30+ adults and cool and exciting to under 16 kids was the original Batman TV series. Watch it as an adult and its a hilarious parody of how kids view crime fighting. Watch it as a kid and Batman ROCKS and is AWESOME.

Holy Scriptwriting!

Campaign Repairs

I’ve been working on the future expansion/extra/dlc thing for GSB which will introduce mini campaigns, and have a slight design dilemma.

One of the main new elements of the campaign is that between battles, you can carry out drydock repairs to your surviving ships. So if a ship loses a beam laser entirely, you can entirely repair it for the next battle. Lost ships are lost, but ships at 1% can be repaired entirely, IF you have the cash/honor to do it.

So far, so good, I’ve been working on the UI for all this. However, it interferes with the way repair modules work. The idea of drydock is that you resupply everything, so repair modules are getting re-filled, and shields go back to maximum strength (assuming the shield modules survive).

The problem is, what happens to modules that were damaged slightly during battle, and the repair modules were fixing? If I let the battle run until the repair module runs out of supplies, any surviving ships will repair all of their vaguely intact modules. I can’t have a penalty for players who don’t want to sit and watch a progress bar rise after they won…

So that means that effectively, having a single repair module on a ship means all partial module damage is undone at the end of the battle, thus making repair modules more valuable than they currently are. This also gives the tribe a slight advantage, as they have frigate repair modules, and better ones anyway.

Possible solutions:

1) Deal with it. Repair modules are now more of a tactical option. Thats cool. The tribe have a bit of an advantage there, but that’s life.

2) Add supply limits to the campaign meaning supply modules aren’t available. This nerfs the tribe a bit.

3) Add some complex system, where in-battle repairs are jury-rigged temps that need to be re-done anyway at the drydock. This actually restores repair modules to be the ‘in-battle’ bonus they already are. However, they will then start doing those repairs of any un-repaired modules at the start of the next battle, which would seem very weird.

4) Add new code that automatically repairs all half-damaged modules anyway, regardless of repair modules. The lasting effect of battles is now just those modules that got totally destroyed, or ships that went bang.

Luckily I have a huge list of stuff to worry about before I need to make my mind up on this one :D

More != Better

I’ve been reading about the next star wars MMO.  This may turn out to be really good, but they way its being marketed at this stage scares me a bit. A huge chunk of PC Gamers interview with the developers is filkled with them listing how BIG the game is.

“its one of the most ambitious voiceover projects in the history of the videogame industry”

“by the time it’s done it will have more voiceover than the sum of all Biowares 17 other games”

“I’m suprised at the enormity of it”  (ooh-err)

etc.

It’s  not at all clear to me that ‘more content’ neccesarily makes for a ‘better’ game. I’m not even convinced it makes them more immersive. Aliens vs Predator (the original) was VERY immersive. By todays standards it would be very light on content. Maybe 1% of the impressive voice acting budgets of today. And those low res textures and low-poly meshes! eeek, how did we ever manage to be immersed!

Of all the ways to spend money and effort to make better games, voice acting has to be the lowest return on investment. I bet Patrick stewart got millions for Oblivion, yet his part in the game was memorable only for him sounding bored.

Big huge companies often throw a huge amount of money at projects and think that makes them better. Microsoft did it with vista (nice job guys!), and governments do it all the time, with hilariously poor results. The real hard, depressing, bitter fact is that more money doesn’t solve many problems. If the only way you can get people excited about what you are making is by telling them how much it cost, it’s a sad state of affairs.

Todays newspaper has an article on the new WW2 TV series with Tom Hanks in, From the cover-article highlight, I can currently tell two things about it. It has Tom Hanks in, and its THE MOST EXPENSIVE TV SERIES EVER!!!

That is apparently it’s unique selling point. I hope thats just crap marketing, and the series is good…

Jam tomorrow

The rumour is that a lot of people are staying on at Infinity Ward because they are owed huge bonuses from COD:MW 2 and if they quit before they are paid, they lose the right to them.

This is depressing, and very evil, and not at all uncommon. Not just in games, but everywhere. I’ve had a lot of different jobs, in a lot of different companies, and the vast, vast majority of them have an employee incentive scheme called ‘jam tomorrow‘. They don’t call it that, but that’s what people call it when they see it for what it is.

There are basically two strategies to keeping decent staff. (Nobody cares about keeping bad staff, in fact, they are doing you a favor if they quit). They are:

1) Make the job great, in terms of earnings, benefits, working environment and job satisfaction

2) Vastly increase the opportunity cost of quitting.

Now clearly 1) costs a lot more than 2). You can pay the gullible fools a pittance, not pay out any benefits, and make their lives miserable, and the dumb schmucks still stay in their cubicles. Clearly 2) is the way to win!

But that is old school thinking from factory floors, the industrial revolution, people churning out simple, measurable, mechanical work, where the objective was just to keep people working.

Game development doesn’t work like that. The work is very difficult to measure. You can’t stand over a programmer and tell if he is working well, or hard, or at top efficiency. Ditto an artist.  Is that texture the best you can do? Really? How do I tell?

Activision are using the sort of trick that cynical factory owners used to try and keep people working the lathe, and that just plain does not work for knowledge workers. I did my best work when I was motivated and happy, and my worst work when I was cynical, negative and felt cheated. I’d wager you are the same. It’s a worse strategy than just flinging monkey shit at your staff, because at least then, they would quit and you would realise you are doomed. This way, the staff stay there and grumble and drag the productivity of the company down.

Activisions strategy might look to them like it is working. But it isn’t. They are just demotivating their staff and delaying the inevitable resignations. This isn’t a 19th century pin factory, it’s 2010 and the new economy. Someone tell the activision bosses that.