Author Topic: Collisions  (Read 5525 times)

Offline Lusche

  • Radioactive Member
  • *******
  • Posts: 23888
      • Last.FM Profile
Re: Collisions
« Reply #75 on: May 20, 2014, 02:53:47 AM »
Other games model it just fine. With ping times in the single and double milliseconds, it's a non-issue.


It's a world wide game. There is no way whatesoever for huge part of the playerbase to get even down do double digit ping times. For single digit ping times you would basically have to sit next to the server (from a global perspective.)
Yuu simply can not get around that in anyway but severley limiting the player base to "local people". The signal travel time is just a fact that no one has any influence on. No game can get around that premise.

Steam: DrKalv
E:D Snailman

Offline Karnak

  • Radioactive Member
  • *******
  • Posts: 23047
Re: Collisions
« Reply #76 on: May 20, 2014, 07:46:42 AM »
I am in the Austin, TX region and my ping times to HTC's  server are usually in the 60-75ms range.  When I was in the San Francisco Bay Area they were in the 120ms range.  There is no way that somebody in Australia, Japan or Europe can hope to have a ping that isn't, in your mind, bannable.

Other games have much slower movement which hides the latency based discrepancies. Elite: Dangerous, currently in production, is limiting velocity (outside of fantasy engines) to 1000mph due to the same problem AH has, too fast of speeds causing player realities to diverge too much.  WWII fighter speeds are about the fastest reasonably viable game speeds over the internet, and even those require imperfect solutions such as the collision system in AH.
Petals floating by,
      Drift through my woman's hand,
             As she remembers me-

Offline ImADot

  • Platinum Member
  • ******
  • Posts: 6215
Re: Collisions
« Reply #77 on: May 20, 2014, 08:30:05 AM »
Other games model it just fine.

Are those games server based or client based? It makes a difference.

As I said before, I have no problem with the current collision model, as AH is a client-based game. If I fly my plane and avoid a collision with an object, I take NO DAMAGE. It doesn't seem so hard to understand.

This thread has become a circular argument and I see no way out...
My Current Rig:
GigaByte GA-X99-UD4 Mobo w/ 16Gb RAM
Intel i7 5820k, Win7 64-bit
NVidia GTX 970 4Gb ACX 2.0
Track IR, CH Fighterstick, CH Pro Throttle, CH Pro Pedals

Offline Skuzzy

  • Support Member
  • Administrator
  • *****
  • Posts: 31462
      • HiTech Creations Home Page
Re: Collisions
« Reply #78 on: May 20, 2014, 09:11:50 AM »
Does the gunnery model work like this?

Not sure of the context of this question.

If you hit the bad guy on your computer, then he takes damage.  If he hits you on his computer you take damage.

It can cause bullets to look like they are coming from odd angles if the guy shoots and hits you when the time displacement is high.

I'm a software developer (as well as a flight instructor). I see it every day.

Your "travel" time (correctly called "latency") is double the slowest user's latest latency connecting to the server - that is usually less than 1/5th of a second. The average human can't react fast enough, let alone notice, a good connection's latency (using .01s - .2s connection speeds). It's a non-issue for any group of users on modern games playing on modern PC's with modern connections. It only becomes an issue when you allow users with subpar connections to play or you have a game which is overly-lax in it's hitbox modeling (or player location-reporting). This is also why laggy players are typically banned from most competitive play servers, because they present a disruption to otherwise equal gameplay.

This is not a hard feat by any means - this is common in modern games. Lest you forget, your gunnery model ALREADY works in the same fashion. If the player lags when they shoot you, they'll still hit you even if the bullets don't connect. Arguing that the collision model would be impossible to work in this fashion displays a lack of understanding for the mechanics already employed. Fighter Ace used the same model as I've described and collisions were not an issue unless another player simply had a horrible connection (and they were reported and banned if it was a persistent issue). And they had double to triple the numbers we have now.

You are talking about using a server based flight model, which has its own set of problems.  We are not going to go there.  Every design has its compromises and limitations.
« Last Edit: May 20, 2014, 09:54:33 AM by Skuzzy »
Roy "Skuzzy" Neese
support@hitechcreations.com

