SCREW IT. I’m back.

Every time I feel a bit enthused to come back to write a new blog post I feel obligated to discuss my absence and motivational issues. After all, I can’t just come back and pretend everything is fine. Everything is not fine, I’m having motivational issues. Motivational issues are not fine.

 

But then I start writing about it and get all introspective and offer solutions and then get self-conscious and realise I’ve made promises in it I may not be able to keep and scrap it all and then the brief period of motivation has passed and so I don’t post anything to the blog. Blargh! I must have written my “comeback” post six times by now. I’ll be honest, I’m sick of writing this post over and over.

 

So… screw it. I’m not talking about it. This is me not talking about it. I know it might look like I’m talking about it but I’m not. It’s actually just Venus reflected by swamp gas. These are not the droids you are looking for. Have some conveniently distracting pictures:

 

131048308104007244.jpg

 

This is the new (read: months old but I haven’t shown it to anyone yet so that makes it new) underwater shaders in action. Before this the underwater visuals didn’t actually work: going underwater would make the water plane disappear, there was no fog, and the ground was lit the same as abovewater. This was why we had to clamp the camera above the water plane and make creatures swim on the surface.

 

Of course, this was all implemented when I thought underwater creatures were going to be the major feature of 0.10.0. That’s fallen by the wayside, but the visual improvements are still there and they do improve the general appearance of the game quite a bit.

 

Untitled.png

 

Aside from the visual improvements, I’ve also implemented a significant upgrade to the temperature system.

 

Temperature.png

 

In 0.9.0, a creatures energy loss due to temperature was determined simply by comparing the external temperature to their optimal. This works fine for passive temperature adaptations (for example, evolving fur coverings), but it doesn’t allow for them to *respond* to temperature changes. Since they have no thermal inertia, dedicated thermoregulatory behaviors like basking in the sun, splashing in the water or huddling together for warmth are useless. Behaviours like that might temporarily reduce how rapidly they lost energy, but wouldn’t stop other forms of energy loss entirely and would prevent them from seeking food. Ultimately, with the thermal system as simplified as it was, these behaviors would be a complete waste of time and energy for the creatures engaging in them.

 

So I added thermal inertia to the system, followed rapidly by a metabolic heat production gene, which for now I’m calling “endothermism” even though that’s actually a misnomer. Endothermism also ties in with optimal metabolic temperature: as a placeholder, I’ve set it to 38 degrees (human operating temperature) for 1.0 endotherms’s, and 28 degree’s (arbitrarily chosen) for 0.0 ectotherms’s.

 

(I’ll note that the things I’m writing here are driving biothermal regulation experts into a frothing rage, but they kinda deserve it for making their field needlessly opaque with polysyllabic words. I DON’T BELIEVE “POIKILOTHERMIC” IS A REAL WORD)

 

Insulation was sort of already there in the game, so naturally I completely removed it and started over. Although I did use it’s values to help work out some of the new insulation values for the various furs and skins.

 

All of this is extra complexity, but it’s for a good cause: with it, we can implement the thermal regulation behaviours I mentioned before. So for example, an endothermic creature can “huddle”. Huddling decreases surface area, which increases insulation, which can be an effective way to increase the body temperature of endotherms. Joining an existing huddle is even more effective.

 

Other implemented behaviours are “Basking in sun” and “Basking in shade”. The “bask” action increases their surface area, meaning they reach equilibrium with the outside temperature sooner. Swimming also provides cooling, simply due to the cooler temperatures of the water: I haven’t gotten to the point of implementing it as a seperate behaviour yet (and suspect I may not need to, since creatures naturally understand to move towards cold area’s like water when they’re hot).

 

Speaking of water temperatures, I’ve been trying to work out what temperature the water should be in relation to the atmosphere. I initially implemented it as a constant “AirTemperature – 10”, but that’s not good enough. The deep sea supports homeothermic creatures precisely because it is always a constant temperature, so depth needs to be factored in. But depth doesn’t acutally matter unless the creatures can movement up and down on the Y axis, and I haven’t even decided yet whether I want P. specium to float or crawl along the seabed.

 

In short, progress may be slow but it is still being made! More info to come soon.

Qu

Advertisements
  1. #1 by burrowingblacksmith on March 7, 2017 - 6:27 pm

    Neat!

  2. #2 by Felipe Testa on March 7, 2017 - 8:19 pm

    Nice. I can’t wait to try it.

  3. #3 by Inarius on March 8, 2017 - 2:49 am

    I’m really happy you are back, I love your project. I hope you will continue to work !

  4. #4 by White parrot on March 8, 2017 - 3:15 am

    “Swimming also provides cooling, simply due to the cooler temperatures of the water: I haven’t gotten to the point of implementing it as a seperate behaviour yet (and suspect I may not need to, since creatures naturally understand to move towards cold area’s like water when they’re hot).”

    Behold! The wonders of emergent properties!

  5. #5 by ksy15 on March 8, 2017 - 11:11 am

    Glad you are back. First I am sorry for possibly having been one of those who caused your motivational issues (by commenting your game would end up becoming a live Wikipedia and an educational tool because everything is based on our planet).

    Honestly, when I saw your picture of an underwater world, with plants growing there, I was a bit excited you would soon be working on this (while actually not =^=). One of the different things of your world compared with ours is that life begins to evolve on land (although nobody knows how it worked), beginning with a legless vertebrate, and then goes into water. Or, it may have simply evolved from one ocean, goes onto land (the start of your game), and then goes to another ocean that is segregated from the first ocean by continents. This is what is different from earth where all oceans connect. With this underwater feature, you can even increase land temperature to a scorching 70°C and force all species to go into the ocean. This is surely interesting ^_^

    I see you are going to add more behavioral stuff to the game. Just a reminder, behavior should not be simply *implemented*; it should be *evolved* like every other trait. Species do not *naturally* know to swim to cool themselves down. It should happen by chance: some swim, some stay in shade, some bury themselves with sand, some do nothing. And in OUR world, they can be inherited in three ways. One is genetically (a change in DNA). One is epigenetically (a change in proteins around DNA). One is through parenting. Others can be added in YOUR world, though.

  6. #6 by kroganspy117 on March 13, 2017 - 4:10 pm

    Just recently found out about your game and I’m loving it. Even though its so different, it reminds me of what Spore could have been back when I was younger. Keep up the great work.

  1. Stamina Meter | Species Development Blog
  2. Stamina Meter | Species Development Blog
  3. Where to next – 0.10.0 (for real this time) | Species Development Blog

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: