A resposta a esta pergunta pode ser "NÃO", mas é muito importante, então acho que devo perguntar.
Isso deve ser um problema para todos os jogos com reconhecimento de local do cliente-servidor, onde os locais de jogadores no mundo são centrais para a jogabilidade. Existe alguma maneira de garantir que os dados de localização provenientes do cliente sejam reais (ou seja, o player está realmente lá)?
Trabalhando em jogos cliente-servidor, todos sabemos que nunca devemos confiar em nenhuma informação proveniente do cliente e, portanto, toda lógica de jogo importante deve ser feita no servidor. No entanto, com informações de localização, DEVEMOS receber isso do cliente. Existe uma maneira de verificar isso para evitar trapaças?
fonte
Não há nada do lado do cliente que não possa ser falsificado; tudo o que alguém tem acesso físico pode ser manipulado.
O IP contém informações de roteamento e, portanto, sugere o local. Mas o jogador só precisa de um proxy e gritos ... o IP sugere um local completamente diferente do que o jogador realmente é.
Confie nos seus jogadores, não dê a eles um motivo para tentar enganar o sistema em primeiro lugar.
fonte
Você não pode realmente verificar essas informações da mesma forma que não pode verificar verdadeiramente qualquer informação criada por uma fonte externa. Então, o que você quer é teoricamente impossível. Mas você provavelmente pode dificultar um pouco a falsificação.
Por exemplo, em telefones Android, você tem vários provedores de localização , como localizar um usuário pelos mastros de celulares próximos, pelo sistema de posição Wi-Fi etc. Você pode exigir que pelo menos dois provedores de localização retornem valores semelhantes para confiar nos mais precisos dos dois.
Eu não recomendaria o uso de geolocalização IP; aqui no Reino Unido, é irremediavelmente impreciso, pois a maioria de nós usa ISPs nacionais. Em um bom dia, os anúncios segmentados por área geográfica referem-se a locais a cerca de 32 quilômetros de distância e, em um dia ruim, eles acham que eu estou a 160 quilômetros de distância. Mas você provavelmente pode usá-lo para verificar se o usuário está no país certo!
fonte
De jeito nenhum. Nem mesmo na teoria.
fonte