If you’d asked me 6 months ago, I’d have said Species 0.10.0 would be my opportunity to work on dietary chemistry. Biochemistry is the lynchpin for several major features, and I’m quite keen to get it working. Plus who doesn’t like complicated flowcharts filled with biochemical technobabble?
But then I rethought that plan…
If you’d asked me 3 months ago, I’d have said Species 0.10.0 would be my chance to add swimming and marine ecology. Swimming is more a sideline feature, but it’s big and flashy and it’s a noticeable lack in the game right now, since we have the water plane but not swimming. Plus I’d already started work on the underwater shaders, and was dropping hints about it in the forums.
But then I rethought that plan…
But I do have some idea’s.
I’ve been playtesting the game myself, trying to work out what’s missing. And there is definitely something missing. For a game with an infinite possibility space of procedurally-generated, evolving creatures and a whole variety of different biomes, it’s weirdly predictable and samey. That’s actually a word. Apparently it’s British.
It’s a problem that plagues procedurally-generated games in general. Humans are irritatingly great at pattern recognition: they can spot when entities share animations and behaviors. Different games get around this problem in different ways, to varying levels of success… but that’s a topic for another post.
In Species 0.9.0, this manifests itself in quite a few places. There’s the ‘template’ bodyplan: once you spot that all the creatures are vertebrate hexopods, their appearance becomes a lot less interesting. The basic behavior of “walk around slurping up food sources and spawning babies, then die” is also problematic. If you’ve seen P. Specium’s behavior, the behavior of many evolved creatures won’t be new to you. But how do we address something like this?
The obvious answer is “variety”, but that could refer to any number of different things.
Like in real life, creatures really should engage in far more behaviours than just seeking food: not just social and territorial behaviours, but also various actions related to temperature regulation, seeking other important resources (water and oxygen, most notably) and finding a place to sleep. Even the generic “eat food source” behaviour could become a heck of a lot more interesting simply with the addition of different types of food sources: there’s a gulf of difference between catching insects in your beak, picking grubs out of the ground, and grazing on foliage.
Currently, there’s only really one survival strategy: “walk around slurping up food sources as efficiently as possible”. In addition to more behavioural variety, we need the environment to provide a wider variety of niches for creature’s to occupy in order to encouraging those varying behaviours to co-exist in the same world.
At the moment it can be hard to identify variety even in cases where it genuinely exists. Creatures can die from overheating, freezing, starvation, old age, injury, harmful mutations, or player-instigated robomurder, but what players generally *see* is a creature lying down and exploding. Without knowing the context of why and how it died, all death get’s lumped into the same boring “ran out of health” category.
I don’t know which of these is most vital, but my thoughts at the moment are that any of these three… features? concepts? themes? … are more important to the current build of the game than Biochemistry or Swimming would be.
I’m actually fairly far off the beaten track here: unlike previous updates, where I had completed most of the design work well in advance, 0.10.0’s development will be more reactive and involve a fair bit of improvisation. I don’t have a checklist of features to complete this time around.
At the moment I’m focusing my work on one of the items under “Behavioral Variation” (can you guess which one?), but I suspect I’ll drift between a variety of features as the update comes together. I also completed a number of smaller tasks while I was rethinking my evil plans, and I know how much you all love aimless ramblings about the technical minutiae of development, so stay tuned!