Version 0.14.1 is a major technical update for Caliber. The game did not receive such under the hood changes at least since the transition of Caliber to 1C Game Studios. We fixed and improved such significant game parameters as the frame rendering time and the delay in transmitting information to the server, increased the tick rate, improved damage registration, and reduced the anti-cheat system false positives.
Below, under the spoiler, is the complete list of changes. And after it, we wrote about the most significant of them in detail.
In short. With update 0.14.1, Caliber began to evenly use all the CPU cores of the user’s computer. As a result, on computers that meet the recommended system requirements, the average and maximum frame rates have increased, and game freezes have become much less common.
In detail. To put it simply, what happens on the screen during a match is divided into two stages: simulation of the game world and calculations of changes in the game world under the users’ influence. Unity, the engine on which Caliber is built, by default performs these actions sequentially, using, as a general rule, only one CPU core. Therefore, any CPU processing information during the game had bandwidth limits lower than its real capabilities. At some moments in the game, the CPU core under load had to work at 100% or close to this value and there was a noticeable drop in frame rate.
To fix this, we wrote our own module that separates the simulation and calculations into separate threads. Now multi-core CPUs will distribute the load evenly and carry out the calculations necessary for rendering the frame, taking into account damage, the effects of the operators’ abilities, and other constantly changing information, in parallel. Before, such calculations could take 5 milliseconds; now, when simulating in a separate thread, this time decreased to 0.5 milliseconds.
The increase of frames per second value is currently achieved by optimizing the CPU work. If the low frame rate on your computer was caused by insufficient graphics card power, most likely the difference will be negligible or not noticeable at all.
According to our tests, players who have computers that meet the recommended system requirements will see an increase in frames per second up to 30% and encounter game freezes extremely rare.
In short. Tick rate is the frequency with which the server updates the state of the game world. We have doubled this value — from 30 to 60 hertz, thus «catching up» Caliber to the standards of modern online shooters. With the new tick rate parameter, the game’s responsiveness to the player’s actions has increased and animations and special effects have become more fluid.
In detail. The difficulties that we are solving with update 0.14.1 were built into the architecture of the project even before the transition of Caliber to 1C Game Studios. For example, a tick rate of 20 hertz for PVE and 30 hertz for PVP was chosen because we wanted to ensure that the game works on relatively weak PCs as well as on powerful ones. Thus, we generally sacrificed quality for the sake of the accessibility of the game. Nowadays, computers have become more powerful, and we are seeing that the request to improve the visual quality of the game appears more and more often.
Increasing the tick rate is easy. This is an edit to a value in the game’s configuration, with which the game coordinates information with the server and displays it on the player’s screen. However, to make this transition possible, we needed to significantly increase server capacities and do a lot of work on frame rendering time optimization, which is described above.
As the tick rate increased, match replay recordings took up three times as much hard drive space. Additionally, there is a known memory leak issue after continuous play. With a session duration of more than 6 hours, the game may consume over 9 GB of RAM.
The leak is fixed by restarting the game. We know about these issues and will fix all of them in the following updates.
In short. With update 0.14.1, damage registration has improved 10 times. Before, the desynchronization between the visible and actually registered hits could reach 20 inches; now it rarely exceeds 2 inches.
In detail. „Bad“ damage registration is an incorrect game client’s prediction about what is happening on the server. This could be observed when, for example, a player made a shot and had a visible hit on the enemy, but after a few milliseconds, they saw that the opponent’s hit points were not depleted.
The prediction didn’t always come true because the dynamic algorithm that did it didn’t have enough variables. To obtain such variables, we needed long-term tests of a wide variety of conditions in which users play: their technologies and connection quality, distance to Caliber servers, data transfer delays, and others. With the help of this data, we corrected the operation of the algorithm, changed the value of the variables with which it works, and increased the reliability of its predictions.
We added the Fullscreen option in the Video section of the game settings. It allows you to take advantage of additional settings and improvements to graphics and gameplay that are provided by video card manufacturers Nvidia and AMD.
We added experimental graphics APIs: DirectX 12 and Vulkan. From now on, Caliber supports the most modern graphics modes. They are also designed to improve game performance. But since we do not have enough test benches with different configurations, these modes are called experimental. If you’d like to try them out and share the results with us, we’d really appreciate it. Feedback on their work can be sent to Caliber customer support or the community manager.
We added new smoke shaders. Now they take into account information about the lighting in which this effect is reproduced. Smoke began to look more realistic. This is especially noticeable on night maps.
Extended debugging information appears in the game client. Now pressing Shift + B opens additional screens on top of the game. They show the status of the servers, the quality of the internet connection, the load of the CPU, graphics card, and RAM of your computer. This information may be needed when contacting Caliber customer support. If you experience technical problems while playing, please take screenshots of each screen in advance.