Full notes
Full Mesozoica update
Read the full published notes in a cleaner layout. The original post stays linked below.
What changed
- Performance
- UI and audio
- Gameplay
- Maps
Mesozoica changes
The purpose of this small blurb is to quickly and effectively explain the updates and the exciting news ahead for Mesozoica. The big topics that we are sure you want to see are TERRAFORMING, BETTER OPTIMIZATION, MORE AND BETTER SOUNDS and finally the news that were investing a great deal of the profits from the game into getting us help that we could have never received without your purchase/support. We are well aware of the impending release of several Jurassic related franchises and we have invested into creating something that Universal wouldn’t touch. A risky endeavor in which focus on creating a world in which the player decides the fate of the setting and in which they create their own story. Thank you for the patience and understanding, this is our baby as much as it is yours and were not stopping after a rough launch. First of all, thank you for giving this a read. Even if you are someone who has bought the game and refunded it/hasn’t bought the game it means a great deal to us that you’d follow along with our progress as a project. The objective of this long post is to highlight what has kept us silent for a long period and hard at work. While from the outside it may look inactive, the inside gears have been churning. Let's take a look at what has been worked on and changed for the upcoming update to Mesozoica.
Foliage System
The Problem as defined by the Community Previously we were using the build in foliage system that Unity provided. The problems we were facing with this system was that it was very heavy on the overall performance of the game and that it was extremely performance heavy to edit and adjust it on runtime. This made it so we weren't able to fully implement and finish terraforming. When terraforming the performance hit was so magnificent that at times it could take 5 - 8 seconds for the game to respond again. We found some workarounds that reduced the freeze to around 2 seconds (still not acceptable) but this meant that the game was becoming heavier overall. Eliminating the freezes completely meant that we had to remove the ground foliage (grass) and that didn't sound like a realistic solution. The only real solution we could find is not using the default unity foliage system and creating our own. The downside to this was that creating such a system was going to be a very time consuming task, but in our eyes a necessary investment of time. Thank you for allowing us to take our caffeine addiction to unhealthy levels and get this investment of time completed. What we fixed and what it does for YOU! Creating a foliage system is very hard because you are dealing with rendering a lot of objects. We are talking about a couple hundred thousand, maybe even a million small objects in your screen, and this on top of everything that was already in the level like buildings, dinosaurs and other scenery. We have looked into many possibilities and systems that were made for other games and came to the conclusion that the only possible way to render so many objects was to cluster them into large batches. Using a special technique we were able to even render a lot of batches at the same time instead of rendering them separately. The performance difference gained from this technique on the CPU can best be visualized in a graph: In this graph you can see how taxing the rendering of a number of objects is on the CPU. The higher the draw calls the heavier it is. You can see that our solution only uses a few draw calls to render a very large amount of objects compared to the default way of rendering (Note that this technique only takes a great deal of stress away from the CPU, the GPU will still have to deal with a lot of geometry as normal. So this is not a magic solution that allows us to render everything we want in insane quantities). Even Though this sounds awesome in terms of performance gained, it would not have been game development if this didn't have its downsides. Using this technique meant that we had to come up with a lot of creative solutions to still reach the level of diversity and freedom as that you would normally have if you treat everything as a seperate object. Another requirement was that this system had to be very performant when it comes to making edits on runtime like terraforming and even removing and adding grass. This needed to be kept in mind during the whole development of the system and using our imagination we managed to move a lot of the runtime editing tasks that would normally be performed on the CPU (very heavy since the cpu is slow at handling large amounts of data) to the GPU (a lot faster cause of the way a GPU processes data). These are a couple of the problems and solutions we had to deal with when we were creating this system, and the reason this task was such a nightmare. As an extra for the technical people among you ill quickly list the things we have done to gain performance and if your not sure what these things mean, do not worry and feel free to skip this list:
GPU instancing
Generating batches
LOD system
Distance culling
Frustum culling
Careful memory usage
While it we can focus on the fact that it may or MAY not run Crysis the changes made also have visual updates as well. Simply put because of the performance gain we are able to render a lot more foliage. This results in denser and better looking ground foliage, show in the image below: On the left you can see our new foliage system with 2 layers: Grass and rocks. On the right you can see our old solution with a grass layer. Here is a larger version of the image https://ibb.co/iq5JvS We hope you can see the difference in quality. The difference should be noticeable compared to the right image. To go even further to highlight this advancement we have recorded a small video to better highlight why we have invested so much time into the task. (please excuse the fps, we have not spent any money on upgrading our work rigs) : https://streamable.com/og0dn With a focus on the long term we have laid the foundation with several new features that allow us to build better and more efficiently. To go into detail on these items we have boxed out the items of importance. Layers In our new system we can add as many layers of different foliage as we see fit. This way we will be able to create ground foliage for complex jungle terrains, etc: As an example i made a comparison image between a single grass layer and a grass and flower layer: Precise wind settings Our wind simulation is very fast and can be tweaked in great detail. We added the following settings for artists to tweak: I made a video showcasing the result of tweaking these settings in engine (sorry for the low fps video my pc did not like the recording software): https://streamable.com/mvtl9 Perlin noise distortion Based on perlin noise randomness we have been able to add nice looking randomness to the scale of the foliage. This can be tweaked per layer with a lot of freedom: On the left we set the strength of the perlin noise to 50% and on the right its at 0%. We can also change the size of the noise to make larger or smaller patches Random scale and rotations To add even more variation we added the possibility to randomly rotate foliage based on perlin noise and a min/max range Fake occlusion To make the foliage look more grounded without a performance hit at all we managed to fake ambient occlusion for foliage: Summary Well that was a lot of information about the foliage system, lets summarize it quickly to get a overview of what this new system means for the game:
Allows us to implement terraforming
Denser and better looking ground foliage
Complete artistic freedom to create stunning looking environments
Terraforming
Terraforming is a very important feature that allows you to shape the landscape of your park the way you want to. Previously we weren't able to fully implement this feature like i explained in the previous section of this article. Our new terraforming system allows players to:
Raise terrain
Lower terrain
Flatten terrain
Create lakes and rivers
I made a small in engine video of the terraforming system for you to enjoy: https://streamable.com/j11a1 As you can see the functionality behind the terraforming system is fully implemented. The task remaining is to make sure the terraforming works together with all the other systems. For example the terraforming should raise the dinosaurs and visitors up and down if you brush over them. And we have to figure out a way to make sure that you can't mess up your buildings and paths with terraforming.
UI
Upon the release of the early access version of Mesozoica we got quite a lot of complaints about how our UI is very confusing and hard to get used to. WE have heard your voices about the UI and we took them very seriously and decided to completely make a new UI from scratch. To make sure we are doing it right at once we are developing our UI in iterations. We are currently working on iteration 4 and throughout the iterations the UI changed alot for the better. We are going over all the different iterations to show you how the UI progressed: Iteration 1 The first iteration was the initial setup of the UI. This version was meant to layout the base of the UI. Unfortunately we forgot to take pictures of the UI iteration progress so we had to look back in our chat history and could find some images (they aren't the best quality though). So let's look at what we changed in our new UI design. Compared to our previous design that was mainly build up out of small windows, we wanted to make our UI more consistent in terms of layout, therefore we chose to use a static toolbar at the bottom of the screen that is used to open the side window you see on the left. We also added text to the right side of the buttons in the toolbar to make them easier to understand. The issue with our last UI was that we had a lot of icons that didn't really make sense, using text fixes that. On the left in the toolbar you the information that should always be available to the player, for example the amount of money you currently have and the dinosaur/visitor count. To make sure that the large sidebar isn't in the way of your view we are going to offset the camera center when the sidebar is open: This way the UI is never in the way of what you are trying to look at. Iteration 2 In our second iteration we wanted to blend the UI more with the game since we felt like the UI was to separate the the game itself. After trying out a couple ideas we came to the conclusion the blurring the game behind the UI and making the UI a bit transparent was the best solution. To make sure we could realise this without a significant performance hit we played with the idea in engine and came up with a performant way to blur the game behind UI elements. After that we went back to the drawing board to update the UI based on this idea. This is what we came up with: Iteration 3 / 4 In iteration 3 and 4 we basically tried to design all the remaining windows and make sure all the information that should be available to the player is there. Let's look at a couple images from the UI (these images are NOT from ingame but are design concepts): Iteration 5 For iteration 5 we want to involve the fans. We made a Google Form that you can use to comment on our UI design so far: https://docs.google.com/forms/d/e/1FAIpQLSfrpb9APEwoGkdQbLVx_ZFJer-L3loONfJ3RmS2ebrK4WEnzQ/viewform Based on these comments we will make iteration 5 and showcase the result once its updated.
Sound
We have been working on improving the sounds of our dinosaurs and visitors. We started with the dinosaur audio since we felt like that was the most important task. Previously our dinosaurs only made sounds on events like attacking or intimidation, this of course is very unrealistic since animals of that size almost always make sounds. Think about sounds like: footsteps, breathing, growling, etc. We made a list of audio that every dinosaur should have:
One shot growl(s)
Ambient breathing loop(s)
Action audio
Intimidation
Attack
Get hit
Drink
Eat
Sleeping
Get Hurt
Footsteps
We think that with these audio files per dinosaur our dinosaurs will feel a lot more alive and natural. We put together a demo video with the new sounds: https://drive.google.com/file/d/1E0iZEaKJmkuZWuvdSBFU5Kobn-tzZ8oa/view We also put some audio on soundcloud to showcase audio: https://soundcloud.com/user-640734854/mesozoica-dinosaur-calls-demo We encourage you to comment on the audio here: https://docs.google.com/forms/d/e/1FAIpQLSfMefS9Rif64Zyd4N09mHvGO677McZIFBX7KOJqDH73KoYp8Q/viewform All the audio for the dinosaurs is created and ready to be implemented once we find the time. Next we will work on audio for our visitors, we will go over this in future posts.
Concept art
We decided to hire a concept artist since we felt that the experience and atmosphere that Mesozoica currently has was lacking. Because we felt that it was impossible to make a drawing with enough attention payed to both the dinosaur and visitor side of mesozoica we decided to split it up and make 2 drawings, with one drawing focusing on the dinosaurs and one on the visitors. After we found a concept artist we did a lot of polls to make sure we understand what our fans want in terms of experience and atmosphere. This document was the result of that: https://drive.google.com/open?id=17Hi_2_-tW-vV4vc2kOIMroZphHxpPdKe Based on this document our concept artist came up with this sketch: Even though this sketch nails the atmosphere we felt that the camera angle and position were to close to the ground and dinosaurs. Based on these instructions our concept artist came up with this new sketch: This was a lot better, however we asked that he showed a bit less path and a used a wider field of view for the final image. Base upon the instructions and the last image the concept artist went and painted the final image and here it is: https://media.discordapp.net/attachments/407637136649748500/426762359592189964/dinosaur_section_updated2.jpg?width=2265&height=985 We feel like this is exactly the look we should aim for in the future since it nails all the aspects of our poll document. Now that we have the dinosaur concept art done we are currently working on the concept art for the visitors. Here is an image of the current state of the visitor/building image: https://media.discordapp.net/attachments/407637136649748500/427132427132076052/sketch.jpg So what are we going to do with this concept art? In the past we have been struggling with not having a visual reference of how our game should look and feel. We kinda were working in the dark because we didn't have the funds to hire a concept artist. Now that we have funding from the early access we have the opportunity to visualize how we want our game to look. With this concept art we are going to try to change the look of our game to match the concept art. This may mean that we will have to create (note that we don't have the fundings yet to hire artists to make all of this, so we hope that we can find people that are willing to help us out of love for the project or that we raise enough money in the future to realize all this):
New terrain
New nature assets
New buildings and modular pieces
New fences
Visitor concept art Beside the concept art for the atmosphere and buildings we decided to invest in creating concept art for new visitors. Currently we feel that our visitors are lacking personality and believability and the first step in solving this is designing how we want the visitors to look by creating visual reference. We will tell more about the concept art for the visitors in future posts. Testing Looking back on the past we decided that we need to have longer test periods to avoid buggy releases. Previously we released versions that were tested just for a day, and that is way to short. Our now policy on releasing is that we don't release versions that havent been tested for at least a full week until no more game breaking bugs are found. This may take more time but should result in higher quality gameplay down the road.
Future plans
We quickly went over what we have been doing, but now let's talk about our future plans. Our short term goal is to update our game by adding the system discussed in this article, so:
Terraforming (Done)
Creating rivers (Done)
New foliage system (Done)
Smoother dinosaur movement (Done)
Bug fixes
As you can see we the only thing left for the new update is making sure the new system are correctly implemented and done cause bugs by testing. We need a couple days to make a testable version of the game. After that our minimum testing period of a week starts. Based on how the testing is going the release date of the next update will be determined. To avoid missing release dates we will determine the next update date once the game is running stable and we can pick a date with confidence. UI update After the upcoming update the UI is next. We will based on the designs made, create a whole new UI system. This will make the UI look alot better and the game easier to play. Details on the new UI update will come after the upcoming update. In the meantime we will keep iterating through our UI until we are all satisfied with the way it looks. Investments As mentioned previously in this article we are investing heavily in concept art since we feel like concept art is the first step in fixing the visual problems of our game. You might wonder why invest in concept art and not in programmers, animators, modelers, etc. Well based on the amount of money we raised during the early access period of mesozoica we decided what is possible and what is not possible with the money we raised. We rather pay for resources that we would never have access to and spend more time ourselves working on the time heavy work than invest in quick/cheap ways to speed progress. We felt like the visitors were the biggest visual problem (apart from the AI which we are going to fix ourselves). Meaning we are going to invest in:
Concept art for visitors / atmosphere and buildings
3D modeler for visitors
Animator for visitors
Hoping that the new updates and investments will raise enough money for future investments to realize the atmosphere and building concept art. Polls We also want to let you know that we are well aware of that the fans want improved. We did polls on this subject and can be seen in this document: https://drive.google.com/open?id=1rl_QgiE5IgSCMjak0r42rmMTu_8JD6TW We aren't sure yet what and when we are going to tackle subjects, but we want to start with the biggest ones and work our way down. Thank you, Mesozoica
Source
Changelog.gg summarizes and formats this update. How we read updates.