Offline Skyyr

  • persona non grata
  • Gold Member
  • *****
  • Posts: 2052
Re: Collisions
« Reply #79 on: May 20, 2014, 10:42:28 AM »
I am in the Austin, TX region and my ping times to HTC's  server are usually in the 60-75ms range.  When I was in the San Francisco Bay Area they were in the 120ms range.  There is no way that somebody in Australia, Japan or Europe can hope to have a ping that isn't, in your mind, bannable.

A human eye can't detect a .06ms delay. Even five (5) times that is unnoticeable by most players (though some exceptional/professional gamers might notice it). I had a .290 - .320 (320ms) ping time when I played FA on dial-up and I had ZERO issues with server-managed collisions when I played FA. Literally - I had no problem.

One of our squad members connects from Australia - his average ping time is (strangely enough) .320s (320ms) as well. He runs DSL.

It's not as big of an issue as people make it out to be. Now, I'm not saying it is the singular solution here, but for some reason, everyone seems paranoid about confronting a server-based collision model. An average "fast" human reflex is typically 1/3rd of a second (anywhere from .25s to .35s). There are certainly faster and certainly slower people, but the average person cannot react faster than that. A latency that matches that is quite literally a non-factor.

Just to be clear, I'm not advocating it - I'm simply baffled at how everyone seems to be afraid of it without understanding the actual application of it. It would literally be a non-factor for players with ping times of 350ms or less, which is likely 98-99% of players. The only players who typically would have an issue with this are satellite connection and dial-up users with poor connections.
Skyyr

Tours:
166 - 190
198 - 204
218 - 220
286 - 287
290 - 296

nrshida: "I almost beat Skyyr after he took a 6 year break!"
A few moments later...

vs Shane: 30-11

KOTH Wins: 6, Egos Broken: 1000+

Mmmmm... tears.

Offline Skuzzy

  • Support Member
  • Administrator
  • *****
  • Posts: 31462
      • HiTech Creations Home Page
Re: Collisions
« Reply #80 on: May 20, 2014, 11:06:52 AM »
It is not as simple as you paint it to be.

I really do not want to get into a design and theory discussion here.  It is beyond the scope of what this forum is for.

HiTech is very familiar with the server side model and its limitations.  To allow up to a thousand connections to a server, it simply does not work well.
« Last Edit: May 20, 2014, 11:30:08 AM by Skuzzy »
Roy "Skuzzy" Neese
support@hitechcreations.com

Online Wiley

  • Plutonium Member
  • *******
  • Posts: 8081
Re: Collisions
« Reply #81 on: May 20, 2014, 11:10:19 AM »
It's not as big of an issue as people make it out to be. Now, I'm not saying it is the singular solution here, but for some reason, everyone seems paranoid about confronting a server-based collision model. An average "fast" human reflex is typically 1/3rd of a second (anywhere from .25s to .35s). There are certainly faster and certainly slower people, but the average person cannot react faster than that. A latency that matches that is quite literally a non-factor.

If I understand it correctly, here's how it would work.  Feel free to correct me if I'm wrong.

Let's assume just for grins and because I like round numbers, .25 second latency for all parties concerned.

I'm flying along, something happens.

0.25 seconds for me to react to it.
0.25 seconds for my input to get to the server.
0.25 seconds for my input to make it back to all clients, including my own.

Since it would take 0.5 seconds for my inputs to be transferred into motion of my plane, effectively there'd be a 0.5 second delay on gunnery.  That's pretty noticeable, and that's assuming a pretty decent ping.  Wouldn't that be much worse than what we have now?

Even if we assume 0.125 ping, that's still going to double reaction time.

Wiley.
If you think you are having a 1v1 in the Main Arena, your SA has failed you.

JG11

Offline Karnak

  • Radioactive Member
  • *******
  • Posts: 23047
Re: Collisions
« Reply #82 on: May 20, 2014, 11:16:58 AM »
NM, cell phone ate response.
« Last Edit: May 20, 2014, 11:18:43 AM by Karnak »
Petals floating by,
      Drift through my woman's hand,
             As she remembers me-

Offline Skyyr

  • persona non grata
  • Gold Member
  • *****
  • Posts: 2052
