Posts Tagged Video
I’ve been meaning to start doing these for a while! Some of the video’s and let’s plays of Species are interesting, amusing, or (in this particular instance), horrifying.
Todays spotlight: xtomass sets the mutation rate to 4x and evolves horrifying 15-meter tall monstrosities.
I choose to believe that they are merely the 3-dimensional appendages of vast, interdimensional organisms the size of a planet. Yep, those shots from the ground level FPS camera are gonna haunt my nightmares.
I like xtomass’ style: he’s enthusiastic and easy to listen to. Give his channel a look!
Presenting the Species: Artificial Life, Real Evolution 0.6.0 Gameplay Trailer.
aka. SALRE060GT (pronounced “SAaarrrrgggklgglglreeeee”).
(aka. Quasar demonstrates how not to play Species)
I’m glad I decided not to include voiceovers in these video’s. My anguished, mournful howls don’t record well, and the annotations are more fun anyway.
Speaking of, I think I prefer this annotation style too. It’s a bit more obnoxious, but it means you don’t have to watch the video twice to ‘hear’ me. I just need to endeavor upon educating myself in the subtle nuances of communicating in a visual medium which ultimately is more appropriate to monosyllables and concise, abbreviated statements…
… oh dear god it’s like video twitter. WHAT HAVE I BECOME?!
Yay! Another video! And another set of comments about said video that I was too lazy to put into the original video itself! Yay!
There’s three major ones visible in the video: levitating creatures, which is caused by a minor bug with how the creature finds ground level, the Species Average Thumbnail not working, which I threw a textual tantrum over, and a bug with how Stamina is calculated (did you spot it?). I managed to fix all three of these in between recording and uploading this video.
Of everything in the UI, the real-time energy graph is the most obviously placeholderish. With a bit more work it will look a lot more professional, with current-moment positive and negative effects and their magnitudes (things like metabolism, walking, eating) shown, and icons applied to sudden drops and jumps (like the ones caused by reproducing in the video).
The genetic code you see in the video is genuine: it really is a representation of the creatures genetics, and I have already built the function that allows the player to clone creatures from it.
But with that said, it’s sadly not completely analagous to a real organisms genetic code. It has some beguiling similarities, like codons and genes, but it’s a ‘code’ in every sense of the word: it represents the creatures actual genes, which are a list of numbers. This means it’s possible (albeit difficult: it’s quite robust, and only going to get more so) to ‘break’ the code and make it impossible to compile. Biological DNA is not at all like that: it always codes for something, no matter how much you change it, because it’s “compiler” is a physical process.
This difference was implemented for several reasons, but the biggest is probably performance: I doubt I’d be able to run a quarter of the number of creatures I currently can if I was actually using the genestring itself for calculations. It also makes balancing mutation rates easier: eye sizes should mutate a lot faster than overall sizes, for example.
I won’t explain the system here and spoil it for any cryoptographers who are interested in trying to decode it, but it’s not a particularly complex code.
This is one of the player-oriented gameplay elements planned for later versions of the game. A lot of thought has been given to how the player will interact with the simulation without completely taking over the ecosystem and directing everything on Gaia, and artificial-selection and genetic manipulation are the two primary elements of this. There will not be a Spore-style creature editor. Don’t get me wrong, I thought the creature editor in Spore was brilliant (it might have been the only thing that was), but I’m pretty certain it would take all the fun out of Species if you could just customise ‘your’ Species exactly the way you wanted it right from the start.
Hell yes indeed! I now have a personal deadline to meet, a list of things to achieve, and I have officially made the announcement like we’re some sort of proper indie studio or something (fingers crossed nobody figures out we’re just some random guy with a laptop and a few friends helping out occasionally). So bar anything catastophic, an Alpha Release (Species 0.4.0) is on the horison and slowly getting bigger.
Yep. I’m following a slight mutation of the Minecraft
get-rich-quick scheme marketing strategy (my plan is probably closer to Kerbal Space Program, which is awesome by the way), which seems to have become something of a de-facto standard for indie game releases. So all the alpha releases (however many of them there are) will be free, while the Beta releases will cost something, and the full releases will cost a bit more, but buying a beta release or preordering during the alpha stage will get you the full version anyway for less money than what you’d pay if you bought later, and the alpha releases will always be free-to-download even after the beta and full versions are- HOW DID SOMETHING THIS COMPLICATED BECOME SO POPULAR?
I might set up donate/pre-order button when I release the first Alpha. I’d feel like a jerk if I took any money without giving you guys something first. 🙂
Hmm… I’m pretty sure that’s everything I wanted to cover here.
Thanks for reading!
“No snark today. Too tired from spending all night editing his stupid video for him. Lazy sod.”
Presenting the unholy lovechild of Fraps, Species and Premiere, whose birth heralds the riding of the horsemen and the coming of the prophesied end times… or would do, if October 21st wasn’t 4 days ago…
… Hmm. I don’t really have much to add here. I think I put far too much information into the annotations this time around.
I stuffed them up again. It’s hard finding a format that works: the first video’s annotations were distracting, this video’s annotations are unreadable without taking your eyes off the video. Plus they’re really fast, because I tried to put too much information into them.
I’m still reluctant to actually narrate because I sound like a nerd.
The game in it’s current state generally stops responding somewhere between 15 and 25 minutes in due to a SystemOutOfMemory error. This is annoying, but I’m fairly sure I know at least one way to reduce the memory footprint. It might also be related to running fraps at the same time: I’ll have to investigate that.
Looks nice, doesn’t it? I ‘borrowed’ a few images from google. It’s amazing the difference a good texture makes. But since I don’t know whether they’re under copyright or not, they’re still just placeholders. I’ll make my own trees eventually.
As you can see, a stable population of creatures tends to keep the vegetation from growing back. This is annoying, because the trees add a lot to the visual design. I’d like to work out some way of keeping a decent number of trees around even when there’s a moderate population amongst them: maybe rather than shrinking/growing, trees could transition between a ‘dead’ texture and a ‘live’ texture? Not sure, but mulling it over.
For the programmers amongst us who find this sort of thing interesting, here’s the colour key for some of the larger debug timer bars:
Blue: Update Call. Creature AI, Behaviours, Movement, Interaction: I've managed to reduce this one by a lot by messing around with the implementation. It's quite a compact routine now, though the code needs a major clean up.
Green: Species/Population Tracking. This should be almost entirely taken up by comparing creature genetics to search for speciation. Unfortunately, it's not: that's actually surprisingly fast. What really takes up the time in this routine is drawing the population graph. Render Targets hate me: the entire population graph may have to be re-written to fix this.
Magenta: Prepare Draw. Updating the animations, bone sizes and positions. This is where most of the Skinning is done. Lots and lots of matrix operations. It's been optimised, but it's still a fairly heavy routine. But not as heavy as...
Blue (2): Draw Call. Thanks to the 'every creature is unique' nature of Species I can't use mesh instancing, so drawing 1000+ creatures takes an utterly unholy amount of time. I am using State Batching where possible (so, for example, I draw all the torso's in one loop, all the necks in the next loop, and so on), and that helps, but mostly it's just a blow I have to take.
There’s any number of things that need improvement visible in the video, mostly related to entertainment value more than accuracy. Some, like homogeneity and being able to tell which species is which, are general behaviours that require a subtle solution. Other’s, like implementing a proper vision system for creatures, are specific and obvious. It’s probably simplest to focus on the specifics for now, since they’ll likely have massive effects on the overall behaviour of the simulation. A lot of work to do yet!
The Next Video
… I realise this video was kinda boring overall, so the next one will be about showing off potential creature variety and the effect different shapes and body-parts have on stats. Much more interesting! But there’s a lot I want to implement before doing that, and if this video was anything to go I happen to be absolutely terrible at getting these up at the time I want, so don’t expect it for a while, okay?
Huh. Guess I did have more to add. That was unexpected.
Oh well, it keeps me entertained. Not much else to do in the EMP cannons prison block. Thank goodness they have internet access, that’s all I can say. Very forward thinking of me, putting internet access in my own prison cells- DAMMIT WHY HASN’T ANYBODY LET ME OUT OF HERE YET?!!
(UPDATE) At 5:53 EST the insect-man army broke our defenses and overran the Orbital EMP Cannon. We were all taken hostage by the geneticist Overlord and mouthpiece for the bio-scientist hivemind, a rather pleasant bearded fellow.
Thankfully, after we locked Qu in one of the cells to shut him up, I was able to convince the Overlord to spare our lives. He even let us keep the cannon, though he took the firing mechanism (for our own safety, of course).
It’s been several hours, and everything has returned back to normal. Seems remarkably quiet, though. Strange, though. I can’t shake the feeling I’m forgetting something, but for the life of me I can’t remember what it is…
IT’S ME YOU BLOODY SASQUATCH! LET ME OUT!
… nup, can’t think what I might be forgetting. Oh well, I’m sure it’s nothing important.
I WILL WREAK VENGEANCE UPON YOUR PATHETIC FORGETFUL SOUL! YOU HEAR ME?!