nah, a better example involving a bank would be: you have two accounts. the client can do transactions.<p>the server sends to the client: account A has $100, account B has $200, make your transaction.<p>1. trusted client<p><pre><code>    client says: i&#x27;ve done my transaction, now account A has $50 and account B has $250.

    the server updates the database accordingly.
</code></pre>
2. never trust the client<p><pre><code>    client says: i want to do a transaction from account A to account B with 50$.

    the server decreases account A by 50$ and increases account B by $50 and updates the database accordingly.
</code></pre>
3. the difference is, with the trusted client model, the client could be hacked and respond with:<p><pre><code>    client says: i&#x27;ve done my transaction, now account A has $52 and account B has $252.

    the server updates the database accordingly.

</code></pre>
congratulations, you - as the bank operator - have now lost $4 to the hacker and this is practically what happens with in the division (except that the other players have to pay for it instead of the bank&#x2F;ubi soft).<p>they try to do server checks to prevent this, but due to network timing problems they can&#x27;t check the exact values, only calculate if this is maybe <i>approximately</i> right.<p>so a players maximum running speed is, say, 6m&#x2F;s. they could do periodical checks (every second) if the player moved more than 6m since the last second. but what if the player falls down a building or is thrown by an explosion further than that? it&#x27;d register as cheating, even though it&#x27;s completely legal to jump off a building. so they have to increase the checks for distance&#x2F;s by 3 to allow those situation (i.e. 18m&#x2F;s). a cheater with a modified client can now continually run three times as fast as any other player without getting flagged as a cheater.<p>why do they do this? because it&#x27;s<p>a) easier to implement (the client has to do all the computations anyway - doing them a second time on the server and then sending back to the client isn&#x27;t an easy problem - you have to interpolate) and<p>b) cheaper (less work = less man hours, less complicated work = cheaper programmers* and less server power needed)<p>* i&#x27;m completely sure the devs would have been 100% able to do it right, but it would have taken them longer, thus costing more.<p>so, how to fix it? there&#x27;s only one way: rewrite the model. but this is expensive and the titles have already been sold, so why bother investing another couple hundred thousand bucks? even the disgruntled gamers will buy the next ubi soft title if it&#x27;s shiny enough. i mean, few people will buy the game now that multiplayer is infected with cheaters but they already exploited enough of the market and long time players are probably less likely to buy the next title if they&#x27;re still playing an old one. maybe.