DayZ: Gameplay Programmer Mirek Maněna Q&A – Part II

DayZ: Gameplay Programmer Mirek Maněna Q&A – Part II


Hello, I am Mirek Maněna and this is
the second part of my Q&A. It’s our goal to be better than Arma 3. And there will actually be more: we’ll
have a more dynamic camera because we also have different camera
setups for every stance. Our target is definitely to have good movement
– as in any other modern action game. Well there are two big challenges: we want
to have high simulation rate, which consumes CPU and we also want the network traffic
to be as low as possible. The server works in three major steps: first
it receives input messages from clients, then it simulates the entire game world, and then
it sends results back to all players. So that second part, the world simulation, is
the most resource intensive one, because we want to have a lot of players on the server
and a lot of infected and animals. We’ve already implemented an LOD mechanism for
simulation – it makes less simulation steps for units which are further away from the player
– so basically it helped us, also, to disable infected which where over 500 meters far
from player’s position. In third part, it’s the network traffic that
creates a problem, we’re not happy with the current state but we have some plans how to do it
or how to improve it. Persistence is another complex
system in our game. It has to continually save the state of the
game on the background. Now we can save the entire game world in 30 seconds. It saves everything about loot, about house
door states, vehicles, dynamic events like helicrahses, and now we are working on saving the state of house containers, infected and animals positions. Another thing: every single loot item has its own
category, and it’s up to designers how they want to set it up or how
they configure the loot. So they can set up lifetime anywhere from
tens of minutes to tens of days. So in 0.61 we have fixed time step in simulation. This is very important for client-server synchronisation. So basically the simulation rate is slower
than render rate, and that means that in one frame, the player is moved, and in other one, it’s not. So this is what caused the jittering, and
we had to implement some interpolation between these two steps. Anyways it introduced the input lag, but I
talked about this earlier so we will deal with this. It also helped us to improve the server performance,
so we were able to add more AIs. Now you can enjoy more infected and animals. This biggest disadvantage of the legacy Arma damage
system is that everything is an explosion. It’s very hard to balance it for melee combat. So we created a new complex damage system,
where we can easily set up different types of attacks and armours, like blunt damage, projectiles,
fire, explosions, almost everything. This will easily allow us to balance every
type of attack and armour. I think the biggest enemy of development is
time, so the time and the rule that if something can go wrong, it will go wrong. This is happening often. But I can say the biggest hurdle is player
controller revamp because it is the main task to BETA stage, so when we will move to BETA
stage I believe that then, everything will be going much faster, because we will be able to
fix bugs very fast. That’s an interesting question because I stopped
watching The Walking Dead series 2 years ago and I like them both, so
I hope they live, they both still live. Thank you for watching my Q&A and
see you in Chernarus!

4 thoughts on “DayZ: Gameplay Programmer Mirek Maněna Q&A – Part II”

Leave a Reply

Your email address will not be published. Required fields are marked *