As far as I have seen there has been little discussion of the behavior editor here and in the community forums (atleast in regards to dedicated threads.) So I have decided to devise a new idea regarding it’s mechanics and how it would function. I have noticed concerns that the behavior editor would not be as engaging as other editors since editing AI would only effect NPCs and not the player, so I have taken steps to remedy such concerns.
A rather important aspect to any editor is it’s shape and form. An editor without a good design can be confusing, messy, and downright frustrating to use to those who are unaccustomed to it. However, simpler menus often sacrifice another important feature, which is often the freedom of what can be done in such an editor. I have created a rough design that I hope balances this issue in favor of the player.
The editor is divided into two primary parts. [Behavior], and [Traits].
This part of the editor could resemble an expandable list of customizable behaviors assembled in blocks. Each block would have 2 customization options which would be the stimulis, and then the reaction. The stimulis is something the cell detects, should it be another cell, compounds, light, or toxins. Perhaps it could be feasible for the player to customize the amount of detected objects to trigger the reaction, for example a cell may only flee in the presence of 5 or more cells.
Next will be the reaction, which is how a cell behaves in response to the chosen stimulis. The reactions could be the cell fleeing away from the stimulis, attempting to engulf it, simply approaching it, or any other behaviors we could devise. Note that the default behavior of any cell should always be to seek out loose compounds in the enviroment. If there are no stimuli present the cell will scavenge.
There could also be a third option, which is range. This option could likely be located between [Stimulis] and [Reactions] and would determine at what distance the stimulis triggers a cell’s reaction. This option would allow for more complex behaviors but it may be more difficult to code.
Traits are likely to directly impact the player the most as they will determine how a cell behaves within itself. Traits could include things such as how your cell delivers their toxins, adjusting the speed of their flagella (for less ATP cost), or determining the priority of which compound is synthesized for ATP (Such as only consuming glucose when no sulfide is posessed). As you might guess, traits will not edit the AI of cells.
The editor for traits will likely be very similar to the [Behavior] part, but the traits may have parameters to determine the extent of their function. (Flagella speed trait would have a customization option for 10-100% speed, and the toxin delivery trait would have an option for the specified type of delivery). With traits, you should only be able to have one of each kind, and some traits may prevent you from posessing others due to incompatibility.
Changing the behavior of cells should naturally cost ATP since it is as much an adaptation as developing new physical parts, But with the depth of customizability it should not be an extreme cost to change smaller variables. So I have made a rought estimate of what I believe should be the average cost of change. The smaller the change the trait or behavior induces, the less it should cost to adjust.
Adding new Behaviors/Traits:
Highest- 50 MP
Average- 30 MP
Lowest- 20 MP
Adjusting Behavior/traits Variables:
Highest- 20 MP
Average- 10 MP
Lowest- 5 MP
Removing Behaviors or Traits could cost the same as adding them, but it may be easier to simply use a similar flat cost to removing organelles.
I believe that this system could be simple to understand and use for anyone who plays Thrive. In the event that it may still be confusing we could potentially provide the option for presets such as “predator”, “scavenger”, etc to help introduce players to the mechanics. The presets would also make it easier for the player to simply select their preferred playstyle if they do not like to design a creature’s mentality from scratch. These presets could be buttons that cost the required ATP to load.
It also to my understanding that this system could be easily adaptable to later stages of gameplay. Though I may be wrong in that matter.
Tell me what you think!
Here is some quick concept art I made to help convey my idea.