Atualmente, a maioria dos MMOs tem algo importante feito no lado do servidor, por razões de segurança. Você não pode descarregar muito para o cliente, e é por isso que uma das primeiras coisas interrompidas são as rotinas de IA. Eu acho que a maioria dos desenvolvedores considera o lado do cliente hackável como regra, não como uma exceção.
O Badumna da Scalify ( http://www.scalify.com/badumna.php ) tenta descarregar parte dele nos clientes, pois eles terão cálculos feitos no lado do cliente e enviados um para o outro; alguns dados também são enviados a um par autoritário para serem validados antes de serem repassados aos clientes, assim como um servidor dedicado. A questão é que TODOS os dados em um jogo multiplayer DEVEM ser enviados por meio de um parceiro autorizado, se você quiser evitar trapacear. Eu criei o Badumna, pois parecia o mais próximo do que você poderia querer, mas mesmo isso não será capaz de capturar trapaceiros - pode pegar alguns, mas qualquer coisa crítica (ou seja, tudo, praticamente) precisa ser feita no servidor - lado.
Eu posso expandir um pouco sobre Badumna, porque ainda pode ser algo que você achará útil (mas peço que reconsidere descarregar qualquer coisa importante nos clientes, porque os clientes trapacearão).
Badumna oferece uma arquitetura híbrida para operações de dados. Ele fornece controle completo ao desenvolvedor para decidir o que é crítico (e deve ser verificado) e o que não é (e pode ser enviado pela rede descentralizada).
Se um MMO exigir que todas as informações sejam verificadas, o Badumna funcionará como uma solução cliente-servidor. No entanto, acredito que existem categorias diferentes de aplicativos MMO com requisitos variados. Por exemplo, muitas vezes um MMO terá zonas de combate nas quais os jogadores provavelmente trapacearão e, portanto, todas as informações devem ser verificadas. No entanto, também existem zonas em que os jogadores só podem andar / correr / dançar / conversar. Tais zonas não requerem verificação completa e podem utilizar a rede descentralizada de Badumna e se beneficiar da escalabilidade que ele pode oferecer.
Em segundo lugar, Badumna fornece recursos de segurança adicionais que os desenvolvedores podem acessar, como proteção de identidade (para que os usuários não possam fingir ser outra pessoa), proxy de reclamação (permitindo que os clientes sejam configurados para relatar jogadores mal-intencionados / trapaceiros para uma fonte confiável) e lista negra (banir jogadores maliciosos dos jogos).
Eu realmente não explorei muito Badumna, então pode haver problemas e recursos que eu desconheço, mas pelo menos dei uma olhada superficial nisso.
tl; dr: o cliente realmente deve ser apenas um teclado e um mouse conectados à Internet.