Another theory from reddit
There are lots of posts on the front page complaining about scripting and slider manipulation in FIFA. Many believe it, many don't. Some people tend to think that EA just wants pack sales and makes you lose with slider manipulation. Some think that there is no such thing, it is all ELO, you underestimate your opponent after taking a lead, etc. After gaining some industry experience in the field of latencies and game dev, I have a theory that might make sense in this regard to give both parties some merit:
I do not think EA is manipulating games to ensure an outcome, or even to give a player an advantage.
FIFA, like all online games, is heavily latency dependent.
In FPS games like COD, Counter Strike, Overwatch, etc, you connect to dedicated servers to play against others, just like WL.
In a dedicated server, both players, say A and B connect to a central server to transmit information.
Let's say A pings the EA servers at 50ms. and B pings it at 100ms. This obviously means that B has a much higher latency.
When A presses a button, it takes 50ms to reach EA, and then another 100ms to reach B. So in total, B sees As input 150ms after it has actually occurred. This also happens in the reverse direction, so both players effectively need 150ms to communicate each button press.
Now, you might think that this game is fair as both players take the same amount of time to talk to each other, however, there is one important difference.
This game, like all online games, depends heavily on reaction times. These reaction times go down to the milisecond level. For eg, in FPS games, you need to shoot as soon as you see the enemy head. There is a tiny fraction of a second window to hit the head.
A and B have to react to each other throughout the game. Let's take a simple example of a pass and interception mechanism:
What would happen in a case where FIFA is a turn based game (ie: only one player can make a move at a time. All other player inputs are ignored. Like Chess:
B (with worse latency) has possession and passes the ball. He presses the pass button with the correct direction at time 0 (initial time).
EA servers register the pass at time 100ms (ping from B to EA).
EA servers send this pass message to A, and he receives it at time 150ms (ping from EA to A).
A sees this and it's his turn to react. He reacts and his inputs are eventually seen by B after 150ms.
As you can see, in a turn based game, this works flawlessly because each player is forced to WAIT for input form the opposite player to react.
FIFA, like FPS games, is a highly REACTIVE game. It is not turn based and needs simultaneous inputs form both players. Let's assume for our case, that both players are exactly the same and react at exactly the same rates. Here is where the unfairness starts:
Time 0: B passes the ball. This message reaches EA after 100ms.
Time 0 cont: A, being an intelligent human, predicts the pass and tries to move to intercept it at the same time. Time 0. EA registers his movement in 50ms.
Time 50ms: EA registers A's movement and moves the player to intercept the pass. B hasn't seen this yet. and has no idea.
Time 100ms: B's player passes the ball.
Time 150ms: On A's screen, he sees that his player successfully intercepted the ball.
Time 150ms cont: B sees an inexplicable phenomenon where A's player magically teleports a few feet to intercept the ball and rages. There is no physical way for the opopnents player to intercept the pass because, according to your screen, A did not even move to intercept it and now suddenly, there he is. B never had a chance to react to A, and thus was pretty much helpless. If both players had 0 latency, then the pass should have been successful.
What I described above, the magic teleportation effect, is what would have happened in games without something called lag compensation. Lag compensation is vital for all reaction based online games to compensate for delay. New timeline with lag comp:
Time 0: B sees the open person and passes the ball. A predicts this and reacts as well.
Time 50ms: EA sees that A moved the player to intercept the pass. however, EA also knows that there is an additional 50ms delay from B. EA decides to delay A's action by 50ms to wait for Bs response. This is called lag compensation.
Time 100ms: EA sees that B passes the ball. It also sees that A initiated a movement. So EA will move the player to intercept at this time, as well as triggering the pass at the same time.
Time 150ms: Both A and B see the results of both their actions at the same time. To B, it looks like he pressed pass and it worked perfectly fine. To A however, it looks like his player did not move to intercept the pass quick enough. It took him 50ms to start his movement. It was not instantaneous as he expected it to be.
Every button pressed by A has a slight artificially induced delay of 50ms by EA to allow B enough time to react. On Bs screen, he sees a game which reacts more or less when he presses a button. On As screen, he sees every action with a slight 50ms delay. He feels like he is being scripted against and his players aren't moving as quickly as he is pressing buttons. The games feels "sluggish" and players seem like they are "walking through mud".
While this sounds appalling, lag comp is a necessary evil in online games. Players would need to teleport all over the place if it weren't for lag comp. The key in lag comp, is to minimize this delay as much as possible. The only way to do this currently, is to minimize latency between the parties A and B to such a small extent as to go unnoticeable by the human brain. The human brain and eye also requires some time to process things and react. There is lag in your own body between eyes, brain and hand. This is your reaction time. In an ideal world, all games would rely solely on this human reaction time which we term broadly as "skill level". Reality however, is quite different.
To balance the level, some delay needs to be introduced to make games fairer for both parties. This happens in ALL online games. In FPS games, when people complain about "no regs" or no hit registration or bad hit registration, this is what they are talking about. The game servers add a slight delay to when you shoot to when the hit is registered to balance out latencies.
Why this is bad in FIFA currently, and general FIFA things:
In an FPS game, you usually play in a team against another team. All made of humans usually and no involvement of AI. Lag comp is added usually based on overall latencies of all players, not just one other guy. If all players have around 50ms ping, and one guy has 100ms, in these games, the guy with the 100ms ping usually suffers and sees other players jumping around, bullets not registering, etc. The games are largely fair in terms of lag comp as long as the distribution of latencies for all other players is not too varied.
In FIFA, since it's 1 v 1, the game needs to balance a lot more in favor of one party than the other. This leads to unfair games for the guy with lower latency.
Further, in FIFA, 10 other AI players need to autonomously react. If you have lesser ping to the servers, not only is input lag added to hinder the movement of the player you control, but there is a lag added for all the other 10 players as well. Your CPU AI may react correctly in time, but the lag added makes it seem like the entire team is reacting a bit slowly.
Solving this problem in FIFA compared to other simple online games like FPSs, is MUCH MUCH harder, from a computer science perspective because of the added AI element and the different nature of the game where you have 100s of ways to react to any situation (pass, dribble, 100s of skill moves, etc etc), whereas in FPS games, you have more limited actions like sprint, shoot, jump, etc.
The solution? Match making and more servers. The only way to truly solve this problem 100% is to ensure 0 latency between players. This is physically impossible. So the next best thing is to match people such that they have as close to 0 latency as possible, so that the lag comp added is so minimal, that the human brain can't even notice it. This is what successfully happens in most FPS games.
Here's a problem with this again. FIFA has an extremely wide audience. EA wants people in China also to be able to play FUT. If there are very few people in China playing, then EA has to either tell them "no opponent found" a lot of the time, or they have to match you up with someone far away and add a lot of lag comp to make up for it.
The matchmaking is a big mystery here. I suspect that EA knows that they don't have the best solution for lag comp in FIFA and that it is a very hard problem to solve. So they need to balance matchmaking with latencies to ensure good games.
All of this depends on what the "acceptable latency" for FIFA is. In most FPSs, with years of raw latency numbers to experiment with, it is widely accepted that a latency of 25 - 65ms is a good ping to ensure a fair game. In FIFA however, this value is hidden from the user. I suspect that the value is the same or similar for FIFA as well. In fact, many pros in FPSs perform significantly better in LAN events with 5 - 10ms ping when compared to online events with 40ms ping.
FIFA hides the acceptable latency form you by not showing the raw latency numbers while matchmaking. The only reason they would do this is because they know that they are matching you up with high ping opponents sometimes and don't want you to back out. If this were implemented, you know that most people will back out of games with latencies > say 50ms. In some parts of the world, this is find as these people can find plenty of games with low latency. Not so good for a large portion of the world however. Hell you can't even ping the East Coast of the US from the West Coast in under 50ms so this will result in a lot of people playing a lot less FIFA because they are not able to find opponents with good ping. In fact, on xbox, I have tried many different hacks to figure out the latency to my opponent, but EA seems to be using clever techniques to purposefully hide this number.
I believe displaying the exact latency between you and your opponent would fix almost all of the gameplay problems since you will be able to pick opponents with low latencies leading to a much better and fairer FIFA at the cost of large portions of the world not being able to play FUT consistently all the time. This is where I hate EA. IT's a complete dick move to hide latencies and is only profit driven.
How do pros overcome this? By reading the opponent. There are two things in almost all competitive online games that great players need: Mastery of game mechanics, and mastery of decision making. Pros will rarely make mistakes on the ball, and, they are extremely good, not just at reacting to the opponents moves, but also in predicting the opponent. Assuming you have good mastery over game mechanics, the quicker you are able to predict your opponent, the better you will play. The only way to fight through lag comp, is to predict your opponent at a faster pace than the lag comp slows you down. FIFA is therefore highly skill based in a prediction based environment and a reaction based style is not rewarded because of lag comp. I personally hate this about the game as I feel like a football game should be both about prediction as well as reactions. A mix of both styles should be viable. In an FPS like COD for example, a player with extremely good aim can get outplayed easily by a player with extremely good prediction and movement skills, and a player with good movement and prediction can still easily die to a quick, reactive headshot from a player with superior aim even though he spots him a second later. I think that in football, much of the same applies. Players like Busquets can predict so well that they can compensate for their lack of pace by always being in the right place. Players like Neymar can skin an opponent even if he predicts correctly because of his ability to react instantly to tackles and change directions. Players like Messi and Ronaldo can do both extremely well, and hence, are one of the best. In FIFA, if there is very little latency between 2 players, both of them can use both reactionary skills as well as predictive skills and the best player will win. In a game with lots of lag comp and high latency, the player with better prediction can win more games and the other guy can feel completely helpless as the game doesn't respond quick enough to his actions. The loser in this case may actually have a combined skill level of reactions + predictions higher than his opponent. Say 70% of player As skill is in reactions and timing, and 30% is in prediction. The other guy might only have 10% reaction skills but he may be better or even equal to player A in terms of prediction. Player B will always win because player A is not able to use his major skill set to the fullest extent. In reality, in a laggy game, player A is only able to play to 30% of his full potential. Player B might be just half as good as player A is, but A will still lose because, even though he may be overall less skilled, he may have slightly better prediction skills. On top of that, lag comp causes inconsistent gameplay. In one game, A can use all his reactionary skills to win and his players will feel like they are "flying" across the pitch, but in another game, the exact same players and the exact same button combinations may result in much slower and more sluggish movement, players taking extra touches, etc. which we commonly term as "AIDS". This aids would then cause player A to lose the game even though he is actually the better player and even knows that he could easily beat his opponent if his players only reacted the way he wanted them to. In an online game across the ocean between two top 100 players, say HugeGorilla and Yozhyk, Yozhyk may win, but, as has been proven in almost all competitive online games, LAN events dominate all other events and truly decides the best player. Gorilla may be able to wreck Yozhyk in a LAN event but maybe never online. Thus you can never truly tell who is the best.
Finally, this is why I believe that scripting doesn't exist, but a form of lag compensation and shady matchmaking does which makes it feel like your players are reacting slower than normal, but in reality, that's the lag comp kicking in. If you doubt this, you can run the same experiment I did: Get a friend with FIFA on your fav console to come home. Both of you connect via direct LAN connection and play FUT friendlies against each other. Play 10 games and you will notice that your players performed and reacted more or less exactly the same every game, and the better player will usually always win. Now ask him to go back home and repeat the experiment. Now you will notice a much more inconsistent performance in the same players because of the added lag comp.
TL;DR: There is no scripting. It's all lag compensation added to the guy with lower latency to make the games fairer. Higher latency games means higher lag comp which results in players feeling handicapped. EA not helping matters by not showing the exact latency numbers to your opponent.