View Single Post
Old 05-29-2016, 03:17 PM
MagneticDuck` MagneticDuck` is offline
Join Date: Oct 2014
Location: Coimbra, Portugal
Posts: 80

1) Con: This can cause opponents to fly though your recently placed wall, as they haven't yet registered that the wall is there. (This is an acceptable con imo)
Yeah, this is one bonus lagging players would get. For the time being I feel like a smooth, solid experience is more important than giving position-altering weapons faster action.

2) Does weapon fire delay == powerup fire delay? (I don't want to make assumptions.) Does the location of attacks originate from where I will be once latency's time has passed, or where I was when I clicked?
Yes; weapons, powerups and the like are decided by server-side logic. Until this changes, it takes <latency> for any command to trigger logic on the server and indirectly cause its results to arrive on your screen. (The location of the attacks originate from where you were when you clicked.)

3) This feels great as the attacking player, knowing where you actually need to hit. As the defending player against packet dropping opponents, this can feel terrible. "He shot me around a wall?" If they (attacker) get to packet drop at the right time, and their view of you is flying out into the field when you actually turned back to base, this can get killed quick.
Here we have some confusion; my statement suggesting that projectile hits against opponents on your screen are real may be the culprit.

With arbitrarily high sampling and network consistency, the projectiles and opponent states on your screen match those registered by the server exactly, ~<latency>/2 ago, so hits that you see are hits that happened. However, packet drops, fluctuating pings or significant changes effected within the packet sampling interval can break this correspondence. Meanwhile, the actual decision of whether the weapon hit or not is decided by packets you send to the server indicating your state combined with packets the assailant sent to the server requesting to press the fire button -- if you get hit with a shot that wasn't on your screen, it's because of your connection, not an opponent dropping packets.

It's worth saying that the great majority of modern multiplayer games decide these scenarios in favor of the shooter, and the strategy I'm using leans towards the moderate side of the spectrum.

#4 is an awesome result of #2 <3
This system is much more favorable to careful players with low pings.

Wall lag: I'm not sure exactly how much this system alters wall lag, but I think it does decrease it. Wall lag occurs when the ball bounces off a wall powerup on some clients but not on all clients. This problem is also seen when the ball is shoot at a small rounded object, and the small amount of change between client's initial bounce position from that object greatly changes it's bounce direction. I think the ball should have a jump in position on some screens to keep the ball on the same side of a wall. [...]
Yeah, wall lag will be totally solved in solemnsky's current networking strategy. Walls and balls (if we use them ^^) will be server authoritative.

Last edited by MagneticDuck`; 05-29-2016 at 03:37 PM.
Reply With Quote