Re: Collisions
« Reply #83 on: May 20, 2014, 11:56:48 AM »
If I understand it correctly, here's how it would work.  Feel free to correct me if I'm wrong.

Let's assume just for grins and because I like round numbers, .25 second latency for all parties concerned.

I'm flying along, something happens.

0.25 seconds for me to react to it.
0.25 seconds for my input to get to the server.
0.25 seconds for my input to make it back to all clients, including my own.

Since it would take 0.5 seconds for my inputs to be transferred into motion of my plane, effectively there'd be a 0.5 second delay on gunnery.  That's pretty noticeable, and that's assuming a pretty decent ping.  Wouldn't that be much worse than what we have now?

Even if we assume 0.125 ping, that's still going to double reaction time.

Wiley.

Your latency is typically the full round-trip time (otherwise, your .25s travel time would actually be a .5s latency, which is horrible by any standard). Most users have a latency of .3 or less (which means 150ms or less both ways).

Now, yes, if you're flying straight and level and you waited for some kind of queue to move your joystick (whether it's a barrage of bullets, an oncoming plane, etc.), then yes, you'd have your reaction time coupled with your latency. However, that's not how it functionally works.

Due to latency, you're ALWAYS flying current time minus latency. Let's assume a latency of .2 seconds (200ms, which is getting somewhat close to the high side). This means that you're flying .2 seconds in the past for ALL of your maneuvers... and so is your opponent. Your opponent is also seeing you .2 seconds in the past... all the time. When both planes are reacting .2s in the past, then they're effectively flying the same as they would in the present. In most cases, it's unnoticeable.

