[Artigo] Como funciona Cheats?

Esse tópico explica, detalhadamente, o funcionamento de Cheats dentro de jogos.

O que é o cheat?

Para aqueles que não são acostumados com a palavra. Cheat é o termo utilizado por jogadores sobre eventos que não estão paralelos a realidade do jogo ou estão fisicamente incorretos.

De maneira simples, usar um Cheat é como trapacear a logica do jogo.

Existem varios tipos de Cheats que atribui diversas vantagens ao jogador.

Quais são os tipos de Cheat?

Existem variáveis tipos de Cheats, siga os exemplos:

  • Editor de Memoria: Trapaça via edição de memória envolve alterar os valores da memória onde o jogo mantém informações (como a saúde do personagem, experiência, posição, etc);

  • ESP: Em jogos online é um tipo de programa que exibe informações contextuais, como a saúde, nome, equipamentos, posição e/ou orientação de outros jogadores com marcadores, que seriam normalmente escondidos do jogador;

  • Aimbots: Os aimbots se baseiam no fato de que o computador de cada jogador cliente recebe informações sobre todos os outros jogadores, sendo eles visíveis a partir da posição do jogador no campo de jogo ou não.

É assustador né? Mas todos eles se baseiam em uma ideia.

Como funciona o Cheat?

Sendo breve, tudo aquilo que fica no Cliente pode ser alterado.

Normalmente, não temos controle sobre nossos jogos em tipos de dispositivos, e consequentemente, estamos julgados a receber erros sobre o dispositivo do jogador.

A lógica mais usada pelos Cheats, são as alterações relacionadas aos valores dentro de sua Memoria.

Caso não saiba, nossa Memória de acesso aleatório (RAM) aloca diversos aspectos de nosso computador.

Nosso navegador, atualmente, está usando uma parte de nossa RAM com vários textos e imagens definidos dentro desse contexto.

Os Cheats são os invasores que alteram o contexto de nossa RAM.

Como evitar os Cheats?

Isso varia de cada jogo, pois, você precisa saber como proteger as informações do jogador em casos diferentes.

Nosso Roblox já sofreu diversos ataques pelo uso do Cheat Engine, o mesmo tratava de alterações em nossa RAM, pois, todas as informações eram alocadas dentro desse contexto.

Uma forma simples de evitar Cheats é a definição na transmissão de informações.

Caso seu jogo há suporte a Multiplayer, você deve entender como separar as informações entre: Servidor -> Client e Client -> Servidor.

Por exemplo, meu jogador está com 10 corações, mas essa informação está guardada no cliente do jogador, consequentemente, qualquer Cheat pode alterar esse valor e mudar meus corações durante o jogo inteiro!

Para evitar esses tipos de eventos, você pode guardar essas informações basicas dentro do servidor. Sendo assim, nenhum Cheat pode manipular como funciona sua vida, resistência e inventario dentro do servidor.

Exemplos

Com certeza você já jogou Minecraft e outros jogos da atualidade.

Conforme o seu jogo estava a funcionar, possivelmente você já encontrou algo parecido como o Cheat, pois, esses jogos estão guardando informações dentro do Cliente.

Huzuni era uma versão personalizada do Minecraft, que alterava valores como Voar, Velocidade de Movimento e outros aspectos. Huzuni também detectava os jogadores por perto, usando a ideia Aimbot

Fontes

8 Curtidas

Ótimo artigo! Muito obrigado por escrever isso. É sempre importante guardar e verificar as informações pelo servidor. Inclusive, uma dica, como no Roblox é proibido cheats mesmo que para testar o próprio jogo, para simular um exploit é só utilizar um LocalScript e tentar burlar o jogo :slight_smile:

1 Curtida

Esse artigo me lembrou do Roblox em 2014 - 2015 onde exploiters podiam alterar qualquer coisa do jogo, tocar musicas, colocar neblina, mudar seu personagem em si e até mudar o céu do jogo.

2 Curtidas

a ideia que alguns Devs seguem para não causar lag,é observar scripts usados por exploits e ver como o jogo pode reagir,exemplo:

o maximo de vida é 10 coraçoes

alguem cria um script para aumentar a vida alem dos 10

o Dev cria um script que verifica a vida de todos os jogadores,e se alguem tiver com mais de 10…
BAN

ja vi devs fazendo isso no Strucid,no SBO(sword blox online),e uns outros ai

é como se infiltrar na base inimiga kkkkkkkkkkkkkkkkkk

1 Curtida

Eu lembro disso HUEHUEHUEHUEHUEHHE.

Todo dia eu abria o Cheat Engine para alterar o meu money em tycoons LOL!

1 Curtida

roblox agr tem anti-cheat,ele detecta cheat engine :C

1 Curtida

era bom na epoca q n tinha anti-cheat assim e tinha um tanto de nego atravessam parede no jailbreak kkkk

1 Curtida

KKKKKKKKKKKKKKKKKK. Bons tempos que não voltam.

Hoje em dia, os novos injetores estão lendo toda parte do client-side, mas não é possível alterar nenhum valor :confused:

1 Curtida

ss,mas é bem mais facil usar script que faz GUI doq antes q tu tinha q pesquisar valor por valor ;-;

1 Curtida

O Roblox está bem melhor em questão de numeros de exploiters comparado a antigamente

3 Curtidas

Excelente artigo! Bacana por promover as referências da pesquisa!

1 Curtida

Vlw pelas infos ae! Vai ajudar muito a se prevenir de cheats!

1 Curtida

Que bom que ele detecta, imagina você passar horas criando um jogo pra entrar um idiota xitando.