Forums » Suggestions

Kick everyone with abusive ping

123»
Jun 06, 2016 Mi5 link
500 Ping = 3x "YOUR CONNECTION IS AT 500> PING WARNING*** FIND A STABLE CONNECTION"
750 Ping = 3x "YOUR CONNECTION IS AT 750> PING AUTO-KICK TIMER (30 seconds)"
1000 PING = Auto-kick

This is getting out of hand.
Jun 06, 2016 biretak link
+1 but, those numbers still sound high. and the 500 ping should get kicked eventually, too. I'd cut those numbers in half if not more.
Jun 06, 2016 incarnate link
I can't just kick people with high pings. Basically anyone on a phone in Asia is going to have a crappy ping, probably around 500ms. I'm not going to just tell several billion people they can't play our game.

Besides, the problem is usually not high ping but rather inconsistent ping, like someone suddenly spiking from 100ms to 500ms and then back down again. That's what messes with all the interpolation and prediction stuff. But I'm unlikely to just kick people based on transient latencies either, we need to find a better solution.
Jun 06, 2016 Niki link
Well I hope you do find a solution to it, since the rising amount of mobile players is continually making any kind of PvP play style increasingly unenjoyable.

Until then, all we can do it try and shoot them!
Jun 06, 2016 incarnate link
Thanks for the video links; even though we're super familiar with the issue, they're helpful examples.

Basically, the challenge is in mitigating the notion of "reality" that differs between two different people who have some degree of latency, along with a third "authoritative reality" that's overseen by the server.

The server (sector) does compare the timestamps of your actual shots against the "sphere" ballpark of where the other player was, looking backwards in time. If your shots aren't close enough, it considers your reported "hits" to be invalid.

Basically, even if you have a 100ms ping, and the other guy is 500ms, your shot can still be off by a considerable distance, because the server/sector gets the other guy's update at least 100ms before you do, so its picture of "reality" is always more up-to-date.

The problem here is that the server is probably being too accurate, and we need more room for vagueness in the reported collisions (part of what we tweaked in the model last year that helped this issue, but didn't resolve it). But, this also increases the possibility of intentional cheating, which is what the whole shot-comparison thing mitigates.

The best solution may be to have some sort of scaling value of collision-timing vagueness that increases with the latency variation of one or both players. Which means we need to build some kind of heuristic using rolling latency averages or.. some more clever statistical model.

I don't know, that's one possibility. It could be something simpler to fix, but we're going to need to dedicate several days to just simulating this (again) on a test-server and seeing what we can do to improve it. And probably logging the relative latencies of collision-failures "in the wild" on the production server, and crunching that data.

Anyway, I've sent some data to Ray to think about, we do want to address this issue, but it'll be a few weeks at the very least. We're kinda crushed with fixing other people's problems right now.
Jun 06, 2016 abortretryfail link
Besides, the problem is usually not high ping but rather inconsistent ping,

This here hits the nail on the head. If you could work something into the hit-check to account for packet loss and jitter, that would help a lot.

Right now it's usually damn near impossible to kill someone who's on a crappy mobile connection, especially so if they have a ship with crazy high acceleration. Since they're teleporting all over the sector from place to place, you're always aiming in the wrong location for the server's picture of "reality".
Jun 06, 2016 Mi5 link
https://www.youtube.com/watch?v=evHkFrmp_Kk

See that jumping at the end? There are players that do that every .7 seconds.
Jun 06, 2016 Dr. Lecter link
Right now it's usually damn near impossible to kill someone who's on a crappy mobile connection, especially so if they have a ship with crazy high acceleration. Since they're teleporting all over the sector from place to place, you're always aiming in the wrong location for the server's picture of "reality".

This. Forget about touting VO as a twitch combat game, this kind of crap it makes it absolutely unplayable. What's even MORE FUN is when someone with good ping gets in an Atlas X and puts a 1000+ pinger in their turret. Fuck those people with a chainsaw.
Jun 06, 2016 Mi5 link
Yes you can just kick people with high pings.
Jun 06, 2016 incarnate link
No, I will never kick people with high pings.

I am open to more cogent discussion.
Jun 06, 2016 Dr. Lecter link
What's to discuss? All we're supposed to do is tell you the perceived gameplay issue, which is that players who can do what high pings are causing makes VO unplayable. That's happened, so do whatever you want...but fix it.
Jun 06, 2016 incarnate link
No, that would make this the Bugs forum. This is not the Bugs forum. If you want to call this a "bug report" and just wrap it at that.. then fine, just stop posting.

I don't have a problem with technical discussions, or people suggesting heuristics we could use to mitigate the issue. Most of what people are actually "suggesting" are heuristics of one kind or another. I'm open to ones more nuanced than "disconnect all users over X latency".

Anyway.. I'm outta time for the forums. I'm buried up to my neck in 10 other high-priority fires, and I have to go deal with those now.

[EDIT] Also, don't make accusatory and inflammatory posts directed to individuals, claiming their exploitation of these bugs. That does not help discussion. Deleted a related post.
Jun 06, 2016 csgno1 link
how about a cap on ping during a duel, or the duel ends
Jun 06, 2016 Savet link
Is it not possible to monitor a player's ping over a recent period of time, and if if significant variations are detected, then treat them as a worst case scenario in the "interpolation and prediction stuff"?
Jun 06, 2016 Pizzasgood link
In addition to what Savet said, it should also adapt to whether the situation is PVP or PVE. If they're within a couple seconds of turbo from other players and experiencing poor network quality, the game could be more strict when considering the laggy client's claims about their ship's position, with the goal of reducing the amount of jumpiness and "missed" shots at the expense of the laggy ship's pilot perceiving his movement to be even more jumpy. That way laggy people don't get to cheat at PVP, but while out of combat they'd use the current more lenient algorithm so they could still fly around smoothly while doing PVE.
Jun 06, 2016 biretak link
+1 Rin, savet, and harpo. Ping needs to be treated seriously! What is EP's ping and Estrian's ping from when he was in Australia? Anything worse than ping from Australia should be kicked from game or treated as a hack with the person the the 35ms ping getting the advantage!!! Me likes advantage! Lower ping equals better position and weapons accuracy on server.
Jun 06, 2016 Hoban-Wash-Washburne link
Alternative option: Ask if they are on mobile and if yes, don't PvP them.
Jun 07, 2016 biretak link
lol, hoban, afraid you're ping hack might get you disadvantage? The server should give more credibility to those providing the most accurate data.

If I provide 5x or 10x more data, I should get 5x to 10x more latitude with hits.
Jun 07, 2016 Sieger link
+1 to working on this problem in any way.

I'm mostly a fan of the idea to not allow /duels for people with X number of ping. A reasonable number must be worked out by people who know what they're doing.

Then I also must say I like the idea of just kicking people with drastic high pings, even though incarnate doesn't want to do this. Once the numbers get crazy, it's no longer fun. You cannot - in any way - hit these people. You fire your blaster - zoom they're elsewhere. You fire a rocket - ooops, took too long. Sorry. They're already behind you...
Jun 07, 2016 spacebears link
Inc stopped posting cause all you dint listen rar.