
Многие наверное задумывались о причине того, что в таких играх как starcraft есть возможность играть, так сказать, не совсем честно.
Пользователь заходит в игру, в батлнет, ищет игру и начинает играть. Вот как видно это пользователю.
На деле же сервер батлнета это вроде IRC-сервера где толпится куча народа в разных команатах, а возможность игры между ними это как возможность передачи файлов между пользователями IRC, происходит только между пользователями, а результат, от них же, сообщается батлнету.
Почему это так?
Всё просто, во первых, это отсутствие нагрузки на сервер где и так сидит over 9000 пользователей и чатются\ищут себе игру из списков, выдаваемых сервером. Так бы необходимые мощности для серверов близзарда бы соответственно возросли в 9000 раз, если не больше.
Во вторых, от перехода с starcraft в starcraft II, по большому счету, изменилась только графика, схема игры осталась прежней:
Батлнет выдает список игр куда можно зайти, юзер в неё заходит, она начинается, тут то и передается всё управление игрокам.
С самого начала игры всем выдается одинаковая игровая информация (о карте, о скриптах на ней, а других игроках) и в ходе игры синхронизируется между всеми клиентами, если она не будет у кого то совпадать с информацией других игроков, то его просто выкинет из за этого. Если бы у каждого игрока была информация только о себе, то он бы запросто мог «нарисовать» себе полчище юнитов с 999 attack\defense, это уже было подтверждено в starcraft I, где если у всех игроков в игре был специально сделанный хак (дающий юнитов в определенной ситуации или например ускоряющий скорость игры) и они могли творить что хотели, такая возможность присутствует и в starcraft II очевидно, но честные игроки могут её не бояться по описанный выше причине.
В StarCraft I присутствует встроенный игровой античит Warden проверяющий целостность памяти при коннекте к батлнету и перехваты функций\изменение данных игру, но на практике ловит он только самые простые хаки, почти с самого его запуска существуют читы легко обходящие все его защиты.
Дела с StarCraft II обстоят и очевидно будут обстоять подобным образом:
