Order to Chaos

So up until this point the test sector has contained a splattering of AI ships strewn about the place seemingly at random. But is this conducive to steady gameplay or concise storytelling? I think not…

Random ship placement, although it makes for good eye candy, it makes for maniacal combat situations.

Picture any other RTS in your mind, lets pick Starcraft for example; typically the enemy has a corner of the map where they will set up base, mine and gather units. Shallow Space isn’t going to be quite as static because of the fact the levels will be generated procedurally but we still have to have rules governing the overall experience, the most important of all these rules is the behaviour of the AI ships. So the AI ships will be brought into existence in one of three ways; they either get created at a factory or capital ship, they warp in perhaps as part of a mission or response to a threat or they start on the map as the level begins.

At the moment I’m focusing on that last part which is starting on the map; so why would those ships be there I ask myself? Well they would have either an offensive or defensive set of instructions – taking it one step at a time I focus on the defensive. So they could be escorting a convoy, guarding a mining operation, station or capital ship and fortunately all of these things have an operational objective that can be defined as a physical object in the game world. A station is a thing, a mining operation will have a central silo which is a thing and so each of those objectives would have something which would need to be guarded and so now I can shape the conditions in which the AI ships are procedurally generated setting their respective start locations and default orders around those objectives.

I’ve given the mercs a military outpost, so I’ve given them a reason for being, their objective

So now I’ve programmed all AI ships to spawn near to their objectives, I can define what that objective might be – sometimes an outpost or station, or it could be a capital ship. I’ve also programmed them not to hoard that objective, so a station may only need a guard of say three packs so the remaining packs will disperse looking for a fight or scanning nearby asteroids. Should the station come under attack and one of its guarding packs get destroyed or drawn away another free pack will be called back to the station to fill it’s place.

I’ve not seen this sort of intelligence programmed into a game before, but then I’ve never seen a procedurally generated RTS before either – the big question is, will it be fun? I think it will, especially when we add in the other layers of gameplay: Missiles, additional ships, customised ships, support craft, EW craft, RPG skill modifiers. There will be more than one way to disrupt and suppress the enemy and the enemies actions and reactions will be fluid, still governed by a set of rules granted but it will be that large mix of conditional parameters that will work to our advantage bringing order to what otherwise would be chaos in our three dimensions of play.