WHAT HAVE YOU BEEN DOING OVER THERE?
Good question! Thank you for asking :P. We’ve been somewhat absent since releasing our hotfix for the Cheesecake patch on October 22st. In the patch notes, we mentioned that we’re going through a major in-game engine update, which you know as Prometheus. This is a huge milestone in the development of The Universim and it’s very, very important for us. A few issues were encountered that needed to be ironed out before we broke something or designed a feature around a flawed system. After we’re done cleaning and optimizing the project, we will now properly be able to introduce your most-wanted features, such as: new eras, save and load, advanced artificial intelligence for Nuggets, and more that you can read about below.
So much that we’re basically turning into workstations ourselves! On top of new features, we’re optimizing, reimplementing, and redesigning a lot of systems. Let’s break it down.
PLANET GENERATION OPTIMIZATION
Some of the biggest changes reside within the planet generation engine: it’s so much faster now. We reduced loading times and memory usage quite significantly. You’ll likely be very pleased with how it turned out. This allows us to add more objects, have bigger planets, and have more simulation calculations happening at the same time. We also mapped our planet with the road networks and city expansion patterns for future needs. Planet biome temperatures were optimized as well. Now, temperatures are more accurate and easier to understand. A lot of love has been invested into this process. After all, planets are our playground and we want them to perform well.
Pathfinding on the planet is another area that was optimized. Animal AI and Nugget AI can be very taxing depending on the amount and actions performed. It’s now faster and smoother than a speeding roller coaster. Nuggets have a much better understanding of their surroundings and can easily find the shortest path to their destination.
NUGGET'S ARTIFICIAL INTELLIGENCE
Oh boy! We’re having so much “fun” working on this. There’s a lot of thinking and a lot of planning involved in this process. Mainly because all Nugget stats are connected and the environment changes dynamically around Nuggets over time, so we want them to understand the current circumstances and decide what is more important to do at a certain time. Things change on the fly and we need to make sure Nuggets make reasonable decisions without your direct intervention. Nuggets now compare distance vs quality before making their decision. For example: cooked food is better than raw food for Nuggets, they become happier and more satisfied by eating cooked meals. It also keeps Nuggets full for a longer period. In the past, Nuggets were always choosing cooked food over raw food, which in some circumstances was a bad decision because the distance and wait time would be more wasteful for them than simply grabbing a nearby fruit. Nuggets now check this information before starting their journey. However, this doesn’t only apply to food, it applies to any resource they need to collect to finish their task or satisfy their needs.
Our system prioritises tasks for Nuggets dynamically. This allows us to quantity the number of available Nuggets vs busy Nuggets. If there is a need for extra stone, the system will not send all 20 Idle/Free Nuggets to mine stone. The system will task Nuggets to the job one by one and check the weight of that need based on the amount of Nuggets now assigned to it. This way, the system dynamically assigns Nuggets jobs based on the current situation, and it no longer prioritises one job above all else when assigning them. It will only send 5 Nuggets to help build a Hut instead of sending 20 of the available group, because the system now understand that 5 Nuggets are more than enough to finish the task. Nuggets will also understand if certain buildings need extra support (like Eateries, Farms, etc) and automatically assign themselves to those buildings. If a Farmer dies of old age or from the unfortunate and somehow all too common event that a mammoth stepped on them (how didn’t they see it coming?), another Nugget will fill this position without your interaction. Our goal is to make Nuggets feel alive. We want you to feel like they are truly organic, living beings.
What we’re doing right now is really going to make it easier for us to balance things out in the future. It’s also important to keep in mind that we’re only talking about changes that you’ll see on the frontend, there are also tons of changes happening behind the scenes as well. We’re developing debugging tools that help us to understand why Nuggets made a particular decision, such as where they are going, what they plan to do next, and what triggered these actions. A lot of amazing work has been done, but there’s a bit more that needs our attention.