Patch Dynamic Environment

This short post will cover my proposal on how game will handle dynamic patch environment in general. I will probably come up with some things during writing it so sorry if some thing don’t make sense

Species - Compound Balance

Instead of removing or adding compounds depending on species count difference, each lack of individual is worth compounds free in the environment.

Each hex will be worth x amount of compounds, so it total removed compounds from base patch concentrations can be presented as follows (for example - ammonia)

ammonia - (species * its count * hex count * per hex modifier)

That would calculate for each species of course.

Now, species have processes, these would also get its way into the code

ammonia - (species process input * modifier) + (species process output * modifier)

(brackets for readability)

Now that I covered basic compound handling time to get to more fun stuff but they might be more controversial so treat them less seriously.

Patch Events

I want to suggest here 2 types of events: “Shot” events and regular events. Shot events would happen outside of editor, while player plays its species, and would be registered to affect compounds once editor is entered. Examples could be volcano eruption, meteor strike and generally short in terms of timespan things and affect 1 patch at a time. Regular events are created upon entering editor and these would include glaciation, long term volcano eruptions etc. This way player can experience some events in-game and also take time to think strategically in editor.

Sorry if this post is out of shape or silly but it’s my 2nd thread on this forum and also I mentioned I could pick up dynamic environments once planet generation is done.

Edit: suggestions?

1 Like

I think the desire behind dynamic patch conditions is to facilitate the great oxygenation event and make the game be able to start with 0 oxygen anywhere.

So I think rather than species members taking away compounds, it’d be better to calculate the overall all processes that all microbes do (and weight those by population) to then get a balance for environmental compounds. Then there should also be compound exchange between adjacent patches.

This has been attempted before but the work was not completed due to the difficulty it is to get the system to be stable and not oscillate a ton.

Though it could be a worthwhile idea to also model how much compounds the microbe’s cells take up and lock away from the environment. But that would be much more complex thing to get working also with auto-evo energy calculations impacting maximum possible populations. Also I feel like the gameplay effect for the player would be quite bad as I’d expect both ammonia and phosphates to be always close to zero, meaning that we end up in a situation where basically only passive reproduction is possible.

I soon want to turn attention towards creating a solidified concept streamlining a lot of previous thought strung all over the place into something a bit more cohesive. Before I do that, I want to discuss implementation details based on the thoughts raised by @Titan here:

I think Titan brought up a very nice way of organizing and presenting information on a pretty complex area of our simulation, where a lot of things can really go wrong and where we want to provide some level of standardized experience. It makes me think that if we wished, we can represent a lot of information like temperature and compound changes through these Patch Events/Traits. Things like representing warming with a temporary “Warming” trait, or dropping temperatures with “Cooling” instead of having a really complicated system in the background doing these potentially hard to balance events.

I think the assumption here has always been that there will be this really complex planetary simulation dealing with matters like this. I’m not necessarily against this at all, but I guess my question is: are we able to/should we simplify that down? Or would it be easier from a software design perspective to deal with things in that more dynamic way?

Simulation and communcating to the player are two seperate things. We can have the most fancy complicated code in the world for calculating temperture and light level, and decide if we want to call the patch a “ice shelf” “hot sprint” or “sea floor” with a couple if statements.

To me, the bigger question is: how much detail and complexity will the player be able to notice or react to in any meaningful way? I can totally see Thrive players wanting to watch percentage numbers go up and down generation to generation, but unless you’re looking for it I imagine most players won’t notice until an organelle stops working like it used to.

2 Likes

Yeah, that’s a good point about communication & complexity.

Relating to things like temperature, sunlight, and honestly the actual numbers themselves, I think that can be communicated in that sort of “patch trait” descriptor way on the patch selection screen. For example, putting “Glaciation” on a patch’s descriptor can communicate falling temperatures.

With organelles though, that’s a more complicated thing to communicate to the player. It’s hard to think “my current build works right now, but if CO2 decreases by 1.2%, boy will I be in some trouble!” If players have multiple metabolisms and cellular processes, it would be hard to present information that says something like “current build would have net positive ATP with atleast x% Oxygen, x%CO2, etc.” And of course theoretically, they can look to the graphs to see changes. But especially if the early world is more choatic, the whole hard-to-rationalize-percentages thing is still present.

1 Like

When is the player supposed to notice the patch has changed? Should there be a notification screen like the “your planet blew up: game over” message we always joked about? Do we expect players to NOT skip past the auto-evo report each editor cycle in some coming version of the game like everyone does now?

1 Like

In the editor info dump, I think the best way to do it is to indicate to the player that the patch is changing in X turns with a bit of information as to what is happening. For example, “the [patch name] is getting colder. Patch change in y turns.” That way, the player has some information as to what is going on.

That is, assuming they read. I’d assume we need a better way to let the player focus their attention; perhaps a filter allowing the player to see information related to the environment, events, specific species, etc.?

Gameplay wise though, I think flashing the edge of the screen a cool blue or a warm red very briefly upon spawn depending on the temperature change could be a good visual cue, making the player think “oh, something is happen in the world”. And ultimately, the depths will remain stable temperature wise atleast, always remaining as a shelter from the more volatile surface patches.

And I think world ending events like that should only be enabled by a button on the eventual world customization tab. And should occur the second you start the new world with a pop up saying the planet exploded, as a joke alluding to our conversations with the community requests for world ending events. It personifies our official response of “why would you want a chance of the world ending and all your progress being lost” in game.

Maybe put some graphical information on the patch map itself, like this:
image

2 Likes

That could work as part of the solution. Though we need to be careful to not overload the player, so only truly important icons should be present so that there isn’t too much unnecessary noise causing players to eventually just ignore all the icons.

Also we still need something to notify the players who skip over the patch map once they’ve found a patch they like (for example I’ve noticed one Youtuber who usually clicks the “cell” tab directly quite often and skips the patch map entirely).

We can put exclamation point on the patch map tab showing that things have changed.

That could work, but I feel like small environmental changes don’t warrant that kind of “you must absolutely check this tab” thing. Maybe the cell editor screen could say something about the changing effectiveness of the player species (in the current patch, if there is a difference or upcoming big change)?

2 Likes