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

Lightning!

I’ve been tweaking and fixing a few small things lately, sounds that do not play, some graphical problems, and some bugs caused by recently introduced new features (I managed to screw up the way shields worked when I added cod to make ‘stacked’ shields less effective.

In amongst this, the only true ‘new’ feature that has gone in is the alliance ‘lightning gun’. It’s basically just a beam laser, but drawn entirely differently. 10 minutes of reading photoshop tutorials got me up to speed with rendering lightning, and then a bunch of rendered strips of lightning later, I wrote code which works out how many ‘chunks fit in a beam, and stuck together a string of them so the ship looks like its electrocuting its enemies.

The code isn’t that simple, because you want the beam to zig zag everywherem, but hit its origin and target exactly, which is a bit fiddly. I also had it change which bits of lightning to use every 10th of a second so it looks like it flickers, and had to ensure that multiple beams from the same ship start at different points so you can’t tell the same texture pattern was being used.

Having said all this, the biggest effort was picking out a sound effect for it, which I’m still not happy with and am not confident is playing right. 30 minutes of previewing sounds of electrical static is a bit wearisome in 86 degrees in the indoors with an overheating PC by your legs.

All good fun I guess.

New Screenshot

I have nothing to say today except Zap Zap BANG! Fizz! etc:

How shields do (and will) work

Every space movie has deflector shields, and so does GSB. here is the current system:

You can optionally add shield generators to your ships. The more the merrier, and some provide more shield points than others. The total shield points get added together as the shield strength. This strength needs top be blasted to zero to knock out the shields. In this respect, all generators act as a linked unit.

3% of weapon hits somehow luckily get through the shields anyway (luke skywalker lucky shots)

Shields have strength, but also resistance, and weapons have shield damage, and shield penetration. If shield resistance > shield penetration, the weapon is totally ineffectual. Otherwise, shield damage is applied to shield strength

Shields recharge over time. You need to totally blast a ships shield strength to zero to stop it recharging.

Now for the new bit (working on it now…)

Shields will have ‘stability’ which indicates the integrity of the energy field. Special weapons (probably torpedoes) will be able to interfere with the stability. If the stability is reduced to zero, the shields will temporarily collapse, effectively turning them off and allowing weapons to penetrate. These shield disruptor weapons will ignore shield strength and resistance, working on totally different principles. The only defence against them will be point defence lasers and ECM beams to scramble the torpedoes.

This way I’m avoiding the possibility of just havign seriously ‘shielded-up’ ships that are effectively impossible for enemy ships to overcome. Another possibility I’m toying with is preventing shield generator modules from being 100% additive, but maybe on a sliding scale.

So 1 shield module = 100% of its strength, 2nd shield module adds 80% of its strength, etc etc.

Thoughts?

Better Damage Effects

I have a vaguely usable hacked together damage editor which means I can make a few improvements to the ships now. I’ve only done 1 so far, but with the tools in place the rest shouldn’t take more than a day. Here is a screenshot showing a federation cruiser and the changes:

A) This shows that some damage has knocked out the lighting on the warp nacelle. This is actually just visual and does not correspond to engine damage, that would be a nightmare, but it still looks better than them staying on :D Also, two of the tiny orange lights have been knocked out by another hit (bottom A)

B) These tiny impact ‘scars’ are new. By having a lot of these scattered around the ship, the targets selected by enemy ships seem less predictable and more random, although they are pre-assigned in truth, and then scrambled in order.

C) My editor lets me easily add ‘permanent’ smoke or spark effects to each damage texture, so they don’t seem too similar. Most major impacts result in a complex smoke and flames emitter anyway, but only some of those smoke effects stay around for the lifetime of the ship.

This screenshot was taken using my debugging hacks, so it’s not really representative. Normally a ship hit this much would be flying through a lot of debris and maybe hulks from other ships, so it would look a bit better :D

Comments?

10,000 hours

Have you read Outliers? It’s a book by Malcolm Gladwell. Not his best book,  but it’s quite good. It’s basically a theory that assumes that really successful talented people get where they are because they just put the hours in. He looks at The Beatles, Bill Gates, Sports stars, all different areas of work and investigates peoples backgrounds.

The guess is that you need to do something for 10,000 hours to get good at it, which is roughly 10 years full time. The Beatles had performed for that length of time before they became an overnight success :D

I’m a strong believer in the idea that almost anyone can do anything if they just put the hours in and concentrate. I occasionally muck around playing a digital piano. I’m not very good. My limits are the intro to Fur Elise and the intro to Wait For Sleep by Dream Theater. That’s about it. But I *know* that if I spent 10 years full time really going for it in terms of practice I’d get bloody good at it.

They say that school isn’t about teaching you stuff ‘per-se’, but teaching you how to learn. That’s a valuable thing to know. If the thought of sitting down with a book and learning some new skill depresses you, it’s really worth beating that. It opens up so many possibilities.

I have absolutely zero natural aptitude for programming. my DNA is pretty similar to everyone else’s.  I went to a relatively good school (state-run) and my mother taught me to read very young. Everything else was hard work.

You can tell I have no actual talent, because I’ve probably done my 10,00 hours and I’m still not rich or famous. I started programming at age 11 on the ZX81. I’m 40 this year.

I’m still trying though :D