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

Experimenting with special units

Everyone agrees that when it comes to gameplay the best approach is to try tons of stuff and see what turns up right?
Anyway, it’s an approach I am becoming keen on. Things often sound like the greatest game idea in the world until you try them. And things that sound lame and boring often turn out to be hilarious and fun. The ski-jumping game in wii-sports probably sounds crap in the design document…

Anyway, with that in mind, after playing through a few GTB battles in ‘classic’ mode (tower defense) as the defender, it became clear to me that ‘towers that do different damage to different units’ isn’t enough, in terms of interesting decision and gameplay, so I started thinking about special units.

As of today, there are 3 new magic modules, and associated units in the game. They are hospital modules/ambulances repairyards/trucks and supply trucks. The hospital and repair facilities regularly pulse out waves in a set radius that heal/repair your troops/tanks/turrets as appropriate. There is no overlap, so ambulances only work on infantry, whereas repair yards and trucks do everything else.

This is my first new mechanic, in that we now have units that act as support units, rather than directly contributing to victory. This brings up all kinds of decisions regarding whether to deliberately target the support units, whether you have lots of support units to keep a few big ‘tank’ units alive, or go for a mad rush with no support etc…

The second new mechanic comes from supply trucks. Supply trucks have no weapons, and no abilities, but they score disproportionately when determining victory for the attacker. Basically, getting a single infantryman off the map alive earns (for example) 1 point. get a tank away and you earn 50 points, but get a supply truck away and you earn 500 points :D

This introduces some new things to strategize over. supply trucks are literally harmless when they enter the map, and only pose a real threat as they close in on the exits. Unlike normal units, which can serve some purpose in shooting turrets etc, the supply truck is a binary decision. In other words, you should only deploy one if you are SURE its going to make it to that exit.

Obviously there are tons more potential ideas, and nothing here is revolutionary, but I hope to eventually ship a game that gives the player a ton of variety. Small tower defense battles, as attacker or defender, big battles, rush battles, wave-battles, 2-sided pitched battles, custom edited maps…. If I don’t die from stress or old age before I finish all this :D

Gratuitous Solar Power Stats

Ok, it’s been about a month, so lets look at some solar stats for the last 30 days. ( I have 10 solar panels outside my office window, for those new to the blog. I’m in the SouthWest UK)

Total power generated is 189 units. That’s 189 kwH, which at market prices is £23.62. Bad huh?

But wait a second… I earn 3p per exported unit (50% is assumed) and 43p Feed-in-tariff, regardless of usage, plus of course the 12.5p per unit the power would have cost me if I’d had to buy it. That means that really, each unit generated earns me 57p a unit, meaning I’ve generated £107.73. If we wanted to go mad, I’d claim 12 months of that is £1,292 :D

Obviously summer output is WAY higher than winter, but as a counter to that, we have had a shit 30 days in terms of sunshine (unusually so, the month before install was insanely bright).

Another reason to be cheerful in terms of future output, is that we have a big tree casting serious shade around 4PM. We knew about this, obviously, but didn’t realise the extent to which the late afternoon/early evening sun was going to be so bright here. Given that, we may well lop a few feet off the top (it’s BIG) and hopefully that should boost output a fair bit.

here is a chart showing the aggregated output over the time of day…

And a chart showing how massively it varies each day:

I’m sure I’ll be equally boring and geeky when we have lopped a bit of the tree and had a few days without it. Of course, then the sun will be lower overall…. Bah. comparing data is such a pain.

More work of the gratuitous parasites

I did a little bit of work this morning on the parasites, the GSB race I’m working on in my spare time (ha!).

I added two new weapons today. One is just a tweak, it’s  a plasma launcher that fires lots of small plasma torpedoes rather than big ones. The plasma torp is balanced as a weapon that isn’t colossally effective, but it is able to damage both shields and armor. It now has a rapid-firing version (parasites only).

I also added a ‘return-to-sender’ version of the guidance scrambler beam. This doesn’t scramble enemy missiles, but reverses them, so that they fly back and destroy the person who launched them. often there won’t be fuel for that, and I’m considering making it also reset their fuel. The beam is a one shot deal, you can’t reverse a reversed-missile.

All the ship hulls are done, it’s just balancing and code now. here is another screenshot of some cruisers:

I’m also working on gameplay and GUI for Gratutious Tank Battles. The GTB UI mockups look incredible, it’s just a looooong slow process of translating them into working code.

