Jump to content

Zed Clients


nasKo

Recommended Posts

 

katana-712x462.jpg

Hello everyone.

In the coming week Yuri and Andrei will explore the ‘light ownership’ of zombies on clients that we discussed in the last blog. The intention for this is to create zero latency for any nearby zombies directly chasing or attacking the player.

Work over the past seven days, meanwhile, has been a continuation on making sure that zombie movement transmission is as smooth as possible on clients – even with high levels of latency and extremely sparing transmission of positions. The endgame of all this being to minimize network traffic with hordes.

In Build 40 and earlier, when zombies move the server calculates their movement via the same AI routines the single-player uses. All positions, animation frames, angles etc are transmitted to clients that are in range of that zombie. Zombies only ever move on the server, so their movement is always inherently at a lower framerate than in SP.

On top of this, due to the latency and ping between server and client, by the time that information is received on a client it’s always out of date. The zombie will always be further along its path depending on the delay in the packet, what you (the client) see is inherently a representation of the past.

Finally, and most importantly when dealing with the zombie menace, if any lag occurs in causing lost packets or delays – then that has no bearing on the zombie’s AI. A bite can occur on the server without a single positional update ever reaching the client being bitten.

So let’s look at how the MP Strike Force have been looking to remedy this. In the following video the blue circles represent the zombies position on the server,while the green line and circle represent the zombies’ current target for movement.

(Please ignore some animation oddities when they transition from standing to chasing at the moment)

Look at the rarity of movement of the blue circles (especially on zombies far away from the player) – and also the inaccuracy as to where the client zombies are appearing. This shows that zombies on clients have a ton more agency to decide themselves how to move, instead of relying purely on information passed down to them by the server.

Zombies far from the player now have a second or more between updates from the server, instead of updates every server tick – which would have been something like 15 times every second. Despite this, zeds are able to move around convincingly using a combination of prediction, interpolation and extrapolation and leveraging the client zombie AI states for moving.

The end result of all this should be, for the most part, smooth zombie movement even in hordes and with high pings or server stress.

Will it be perfect? Well, clearly the differences between the blue circles and the zombies position shows that they are often in inaccurate places on the map – you can see them try to correct themselves as player positions get transmitted after delays and inform them that their predictive client-side shambling has been in the wrong direction. This is something that Yuri and Andrei will continue to improve upon, however ultimately these inconsistencies shouldn’t matter too much.

Once client ownership over zombies is in-place it will only be zombies at a distance and those not interacting with players on a certain client that would have these inconsistencies or deviations from their true server position. In these cases having believable approximate behaviour of the zombies that reasonably mirrors their actions will suffice. Having increased visual fidelity of their movement at an extremely low cost of network traffic, is much more important than extreme accuracy of position and direction of zeds that aren’t directly in harm’s way or chasing your own particular survivor.

Ownership of zombies that are of relevance to the player at hand will be transferred – so the client impacted by the zombie in gameplay terms will have zero latency authority over the zombies actions. This will mean then that their combat should hopefully be identical to that of the single player experience. This then, is one of our key next milestones.

There will undoubtedly be additional challenges ahead. For example, we have to make combat effective when attacking a zombie that’s chasing a friend.

That zombie will be at far higher risk of suffering from latency, and will be using client side prediction and cover-ups based on delayed information. Likewise, there’s the issue of making sure a remote player attacking a zombie that’s chasing you look believable with these similar latency issues.

However, whatever issues we face, even we find solutions that aren’t 100% perfect the end result will be VASTLY preferable to our current MP issues and frailties. The war on lag bites will hopefully have been won, and we will have seen the end of running through hordes of zombies that pause in sync every second as the server struggles to keep up.

NEXT IWBUMS BETA PATCH

We’re on track for a release for the next patch early next week, as we currently have a completed tutorial that industrious internal testers are doing their utmost to break – after which RJ cleans up their mess.

Other interesting nuggets that have gone into the patch this week include:

  • Polished English language UI text from a new starring role from community member Faalagorn and Nasko.
  • Ability to wash blood from cars.
  • ‘Fill all’ option when filling up bottles of water etc.
  • Better cutaway behaviour with fences
  • A new ‘reloading’ radial menu
  • Fannypacks and flip-flops
image.png

FINALLY AND IMPORTANTLY

It feels strange for the development blog of a zombie survival game to pass comment on the news of the day, but due to unfolding events it becomes imperative to underline:

Black lives matter.

We hope that in its own small way our game and community can, and will, reflect this basic fact and right.

 

