Цитата Сообщение от mapa3m Посмотреть сообщение
...Следовательно, нужно "атаковать" информацию передаваемую с клиента. Поясню на примере.
1. игрок А заходит на 6 игроку Б
2. игрок А стреляет короткой очередью
3. движок Ила игрока А обсчитывает траекторию снарядов и траекторию движения крафта Б (получаемую от сервера)
4. допустим движок приходит к выводу что один снаряд А попал в двигло Б
5. движок формирует пакет данных для передачи серверу, в котором (среди прочего интересного но пока опустим это) присутствует и идентификация результатов стрельбы - двигатель Б поврежден одним снарядом
6. пакет данных отсылается серверу
7. сервер принимает эту информацию и передает ее всем участникам игры - двигатель Б повреджен одним снарядом
8. движки игроков включая Б начинают визуализировать повреждения - двиг дымит или вообще сдох и тп (здесь возможны вариации как в деталях реализации клиентами так и в способе обработки, но это пока не существенно)
1. игрок А заходит на 6 игроку Б
2. игрок А стреляет короткой очередью
3. движок Ила игрока А обсчитывает траекторию снарядов и траекторию движения крафта Б (получаемую от сервера)
4. движок Ила игрока Б обсчитывает траекторию снарядов и траекторию движения крафта А (получаемую от сервера)
5. движок А приходит к выводу что один снаряд А попал в двигло Б
6. движок Б приходит к выводу что ниодин снаряд А непопал в Б
7. движок А и Б формирует пакет данных для передачи серверу
8. пакет данных отсылается серверу
9. сервер принимает эту информацию и по результатам идентификации стрельбы - А не равно Б, передает ее всем участникам игры - "обнаружено вероятное мошенничество"
10. игроки А и Б продолжают воевать, злобно матерясь и обвиняя друг друга в читерстве