You're not flying with your hand off your stick and then quickly grabbing it in a dogfight - you're constantly making adjustments (that's what dogfighting is). It's natural, so the only "reaction" time you need is the visual queue, which corresponds with latency. As long as the plane you're watching/fighting against has a latency of less than 1/3 a second or so, you're fine, because what you see on the screen corresponds to what is happening in real time (as the average human can't easily detect changes that happen faster than 1/3 a second or so). Even if you could, WWII aircraft are not that responsive, so it fits this genre of games just fine.

Therefore, latency isn't an issue when 1) it's relatively low (under 1/3 a second or so) and 2) the players have similar latencies, as experienced latency ends up being the difference between the individual players' latencies in relation to the reference connection. This is important.

Why? Because the reference connection on a server-based solution is, you guessed it, the server. So if one player is connecting to the server at 100ms and another at 150ms, then the perceived lag will be 50ms (which is virtually undetectable by humans).

However, when using a client-based solution, the server is no longer the reference point, so perceived "lag" occurs whenever two players encounter something that doesn't match exactly on both ends, as you have no common reference point or standard. This usually ends up benefiting one player while putting the other (or others) at a disadvantage.

This is why server-based systems are in place for most all competitive/professional games.
« Last Edit: May 20, 2014, 11:58:23 AM by Skyyr »
Skyyr

Tours:
166 - 190
198 - 204
218 - 220
286 - 287
290 - 296

nrshida: "I almost beat Skyyr after he took a 6 year break!"
A few moments later...

vs Shane: 30-11

KOTH Wins: 6, Egos Broken: 1000+

Mmmmm... tears.

Offline Skyyr

  • persona non grata
  • Gold Member
  • *****
  • Posts: 2052
Re: Collisions
« Reply #84 on: May 20, 2014, 12:01:53 PM »
It is not as simple as you paint it to be.

I really do not want to get into a design and theory discussion here.  It is beyond the scope of what this forum is for.

HiTech is very familiar with the server side model and its limitations.  To allow up to a thousand connections to a server, it simply does not work well.

Understood (and sorry, didn't see your response until just now). Again, I'm not advocating it, I'm simply surprised that people think that server-based referencing is impossible, when in reality it's used quite commonly. Now, of course, it may not be suitable for this game, but that doesn't make it irrelevant to this genre of games because of that.
Skyyr

Tours:
166 - 190
198 - 204
218 - 220
286 - 287
290 - 296

nrshida: "I almost beat Skyyr after he took a 6 year break!"
A few moments later...

vs Shane: 30-11

KOTH Wins: 6, Egos Broken: 1000+

Mmmmm... tears.

Offline FLS

  • AH Training Corps
  • Plutonium Member
  • *******
  • Posts: 11617
      • Trainer's Website
Re: Collisions
« Reply #85 on: May 20, 2014, 12:21:43 PM »
Skyyr your theoretical argument about reaction time is not convincing. If you happen to have 2 accounts and 2 computers together, you can hook up your monitor to the other PC, which has joined you as an observer, and fly while looking at the delayed response added by travel time to the server and back. It is very noticeable even with a .06 ping.

Understood (and sorry, didn't see your response until just now). Again, I'm not advocating it, I'm simply surprised that people think that server-based referencing is impossible, when in reality it's used quite commonly. Now, of course, it may not be suitable for this game, but that doesn't make it irrelevant to this genre of games because of that.

This is Help and Training for Aces High. This game, not this genre of games, is the subject of this discussion. Sorry if that wasn't clear to you.

Offline Randy1

  • Platinum Member
  • ******
  • Posts: 4229
Re: Collisions
« Reply #86 on: May 20, 2014, 12:22:57 PM »
.  . . . A human eye can't detect a .06ms delay. . . .


But at 500mph closure speed in that .06ms the distance between the two planes is reduced by roughly 800 yards

Offline Skyyr

  • persona non grata
  • Gold Member
  • *****
  • Posts: 2052
Re: Collisions
« Reply #87 on: May 20, 2014, 12:30:36 PM »
Skyyr your theoretical argument about reaction time is not convincing. If you happen to have 2 accounts and 2 computers together, you can hook up your monitor to the other PC, which has joined you as an observer, and fly while looking at the delayed response added by travel time to the server and back. It is very noticeable even with a .06 ping.

This is Help and Training for Aces High. This game, not this genre of games, is the subject of this discussion. Sorry if that wasn't clear to you.

You keep arguing how it's not feasible in this game - you seem to keep ignoring that this mechanism is used world-wide in MANY games. If it's not feasible in this game, then it's a problem OF this game (which, if you go back and read, was my original comment).

I could care less about other games, except for the fact that several of them, including the now-dead Fighter Ace, solved this problem quite easily while also using a server-based collision model. If this game can't, it's not a limitation of technology in general, it's simply a limitation of THIS game. Which is fine, but simply admit it and move on and find something that works within the confines of it (which, yet again, was my original post).
« Last Edit: May 20, 2014, 12:40:40 PM by Skyyr »
Skyyr

Tours:
166 - 190
198 - 204
218 - 220
286 - 287
290 - 296

nrshida: "I almost beat Skyyr after he took a 6 year break!"
A few moments later...

vs Shane: 30-11

KOTH Wins: 6, Egos Broken: 1000+

Mmmmm... tears.

Offline ink

  • Persona Non Grata
  • Plutonium Member
  • *******
  • Posts: 11274
Re: Collisions
« Reply #88 on: May 20, 2014, 12:39:43 PM »
 :rofl

Offline Skuzzy

  • Support Member
  • Administrator
  • *****
  • Posts: 31462
      • HiTech Creations Home Page
Re: Collisions
« Reply #89 on: May 20, 2014, 12:40:43 PM »
You keep arguing how it's not feasible in this game - you seem to keep ignoring that this mechanism is used world-wide in MANY games. If it's not feasible in this game, then it's a problem OF this game (which, if you go back and read, was my original comment).

I could care less about other games, except for the fact that several of them, including the now-dead Fighter Ace, solved this problem quite easily while also using a server-based collision model. If this game can't, it's not a limitation of technology in general, it's simply a limitation of THIS game. Which is fine, but simply admit it and move on (which, yet again, was my original post).

It is not a problem with the game.  No one at HTC said it was not feasible.  Again, I am not going to get into design and theory as it is not within the scope of this forum.

I do play other games and they all suffer from input lag due to them being server based.  Even with only 32 players in the room.  I cannot imagine what it would be like to have several hundred in view.
« Last Edit: May 20, 2014, 12:45:01 PM by Skuzzy »
Roy "Skuzzy" Neese
support@hitechcreations.com