Showing posts with label X-Com. Show all posts
Showing posts with label X-Com. Show all posts

Friday, 24 January 2014

Airship Dragoon Post-Mortem Part 1

Airship Dragoon Post-Mortem: Part 1

... or ...

I Made An Indie Game And All I Got Was 1D100 Sanity Points Loss: Part 1


Part One: Design


I was so disappointed when the monster on the cover wasn't actually in the game ... but I guess that's what cover art and marketing are for ... :(

UFO: Enemy Unknown ... apparently branded as X-Com: Ufo Defense in the Yoo Ess of Ay for reasons I never bothered looking into ... but generally known as X-Com to everyone who played it ... was the brainchild of @julian_gollop and just one of the series of his turn-based tactics games. I had unwittingly played Laser Squad and Lords of Chaos without drawing the link between their creator. UFO established X-Com as a brand and franchise with numerous sequals, Terror From The Deep being more of the same but underwater, and then a few more games in different styles/genres which I never liked the look of and thus didn't play. It also spawned a slew of inferior imitators such as Sabre Team, which was a lesson in how not to design an interface ...

Sabre Team: Interface Y U Needlessly Take Up Nearly Half The Screen!?

Having been a player of "hardcore" strategy and tactics games such as Steel Panthers - World War 2 and modern conflicts 1946-2020 with free, low-res versions here - which featured a dizzying array of weaponry, equipment and real world mathematics of projectile to angle of attack to armour penetration - casual games have never offered me any appeal. Why do something for a few minutes if you like it? I'd much rather immerse myself in something thoughtful for a few hours.

Steel Panthers: Teh H4rdc0r3z .. whatever that means ...

And so the concept for titleless game codenamed Badger Of Doom before quickly becoming Royal Corp Of Dirigibles was born ... which underwent various name changes over the 2 and half years of organic development (more on that in Part 2) before I woke up one morning with a jolt and the title Airship Dragoon in my head. It was faction neutral (no Royal, they're the Brits in the game), described the aesthetic/world genre as steampunk (Airship) and described the troops who get dropped off at the battlefield via dirigible (Dragoon) ... and it was 2 words which was more memerable. So I set about the design of my X-Com styled tactics game which shall now be forever known as a Golloplike ...

Steampunk

First up, steampunk. I had ummed-and-ahhed about a science fiction setting - too much like X-Com and it turned out someone else was doing their own (and apparently much more literal) X-Com remake (Xenonauts - by someone who appears to know a hell of a lot more about marketing and garnering attention than I do) which was soon joined by Big Business making an actual X-Com reboot. I had also briefly considered modern warfare but that was easily dismissed as far too limiting - and it appears that Arma have now gone down that route. So, steampunk ... an absolutely freeform, make it up as you like, genre with no limitations. Want to make a sci-fi BFG laser weapon? No problems, just give it a silly name like "Atomic Death Ray". Don't really want to have it all set on Earth in a Victorian science fiction age? No problems, throw in an amusing backstory about creating an interdimensional gate to go steal all the coal in the parallel dimension of ancient earth on the super-continent of Pangea!

Design-wise, I wanted  a utilitarian look, devoid of unneccessary frills as long as everyone had a hat, some sort of goggles and exquisite facial hair. Aesthetic-wise I wanted to steer away from realism and grey/brown to go for something bright, colourful and stylized.

And so on to the problems I always had with the original X-Com ...

Tons Of Equipment But Everyone Ends Up The Same

X-Com had lots of equipment. You could research and manufacture new weapons and alien artifacts. There was plenty of variety ... but here's how it went ... you upgrade to laser rifles, you recover an alien heavy plasma rifle. Everyone gets a heavy plasma rifle, 1 heavy plasma rifle clip - there was so many bullets you wouldn't run out, an alien grenade, and the best armour available. Except for a couple of guys with Blaster Launchers and a Psy-Amp added to their load, everyone had the same kit, because it was the best kit. The huge variation in equipment was largely needless, and after one play through you knew what to prioritize for research early on and what you sould forget about.

The obvious way to combat this and make a variety of items and weaponry meaningful was not just to create upgrades but also distinct classes. I settled on six classes, each with 4 upgrades, and a general class of items anyone could use. Class based weapons and equipment would have negative modifiers if used by other classes.
  • Fusilier - light infantry, close combat
  • Grenadier - heavy infantry, larger calibre weapons
  • Gunny - heavy weapons guy, big guns, lots of bullets
  • Marksman - sniper, long range accuracy
  • Recce - scout, close range, can spot boobytraps
  • Sapper - engineer, explosives, spot, lay and diffuse boobytraps
  • Militia - not really a class, what recruits are before they get promoted to a class
Sapper was originally envisioned as a two fold class, for laying, spotting and diffusing boobytraps as well as being portable anti-armour with their various explosive weapon upgrades. Initially I had envisioned 3 classes of tank (light, medium, heavy) - well, Assault Guns, which are basically a tank without a turret - but initially testing proved for them to completely unbalanced. The low upgrades of explosives meant that it was far too difficult to either get close enough to be in range or were too inaccurate to be used at long range. The higher upgrades of explosive weapons rendered tanks fairly obsolete. It got to the point that which ever side lost their tank, would lose the battle. Having found no way of balancing them, tanks were dropped as a feature early on, and the protective value of personal armour was increased to compensate and give the more powerful upgrades something to get their teeth into.

Rookies ... Darkness ... Everyone is going to die ...

Individuals And The Rise Of The Ubermensch

Troops in X-Com were individuals, having their own identities and statistics. In many ways the beginning of an X-Com campaign was lesson in failure, you'd equip your rookie troops, send them out on a mission against a numerically lesser but technologically superior alien force ... and then watch them get cut down on mass, see the survivors panic and run around like headless chickens ... and then watch them get blasted with plasma too. Eventually, with ever rising fatalities you'd overcome the enemy, and the survivors would gain experience, rank and upgrade their stats. Soon you'd have a few veterans and those veterans were discernably better than everyone else. Whilst shooting was done as a percent of action points, movement always cost the same, so a veteran soldier would soon transform into some sort of superhuman sprinter that Jesse Owens could never hope to catch, leaping from one side of the map to another. Health also went up in the same manner until a soldier could survive a single blast from a Heavy Plasma Rifle - with huge but not total health loss - whilst a new recruit would be instantly killed.

I never quite liked this approach to superhumanism and early on had decided that all troops, regardless of rank and experience should have the same ability in movement and an equal susceptibility to bullets. No matter how good you are at something ... you don't suddenly become bulletproof. Newly recruited troops would be given a class based on their stats, and each class would have it's own stats for troop upgrades. Troops would level via their rank through 10 levels and only class based stats (primary +10, secondary +6, tertiary +4) would be increased.

I did love the idea of morale and troops panicking, going beserk and being routed - something which also happens to the enemy - and went as far to call it "Moral Fibre". Troops suffering "shell shock" during the first half of the previous century were said to be "LMF". In game, a sudden loss of comrades can cause all hell to break loose as troops flee from danger or put suppressing fire down on anything they can see - sometimes with astonishing effect as they drop enemies left, right and centre ... sometimes with horror as they mow each other down in the crossfire ...

"Bottling It" (lacking bravery in English slang) has a less clinical feeling than saying routed ...

The Footslogger Not The Armchair General

Strategy and squad tactical games have traditionally had a tendency to viewed from directly above (Steel Panthers) or isometric (X-Com), with the camera freely able to move over the battlefield in a sort of God's Eye View. However I wanted the primary focus of the game to be on the troops themselves.Whilst you do very much play Troopee (Troop Commander) the actions which you order and done via the individual troopers, the camera centred upon them as they move. When they come under fire the bullets whip past them - and also past the camera. It creates an immediacy of presence. Regardless of the player's ambivalence to the individual's life, when they are cut down in a hail of bullets with a scream, fountain of claret and collapse to the ground, it is very much in the player's face, not viewed in some disconnected manner.

In X-Com there was an endless supply of troops with whom the player could upgrade, swap and change for each mission. You could literally have scores of troops sitting around and slowly try to get them all more experienced. I decided to limit the number of core veterans the player could have to just 16. Suddenly losing veterans meant something very immediate. Veterans can only be replaced by Militia survivors (who there is an endless supply of) but there class is predetermined. You can very easily be wanting a sapper or recce to prevent your troops from walking into unseen boobytraps and may have to take the decision to retire one of your better veterans to make room for the new one. Marksmen are also rarer than other classes, intitially much rarer but for the sake of balance I changed that in an update to make a little more available.

Other Stuff That Isn't Getting It's Own Header

I'd liked the day/night cycle and different environments of X-Com and decided on a randomized weather system. I was also tired of playing games where battles were fought at very close ranges. If you take the average FPS, let's say CoD for sake of arguement, firefights with high velocity rifles have a tendancy to take place at 20 feet, and a sniper rifle is doing well to strike a target 100m away. I wanted a clear difference between weapon types, classes, and their ranges. Snipers and Gunny are clearly long range classes, their weapons reflect this, with Fusilier and Recce both being light, close-range classes, and all others being medium. Clipping long range battles at 300 metres gave plenty of scope for tactical movement covered by fire support, whilst preventing both teams firing into each others' spawnpoints/deployment areas.

It was during this point that I gave the troop classes their own ranges for opening fire in the enemy's turn. This provided an extra tactical dimension were Fusilier and Recce could be used to protect the other classes at close range, and vice-versa. In bad weather long ranges classes become less useful, but more useful in clear conditions.

Ammunition was another thing I've noticed disappearing games in the pursuit of casualization. Bullets are heavy things which automatic weapons devour. Take your average real world 7.62mm machine-gun, it can fire 750 rounds a minute, 750 cartridges weigh 25.5kg - that's 55lb. That's what I have on my weights bench ... for a single minute of intense shooting. I wanted bullets - and the troops ability to carry them - to have a strategic value. It's quite easy for a trooper to blaze away at half hidden targets and use up plenty of ammunition in the support role. Which is why you should be navigating an assault team around whatever cover is available whilst the enemy are pinned down.

As an example, I once fought a great battle where my troops and the enemy had met each other on open ground, inflicted casualties on each other before retreating into cover, blazed away at each other from it before both sides rushed forwards into no-man's land to throw grenades at each other whilst looting the dead of their ammunition. It's just how the battle panned out, and it's the sort of example of emergent gameplay which is what I wanted Airship Dragoon to be about.

I've been typing this up all day ... :S

Coming in Part 2: Organic Development And Why No One In Their Right Mind Would Do It!

And as ever ... Greenlight votes very much appreciated! :)






------------------------------------------------

No exact date for writing/publishing part two as I am working on the next update and mod tools. Here's a quick video of mocap animations and camera shake on when fire that will be in the next update.



Tuesday, 17 September 2013

I Am The One Percent: Airship Dragoon is Released

Today I enter the hallowed corridors of those amateurs, tinkerers, modders and aspirers (aspirers? is that even a word?) who have actually finished and commercially released an indie game. I am the one percent.

After 2 years and 3 months (note to self, we have got to shorten the blinking heck out of development length next time around) of what seems somewhat akin to self-flagellation ... and even more disturbingly - 5 years and one month after deciding to make some sort of indie game - I have finally managed to release my first commercial indie game.



There she blows! A box shot of ... a box which doesn't exist obviously ... because it's a virtual product.

---------------------------------------------

But you can't have a release ... without a trailer .. so here's one of those ... looks best in HD but you knew that already.




Also, www.yorkshirerifles.com is now a thing.

A retweet of this, would be appreciated.

It's early days on the whole shipping front. I've set up my own site shop with FastSpring (as used by numerous indies including Frozen Synapse's mode7games - and the soon to be released FriendZone American Robot Hand-Egg Simulator ... does that joke ever get old? ... er yes ... :S ).

I am negotiating with Desura at the moment, and once that is sorted out, it's time to mount an assault on Greenlight and spam the gaming press with review copies. Slowly, slowly, catchy monkey - or embarazi as they used to say when I lived abroad.

I have set up an IndieDB for Airship Dragoon, for anyone who may use it.

The whole shipping/e-commerce/desperately seeking attention thing is all a bit new to me ... and like everything else ... in life as well as development ... I'm making it all up as I go along.

Eventually I will get around to doing - what is likely to turn out to be a huge - post mortem of the last 2 years and 3 months of development.

In the meantime, you may want to play Airship Dragoon which of course has a free demo.

----------------------

So, amongst all of this, I might actually get around to porting my old Valkyire Chronicles Style Action-Tactics-Hybrid over to the new Torque3D MIT version, and start umming-and-ahhing about which of the various projects whirling around inside my head will be my next game.

Softly softly catchee monkey ...

Monday, 28 January 2013

Feature Complete! Gameplay Finalized! No, Really.

Feature Complete! Completely Featured! Gameplay is all done and working as desired! Artwork is still somewhat a Work In Progress - but one thing at a time.

 After finalizing all of the gameplay script and code for the "Main Campaign" we actually have a fully working game.

The world generates randomly, the player and 5 Ai nations enter the game at equal distances around the edge of the game world, and promptly proceed to conquer it, tangling with the occaisional pirate stronghold and of course each other.

So here's a quick - and considerably edited - gameplay video of it all in action. It's early in the campaign so all factions are using poorly trained conscripts. We start off with the player already in "Tactical Battle" mode against the pirate enemy. It's a mountainous environment - but I only have one map at the moment so it's temperate terrain as a placeholder but it is using the weather and modifiers for the correct environment so it's snowing and everyone has a -10 actions modifier for not having warm armour on.

After a cunning victory - helped by superior numbers and low quality opposition - it's time to permenantly recruit some upgraded conscript survivors to the force of "core veteran troops" who are now giving a promotion and a class type based on whatever their personal attributes mark them as best at. Then back to the "Strategic Overview" mode where our dirigible full of brave chaps occupies the area we just won in "Tactical Battle" mode.

The Ai factions play out their own turns, distant from player so no view of what they're all doing and then the next turn starts afresh. I upgrade my "Grenadier" class by buying the blue prints for rocket grenades.

Next up we move tour lone dirigible into place for another assault against a pirate occupied territory. It's mountainous terrain once again, with the cold weather modifier but this time it's just cloudy and not stormy see we can see a bit further and both my troops and the Ai will have opportunities for "passive fire" during each others movement phase.

This time it's a defensive battle as I have to prevent the enemy from capturing my flag. The Ai chooses their tactics based on their own available troops and the terrain and weather conditions with a randomizer. They choose a full frontal assault which turns out to be a bit hasty as my superior force - in both numbers, weapons and veterans - hammers the tightly packed enemy advance with bullets and our newly aquired rocket grenades.

And then recruit more promoted recruits to my ever growning veteran force before getting back to capture the territory with the old dirigible in the "Strategic Overview" mode. And so it shall continue ...

That's the upshot of the 15 minute and 1 second video below.





I've thoroughly tested all the later parts of the campaign, fixed numerous bugs ... mostly caused by the fatigue of crunch, silly typos and the sort brought on by tiredness ... and am now satisfied that we are feature complete on the actual gameplay.

Obviously there's plenty of tweaks and tiny improvements available behind the scenes, you could fiddle incessantly for the rest of the century with these sorts of things, but it all works as desired.

Next up isn't a move into finalizing all of the art assets yet though. It's porting it over to the brand spanking new Native Script Massive Improvement Branch at https://github.com/GarageGames/Torque3D/tree/consolefuncrefactor that was designed by James Urquhart and embedded into a branch of the brand-spanking new "Torque3D MIT 2.0" by Dave Wyand. This should give the branch a damn good testing, and probably me too as I've been using 1.1F and not taken particularly much notice of the MIT code as of yet.

Extra info on that branch here and in this previous blog here.

Hopefully that'll all go vaguely smoothly.

After which it's back to art asset creation and to replace all of my placeholders with some finalized models and textures before thinking about a demo release hopefully towards the end of February.

Wednesday, 18 July 2012

Long And The Short Of It, Working Campaigns and SaveGames

Long Campaign, Short Campaign, Save Game ... cos you can't really play through the whole thing in one sitting ... well, you could if you never have to ever do anything or go anywhere, but must people occaisionally have to.
And behold, there is a Short Campaign.

Don't have time to conquer an entire continent in a procedurally generated, airship fleet commanding showdown between the world's Great Powers, yet don't want to play through a one off, single tactical battle, but fancy something with a bit more longevity?

Then maybe the Short Campaign is for you. Also known as "The Citadel Campaign", "The Dastardly Pirate Citadel Campaign" ... and possibly a few other things until I work out the correct name which I shall ultimately call it. One thing is for certain, it has Dastardly Pirates and a Citadel ... actually that's two things ... Two things are for certain, it has Dastardly Pirates and a Citadel ... actually it doesn't have a real Citadel because I haven't made the model yet ... so you'll just have to pretend for the time being.

The Short Campaign comprises of a triangle of territories (hexes) reaching 8 or 9 at it's deepest point. They're all under the control of the Dastardly Pirates who send out flagons of treason from their Citadel Fortress right at the back, and it's up to the Regime of your choosing to blast their way through enemy territory and storm that Citadel.



Blank/blue territories are captured ones, and the player's regime gains cash and extra troops from wrestling them from enemy hands. Seizing fortifications allow for class upgrades. The deeper into hostile territory the player pushes, the more skilled and better equipped the opposition becomes. The player can only launch attacks from territories which they occuppy, and each adjacent captured hex gives additional troops for the assault.

And this is where the main part of the game is now fully functional. Yeah, in bold and everything.

From the "Campaign Overview" section, you select your troops, equip them, and then it's straight to the "Tactical Battle" mode where you direct your chaps around in hot turn-based squad tactical action! The end result it recorded, your veterans are upgraded or if deceased removed, successful conscripts get promoted into the veteran core, loot gets gathered, and the Campaign world is updated to reflect the changes, territories change hands, progress is made ... or not if you got your bum whupped by the opposition in the Tactical Battle.



And when the Campaign reloads, updates the changes, and it all continues. It's very much in the mould of the original X-Com "Geoscape" to "Battlescape" and back again - except you're fighting for possession of territory and territory change hands depending on battle results. And it all works - exactly as I'd envisioned (or at least hoped it would) when I first started, 13 months ago.


HUZZAR

In fact, 80% of game logic is complete and bug-squished. Obviously there's a bit of tweaking that can be done here and there, but it works. The Short Campaign Mode works in it's entirety, the Single Battle Mode works - though I've only one map at the moment and I've yet to introduce the Armoured Cavalry class option, and the old Long Campaign Mode (the thing with the airships) works save for 3 known bugs and a bit of tweaking.

And I've knocked up a save game system which works across all 3 game modes. Because of the various jumping back and forth in the Campaigns between "battle mode" and "campaign overview mode" it took a bit more effort than just saving out the current missiongroup. It's going to get a slight tweak to incorporate the difficulty level when displaying available saved games to restart, but apart from that it works as desired. Each game mode has 10 saves.



There is now also now a difficulty setting for campaigns, so the player can choose their own level of challenge.

In the video below is it all in action, abridged obviously as time and filesize are premium in both uploading and watching these sorts of things. There's also a little hiccup when I attempt to save from the "tactical battle" part first time as I had fix a bug and re-execute the gui to get the info to display correctly ... note to self: don't write a save game system at 5am ...

The combat is very abridged, just a little taster but if you've watched any of my previous videos you'll know the gist. As it's early on in the campaign both my troops and the Ai's are lowly conscripts with the most basic equipment, and thus have trouble hitting the broad side of barn. In the end the Ai throws in the towel and flees the battle area after taking a few casualties.


Thursday, 31 May 2012

I Break Everything And Then Fix It! Oh The Exciting Life Of Indie Deving!

I had a liver detox diet, lost the strange bicycle tire which had appeared around my torso, eat more fruit than anyone had ever eaten before, took up skipping - which is knackerising - bought a few crates of ale and a bottle of baffling expensive rum under the guide of death metal celloist (it was a very pretty bottle),
sat about in the garden because it had finally stopped raining in the Shire of York after the wettest Spring since 1907. And even found time to break everything that I'd done dev-wise whilst trying to fix it.

So I ended up changing my art style again ... immediately after I'd decided on what it was going to be ...

So it is now more "painterly" and less "abstract".


I'd done a bit of refractoring my working level, shrinking the size of the hedges a little and opening more gaps between them. I'd also noticed that I'd been getting a fair few failures on pathfinding with the Recast resource. My terrain is very bumpy and I'd set >1500 custom class CoverNodes about and done pathfinding between them with an automated script to test around 7 million paths. Initially I'd a rather worrying 2.5 million failures, and after a bit of saving throws in my pathfinding scripts, I'd got that down to <200k, and then thrown in a simple "move to nearest node where you can actually get a path" incase that 3.7% failure rate occured in game.

I'd improved my Ai, getting them to make decisions about when they should try and hide from the player. Previously they'd either stopped at distance if they were "support" or advanced if they were "assault". I've always been a fan of turn based strategy/tactics games ... which is why I'm making one obviously ... but sometimes their Ai has been a bit ... daft. Steel Panthers I'm looking at you. I added in a whole load of new thinking to make the computer act more in the way a player would, but still using it's randomized battle plan.

Suddenly my Ai were filled with awesome and powered by buttkicking, so it was time to remove all the little helpers I'd given them previously to make them more competitive, like maxing out their stats, they now get the same chances for decent stats as the player.

Which all goes to make battles more competitive, varied and fair.

Somewhere amongst all of this I'd noticed a few bugs so I'd fixed them, and thus managed to break "many things", again mostly pertaining to the Ai. After a fair bit more hitting IDE with a mallet I got things working again as they should do.


I'd also made a start on creating some player characters - or at least a "base character". I'd looked at some of the meshes that I'd got from Evolver for use in Blender some time ago, and studied one of these as a base for rigging and animating a custom character. I'm doing a SteamPunk vibe, so everyone "struts imperiously". I'm still using Ye Olde Blender 1.44 with DTS exporter 0.964, though I export with collada for the foliage/trees/bushes so I can use vertex painting.

I'd also made a whole load of improvements to my GUIs, such as adding a new button for reserving a shot at half maximum range if you don't want your little chap to be wasting shots on things miles away that he's unlikely to hit. In "loadout" I'd also added the ability to equip one chap and then have his equipment cloned to all unequipped troops - money and individual strength/encumberance permitting - which is incredibly useful when you have a bag of Conscript Militia who can only use basic equipment until they get promoted ... should any of them survive the battle.

Still to do is a bit more Ai thinking tweaking, a bit more environment tweaking, creating some finalized models for troops and weapons, testing the assault and defend gametypes, doing the art for GUIs, and errr ... general stuff. My bug fixing list gets smaller, my todo list doesn't seem to. Oh the exciting life of Indie Deving!

tl;dr good things happened, bad things got fixed, I'm eating a lot of fruit.

Friday, 27 January 2012

Something That Vaguely Resembles A Game ...

 Does exactly what it says on the tin! I've got a full blown ... if rather rough ... battle with the Ai on the go - and it all works! Well, apart form the bits when it crashes - but I'll see about fixing that later.

Well, it took 8 months but it's something that vaguely resembles a game. At least the single battle part is, which will eventually be squeezed into work with the larger Strategy-Flying-Around-Conquering-Stuff part.

But anyhoo, it works "just as planned" ... only rougher 'cos there's various parts which need tweaking, changing or just downright fixing.

I'd struggled for some time ... and pontificated considerably longer ... about how to get the Ai opponent to choose a team of troopers from the available resources of cash, veterans, 6x classes, and class-level based equipment. Initially it seemed easiest to make pre-defined teams with minor variations ... right up to the point when it became clear that this was obviously a rubbish way of doing things.

After a few morale boosting sessions where I charitably lined the Chancellor of the Exchequer's pockets in a country pub ... and trying to kill a seagull that oblitered the procedurally generated algorithm I was dreaming about, it all became quite clear.

I created a simple yet awesome system which procedurally generated an opposing force within the constraints of available cash, veterans and class levels based on weather, strategy, objectives and multiple squad tactics. No, I don't remember how ... it was all a dislocated haze, but then for Stevie, Real Life ™ gets fainter and fainter everyday ... (I find it helps if you say that in a strained and high pitched voice)

So there it is, an Ai team playing to the strengths afforded to them, using one of 8 different tactical approaches. These are fairly regular sort of tactics and are as follows:

1. Extended Line - sweep down across the battlefield, advancing on the enemy ... it worked in the Great War! Oh wait ... no ... no it didn't ...
2. Frontal Assault - group everyone together and go straight for the enemy ... and hope they don't have to many MGs, mortars or anything else that makes a mess out of a large group in open terrain ...
3. Hook and Line Left - central support group with flanking assault group to the left.
4. Hook and Line Right - guess what this is the mirror image of?
5. Horns of the Buffalo - Zulutastic. Dual assault groups flanking on either side with a central support team.
6. Pincer Movement - twin flanking assault groups.
7. Flank Support - twin flanking support groups engaging at range.
8. Skirmish Line - like extended line but made up of long range support gunners, keeping their distance as much as possible.

Needless to say, weather and terrain conditions are taken into account when the Ai are choosing tactics and classes. So if it's pitch black and everyone is tripping over each other in the dark, there's a lot more chance of their being assault groups than support groups, and likewise, if it's a barren, featureless desert with visibility stretching for miles/kilometers/leagues/cubics they're not going to create vast numbers of assault squads armed with pistols. This doesn't mean that they won't occassionally pick a less suitable tactic - just that they are a lot less likely. History is filled with plans which "seemed like a good idea at the time".

Anyhow, as I mentioned, it plays like a game ... except when it doesn't and crashes. Upgrading to the newest version of the engine might help - still using a customized previous version ...

I've still got 4 post-it notes full of bugs to sort out. And the player really does require a lot more feedback on what is happening during the enemy turn. At the moment reactive fire works fine, the camera mvoes to the player's trooper being targeted and positions itself so you can see who is shooting at him. Ideally this also needs to track visible enemies whilst they move. Talking of visible enemies, spotting works fine, showing and hiding opponents as they move in and out of sight, so no rotating the camera around an obstacle to try and spot an opponent that your team members cannot see.

Reactive fire works both ways, requiring the passive team to successfully spot and have enough initiative (based on distance, stance, angle) to either fire first or fire as the opponent moves.

The Tactical-PlayGUI (as opossed to the StrategicOverview-PlayGui) is the only one which still requires to be overhauled, and there's a definite need to highlight the start of the player's next turn as I've spent a while staring at the screen before realising that I had control of my buttons back.

I also need some sort of victory/loser screen detailing what your troops did and what sort of performance you had.

I'd been concerned over a few things and had halved the weight of ammo for fear it was too easy for playesr/Ai to run low. Turns out they don't actually use that much (either human or Ai) in any of my test battles. Also, battles are over a lot quicker than I had expected. Initially I was a bit disturbed at the ease I won my first battle 10-3, but then lost both my next battles 5-10 and 7-10 respectively when the Ai used different tactics and the terrain was less open. With both forces equal it's a fairly nice challenge.

Gah ... enough typing ... video of a battle, with the boring bits edited out. Features plenty of spotting, reactive fire, some healing and some panicking in both teams over the deaths of team-mates.


Easier to see what the hell is going on in HD but you knew that ...



Next to do is improve how the Ai decides how to start each turn, which weapon to go with when they have multiples. They already do pretty well when deciding on grenades or bullets. Currently I have the "Meeting Engagement" gametype working pretty well, but also need Assault and Defence. Also tanks/armoured cavalry needed or the Sapper class isn't going to have too much to do with it's specialized explosives. Finish up my save/load solution and eventually cram it all into the strategy part of the game so that the campaign mode works fully. And of course art ... which all comes last after the damn thing works properly.

Wednesday, 21 December 2011

Data, Data, Data, 28 Items, Multi-Purpose Ammo, Artillery

Item data overload! All items finally done, at least the data and how they all work in game - still placeholder models ---> Art is last on the list. Also multi-purpose ammunition, for people who are tied of not being able to use similar bullets in multiple weapons.
--------------------------------------------------------

Weapons, items, armour, artillery ... done, finally. Or at least the data and testing for them all it done, if not the final 3D modeled form of them - that's for last on the list of "What Needs To Get Done And In Order To Have Done Everything". So everything is still placeholder in the visual department. No pics this time, but cue vids.

So, here's a quick recap.

There are 6 classes.

Each Class has 4 levels of items.

There's also a "generic" class of 4 items everyone can use without penalty.

Ammunition of a each caliber can be used in any weapon of that caliber.

There are booby traps which can be placed before the battle for the enemy to walk into, and thewse can be detected and captured by the Sapper Class.

Most items are weapons of some form, some are equipment, and some are defensive (like armour).

Light armour is ... er, light. Heavy armour is ... er not light. Stealth armour is camouflaged. Whilst thinking up various defensive equipment for the classes, I also thought it might be fun to have some "non-conventional". I decided on a certain type of armour, which defended the user not by stopping damage, but by reducing accuracy of the firer by dazzling them. For a visual, I decided on some sort of energy shield, and was drawn to the old WW1 battleship "razzle-dazzle" camouflage schemes - only with a bit more colour in it and a moving pattern.


Amongst the variety of standard and conventional weapons I thought up a few exotic ones such as a badly spelt "flammenwaffen" - since renamed Flammenwerfer - a lightning gun that fries things - unless they're in a faraday cage ... say totally metal heavy armour ... in which case they don't do any damage at all - various rifle grenades, portable mortars, flamerockets, sniper rifles and machine-guns ... there was also the Railgun, which punches a hole through everything for 200 metres, reducing damage as it goes.



And artillery, in fact a few different types of artillery, each with different damage, blast radius, accuracy, but also a concussion radius to stun. There are rockets which are all noise and no trousers but scare the hell out of everyone nearby and cause large morale loss and panic. More standard artillery strikes and heavy mortars, guided flame bombs, and also carpet bombing by dirigible.



And for all of this hurty-hurty stuff, I needed a healy-healy system. So aid-kits are dual purpose, healing wounded squad members as you'd expect by increasing health - but also being available to create medivac. I rejigged the damage system so that disabled squad members who are not killed outright will fall wounded and slow bleed to death ... unless you can get someone with an aid-kit to heal them and call in medivac. Eventually they'll be a nice screen for this medivac but right now there isn't. Medivac-ing also boosts everyones morale a little as it's good to see your mates saved to fight another day.



And throw in a shed load of bug fixes and general improvements.

------------------------------------------

My original deadline of completion by 1st January 2012 will be missed by a mile - but I'm still vaguely on course for completed gameplay with placeholder art. After a few rewrites that were costly in time, and the occurance of total burnout around October that caused an end to continuous crunch, it's still not a bad effort and should be completed early in the new year.

Wednesday, 9 November 2011

Kitting Up, Deploying Out, Inventorial reFlummoxing

Interface for "one-off battle-mode", choosing your squad and tooling them up to the nines. Also a total rewrite of the inventory system ... again.

--------------------------------

With the vast majority of the dirigible moving, hex gobbling, Strategy Campaign Mode gamelogic completed, it was back to the Squad Tactical stuff.

To make testing and debug rather easier I developed the "one-off Battle Mode" to cut out having to go through the Campaign mode to spark a battle. In the final version, the single Battle Mode will be the training mode for the player to familiarize themselves with squad combat, or just if for a quick and casual "get to the actung, baby" mode.

There are various preferences with this, from squad objectives of clearing the area of the enemy, to defending or assaulting team headquarters ... which will probably end up as being a sort of first to grab the enemy colours wins when I get it sorted out.

Difficulty controls how much money, veterans, quality of veterans, class based items are available. It works as a balance, "Easier" gives more of the opponent's default ratings to the player, "Harder" strengthens the opponent and reduces what is available to the player.

There are also options for terrain type and weather conditions, with weather reducing visibility and spotting chances. Weather also acts as a factor to which of the eight offensive strategies the Ai opponent squad will decide to use.



And of course the player can choose which ever of the six factions to play as.

This then leads to the "deployment and equipment screen" which is the same before any battle regardless of game mode. Here you can select which veterans, or untested militia troops to deploy, areas where they'll start, and all the equipment and ammunition that they'll be carrying into battle.

There are six individual classes of squad member - each with four levels of specialized equipment, which in Campaign Mode have to be researched and purchased, and in Single Battle Mode are dependant on the Difficulty Setting. Save for a few highly specialist items, any class can use another's equipment, but they will usually incur some form of penalty. For weapons this is usually a reduction in accuracy, for armour a penalty in the squad member's Action Points. For some very basic items there is no penalty, eg: everyone can throw the Recce's flashbang without penalty as it's used just like a standard grenade.

This equipment and deployment section brought me round to the terrible task of redesigning the whole inventory system ... again.

Terrible because apart from it being fairly convoluted and time consuming ... it's also as boring as hell.

But it does look and work better now, being much more user friendly. Gone are the segregation of weapons, ammo and equipment - now replaced with a scrollable up-down list of everything together. Originally I'd seperated so that you could have weapon and ammo displayed together - but the fact is that you can do that with this method AND show an additional 60% of items with a lot less scrolling involved to get through them all.



The squad member deploys into the game with the first weapon or item in-hand that was in it's deployment equipment list. And the deployment equipment order is now matched in the in-game inventory.

I've also prevented live explosives from being picked up. There's a two-fold reason for this; firstly, putting something that is about to explode in your backpack is a very bad idea and secondly, I wanted to eliminate the "live grenade relay" that was common in the original X-Com, were you lead scout spotted the enemy, and then the guy furthest away pulled the pin on a frag, and tossed it from one side of the map to the other, along a chain of squad members in a highly unrealistic and rather cheaty manner. This is now a no-no.

And that's about it for this blog. Next up is sorting out the enemy Ai team to successfully use one of the eight different offensive tactics I've come up with for them, and generally sort out the whole tactical battle system and make sure it works. Also work out a formula to how the Ai opponent decides to deploy and equip it's forces. After that it's integrate it into the campaign mode with team member promotions for successful survivors with extra experience, and adding militia who did well (got a kill and survived) to the core of veterans.

In the meantime, vidya of the above in action.

Saturday, 22 October 2011

Fog Of War, Classes, Militia, Deployment, Making It All Work

It's been a hectic month, there's been a real ale festival, I watched my local footy team actually win a game - thus breaking the gypsy curse of never seeing the team I'm supporting win - whilst standing in an all seater stadium amongst a crowd with mis-spelt tattoos on their faces and listened to some interesting chanting, often directed at the supporters of the same team in the seating opposite. There was also a mini-heatwave that saw me sat outside at 1am in a t-shirt, wondering how the hell my friend the teacher was surprised to learn that stars were suns ...

... and I even got some dev-ing done ...

After finishing off the strategy component of the game, it was time to sort out how to hook up the squad tactical combat into it all. This needed a fair a few things - mainly a squad. So I've devised a "Core Veteran Squad" of troopers who gain experience depending on their mission performance (and continued survival obviously). Any time that there is a battle, the player can deploy a certain number of troops depending on whether attacking/defending, vehicle type in use, terrain type being fought over, whether it's garrisoned, etc, etc.

The deployed troops can also partly or wholey include members of the "Native Colonial Militia", who, should they do well and survive the battle, can be upgraded to your team of "core veterans" with an assignable class.

Initially I was thinking of just letting the player hire as many troops as the wanted ... but with the class system it seemed more strategic to limit the number of available veterans and allow a constant supply of militia, who can earn a place in the core team. In the end, I decided that 16 was the best number, thus forcing the player to choose exactly which classes were deemed important and in what ratio. 6 Classes / 16 slots.


British Dirigible Deep In Unknown Territory Flees The Attentions Of The Austro-Hungarian Empire -Only To Run HeadLong Into The US Republic's Area Of Control.

Because of the relatively small core number I've also introduced a "saving throw" concept in the tactical battle, where a downed veteran can be saved by a comrade with a aidkit if they get to them within 2 turns, and then call in medevac to evacuate them from the battle. After 2 turns of lying in near death, the unfortunate trooper will finally succumb to their wounds - and you'll need to get a surviving militiaman who's shown a bit of gumption in battle to start a new career as a veteran. Names and initial abilities of Militia are randomized (names depending on factions). Skills are:
Accuracy - shooting, throwing, not missing, etc.
Courage - guts and glory, sussi, determines if they panic, flee, freeze or go nuts when their Moral Fibre drops due to injury, team losses, etc.
Reactions - who shoots first, can they get a shot off before the enemy runs from cover to cover, etc.
Strength - how much they can carry, how far they can throw.
Vision - spotting the enemy, and in the case of Sappers and Recces, spotting booby traps before your whole squad walks into one and vanishes in a big flash.

I've introduced the "Class Progression System" where the player can buy blueprints of new technology for each of the 6 different squad member classes. This goes in 4 tiers, each tier's research doubles in cost. Whilst most items/weapons can be used by other classes, doing so imparts a penalty. Surviving veterans gain experience which increases rank, and rank increases all attributes with x4 and x2 modifiers on primary and secondary Class based skills. So, here's a quick overview of the Class System:

Grenadier - (heavy infantry) mighty beefcakes of battle equipped with the large calibre stuff.
Primary - Reactions, Secondary - Strength
Fusilier - (light infantry) More guile than brute force.
Primary - Reactions, Secondary - Accuracy
Gunny - (heavy weapons) BFGs all round for fire support. Weighed down with too much ammo to run when attacked, Gunny has balls of steel - and is more likely to go nuts than any other panic type.
Primary - Strength, Secondary - Courage
Marksman - (sniper) Cool and calm, Marksman's languid pulse allows for accuracy at long range and always goes for the headshot. Marksman has a smooth aiming style and cannot do reaction fire during the enemies turn unlike all other classes.
Primary - Accuracy, Secondary - Vision
Recce - (scout) the guys at the front pointing the enemy out for everyone behind them. Can also spot booby traps at 25% Vision skill to yards/metres.
Primary - Vision, Secondary - Reactions
Sapper - (engineer) removing stuff from Earth with cool explosions, also spotting, laying and disarming booby traps. Is the best bet for tackling tanks/land ships/panzers if I get round to implementing them.
Primary - Strength, Secondary - Vision

Your chosen team of guys deploy to battle at one of the sides of a square map, going North-South, East-West, etc. In the deployment menu you can decide which area left/centre/right each guy starts at, so you can create little squads from the off.

The terrain type of the hex being fought over determines the battle terrain, which is then decided by randomly choosing a mission with that terrain type. Weather is again randomized and affects the vision skill. Clear gives full vision, cloudy reduces it to 200 units, stormy 100 units and night just 50. Various weapons have different levels of accuracy, range, damage, shots per attack and reloading time. No point giving everyone long rifles at night when firefights take place at sneezing range.

And back to the strategy part of the game ...

The game logic for this is complete. The Ai teams level up and spread out, basing their actions on one of 5 different strategic approaches. If the player's battles are set to automatic, the game plays through completely to the finish.

I've introduced a "fog of war" element, done over a few US IPAs last night ... nice when things work without too much fixing. The Ai dirigbles in the pic and video are only visible to help me see what they're doing in testing. In-game they'll be hidden unless near territory the player has uncovered.

Next up:
I've got to sort out the buying of equipment for deploying the squad to battle, and also artillary support.
Come up with a method for the Ai to decide exactly who and what gets deployed for it's part in the battle - 10+ Ai battle tactics are already done.
Maybe ... Come up with a system for deploying a tank / land ship / panzer in the tactical battle.
Maybe ... Cause resources of hexes to dwindle over time ... by 20 turns you can really be bringing in some cash.
Smooth out a few remaining issues between how the strategy and tactical gametypes relate to each other.

After which, all the gameplay will be done, and I'll be on to replacing all of the placeholder art with the real stuff.

Vaguely ... still on for something close to resembling a finished ... or at least finalized game by 1st January 2012.

tl;dr - here's a video. The terrain is blue to show me that it's loaded the urban hex battle type.


Thursday, 25 August 2011

Strategy Gameplay CivLite Hexagon Hell also Dirigibles

Does exactly what it says in the title ... I think ... Behold the wonder of hexagons! Behold not very good mathematics for procedural placement. Also behold Dirigibles. Have you beheld? Then good.


The idea is StrategyLite-TacticalHeavy ... to be honest I just made that up right at this moment - which is probably exactly how marketing departments work in huge, lumbering, faceless multinational corporations ... maybe I'll patent it ... and then sue everyone who ever used a hyphen ...

I'd ummed and ahhed about how to make a world map for the strategy campaign section of my squad tactics game idea - and after about 30 seconds decided on hexagon models, mostly due to them having less sides than octogon models. I proceeded to quickly make said models because I had nothing hexagonal to use as a placeholder. Then a slapped a load of them together to see how it looked.





Each area is supposed to give a random amount of resources (agriculture, population, natural resources) based on geographical type of Temperate, Urban, Mountainous, Arid and Jungle. It works in a simple rock/paper/scissors (don't run with the last one!), so agriculture feeds population, population gathers natural resources, natural resources = spending money from your chosen Regime.

Obviously having a manually placed campaign world isn't terribly interesting for replayability, so I came up with a half-arsed procedural generation scheme, which after much bafflement of mathematics and only one cup of tea since stumbling out of bed, gave me a fully randomized giant hexagon of hexagons. With it being a giant hexagon I thus had 6 corners to place the starting garrisons of each of the 6 factions/regimes I'd decided on.



Majestic ... and that's just the Ambient Occlusion map! Textures to come ...

I knocked out the basic idea of gameplay for this section, with the player's vehicle moving around in a Pac-Manesque manner, eating up unoccupied groups of hexagons, and slapping his sponsor's flag on it. The idea is that when the avatar hits a blank hex, it lays claim to all free hexes that are touching. Eventually they'll come across a hex which is occupied by a rival faction or get raided by dastardly zeppelin pirates, and then it's combat in the squad tactial gameplay bit. Troop numbers for defenders will depend on the population of the hex under attack, and bonus troops if it's in protective range of a dirigible or garrison. The attacking troop numbers will depend on what type of dirigible is attacking the area. Rinse and repeat until each Regime has had all of it's garrisons blown-to-buggeration and only one Faction is left.





Still a fair bit to finalize, I've got to sort out various Ai strategies for this gametype, the whole cash flow thing, creating new garrisons (game over if you lose them all!), and obviously some save system is rather neccessary. Also I need to work out the ins-and-outs of moving from the strategy zone to the tactical zone and back again, with the score, character losses, promotions, etc.

And of course all of the finalized art for this ...

In other news, back to the tactical zone for a moment as I decided it would be fun to have secondary explosions. So if any cache of weapons/ammo that's been dropped has an explosive (eg: grenade) in it, and then it gets caught in a blast - it'll go bang too.





In the end, I'm sure it'll all be ...

Sunday, 17 July 2011

TorqueTactics: Magnets! How Do They Work?! I Mean Inventories ...

Fuuuuu --- Magnets!

TorqueTactics/Torque X-Com Style GamePlay Month 2:

So I sorted out a custom inventory system ... eventually ...

Not wanting a gazillion items spilling out and rolling around the game-world, I decided on a simple system (it wasn't). I'd have 3 item types that could be scrolled through back and forth - weapons (guns! etc), ammunition (bullets! etc), items (Hankerchief! etc), and this would be mimicked in the "dropped item cache" which is a bag full of whatever got dropped.

Caching dropped items at a location obviously prevents having to render all of them together, especially useful when ammunition was divided into 5 round stripper clips and a dead team member could drop an imperial tonne of them the moment they left this mortal coil.

So that's 3 arrays of objects for the playerObject's internal inventory, and another 3 for whatever has been dropped (if anything) at that location. And then there are another 3 options that you can do, pickup, drop and use ... somehow it just seemed like more than the 27 possibilities that it was ...

And boy did it take some bughunting to get everything working within those 27 combinations ... I promptly massacred a pack of post-it notes ...





I've also got a system of attributes for each little in-game chap which affects various gameplay parameters. Strength is the important one when it comes to lugging stuff around and off-setting your aquired encumberance. (though in the above pic, that guy ain't going anywhere!) When encumberance exceeds strength it'll start to eat into your available action points.

"Throw" button isn't currently sorted out as it's going to use the same equation as hurling grenades. Everything visible is placeholder artwise for the time being. Everything else in the inventory works as expected and the big missing preview will be an image of the "Class" of the team member rather than individual portraits cos that'd just be nuts considering how fast you can go through fellas when your tactics all go wrong ...

Pior to this little hiccup, I was hoping for inventory completion in just one week (lol, yeah right), it's taken about 17 days ... including a few go slow days where I went to the pub for a couple of small ales and a sit in the sun to top up my vitamin B or F levels or whatever the hell solar radiation gives out that's good for you ...

Anyhoo, back on track for July - the remaining of which will be spent sorting out the Ai ClientPlayer/commander and turning the enemy squad into some sort of team-based, tactically co-ordinated entity capable of using different strategies dependant on mission objective, battlefield conditions, weapons available, etc, etc.

As the Ai are also going to be using this custom inventory system, it was important to get it functioning.



Fuuuu - magnets! Why are they so hard to debug!?