more out-loud design thinking

I’ve been doing some playthroughs of various gameplay modes in GTB and thinking a lot about the game design, and the way units interact.

One of the core things that makes Tower Defense games playable, and casual (to a degree) is the clarity of how units interact. There is often a clear way of differentiating how the units work against each other. For example, gun turrets are good against ground units, lightning turrets are good against flying units, laser turrets are not-bad against both. Often that sort of data is as complex as it gets. You can then have an upgraded ‘level II’ laser tower that is the same, but better, and so on…

One of the unique selling points of GTB is that towers have individual modules that can be combined, so it’s not as simple or inflexible as normal. In theory you could customise your defenses to do exactly what you liked. The trouble with this is it over-complicates things and makes the game less playable for first-timers and casual players.

I’m thinking right now that this is fine, as long as it’s clear what MODULE achieves what, and as long as it’s clear that the different classes of unit (Turret/Mech/Tank/Infantry) still have definite characteristics.

In other words, when you see a bunch of enemy infantry, it needs to be obvious that you think “right, I now need to build tower X”. This is where GSB let itself down.

So… in terms of broad principles:

  • Lasers are good against armor, bad against shields.
  • Ballistic weapons are good against shields, bad against armor
  • Missiles are generally average at everything, but have splash damage

In addition to that, I’m thinking of some hard coding so that:

  • Machineguns are rubbish against everything except infantry, where they are devastating.
  • Flamethrowers are the same as machineguns, plus they have splash damage.
  • Bigger weapons (all turrets, and mech/tank weapons) are relatively poor against infantry.
  • Infantry weapons are relatively good against each other.

That will mean some code changes. In addition, I’m more heavily skewing things so that:

  • Tanks do not have shields of any kind. Tanks are all about armor.
  • Mechs have the best lasers and the best shields.

Plus also:

  • I’m adding in construction times for turrets, so you can’t insta-place a turret.
  • You still cannot destroy a tower and reclaim some of the cost. Is this important? I never do it, but some people do. Not sure…
  • You can design (then use immediately) new units mid-battle. Maybe that is a bad idea?

There are a multitude of other things. I’m of the opinion that pretty much *all* maps should have at least two routes, so when you are placing attacking units, it’s a constant game of ‘aha, I see the right-side route is ill-defended against infantry….’ Obviously the first tutorialish map should be simpler.

I do wonder if I should put together a really early playable alpha of the game without any of the fancy graphics, just to let people play with the mechanics and offer feedback. If the majority of music / graphics aren’t even in the game, I could do that without fear of piracy or people confusing it with a finished game, and make it free. Hmmmm. I just don’t know… Would mean a nightmare load of separating stuff out… I wish I’d thought of that 6 months ago.

Game Mode Progress

Today I made some good progress on game-mode stuff. I worked primarily on the ‘assault mode’. My current thinking splits the modes up thus:

Classic mode:

Basically tower defence, with real-time placement. Whether attacking or defending, your supplies increase gradually over time. You can spend them whenever you like, but they cap, so you can’t just sit on them for five minutes. This is an arcade style, keep placing troops or towers game, designed to be singleplayer. This mode works as attacker right now, although AI turret placement will need tweaking. I haven’t implemented AI for attacking yet.

Assault Mode:

Like classic, but with no real-time placement. The total attack (or defense) budget is split into waves, maybe 10 of them, possibly unequally. At the start of each wave, you place your units. The wave then starts, and you are fairly hands-off (apart from assigning priority targets). Once all the attackers units are destroyed or left the map, the wave ends and both sides (player and AI) place the next wave over the ruins of the first. Designed to be singleplayer.

Rush Mode:

Similar to the GSB challenge. This is basically assault mode with just 1 wave. Great big attacking horde vs heavily defended base. This can be played singleplayer or uploaded as a challenge for others (as attacker, or defender). I aim to work on this tomorrow.

Pitched Battle:

This is like rush mode, but neither side is defending. The map is basically a maze of connecting paths that take units right up to each other at point blank, or let them march past each other and fight. Units stop when they reach the enemy, and fire at point blank range. Should hopefully look like a Napoleonic era battle, with lasers and tanks. I aim to work on this maybe Thursday this week. Can be uploaded as a challenge for others.

Of course all this might change. It’s a silly amount of work for one dev in an indie game anyway, so adding anything more than this would be truly mental. I see now why so many tower defense games are so simple.