there is alot lags on eu server after last patch even tho with good ping and on na server with bad ping i dont have that lag so please if there is smthing wrong in eu server fix it ...
Announcement
Collapse
No announcement yet.
eu server lags
Collapse
X
-
The game server is hosted on Amazon Cloud Services. The game itself is peer-to-peer. The server does nothing but act as a launching & landing point for your p2p games. I'm going to utilize this article http://gamedevelopment.tutsplus.com/...-gamedev-10074 and ad-lib FSF terminology in place of his little space game.
A multiplayer game played over the network can be implemented using several different approaches, which can be categorized into two groups: authoritative and non-authoritative. FSF games are played on a non-authoritative P2P network.
In the non-authoritative group, there is no central entity and every peer (game) controls its game state. In a peer-to-peer (P2P) approach, a peer sends data to all other peers and receives data from them, assuming that information is reliable and correct (cheating-free):
https://cdn.tutsplus.com/gamedev/upl...8/img2_p2p.png
A non-authoritative multiplayer game has no central entity to control the game state, so every peer must control its own game state, communicating any changes and important actions to the others. As a consequence, the player sees two scenarios simultaneously: his footballer moving according to his input, and a simulation of all other players controlled by the opponents.
The player's footballer's movement and actions are guided by local input, so the player's game state is updated almost instantly. For the movement of all the other players, the player must receive a network message from every opponent informing where their players are. Those messages take time to travel over the network from one computer to another, so when the player receives an information saying an opponent is at one place on the field (x, y), he's probably not there any more - that's why it's a simulation. In order to keep the simulation accurate, every peer is responsible for propagating only the information about its player, not the others. This means that, if the game has four players - say A, B, C and D - player A is the only one able to inform where player A is, if he dribble/shoot feints, if he fires an open shot or clean tackle, and so on. All other players will receive messages from A informing about his actions and they will react accordingly, so if A's dribble feint beats C's defense (on A's screen), then C will broadcast a message informing it was beat.
As a consequence, each player will see all other players (and their actions) according to the received messages. In a perfect world, there would be no network latency, so messages would come and go instantly and the simulation would be extremely accurate.
As the latency increases, however, the simulation becomes inaccurate. For example, player A shoots and locally sees a wide open shot, but player B tackles or causes interference; that's because A's view of B is delayed due to network lag. When B actually received A's shoot message, B already propagated their tackle, so no open shot score was propagated. This also applies to passes that seem to never leave your foot, ending up in you getting tackled.
If the game exclusively moves entities based on network updates, any lost or delayed message will cause the entity to "teleport" from one point to another. That can be mitigated with local predictions. Two ways to go about prediction are interpolation, and extrapolation. Freestyle games utilize extrapolation.
Another trick is extrapolation, which locally moves entities based on its current state. It assumes that the entity will not change its current route, so it's safe to make it move according to its current direction and velocity, for instance. If the latency is not too high, the extrapolation accurately reproduces the entity expected movement until a new network update arrives, resulting in a smooth movement pattern. This is why when a player lags, sometimes you see them infinitely trying to run off the field, before they either DC (and become AI), or update their current position with a network update.
Despite those tricks, the network latency can be extremely high and unmanageable sometimes. The easiest approach to eliminate that is to disconnect the problematic peers. A safe approach for that is to use a timeout: if the peer takes more than an specified time to answer, it is disconnected. (Hello, AI)
TL;DR - The game is based on who's actions get received first by the majority of the 4-7 other players. If you are lagging, you will not be able to win headers, chain dribbles, or perform clean tackles, as well as a player who is transmitting network messages cleaner to the majority of other players.
The last time a "Freestyle" game was server based, was when Sierra was hosting Freestyle Basketball 1. They later were patched to a peer-to-peer architecture, and all games following use that same peer-to-peer architecture. This is mainly due to Korea being connected to a unified fiber optic network, that is practically a LAN in itself (The majority of korean gamers have a latency of 10-40ms to one another).
P.S. - Non-Authoritative games are also much easier to "hack", which is why they implement crapshield for memory/executable protection.Last edited by z00t; 08-30-2014, 02:27 PM.
Comment
Comment