This week’s rogue katana from Debugging Sucks. A changelist of all IWBUMS patches since the 41 beta was released can be found here. A general list of stuff added to PZ, and vids of features being worked on, is kept here – so you don’t have to plough through endless dev blogs for info. The Centralized Block of Italicised Text would like to direct your attention to the PZ Wiki should you feel like editing or amending something, and the PZ Mailing List that can send blogs like this and patch notes direct to your mailbox. We also live on Twitter right hereOur Discord is open for chat and hijinks too!

Link to comment
Share on other sites

Fannypacks, yay! :D

Would it be possible for them to work as an extension of your main inventory? In a sense that you could keep your water bottle in it and the character would drink automatically. Or keep cigarettes and matches in it and you could smoke without unpacking them. Etc..

Link to comment
Share on other sites

I’m more hyped about project zomboid then my new Ferrari ( I’m kidding I’m poor, but I wanna new updaaateeeee of this game ahahah I bought it after 8 years, always stop to buy it because  I poop pants in this kind of games but this one is beautiful don’t know why but I’m addicted ahahah) Please you are the only one that understand what people want from a zombie game 😭😭😭😭

Link to comment
Share on other sites

Cool, my comment on the importance of any life has been deleted. Damn racists!

I, as a resident of Belarus, as a whole, do not understand your cries specifically about BLACK life. In my country, it doesn’t matter to everyone what color you are,  matter that only you are a bad person or not. Important only life. And as in any country in the world, you can meet people of any nationality.
America seems too free. 

Since in your country only BLACK LIVES are important. Maybe this is the problem?

There are also hundreds of nationalities in Russia. And there are even black ones. And no one divides death into colors.

 

Delete my comment again. After all, you are the main ones here, and only you can talk about what which life is important.

Edited by Хибити\Hibiti [BLR]
Link to comment
Share on other sites

28 minutes ago, Хибити\Hibiti [BLR] said:

Cool, my comment on the importance of any life has been deleted. Damn racists!

I, as a resident of Belarus, as a whole, do not understand your cries specifically about BLACK life. In my country, it doesn’t matter to everyone what color you are,  matter that only you are a bad person or not. Important only life. And as in any country in the world, you can meet people of any nationality.
America seems too free. 

Since in your country only BLACK LIVES are important. Maybe this is the problem?

There are also hundreds of nationalities in Russia. And there are even black ones. And no one divides death into colors.

 

Delete my comment again. After all, you are the main ones here, and only you can talk about what which life is important.

 

In case you didn't know, we're vastly majority white in the development team. If you took from that statement that we don't value our own lives and don't think our own lives matter, then am afraid you took the wrong thing away from it.

 

If what you say about Belarus is true then that is wonderful to hear and we could all learn a lot from Belarus. Sadly its not the case elsewhere, particularly in America where all this stuff is going down at the moment, as such that statement is something a lot of people are saying in solidarity and its unfortunate that its somehow so contentious to some.

Link to comment
Share on other sites

  

Quote

Cool, my comment on the importance of any life has been deleted. Damn racists! I, as a resident of Belarus, as a whole, do not understand your cries specifically about BLACK life. In my country, it doesn’t matter to everyone what color you are, matter that only you are a bad person or not. Important only life. And as in any country in the world, you can meet people of any nationality. America seems too free.
Since in your country only BLACK LIVES are important. Maybe this is the problem? There are also hundreds of nationalities in Russia. And there are even black ones. And no one divides death into colors. Delete my comment again. After all, you are the main ones here, and only you can talk about what which life is important.

 

Your post - as well as our previous explanation - was removed because you're misinterpreting the point of the Black Lives Matter movement with a line that is constantly used to trivialize and invalidate the idea behind the movement and we did not want this topic to turn into an education program for current happenings in the world.

While the things might not apply to Belarus and a large part of Europe, in America there has been a systematic oppression of the black community for more than 100 years. 

The current riots happening in the US are the escalation of this. 
The Black Lives Matter movement does not make a point that only Black Lives Matter. It carries an implicit "Black Lives Matter, Too" with it, because as evident in the US, not all lives matter to many people, especially not black ones. 

You're a fully armored player who has no wounds on him complaining that players who have lacerations and scratches are currently fighting to be provided with bandages after a large amount of that certain group of players has had their needs ignored systematically.  
You're shouting "everybody's injuries should matter!" to them without being injured, essentially.

This is why your statements display a stark lack of empathy and apathy for the people who are affected by things that you thankfully haven't had to experience.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...