Since Amaikokonut got me to thinking about the ecological interactions in C3/DS I’ve been tinkering with my agents to make them more ecologically participative. One of the frustrating things about this, though, is that there are no real standards or guidelines out there for any of it. So as a beginning CAOS coder, I’m constantly running into questions there are no ready answers to:
- How long should it take for a seed to sprout / plant to grow?
- How long should it live once it’s grown?
- How many offspring should it produce? How often?
- How close together / far apart should they be allowed to grow?
- How many dormant seeds should I leave lying about for norns to snack on?
- What’s a reasonable amount of Cellular Automata (CA), or resources, to expect to find in a given room?
- How much of which CAs should be present for a plant to grow?
- How much of which CAs should the plant consume while it grows and lives?
- How much should it return to the environment when it dies?
And on, and on…
Since I’ve had to make arbitrary decisions about these things as I go, I thought I’d start writing down the standards I’m setting for my own agents, not only for myself, but maybe to start some collaboration going, so that more new agents will use the amazing environmental interplays, and maybe in more consistent ways, to make the game more interesting.
So this post will be the beginning of a set of guidelines for me to follow in my own coding, and I hope others will jump in and contribute their thoughts about the questions I’ve listed, and maybe more that I haven’t thought of yet. Because the more people participate, the more the resulting agents will make sense to everyone, and the more interest and fun we can add to the ecological side of the game.
Meanwhile, I have to go to work, so the rest of the thoughts bouncing around in my head will have to stay there for another day. 🙂
In my opinion, stuff like growth rate, lifespan, etc., isn’t all that critical to standardize; that’s going to be the interesting variety that makes one plant different from the next. To mimic nature, I think, there needs to be a great variety anyway.
Stuff like reproduction rates are probably going to vary from plant to plant. Smaller plants can get away with populating everywhere without being too annoying. Bigger and more resource-intensive plants, less so. But this is where it might be beneficial to allow reproduction rates to be CA-influenced, since everyone is likely to have a different definition of “too crowded” vs “too sparse.”
Now CA rates, that’s what needs be standardized, if anything.. when I have the time (and if no one beats me to it) I can pull some numbers from the C3 life for reference, if it helps.
It’s really kind of a shame though that CAs don’t get much more diverse than light/heat/water/”nutrients”. It would be nice if there were more choices there, more specific types of nutrients, so you could get some interesting synergy between plants that soak up certain nutrients and then produce others.
I was going to ask if you’d already compiled something like that, Amai! I think it would DEFINITELY be helpful.
The various types of nutrients thing could be cool, too…but I haven’t even gotten good with what’s already there, so I will satisfy myself with that for now and leave the dreams of added complexity to younger, brighter minds. 😉
You might like to read up about life history strategies in plants – such as r and K selection theory, and think about how you want that to translate to your plants.
Essentially – some plants, like trees, grow slowly, weather droughts and floods and fires etc. etc. etc. and regularly produce a small amount of offspring, which typically have a fruit covering to protect and nourish the seed to make sure that not too many of the seeds will get eaten. (K-type) Others, like weeds, grow quickly, die quickly, but produce squillions (approximately) of seeds, not all of which will grow. (r-type)
http://129.123.92.202/biol2220/PDF%20files/Lectures/Life%20History-notes.pdf
For the CA questions, measuring the default ‘growing stuff’ metarooms with Moe’s Room Changer is a good idea.
Light, heat, nutrients and atmospheric water are the usual CA that come into play for the C3 plants (some do not require heat). You could investigate those and model yours off the more successful ones.
I’ve noticed Moe’s room changer seems to multiply the CA readings by a factor of 10. I’m assuming that was to make the number of decimal places more manageable for display, but it had me really confused for a while, until I compared the actual readings using CAOS debug commands and saw why my changes weren’t working the way I expected them to!
Interesting stuff about the K and r types. I will check out the article, thanks!