В наши дни большинство НММ выполняют что-то важное на стороне сервера по соображениям безопасности. Вы не можете много разгрузить клиенту, поэтому одной из первых вещей, на которые стоит обратить внимание, являются процедуры ИИ. Я думаю, что большинство разработчиков считают, что клиентская сторона, как правило, является взломанной, а не исключением.
Badumna от Scalify ( http://www.scalify.com/badumna.php ) пытается разгрузить часть ее на клиентах, чтобы они выполняли вычисления на стороне клиента и отправляли друг другу; некоторые данные также отправляются авторизованному узлу для проверки перед передачей клиентам, как выделенный сервер. Проблема в том, что ВСЕ данные в многопользовательской игре ДОЛЖНЫ быть отправлены через авторитетного партнера, если вы хотите предотвратить мошенничество. Я поднял Badumna, поскольку он казался самым близким к тому, что вы могли бы хотеть, но даже это не сможет поймать мошенников - они могут поймать некоторых, но все критическое (то есть все, в значительной степени) должно быть выполнено на сервере - боковая сторона.
Я мог бы немного рассказать о Badumna, потому что это все еще может быть чем-то полезным для вас (но я призываю вас пересмотреть разгрузку всего, что важно для клиентов, потому что клиенты будут обманывать).
Badumna предлагает гибридную архитектуру для операций с данными. Он обеспечивает полный контроль разработчика при принятии решения о том, что является критичным (и должно быть проверено), а что нет (и поэтому может быть отправлено децентрализованной сетью).
Если MMO требует проверки каждого отдельного бита информации, Badumna будет функционировать как решение клиент-сервер. Тем не менее, я считаю, что существуют разные категории приложений MMO с различными требованиями. Например, довольно часто MMO будет иметь боевые зоны, где игроки могут обманывать, и, следовательно, каждый бит информации должен быть проверен. Однако есть также зоны, где игроки могут только гулять / бегать / танцевать / общаться. Такие зоны не требуют полной проверки и могут использовать децентрализованную сеть Badumna и пользоваться масштабируемостью, которую она может предложить.
Во-вторых, Badumna предоставляет дополнительные функции безопасности, к которым разработчики могут получить доступ, такие как защита идентификационных данных (чтобы пользователи не могли притворяться кем-то другим), прокси-сервер для жалоб (позволяющий настраивать клиентов для сообщения о злонамеренных / обманных игроках в надежный источник) и черный список (запрещение вредоносных игроков из игр).
Я не так много изучал Бадумну, так что могут быть проблемы и особенности, о которых я не знаю, но, по крайней мере, я бросил беглый взгляд на это.
tl; dr: клиент должен быть просто клавиатурой и мышью, подключенной к интернету.