Welcome to symthic forums! We would love if you'd register!
You don't have to be expert in bit baking, everyone is more than welcome to join our community.

You are not logged in.

Hey! If this is your first visit on symthic.com, also check out our weapon damage charts.
Currently we have charts for Battlefield 3, Call of Duty: Black Ops 2, Medal of Honor: Warfighter and Call of Duty: Modern Warfare 3

NoctyrneSAGA

PvF 2017 Champion

(10,156)

  • "NoctyrneSAGA" started this thread

Posts: 7,231

Date of registration
: Apr 3rd 2012

Platform: PC

Battlelog:

Reputation modifier: 19

  • Send private message

1

Sunday, April 27th 2014, 2:54am

Computer Science Guy Posits "Solution" to DICE's Hybrid Client-Server-Side Hit Detection

Spoiler Spoiler

"The 'hybrid' system is definitly better than server-side only, if done properly. At this moment, if you're behind cover for over half a second, you can still get multiple incoming hits from a laggy enemy.

I'm probably going to state some things DICE already has considered and maybe (partially) implemented, but it's worth a note. I'm trying not to get too technical, but know that I do understand the underlying concepts and technology (I'm a computer science guy).
•The system should favour 'awesome, I killed that guy' over 'ah come on, I swear I hit that guy!' for the shooter.
•The system should favour 'yes, I got away because I was behind cover' over 'what!? He couldn't even hit me from over there!' for the hiding player.

Let's say both clients do hit detection on all shots either fired or nearby the player in their current perspective, but the server does the same from it's perspective (both with a sufficiently high tick-rate, say 30Hz).

Now there are a few situations. I'll name the players involved in the shot A and B.

Say A and B agree that the bullet hits or doesn't hit. For enjoyment purposes, the server shouldn't be allowed to say 'No, even though you didn't see, you clearly hit!', so we'll accept the answers from both clients.

Now say A and B disagree on the hit detection. This could be because of several reasons. One being that one or both clients are lying (comprimised; hacked), but let's ignore that for now. In A's perspective, the bullet hit, but in B's perspective, the bullet didn't. I suggest we ask the server, get a 2-to-1 vote. The server says either A or B is right, and we handle it like that.

This may sound fair, but in reality it isn't. A or B will probably have a lower ping, being closer to the server (see it as being friends, you favour a friend's opinion over a stranger's opinion). So let's take this into account. We check the ping-ratio of the last few pings we did on these clients, and we average the 'luck' based of these clients based on the ping ratio and possibly other data, with play test we'll create an algorithm and we may improve that over time with updates. We make a hard decision and one of both wins, the bullet hits: yes or no.

Hmm, may be better, but still, it could really piss you off that you can't get hits/kills 2, 3, .., 10 times in a row on guys that hide behind cover but were clearly visible when you fired.

So I'd suggest: partial damage. The server does some calculations and tries to make the game fair to all players. It will more often try to at least register a hit, but for players that truely did hide behind cover on time on their perspective, it will decrease the percentage of damage done by the bullet. I think this will be the most fair solution of all.

Players that would hide behind cover with only ~5% health left in the current game then may have been killed. And in situations where you'd have 5% health left before you dug behind cover, you're probably thinking "Wow, I got lucky here". With the new system, you can still get lucky, but you won't as much, or maybe you'll survive with 1~4% this time. From the other perspective it either looks like: "See, I totally hit that guy behind cover", or "Well, I hit him with that last bullet, he can't have much health left, let's go after him".

Lastly, I'd like to address the reason from OP to post here; high latency between getting hit and receiving damage. With a hybrid system, a server with 30Hz tickrate and pings around 30ms, it should be possible to have talked to both clients and come with a 'verdict' in about 80ms. That's about 1/4th of what we've got here.

-

(TL;DR Maybe partial bullet damage is some-what of a solution to the 'getting hit behind cover' issue related with different perspectives due to ping and tick rate. Anyway, ~300ms is way to long.)" - /u/Laloeka, Computer Science Guy


In a "FUCK YOU DICE" thread on /r/battlefield_4 today, Computer Science Guy has proposed a solution that makes shooting fair for both shooter and target when resolving corner/cover shots: partial damage.

"So I'd suggest: partial damage. The server does some calculations and tries to make the game fair to all players. It will more often try to at least register a hit, but for players that truely did hide behind cover on time on their perspective, it will decrease the percentage of damage done by the bullet. I think this will be the most fair solution of all.

Players that would hide behind cover with only ~5% health left in the current game then may have been killed. And in situations where you'd have 5% health left before you dug behind cover, you're probably thinking 'Wow, I got lucky here'. With the new system, you can still get lucky, but you won't as much, or maybe you'll survive with 1~4% this time. From the other perspective it either looks like: 'See, I totally hit that guy behind cover', or 'Well, I hit him with that last bullet, he can't have much health left, let's go after him'.
" - Computer Science Guy

I'm interested in what Team Sym would have to say about the implementation of partial damage. Looking at this from DICE's perspective of tying damage to caliber, this system seems oddly out of place. However, how viable would this be?






I personally feel what Computer Science Guy has said is nonsense, especially given that we're always experiencing the past in an online game.
Data Browser

Passive Spotting is the future!

"Skill" may indeed be the most magical of words. Chant it well enough and any desire can be yours.

Are you a scrub?

If it flies, it dies™.

TheMightyVoice

The Pantless Messiah Returns

(1,830)

Posts: 793

Date of registration
: May 22nd 2012

Platform: PC

Location: Behind my M240B

Battlelog:

Reputation modifier: 13

  • Send private message

2

Sunday, April 27th 2014, 2:59am

