Client side includes and You! or ZOMG, No damage?

OuChTrOnX

Active Member
Level 1
Joined
Jul 8, 2007
Messages
375
I've seen/heard a lot of our members of various ranks in recent times taking note that an opposing player had blood splatter but no damage. If you don't understand this and want to, please take a moment and read this for a little clarity. This is because blood splatter is a client side include - or - that your computer is guessing what would happen as opposed to the server which dictates what has actually happened.

Steam games use data packet transmission. As you play you are sending and receiving information about player positions, shot trajectories and soforth. From this point forward all data transmission will be referred to as packets. The following is a more detailed breakdown of events for those who are interested.

It is important to note that in this explanation there are at least three computers involved, the two players' computers, or clients, and the server. This is not an explanation of lag or interp (seen as lerp in net_graph) and does not account for any other rebroadcast by routers or other intermediary devices.


What Actually Happened:

1.) You see your target. You have received a packet from the server telling your computer the position of the enemy player. This happens every few milliseconds but is not an uninterrupted stream of data, so in between packets your computer cannot refresh player positions so it interpolates them. This involves calculation probable position and then assuming that the enemy will be there.

2.)You shoot at your target. That packet is not yet sent to the server, but your computer guesses it'll be a hit, so it shows blood splatter, maybe on the enemy character model, maybe on the surrounding area, or both.

3.)The packet is sent from the client to the server.Maybe it happens a millisecond later, or maybe even at that same time.

4.)The server updates then sends packets back to the clients. The server receives packets from both clients and can now update player position, shot trajectory, and damage. It then transmits this updated information to both clients.

5.)Your computer updates. You now get the current information on player position and soforth, and this whole process begins again.


_____________________________________


Hope this helps clarify. Think I was thorough, sorry if I missed anything.

Cheers, and gg all.
 
I never knew that and always wondered why, thanks for sharing!
 
It helps, but let me try to connect the dots and correct me if I am wrong. When you see blood on the enemy it is the result of your computer guessing you got a hit. However, after the packets are received the server realizes that the enemy was not actually in that position and therefore does not register a hit/kill.

My only question is, why does your computer not correct the "error" by removing the blood when it updates?
 
In so far as I've seen, and from conversations I've had with the devs about this, error correction does not include blood splatter.
 
This doesn't help my rage any. If I shot at a person and hit them in my game, I should have killed them. The rage comes from the stupid ping correcting code or whatever saying "nevermind, you didn't hit them."
 
This doesn't help my rage any. If I shot at a person and hit them in my game, I should have killed them. The rage comes from the stupid ping correcting code or whatever saying "nevermind, you didn't hit them."

If I'm not mistaken it means you actually missed on your end but the server thought it was a hit. If that's the case you missed and should only be mad at yourself. If, however, the server showed you the guy in the wrong spot and you actually hit him (in the wrong spot where the server told you he was) then I understand the rage. Can you clarify Ouch?
 
If I'm not mistaken it means you actually missed on your end but the server thought it was a hit. If that's the case you missed and should only be mad at yourself. If, however, the server showed you the guy in the wrong spot and you actually hit him (in the wrong spot where the server told you he was) then I understand the rage. Can you clarify Ouch?

Almost right, but reverse it, wewo. I hit them on my end. My computer thought they would be in a certain spot (after interpolating them there), but when the packets came from the server with the players real location, the game found out the person was actually in a different spot than where they were shown on my screen. On my screen, I did aim, shoot, and hit the person.
 
Your rage is justifiable, please don't pop a blood vessel;)
 
Interestingly, it is the exact opposite for the "I WAS BEHIND THE WALL WHEN HE SHOT ME!!" Your computer interpolates you as behind the wall, but when the real packets arrive, they say that you got shot.
 
Interestingly, it is the exact opposite for the "I WAS BEHIND THE WALL WHEN HE SHOT ME!!" Your computer interpolates you as behind the wall, but when the real packets arrive, they say that you got shot.

That happens to me all too often. But in my case its LIES!!!!
 

Latest posts

Back
Top