SKYeXile
2011-07-09, 01:50 AM
I dunno if there is another Q & A session for PS2, but it would be nice to know if forge light will be playable on a high ping(200) like the original planetside, or can we expect more terrible hitscan and attempting to compensate for latency ourself s like in gaybal agenda.
For those that dont know, i play from Australia, while i have a decent connection, the pacific ocean gets in the way of things.
Anyway there is a large community of oceanic players looking for a decent PvP MMO, it would be nice to know if planetside will be it or we will be at a large disadvantage due to our ping.
reposted post from planetside.com:
With some info Quovatis posted yesterday on the planetside syndicate i must say im alittle concerned. now im certainly no expert on netcode or anything, but iv read alot on the internet and played alot of games with high ping to know afew things anyway heres what he said:
Is the hit detection client-side or server-side? We all know how frustrating it is to get killed after you've already taken cover on your screen. The developers want to minimize the effect of lag in PlanetSide 2. Hit detection will use a hybrid model of client and server-side tracking. Physics will be handled by the client, and some other details will be handled by the server. I was told the target latency is around 100-150 ms maximum. How this would be achieved or enforced is unknown. However, there will be multiple servers, so players can choose the server with the shortest latency.
Gaming especially MMO gaming in Australia, has never been the greatest, simply due to the fact its 150ms ping, minimum, across the pacific. Planetside is one of few shooters playable on a high ping due to clientside hit detection(CSHD) because there is no need to compensate for latency manually in your aim, a hit on your screen is simply a hit.
In Quovatis post while the first "We all know how frustrating it is to get killed after you've already taken cover on your screen." is merely more a comment rather than accrual info, the " target latency is around 100-150 ms maximum." I would say confirms planetside 2 will use a rather basic serverside hit detection(SSHD) code, similar to that of the Unreal series. This would mean every shot people fire, they would have to predict where their target would be on the server when their hit packet reaches it. because anything over 100-150ms it becomes pretty hard to predict where you target would be.
You should know that most games these days use while its not really a hybrid, its serverside hit detection, but you don’t require to manually adjust your aim to compensate for latency. This is typically called serverside hit predtection(SSHP) what it does it timestamp each packet, where your shot was fired and where it was at, when your packet then gets to the server it uses its buffer to rollback its data by the delay of your packet, and verify the details of your shot to detect the hit. Though this offcourse would put added strain on the server and is likely no going to be the code used to run 1000 players online, COD:MW and the source engine use serverside hit prediction. you can read more on SSHP:
here:http://developer.valvesoftware.com/wiki/Source_Multiplayer_Networking
Back to the "not been killed around corners part" in my experience this can only be solved by one method, using the basic serverside hit detection code, the reason people die around corners in PS1 is because the person who killed you, or you yourself have a higher ping, and on the person who killed screen you were still in line of sight for them. when their kill packet got to the server, you make think your were safe, but the fact is, you're already dead, you just dont know it yet, but this works both ways, you kill people when on their screen they're around a corner, you just don’t notice or think about it.
BUT WHAT ABOUT THE WARPING!?!?, shut up, you're an idiot. Warping has nothing to do with hit detection or ping, warping is due to planetsides poor movement prediction system. planetside sends packets at about 5-7 ticks a second, i forget the actual number, BUT ITS LOW. This means while you’re rendering at 60 FPS, you have about 53 frames where your client must predict where your target is moving for those frames where it has no data. it offcourse predicts that they will continue to go in the same direction at the same speed of the last packet they sent. (this is why people warp though the roof in stairways) when your client then gets a new packet it "warps" everybody to there proper location at the time you received the packet. This type of movement prediction is called extrapolation.
Most games these days use something called interpolation, where your client runs at one packet behind the actual data it has received, it then renders everybody’s movement between the locations of the 2 packets received. most FPS games you play though are sending packets at about 27 ticks per second though, so you don’t notice any delay. couple that with the 10-30 ping you're getting, everything is smooth sailing and would be in planetside 2 aswell, except if they have a low tickrate again and the client decides its a good idea to render movement between a pillar, because on one packet you're on one side, the next you're on the other side, it simply connects the dots, PS2 will likely use this movement prediction, there will still be some funky shit to be seen if the servers tickrate is low, but certainly not as bad as extrapolation.
I said ping has nothing to do with warping, well that’s not a fact, merely an observation and using some logic, but a client with high ping still sends data at the same rate as a client on low ping, meaning there can only be the same amount of movement between packets and the same amount of correction or warp. When packets are lost though, as is the case with Chinese users, there is going to be longer in-between packets and as a result larger corrects aka: MORE WARP!
Now back to things that go hand in hand with basic SSHD, its a little something called hitscan, hitscan is a way of detecting if a bullet hits the target, it calculates that when fired the bullet travels along a line at infinite speed, and checks if anything in that line is hit. (eg: the shock rifle or lightning gun or chaingun in unreal) it basically means that bullets cant have a travel time, while they may animate a travel time, they don’t have one. It means bullets can have no dip or arc. Though not every weapon has to be hitscan in a game with SSHD, just expect every direct fire weapon to be using hitscan.
I hope that puts some people’s mind at ease about warping, but also raises questions, do you have the ping to play a game that uses base SSHD? Would you want to? But it also raises the question to SOE. Can you make a game that can still support international players on US servers? Unlike the Chinese, Australians run at a low packet loss, in my experience lower than some US players(i run a constant 0.0) and Planetside has a reasonable Australian playerbase that loves planetside and more MMO and FPS that I know would certainly play PS2 if ping only had the same effects as the original.
For those that dont know, i play from Australia, while i have a decent connection, the pacific ocean gets in the way of things.
Anyway there is a large community of oceanic players looking for a decent PvP MMO, it would be nice to know if planetside will be it or we will be at a large disadvantage due to our ping.
reposted post from planetside.com:
With some info Quovatis posted yesterday on the planetside syndicate i must say im alittle concerned. now im certainly no expert on netcode or anything, but iv read alot on the internet and played alot of games with high ping to know afew things anyway heres what he said:
Is the hit detection client-side or server-side? We all know how frustrating it is to get killed after you've already taken cover on your screen. The developers want to minimize the effect of lag in PlanetSide 2. Hit detection will use a hybrid model of client and server-side tracking. Physics will be handled by the client, and some other details will be handled by the server. I was told the target latency is around 100-150 ms maximum. How this would be achieved or enforced is unknown. However, there will be multiple servers, so players can choose the server with the shortest latency.
Gaming especially MMO gaming in Australia, has never been the greatest, simply due to the fact its 150ms ping, minimum, across the pacific. Planetside is one of few shooters playable on a high ping due to clientside hit detection(CSHD) because there is no need to compensate for latency manually in your aim, a hit on your screen is simply a hit.
In Quovatis post while the first "We all know how frustrating it is to get killed after you've already taken cover on your screen." is merely more a comment rather than accrual info, the " target latency is around 100-150 ms maximum." I would say confirms planetside 2 will use a rather basic serverside hit detection(SSHD) code, similar to that of the Unreal series. This would mean every shot people fire, they would have to predict where their target would be on the server when their hit packet reaches it. because anything over 100-150ms it becomes pretty hard to predict where you target would be.
You should know that most games these days use while its not really a hybrid, its serverside hit detection, but you don’t require to manually adjust your aim to compensate for latency. This is typically called serverside hit predtection(SSHP) what it does it timestamp each packet, where your shot was fired and where it was at, when your packet then gets to the server it uses its buffer to rollback its data by the delay of your packet, and verify the details of your shot to detect the hit. Though this offcourse would put added strain on the server and is likely no going to be the code used to run 1000 players online, COD:MW and the source engine use serverside hit prediction. you can read more on SSHP:
here:http://developer.valvesoftware.com/wiki/Source_Multiplayer_Networking
Back to the "not been killed around corners part" in my experience this can only be solved by one method, using the basic serverside hit detection code, the reason people die around corners in PS1 is because the person who killed you, or you yourself have a higher ping, and on the person who killed screen you were still in line of sight for them. when their kill packet got to the server, you make think your were safe, but the fact is, you're already dead, you just dont know it yet, but this works both ways, you kill people when on their screen they're around a corner, you just don’t notice or think about it.
BUT WHAT ABOUT THE WARPING!?!?, shut up, you're an idiot. Warping has nothing to do with hit detection or ping, warping is due to planetsides poor movement prediction system. planetside sends packets at about 5-7 ticks a second, i forget the actual number, BUT ITS LOW. This means while you’re rendering at 60 FPS, you have about 53 frames where your client must predict where your target is moving for those frames where it has no data. it offcourse predicts that they will continue to go in the same direction at the same speed of the last packet they sent. (this is why people warp though the roof in stairways) when your client then gets a new packet it "warps" everybody to there proper location at the time you received the packet. This type of movement prediction is called extrapolation.
Most games these days use something called interpolation, where your client runs at one packet behind the actual data it has received, it then renders everybody’s movement between the locations of the 2 packets received. most FPS games you play though are sending packets at about 27 ticks per second though, so you don’t notice any delay. couple that with the 10-30 ping you're getting, everything is smooth sailing and would be in planetside 2 aswell, except if they have a low tickrate again and the client decides its a good idea to render movement between a pillar, because on one packet you're on one side, the next you're on the other side, it simply connects the dots, PS2 will likely use this movement prediction, there will still be some funky shit to be seen if the servers tickrate is low, but certainly not as bad as extrapolation.
I said ping has nothing to do with warping, well that’s not a fact, merely an observation and using some logic, but a client with high ping still sends data at the same rate as a client on low ping, meaning there can only be the same amount of movement between packets and the same amount of correction or warp. When packets are lost though, as is the case with Chinese users, there is going to be longer in-between packets and as a result larger corrects aka: MORE WARP!
Now back to things that go hand in hand with basic SSHD, its a little something called hitscan, hitscan is a way of detecting if a bullet hits the target, it calculates that when fired the bullet travels along a line at infinite speed, and checks if anything in that line is hit. (eg: the shock rifle or lightning gun or chaingun in unreal) it basically means that bullets cant have a travel time, while they may animate a travel time, they don’t have one. It means bullets can have no dip or arc. Though not every weapon has to be hitscan in a game with SSHD, just expect every direct fire weapon to be using hitscan.
I hope that puts some people’s mind at ease about warping, but also raises questions, do you have the ping to play a game that uses base SSHD? Would you want to? But it also raises the question to SOE. Can you make a game that can still support international players on US servers? Unlike the Chinese, Australians run at a low packet loss, in my experience lower than some US players(i run a constant 0.0) and Planetside has a reasonable Australian playerbase that loves planetside and more MMO and FPS that I know would certainly play PS2 if ping only had the same effects as the original.