The Bibites 0.6.0: Organs and Science!
Wew... This one has been a long time coming
It's been close to a year and a half since the last public release and it's frustrating to have kept the free users without news for so long.
I want to start by apologizing to everyone for this long delay, I kept going in different direction and adding more stuff, which made the bug fixing a nightmare. It took a while, but now we're finally at a place where I think I can share this new version to the wider public and be proud of it!
I hope everything that I've been cooking in the meantime makes it worth it!
Let's jump right into it. One of the sexiest additions has been the new Internal Organs!
Internal organs
Bibites now have 7 internal organs that take up ACTUAL physical space inside them and compete for it, with 7 new genes that divvy up that space across each organ.
The WAGG genes (for Weighted Apportionment Genetic Group) control how much space inside the bibite is taken up by each organ. This means that bibites, when evolving, are faced with a much more complex choice (not literally, they don't choose how they mutate) that implies many potential compromises.
Do you want a bigger stomach to store and digest more food all at once? Well, better be open to every other organs getting a little smaller in return. After all, a given bibite has a finite area, so that's a resource that the bibite's organs must compete over.
- Armor: Armor is there to protect the bibite from external attacks (replaces the DEF gene) (more on the new combat system later)
A thicker armor gives you more protection but also more heavy - Stomach: Used for storing and digesting food in exchange for energy.
A bigger stomach allows you to digest more food at the same time, potentially increasing your energy budget - Egg-Organ/Womb: Used for the production and storage of eggs
A larger womb either allows you to lay bigger clutches of eggs, or birth more mature children - Throat: Controls how wide the bibite's mouth opening is, which in turn determines bite-size, and the biggest pellets that can be swallowed
- Move Muscles: Used by the bibite to move around and rotate, bigger move muscles makes a bibite faster and more nimble, but they are costly to use and maintain.
- Jaw Muscles: Used by the bibites when attacking or taking a bite (replaced the STR gene)(more on the new combat system later)
Larger Jaw muscles allow you to take bigger bites, break certain materials, and deal more damage when attacking - Fat reserves! : Empty space that can be filled with fat by the bibites, as a long-term energy storage, which might make some bibites chubby!
With this, the biology panel now also shows an x-ray vision of the bibite's internals displaying the relative size of the bibite's organs!
(It's an approximation, so the visuals might differ a bit from the actual percentages. No need to go count the individual pixels to make sure)
You also have access to a lot more information about your bibite in the pop-ups if you hover your mouse over the different organs... sometimes too much even.
New Egg Laying System
Bibites now produce their egg gradually, instead of taking a massive energy expanse all at once, and will store their eggs in their womb.
This also means that bibites can now lay egg clutches! Although that's still pretty rare since eggs take up a lot of space.
Bibites are also only considered mature and "adult" when they can lay at least one egg, and their growth level at that point will depend on the egg's size (decided by genes) and the area of their egg organ.
To help control that behavior, two new nodes were added to their brain
nEggStored (Input): Number of eggs stored in their womb
EggProduction (Output): Controls the egg production and how much energy they invest
Bibite can also reabsorb their eggs to regain some of their energy, but there's a heavy penalty for it
Fat System
Fat is a new material that bibites can produce and store in their fat reserves. It's very energy dense, so it's a very good form of long-term energy storage to take advantage of the brighter days to better weather the hard ones.
The production/consumption of fat is regulated by 2 new genes, the Fat Storage Threshold, and Fat Storage Deadband, which both take care of deciding at what energy level the bibite should start making fat and when should it start to burn it
By default, bibites can store an amount of fat (in u²) up to 2 times the reserves' base capacity (as decided by the internal organs area WAGG system), but going above 1x the base capacity will inflate the bibite's butt accordingly, resulting in chubby bibites
Speciation, Tracking, and Simulation Statistics
That's honestly where most of my time and head-banging was spent since 0.5.1. I went so deep in there.
You see, The Bibites is a huge and very complex simulation; There are a lot of interesting metrics to track ... And some people run the simulations for hundreds of thousands of hours, which could rapidly make the amount of data to track and save unmanageable. So I went all in in terms of storage optimization and head-banging.
This makes it so you can enjoy prime data *chef's kiss* at a reasonable price in terms of file size and RAM usage.
The sacrifice was resolution. In the sense that I used some savvy and ground-breaking algorithms of my own designs (that have probably been done a million times before) to logarithmically track each metric. By default, all the data are logged every five minutes, but as time passes, I progressively compress and merge older data points together.
This means that the picture won't be as clear the further back you go, JUST LIKE REAL LIFE!
I kinda like that the solution to the data-tracking problem was to emulate entropy and the fossil record that real biologists have to struggle against when studying the Earth's distant past, although I might also just be inhaling copium here...
Species Categorization and Tracking
So!
We now categorize species and automatically track them, as well as their relationships and lineages!
By default, species are automatically named using Latinized versions of the names of Patreon users supporting The Bibites, or significant figures and helpers of the project! But of course, you can name species yourself and that name will be inherited by your species descendants.
Species will allow you to have a far better picture of the history and developments of your simulation.
For now, we added two ways of viewing that information.
The Lineage Tree is a very standard lineage tool that allows you to clearly see the relatedness of your different species and the precise moment of apparition and extinction.
We also added The Lineage Mesh as an option, which gives you more insight into the relative populations over time, although the relatedness of species is taking a backseat (but is still displayed)
Feel free to use your preferred view!
You can also compare species between them and see how their genes and brains differ
Along with historic species and their prevalence, we also track their spatial distribution and presence over time, which allows you to follow migration patterns and history.
For the next update (0.6.1) I'll be working on adding a third view, that allows you to instead see the spatial distribution of all the species at once through time, which I think will be interesting!
One thing to note however is that species are plentiful and often come in bursts of speciation. To manage the species record and the resulting data size, the game will often prune old irrelevant species and erase them from your sim's history. Well... not erase them, but merge them into their closest most relevant relative. So very old species will tend to represent many other species that were lost to the sands of time and entropy... At least their distribution and historical data will live on through their relatives.
You also have access to a few settings to make that process more or less aggressive.
If you have species that you'd like to see preserved in the record as much as possible, you can favorite a species, so that if it's on the brink of extinction, its relatives will instead merge into it! This is just pushing back the inevitable tho, as if it's been extinct for a while it might run out of relatives... oh well
And on the opposite, if you dislike a particular species, you can manually prune it from the record and act like it never existed.
Simulation Statistics
Alongside species population data, the game now also tracks many important metrics about your simulation. Things like
- Biomass size ( the respective total energy taken up by plants, meat, and bibites)
- Entity counts
- Age distribution of bibites in your sims
- Brain sizes distribution
- Egg Laying information
- etc.
And, just as a good measure, we also track the historic gene distribution of your simulation, and see how the different individual genes varied and shifted over the ages.
Combat/Physics System
I always felt that the approach to bites, and damages in 0.5.1< was kinda mid and arbitrary. I was basically taking the STR gene, multiplying by a scalar to determine the amount of damages dealt by a bite, and the DEF gene resulted in a flat % of damages blocked.
Bibites were killing each other left and right, and super tiny bibites could easily murder giant whales. Well, NO MORE.
Now everything is physics-based.
Materials have a cohesiveness property that determines how tightly they hold together (in N/u). In order to take a bite, a bibite must apply enough force with its jaw to fully separate a chunk of the main object across a shear line. To bite off or through a material, you have to be stronger than it. The same is true for attacks between bibites. When a bibite bites another, we calculate the chunk of bibite it's able to bite off, and that's how damages are dealt! Getting a chunk ripped out from your body isn't particularly pleasant (I've heard)
As such, bigger jaws and throats are going to be the cornerstone of any predator's genetic toolkit!
So, of course, we needed to give bibite something in exchange for this particularly traumatizing addition.
Armor is a new material with a very high cohesiveness, that attacking bibites will have to go through before being able to deal damages to victims. The armor is considered an organ, so it must fight for space with the other internal organs. The armor's resistance is proportional to its thickness (see physics), which is also proportional to a bibite's size (and WAG), so smaller bibites should have a much harder time murdering giants (although it's still possible with the right traits)
Metabolism Overhaul
The way the previous speed ratio gene was applied was all wack and inconsistent. We have completely normalized it across all of the different bibite's systems.
Now, the metabolism gene scales all the bibite's system accordingly and linearly.
A bibite with a metabolism gene of 2.0 will move twice as fast, digest twice as fast, etc. but will also consume twice as much energy as their base metabolism sustains cost or movement energy costs.
In order to also add a layer of regulation, we added a basic metabolic energy usage efficiency to bibites that scales inversely with their metabolic rate, and that will be applied to every energy expenditure. As such, bibite with a lower metabolic rate will also be more efficient, and vice versa.
Performance and Stability
A big load of efforts was put to optimizing the game and regularizing it.
In 0.5.1, a warning would pop out anytime you sped up the sim too much, and that's because increasing the time speed also decreased the simulation's accuracy by increasing the time between physics updates. This meant that the law of physics literally changed based on the used time speed. In most reasonable settings, it wouldn't be that bad, but in some extreme cases it could even lead to some bibites having evolved under a high time speed to die when the time returned to normal speed (our speed of 1s per second)
The simulation has now been moved to a fixed update rate (TPS or ticks per second), with a default of 30 tps, which the user can change.
Rendering frames (fps or frames per second) have been split from the simulation logic, and as such can still go higher than that, so yall high-octane gamers will be able to enjoy a butter-smooth experience (I'm personally vegan, so I only have a faint memory of the smoothness of butter and don't recall if this is a real expression based in reality or not because vegan butter sucks ass and is an amalgam of the devil)
As such, you can now speed up the game up to 100x (not guaranteed it'll reach it tho, it's just a target) without having any impact on your bibite's survivability!
More info has also been added to the top right time indicator
A few other performance settings have also been added to the simulation to allow you to customize your experience and how frequently each system should update (and more to come in the near future)
Brain Changes
The Constant node has been removed and replaced by each node having a default activation parameter that emulates a connection with the now defunct constant node. All old bibites brains will be updated automatically, replacing the ancient connections to that node with the associated default activation
All outputs with default activation (or sigmoid) but no connections to other nodes are now displayed at the bottom of the brain panel
Added Activation functions for nodes:
- Integrator Function, which outputs the sum of its activation and previous output (integrates inputs)
- Inhibitor Function, which self-inhibits and gradually returns to 0 when its activation doesn't change (speed of that self-inhibition controlled by default activation)
Added Senses/Action Nodes (neurons):
- nEggsStored (Input): how many eggs the bibite's womb contains
- EggProduction (Output): Controls how much energy it invests in the creation of eggs
Removed constant node and nodes related to the viruses systems
Other Stuff
At this point, if you couldn't guess just by reading the last section, I'm tired of writing big paragraphs as there's just so much that changed, so here's a big list dump of many changes (far from all of them) without any explanations or fluff and no particular order:
- Many adjustments to the default settings
- Many new settings and parameters to customize your simulation
- Lots of bug fixes
- Lots of performance improvements
- Many more templates and scenarios (Ants Sim from the science video among others)
- REMOVED 99.9% OF MEMORY LEAKS
- Many more tooltips added everywhere
Functionalities/Sim Changes:
- Completely removed viruses (they were broken, unpopular, and boring, might revisit them later)
- Added a color eye offset gene, that details how their eye's hue differs from their body (0.0 or 1.0 means the same hue, 0.5 means opposite)
- Added a few easter eggs bibite that spawn very rarely (can be turned off if you don't want them messing up your sims)
- Added a shade outside (removable) of the simulation bounds that either wraps the world or repels bibites (controlled by sim settings)
- Added more Zones distribution patterns (flat, ring, square, etc.) and other customization settings for them
- You can now create zone Groups, that create multiple instances of the same zone from a template
- Regularized drag equation to scale with size for bibites, eggs, and pellets
- Many changes to how strength and muscles behave and scales with a bibite's size (+ settings to tune it)
- Changed many settings' normal range
- Changed many genes' possible range
- Optimization of vision code to increase performance
- Bibites now shouldn't be able to develop new connections to disabled systems ( like herding)
- New connections will have an initial value closer to 0, to better simulate the gradual evolution of behaviors
- Balanced default brain mutation probabilities
- Bibite length property updated to correctly reflect sprites
- Throwing pellets now takes into account the jaw's mass (bibites can no longer throw very small pellets at ICBMs speeds)
- Digestion now scales with the pellet's surface (masticating your food so pellets in your stomach are smaller increases your digestion speed)
- Materials' reactivity property is now in units of (u/s) and has been updated to reflect the new chemical system
- Equations for the bibite's bite period changed (now based on their jaw's mass and strength ratio)
- Digestion potential no longer scales with sizes (bigger bibites will still potentially have a higher energy budget, as a larger stomach still allows you to digest more food in parallel)
- Aging was rebalanced
- Healing was severely nerfed and will now take much longer. Injuries won't be insignificant anymore!
- Bigger bibites will often have a harder time healing (proportionally) + settings to tune
- Bibites will now register the closest seen point of an entity instead of the center point, fixing an issue where giant pellets were invisible
- Bibites can now vomit their stomach's content!
- HerdSeparationDistance now scales with bibite size (it's proportional to themselves)
- Added basic analytics to the game (I ask your consent before) to help with research!
Visuals/Graphics/Preferences/UX:
- Lot more actual stats in the Stats Panel when selecting a bibite (like distance traveled, number of eggs laid, link to parent, etc.)
- You can show selected bibite's field of view and seen entities (and the weight associated with them)
- [DELETE] Key now kill selected bibite/egg
- [INSERT] Key now forces the selected bibite to lay an egg (no energy used)
- More customization for the visuals and colors of your simulation
- You can now press [ESCAPE] to exit many panels and tools
- You can now undo [CTRL-Z] and redo [CTRL-Y] settings changes
- You can now edit settings and value by clicking on them (still needs to be submitted with [ENTER])
- Added Biomass and Pellets estimation to Scenario Editor
- Most settings can now easily go out of range to test your crazy theories (but have to be penciled in/ can't do so using just the sliders)
- Added gradual zoom when hold-dragging middle mouse button
- Ctrl+Right click + drag allows to slowly pan the camera in that direction
- New Brain sorting algorithm that should greatly improve how brains are displayed by default
- Possibility to save a species' brain manual positioning ( will be inherited by future children species and will be used for bibite of those species)
- Bibite previews (for template, or species) will now display the size at adulthood
- Increased pellet size factor span for Pellet Placer (can now make gigantic pellets there)
- The in-game settings panel contains most if not all simulation settings!
- If paused or in a menu, real-time autosaves
- Updated expanded brain panel and polished it
P.s. : Sorry Mac Users, Apple is giving me a hard time with my developer account, and I couldn't make the build in time, But I'll upload the mac build as soon as possible!
The Bibites is also coming soon to Steam if you would prefer to download there. Wishlist now to stay updated
Files
Get The Bibites
The Bibites
A dive into real digital life
Status | In development |
Author | The Bibites |
Genre | Simulation |
Tags | 2D, artificial-intelligence, evolution, interactive, Life Simulation, Pixel Art, Procedural Generation, Sandbox, Unity |
Languages | English |
More posts
- The Bibites 0.6.0.1: Hotfix70 days ago
- The Bibites 0.5.1: Performance, Usability, and PerformancesFeb 26, 2023
- The Bibites 0.5.0: Modernity and ProgressDec 17, 2022
- The Bibites v0.4.2: Balance and stabilityJun 19, 2022
- The Bibites v0.4.1Mar 28, 2022
- The Bibites 0.3.0 : Artificial Life With Herding and VirusesJun 25, 2021
- It's official, this is launch 🚀🚀🚀! Full-time on The BibitesMay 20, 2021
- Roadmap for the future of the project Ep.3 Procedural Sprites!Jan 24, 2021
- Roadmap for the future of the project Ep.2 Modules!Jan 11, 2021
Comments
Log in with itch.io to leave a comment.
Fat bibits! Cute.
This is an extremely impressive system that only gets more incredible with every update.
As always I'm always so happy to see an update from the bibites, and so impressed by the features, but also saddened that my own project has been on haitus for so many years due to illness. If I ever recover enough to finish the last 10% I'm sure everyone will think it's just a bibites clone, but it's just a case of great minds thinking alike 😁, and under the hud, it's really a very different simulation. This update adds a lot of features that I had and you didn't, putting them basically on par now in terms of features, I really hope it does well on steam, don't worry, I'm in no position to be releasing anything similar soon anyway so no competition from me 😜 keep up the good work
oh, wow. what a phenomenal update! you’ve expanded upon and upgraded everything i thought about when i checked out the game. can’t wait to evolve some bibites.
Man, this sounds so difficult to program. I was always thinking about a simple genetic mutation simulator but it's way above my skill level to even think about
HOLY SHIT!!!
P.s. : Sorry Mac Users, Apple is giving me a hard time with my developer account, and I couldn't make the build in time, But I'll upload the mac build as soon as possible!