Calm down, Toshiro.
Eat your heart out, Badger.

Spoiler Spoiler


<elementofprgress> yummm baby jesus
<elementofprgress> but i'd prefer jesus with ketchup

<cloon> women are allowed to play hockey?
<daddygreeenjeans> body checks are a fundamental part of women's suffrage

<Riesig> "... I'M GAY..."

steamboat28: the doctors at the ER found my nipples, too!
steamboat28: it just..y'know...took them a razor and two orderlies.

<Legion> And damn, now I really want some [redacted] penetrator measurements

<Rezal> peipin, why did you tell them you brought your phone?
<Pepin_the_Short> Because there’s like a one in five chance of getting searched on the way out
<Pepin_the_Short> And trying to sneak the fucker out is way worse than letting them look at Cloon’s dick pics.

17:52:08 <Rezal> Unfortunately, this video is not available in your country because it could contain music, for which we could not agree on conditions of use with GEMA.
17:52:15 <ToTheSun> lolgema
17:52:15 <TheMightyVoice> lolgema

<Legion> But I literally am Hitler right now
Somehow my bullets are magnetically attracted to popular Youtubers, but theirs rarely seem to hit me.

This post by "CobaltRose" (Sunday, April 27th 2014, 3:32am) has been deleted by the author himself (Sunday, April 27th 2014, 3:32am)

Posts: 328

Date of registration
: Jun 12th 2013

Platform: PC

Location: US

Battlelog:

Reputation modifier: 5

  • Send private message

4

Sunday, April 27th 2014, 4:44am

The hit reg in BFBC2 had the problem of false positives. You would get a hit marker on your screen but the server would not agree and not apply the damage. Partial damage might work well in this scenario assuming the server can handle the extra processing. The server would be adding small amounts of damage to the low damage model.

In BF4 the opposite would happen, with the server reducing damage. This would lead to higher ping players feeling like all their weapons are doing less damage.

For competitive play, this is a horrible solution as you would in effect be changing the time to kill for weapons based on the ping of both the shooter and the target.
The fact that someone has an opinion, doesn't make their opinion a fact. Making just arguments first requires an acknowledgement of intellectual humility, while valid arguments require you to not commit fallacies of logic and rhetoric.

ToTheSun!

Be Creative.

(5,050)

Posts: 7,811

Date of registration
: Mar 9th 2012

Platform: PC

Location: Portugal

Reputation modifier: 19

  • Send private message

5

Sunday, April 27th 2014, 2:25pm

If you're only asking about partial damage, i'll just summarize my post with a "no".

Posts: 4,259

Date of registration
: Apr 6th 2012

Platform: PC

Location: From the heart of Europe.

Battlelog:

Reputation modifier: 17

  • Send private message

6

Sunday, April 27th 2014, 7:28pm

If you're only asking about partial damage, i'll just summarize my post with a "no".
[Aristocrat's Shoes]
TLDR -
Teamwork is where players function by themselves, but their effectiveness is multiplied when they work together. Not a checklist of "did we bring a healer so we can start playing?"

Posts: 34

Date of registration
: Sep 5th 2012

Platform: PC

Battlelog:

Reputation modifier: 5

  • Send private message

7

Sunday, April 27th 2014, 8:36pm

testing the netcode delay in Battlefield 4 - YouTube

lol, actually its stunning every time. now i can understand the low rpm guns problems^^.

Misnomer

Don't Prox Me Bro

(497)

Posts: 581

Date of registration
: Sep 4th 2012

Platform: PC

Battlelog:

Reputation modifier: 7

  • Send private message

8

Sunday, April 27th 2014, 10:09pm

testing the netcode delay in Battlefield 4 - YouTube

lol, actually its stunning every time. now i can understand the low rpm guns problems^^.


Unless someone can explain away this video, it is the biggest indictment of the DICE strategy on "netcode" (client updating, server updating, packet flow...whatever) that I have seen.

This isn't just dying around a corner. Someone being able to run through bullets is game breaking and all of us have felt it.

NoctyrneSAGA

PvF 2017 Champion

(10,156)

  • "NoctyrneSAGA" started this thread

Posts: 7,231

Date of registration
: Apr 3rd 2012

Platform: PC

Battlelog:

Reputation modifier: 19

  • Send private message

9

Sunday, April 27th 2014, 10:16pm

Unless someone can explain away this video, it is the biggest indictment of the DICE strategy on "netcode" (client updating, server updating, packet flow...whatever) that I have seen.

This isn't just dying around a corner. Someone being able to run through bullets is game breaking and all of us have felt it.


I'd like to see what the shooter was seeing. For all we know, he very well could have missed.

As for the "unexplainable" delay the guys keep harping on about, everyone seems to think that the only delay should be Player A's ping + Player B's ping and that's the only delay there should be. Of course they're forgetting that computers still need time to process the information they are given. That is the best explanation for the so-called "unexplainable" delay. Unfortunately, people were not very receptive of the idea that computers do not process things instantaneously.
Data Browser

Passive Spotting is the future!

"Skill" may indeed be the most magical of words. Chant it well enough and any desire can be yours.

Are you a scrub?

If it flies, it dies™.

Posts: 4,259

Date of registration
: Apr 6th 2012

Platform: PC

Location: From the heart of Europe.

Battlelog:

Reputation modifier: 17

  • Send private message

10

Sunday, April 27th 2014, 10:18pm

What's wrong with low rpm guns?
[Aristocrat's Shoes]
TLDR -
Teamwork is where players function by themselves, but their effectiveness is multiplied when they work together. Not a checklist of "did we bring a healer so we can start playing?"