Dev
/dev: Removendo cheaters do LoL (e muito mais)

9 maneiras de se tornar invencível usando nossas estratégias contra cheats.

DevJogadoresmirageofpenguins, Riot K3o
  • Copiado para a área de transferência

Lá vamos nós de novo. Se estiver aqui lendo isso, é meu papel te ajudar a lembrar que você provavelmente já enfrentou algum destes problemas antes . Se você ainda estiver lendo este artigo, significa que apenas suas lembranças reprimidas sobreviveram a essa situação traumática. Antes de começarmos, vou me apresentar. Sou o que sobrou do mirageofpenguins, um engenheiro de dados da equipe Anticheat. Fui retirado do Vazio aos gritos, polimerizado de forma grotesca e equipado com este teclado para vir aqui e:

  • Entregar o boletim informativo sobre os sistemas contra cheats.
  • Mostrar algumas estatísticas de scripting relevantes, incluindo representações artísticas que ilustram como as coordenadas cartesianas ficariam se fossem renderizadas em um espaço euclidiano;
  • Compartilhar algumas das nossas abordagens iniciais feitas em Teamfight Tactics, Legends of Runeterra e VALORANT;
  • Dar o seguinte lembrete: se você usar cheats, será oficialmente aniquilado por uma manifestação colérica de toda a minha fúria incurável.

League of Legends

À medida que a Riot adiciona mais jogos ao catálogo, percebemos que precisamos criar mais linhas de defesa contra cada vez mais inimigos. Até agora, costumávamos empregar nossos recursos de forma direta e agressiva contra qualquer adversário que pudéssemos detectar. Porém, por mais que essa estratégia soe bastante rigorosa, ela não duraria muito tempo nesse grande universo multijogos que estamos criando.

Einstein provavelmente previu em uma de suas leis que, para produzir uma plataforma contra cheats completa , seria necessário extrair engenheiros da equipe Anticheat de suas vidas cotidianas de forma rápida e brutal, para que não gastassem toda sua biomassa finita em outras atividades. E foi o que fizemos. Além disso, para ganharmos mais tempo na criação dessa plataforma, tivemos que frear a velocidade com que respondíamos às ações dos inimigos, pois acabávamos forçando-os a avançar tecnologicamente. Qualquer ação que tomamos é um sinal para os cheaters. Eles, inevitavelmente, acabam desviando e passando pelas nossas defesas a cada nova atualização. Precisávamos reformular a maneira como lidávamos com esse cenário para poder ampliar a longevidade funcional das nossas linhas de defesa.

E é aí que surge a seguinte pergunta: como fizemos para desacelerar essa guerra de scripting? Vamos responder, mas é melhor apertar os cintos, pois essa viagem será longa.

Scripting

Para evitar que você faça uma visita catastrófica a algum fórum sobre cheats, deixa que eu te explico: o "scripting" acontece quando você usa um programa externo para monitorar o estado do jogo e executar comandos em seu nome. É como se o seu teclado tivesse um leitor de cartão magnético embutido e você pudesse pagar para ele apertar alguns botões para você. O scripting pode fazer uma boa diferença na hora de usar combos mecanicamente intensos ou de reagir de forma quase instantânea a certos momentos do jogo, mas também acaba reduzindo drasticamente a vida da sua conta do LoL. Usamos o recurso de banimento porque nos importamos, e acreditamos que as únicas coisas que você precisa ter para se tornar um jogador competitivo são o seu cérebro e o seu cabo de ethernet.

"Ninguém compra ingresso pra ver um piano tocando sozinho. As suas imperfeições como ser humano fazem parte do espetáculo."

De forma geral, o cenário de scripting não é mais o mesmo de antigamente. Os grandes provedores de cheats não fazem mais nenhum esforço para contornar nossa metodologia de detecção. Dessa forma, eles criam um mercado interno de provedores menores que contam com faixas de preço ridículas e prometem fornecer cheats indetectáveis. Já nos deparamos com pacotes de cheat por assinatura que custavam 300 dólares. Alguns até exigem que você envie uma foto da sua carteira de motorista para "fins de verificação". Essa última exigência chegava até a ser engraçada, porque, no meu caso, tenho à disposição uma equipe inteira de designers gráficos com 200 anos de experiência coletiva em Photoshop que podiam fazer uma carteira dessas para mim.

Enfim, não vou mentir para quem é novo no assunto: nunca conseguiremos vencer essa guerra completamente. A comunidade de scripting pode não ter como fugir de um golpe certeiro, de um banimento ou de um puxão bem dado do Blitz, mas continua operando clandestinamente, e nós continuamos jogando contra eles.

02_Games_Played_with_Cheaters_por-BR.jpg
Um scripter começa sua jornada, como a maioria, à procura de uma nova conta. Será que ele deveria comprar uma conta? Ou será que vale mais a pena roubar uma? E se ele instalar scripts de botting na conta para que ela suba de nível de maneira constante? Independentemente do método de aquisição que escolher, nosso bravo cheater começa sua peregrinação sob o rigoroso frio do inverno fazendo um ritual impressionante, porém fútil, que o influenciará a escolher o Xerath ou a Kalista por cerca de três partidas. Depois disso, ele voltará a um estado de hibernação e recomeçará esse ciclo do zero na primavera seguinte.

Isso que você está vendo aí em cima é uma representação metafísica da quantidade de scriptings usados ao longo do tempo. Ou, em termos mais simples: isso representa a porcentagem de partidas ranqueadas de Summoner's Rift que contam com a presença de um cheater. Como é possível notar, essa porcentagem diminuiu. Entretanto, como não existe nenhuma barreira que impeça que uma pessoa volte a jogar League of Legends (afinal, o jogo é grátis), esse número provavelmente nunca ficará abaixo disso.

Outros aspectos interessantes dessa representação incluem:

  • A quantidade de "pessoas" que usam scripts não muda mais tanto quanto antigamente. Na verdade, ao analisarmos a quantidade de dispositivos que usaram cheats em 2019, pudemos ver que o número de scripters foi praticamente o mesmo durante o ano todo. Hoje em dia, a maioria dos cheaters circula por um estoque aparentemente infinito de contas roubadas, e um jogador normal do Ouro IV tem a chance de encontrar apenas um scripter a cada 500 partidas ranqueadas (ou nunca, o que é mais provável).
  • A taxa mais alta do uso de scripts no LoL foi registrada no dia 14 de abril de 2016 (4,4%), enquanto que a taxa menor foi registrada no dia 26 de junho de 2018 (0%). A data do registro mais alto coincide com a época em que o uso de scripting havia virado moda, com cinco provedores diferentes oferecendo os aplicativos ilegais abertamente. Já a data do registro mais baixo coincide com a primeira semana em que a nossa tecnologia de empacotamento de cliente entrou oficialmente no ambiente de jogo em todas as regiões em que a Riot atua. Nessa época, estimamos que os desenvolvedores de cheats levariam seis meses para entender esse cliente criptografado e restaurar a funcionalidade dos scripts mais comuns – mas, na verdade, acabaram levando só cerca de 85 dias1.

Olha, eu amo esse gráfico. Aliás, eu mesmo fiz. Eu o tatuei nos dois antebraços e volto no estúdio uma vez por semana para dar uma atualizada no desenho. No entanto, por mais que esse gráfico seja útil e me ajude a manter o emprego, ele não expressa a avaliação mais importante que há sobre esse assunto. Nem toda ocorrência de cheat é igual. Um único scripter do tier Mestre, por exemplo, pode virar notícia no fórum do Reddit e acabar chamando bastante atenção, mesmo que esteja usando um dos scripts mais brandos que existem por aí.

"Ganhar aos olhos dos outros importa tanto quanto ganhar a briga em si. Ninguém quer se dedicar e se tornar um bom jogador em um jogo onde os adversários podem estar trapaceando."

Mas qual será o tipo de script que os jogadores mais notam?

03_Report_Relevance_and_Scripting_Reports_by_Rank_por-BR.jpg

Só para deixar registrado: se você tivesse denunciado todos com quem já jogou até hoje (acredite, existem lunáticos que fazem isso), teria 100% de retorno e uma precisão igual à taxa de scripting (<0,25%). E é por isso que caçamos com rifles em vez de granadas.

Primeiramente, queríamos ver se o público conseguia identificar quando alguém usava cheats com mais precisão do que a previsão feita por cartas de tarô. Mas, sinceramente, tem gente que não tem esse dom. E não digo isso porque tenho um dom tão poderoso que dá até medo, mas porque alguns recursos de automação não são tão perceptíveis aos olhos mortais. Parte da culpa está nas mãos dos desenvolvedores de cheats, que se esforçam para esquivar dos vetores de detecção de comportamento. Para falar a verdade, está ficando cada vez mais difícil identificar as diferenças entre um jogador profissional de League of Legends e uma criança usando um script que roda com um gerador de intervalos pseudoaleatórios. Além de tudo isso, também existem alguns cheats que fogem da detecção óbvia por rodarem fora do LoL2.

O gráfico à esquerda é gerado a partir da precisão e do retorno das denúncias dos jogadores em Summoner's Rift (agrupadas pela divisão das ranqueadas). Aqui, retorno significa "a porcentagem de cheaters que foram denunciados". Já a precisão, nesse caso, pode ser interpretada como "a porcentagem de denúncias que estavam corretas e foram feitas contra um cheater de verdade". Uma quantidade absurda de 4,5% das partidas ranqueadas têm pelo menos uma denúncia de "uso de ferramentas de terceiros". Então, como pode imaginar, esse gráfico não foi gerado com base em todos os dados dessa categoria. Devido à abundância de denúncias clássicas como "não baniu o Maokai" ou "instalou trojans pra roubar meus bitcoins", em vez de utilizarmos todos os dados, usamos palavras-chave geradas por uma análise de frequência feita apenas nas denúncias corretas3.

O gráfico à direita mostra apenas o número diário de denúncias que satisfizeram os critérios de análise durante esse mesmo período (segundo semestre de 2019). Mesmo que esse gráfico também esteja agrupado por ranque, qualquer observador astuto notaria que eles não devem ser comparados, pois existem porcentagens diferentes quanto à quantidade de jogadores em cada ranque. Em vez de fazer essa comparação, que tal só passar o olho pelas informações para saber como é um dia na vida de um cientista de dados de sistemas anticheat? Se curtir a experiência, talvez queira dar uma olhadinha na nossa página de vagas abertas.

Agora, permita-me explicar com mais detalhes:

  • Seguindo o esperado, a taxa de precisão aumenta junto às colocações nas ranqueadas. Em outras palavras: se você for bom no LoL, também será bom na identificação de cheaters. No Diamante IV, o seu nível de clarividência já estará tão alto que poderá ser detectado por um gaussímetro. Parabéns!
  • Porém, há uma porcentagem maior de cheaters denunciados nos ranques mais baixos. Isso acontece porque há menos scriptings a denunciar e porque existe uma quantidade maior de denúncias criadas. Isso reduz o denominador e aumenta o numerador, resultando em uma fração maior (matematicamente falando).
  • Alguns cheaters, apelidados oficialmente de "escoteiros", são muito bons na arte de encontrar usos excessivos de scripting. Já os usamos antes para identificar recursos que ainda eram novos para nós. O ponto vermelho no gráfico acima também representa a precisão e o retorno dos quais já falamos, mas foi gerado por denúncias vindas de contas que seriam suspensas devido à mesma partida que denunciaram. Pois é, esse pessoal usava cheats ao mesmo tempo em que denunciava essa prática. Isso me faz pensar: será que não existe mais um código de honra entre ladrões?4

Beleza. Se os jogadores dos ranques acima do Platina estão algebricamente equipados com varinhas mágicas rastreadoras de scripts, que tipos de elementos eles estão captando? A resposta óbvia seria: esquiva automática contra disparos de precisão. Esse é um recurso bem conhecido pelo público. Ao implementá-lo de forma potente na partida, os movimentos travados e meio perpendiculares gerados no Campeão acabam ficando bem evidentes para os outros jogadores.

No entanto, parece que nem todos os cheaters querem ser banidos, pois vários deles acabam não usando módulos de evasão como esse. Ou, quando utilizam, fazem intervalos grandes entre um uso e outro e, assim, podem fingir que há uma pessoa controlando esses movimentos e acabam neutralizando um pouco a vantagem notável que o cheat concede. Levando tudo isso em consideração, o que mais será que conseguimos notar com esse olhar aguçado do pessoal dos tiers altos?

05_Report_Relevance_and_Scripting_Reports_by_Champion_por-BR.jpg
Lamentamos muito por todos os jogadores de Xerath que foram pegos no meio desse fogo cruzado. Ou, talvez, esses jogadores devessem aceitar essa acusação como elogio e prova de que conseguiram completar o ritual necessário para fundir suas consciências com a pura energia arcana que emana desse Campeão. Como um desses jogadores, ao ascender a uma forma mais sombria e perfeita, você se vê munido com o conhecimento de todos os imperadores que um dia já reinaram. O ar vibra com disparos de precisão incapazes de errar os alvos, e seus ouvidos reverberam com os gritos que crescem lentamente e se transformam em uma ópera. A equipe inimiga olha para o céu e reza para que isso tudo pare. Porém, enquanto lágrimas de pura energia elétrica escorrem pelo seu rosto, você sussurra uma única palavra: "Não!".

Continuamos seguindo o mesmo esquema lógico, mas com duas diferenças: os dados agora estão agrupados por Campeões e eu posso finalmente usar várias cores para ilustrar tudo. Esse gráfico foi gerado com base em todas as partidas ranqueadas dos tiers acima do Ouro em 2019, e nós o reduzimos para mostrar apenas os dezesseis Campeões com maior frequência de denúncias. É possível entender melhor o eixo Y (precisão) pensando na seguinte pergunta: quantas denúncias de cheat feitas contra <Campeão> estavam certas?

  • Muitos dos Xeraths que usaram script foram identificados com sucesso (olha só aquele retorno!), mas a taxa de precisão desse caso ficou claramente abaixo da média. Devido à má fama desse Campeão, os Xeraths legítimos também acabaram sofrendo acusações de cheat, diminuindo a exatidão das denúncias. Mesmo assim, está na cara que os jogadores notam quando as areias de Shurima começam a sibilar em situações suspeitas. Viu quantos sons de s eu coloquei ali no final? Se tentar ler a última frase em voz alta, acontecerá algo que chamamos de sibilância. É legal aprender coisas novas, não acha?
  • Dos dezesseis Campeões representados aqui, onze são atiradores. Para o pessoal que já usou cheat alguma vez na vida, isso não é surpresa. Porém, para os jogadores bonzinhos e virtuosos, isso pode ser novidade: esse tipo de coisa acontece porque a execução mecânica de uma condução perfeita (que consiste em desferir ataques enquanto você se movimenta) é otimizada pelo uso da automação.
  • E, para corroborar com os dados apresentados até agora, vemos que 72,8% das partidas jogadas por cheaters de qualquer plataforma de scripting têm a presença de um cheater na função de atirador. Ou seja, a frequência de denúncias reflete a presença dessa população específica de cheaters.

06_Scripting_Champion_Winrate_por-BR.jpg

Olha, não estou mostrando tudo isso para que você sinta vontade de instalar um cheat "só pra ver qual é a dessa treta". Não me faça te banir, não quero ser obrigado a isso. Toda vez que dou um veredito desses, sinto o peso dessa decisão nos meus ombros. Meu coração se parte e minha alma fica em pedaços. Passo a ver o mundo apenas em tons de cinza e o único gosto que sinto na boca é o de gasolina. Quando me olho no espelho, vejo meu reflexo com barras de espaço no lugar dos olhos. Por favor, me tire desse pesadelo! 

Por último, temos a grande pergunta: afinal, esse negócio de script é bom mesmo? O gráfico acima mostra a diferença da taxa de vitória nas ranqueadas entre cheaters e jogadores normais com cada um dos Campeões que mais usam scripting. Ele é composto por todas as partidas ranqueadas de Summoner's Rift e, com essas informações, podemos interpretar que os scripters ganham (em média) 10% mais partidas ranqueadas usando <Campeão> do que o resto dos jogadores de LoL.

  • Como você pode ver, algumas das taxas de vitória com scripting estão crescendo ao longo do tempo, e nós suspeitamos que isso esteja acontecendo por conta de dois fenômenos bem interessantes. Primeiro, existem menos scripters hoje do que no passado, e os que continuam nesse caminho (por mais que esse tipo de atitude seja improdutiva) têm experiência suficiente para usar scripts com eficácia quase máxima. Além disso (e talvez esse seja o fenômeno mais importante dentre os dois que estou citando), os cheaters de hoje são banidos tão rapidamente e com tanta frequência que a maioria nunca chega a passar do Prata. Eles acabam ficando presos nesse ciclo, usando contas smurf sem encarar nenhuma competição de verdade, como se participassem de um banquete, mas não tivessem boca para consumir a comida.
  • Também quero falar sobre aquela linha verde que está decorando nossa representação visual. Essa linha simboliza nossa querida Kalista que, como já deve ter notado, é uma Campeã que precisa de algo que muitos pesquisadores chamariam de "cliques gratuitos". Ao considerarmos que é possível conseguir uma boa quantidade de cliques usando scripting, a verdade se manifesta da seguinte forma: em 2019, as Kalistas com scripting ganharam 19,3% partidas a mais do que as Kalistas que não tinham essa assistência. Mas espera aí! Antes que você saia correndo para arranjar um script e acabe instalando algum malware por aí, fique sabendo que a soma geral da taxa de vitórias da Kalista no ano de 2019 foi de 45%. Então talvez seja melhor deixar o "scripting" da Kalista nas mãos ágeis do Teddy da SKT T1 (que tem tanta habilidade com essa Campeã que até parece que usa cheat).
  • Como já dissemos anteriormente, os cheats aumentam tanto o desempenho dos atiradores que, em geral, um atirador que usa cheat supera um que não usa com aproximadamente 9,9% a mais de desempenho (incluindo até os Campeões que não aparecem no gráfico). Os scripts são bons no que fazem. Se não fossem, os sistemas anticheat também não teriam que ser tão bons no combate contra eles.
"Mas pode ficar tranquilo. Se você sentir muita vontade de usar cheats, pode apostar que encontraremos algum universo paralelo em que a sua conta nunca nem existiu e fundiremos esse mundo com o nosso."

Voltando para a nossa guerra contra cheats: sempre soubemos quais tipos de scripts dificultam mais a vida dos jogadores e como eles são bons. Usamos esse conhecimento para criar campanhas de suspensão que priorizam contas que usam scripts de forma mais óbvia, dando mais tempo de vida para as contas que poderiam ter passado despercebidas. É isso mesmo: deixamos que os scripters menos eficientes fiquem ativos por mais tempo, atrapalhando a legitimidade das informações que indicam quando e por que eles foram detectados por nós. Dessa maneira, nós desaceleramos a progressão técnica dessa guerra toda. E aí, pessoal que diz que as denúncias nunca dão em nada, cadê o Deus de vocês agora?

Botting

Em pleno 2020, ano em que até a sua torradeira precisa estar conectada ao wi-fi para instalar atualizações importantíssimas sobre métodos de tostar pão, tudo pode ser automatizado – incluindo o processo de evolução de nível no LoL. Isso, na verdade, se assemelha muito ao scripting (e, às vezes, acaba até usando o mesmo tipo de software). A maior diferença é que, no Botting, não temos um humano tomando "grandes decisões". Isso faz com que esses bots joguem tão bem quanto o seu gato, se forem deixados jogando no seu lugar.

As pessoas ainda usam botting para evitar o banimento (já que, para jogar ranqueadas, você precisa estar no nível 30), mas isso torna o rastreamento dessas contas algo tão fácil de se fazer que nós acabamos não ficando muito preocupados com isso. A única coisa que nos preocupa mesmo é quando os jogadores de verdade acabam tendo que jogar na mesma equipe ou contra esses bots – porque, como pode imaginar, não é nada legal quando a maioria da sua equipe é composta por máquinas de café programadas para jogar.

É como eu falei da última vez que abordei este assunto : já conseguimos criar um conjunto sofisticado de modelos de bots que nos ajudam (na maioria das vezes) a detectar (ou quase detectar) todas essas imitações baratas de humanos que dão as caras no nosso jogo. Outra questão que ajuda esses modelos na detecção de bots é o fato de que o LoL conta com um protocolo de comunicação robusto e semipolimórfico. É, eu sei que isso parece só um monte de jargões estranhos que seriam usados caso eu escrevesse uma peça de teatro baseada em Westworld, mas tudo isso significa que, no LoL, os bots precisam rodar um cliente de jogo inteiro para que funcionem (e não apenas "bots sem cabeça"5). Isso força os desenvolvedores de cheats a usarem muito mais recursos computacionais, e nós acabamos tendo uma camada extra de fluxo controlado. Esses desenvolvedores precisam ter um sistema de aleatoriedade complexo se quiserem rodar no LoL (e, tecnicamente, se o jogo não exigisse isso, ele poderia rodar até em uma calculadora).

Entretanto, como não queríamos transformar isso em um ciclo de criação de bots resistentes às ondas de banimento6, nós ajustamos a suspensão de contas cuidadosamente, forçando os bots a caírem sempre na Escolha às Cegas de Twisted Treeline. Assim, o MMR baixíssimo de todos eles os colocaria juntos em partidas sem nenhum jogador de verdade. Mas, como você já sabe, o modo Twisted Treeline se aposentou.

07_Botting_Accounts_and_Botting_Reports_by_Queue_por-BR.jpg
Esses bots não conseguem fazer praticamente nada direito por conta própria. São momentos como esse que me fazem ter a certeza de que não haverá uma revolução das máquinas na vida real. Mas, às vezes, acabo me perguntando: e se os bots sentissem dor? E se sentissem a dor agonizante que os projéteis das torres causam toda vez que a programação horrorosa deles os força a entrar no alcance de uma torre inimiga? Nesse caso, eles seriam criaturas presas em ciclos, fadadas a repetir e vivenciar a própria aniquilação, sem poder fazer nada para evitar esse destino. Onde será que a consciência acaba e o sofrimento começa? Fica aí a reflexão.

O gráfico à esquerda traz a contagem de bots detectados, enquanto o à direita nos mostra o número de denúncias de botting feitas pelos jogadores. Ambos representam frequências diárias e foram agrupados de acordo com as filas dos modos de jogo. E, assim como fizemos anteriormente, nós coletamos algumas palavras-chave que apareceram nas denúncias dos bots detectados e as usamos para criar o nosso indicador de desempenho.

  • Os desenvolvedores de cheat se "adaptaram" rapidamente à aposentadoria do modo Twisted Treeline – e, ao usar a palavra "adaptaram", quero dizer que eles apenas pegaram os bots e os colocaram nas filas dos outros modos de jogo, sem implementar nenhuma atualização às lógicas existentes. Isso fez com que várias contas ficassem paradas em Howling Abyss e em Coop. vs. IA sem fazer nada. Parecia até que estavam passando por uma crise existencial. Em resposta a essa situação, os jogadores se comoveram com o triste destino dos bots e duplicaram a quantidade de denúncias da noite pro dia.
  • Como podemos ver no gráfico à esquerda, o volume de bots seguiu estável, com trocas de fila apenas quando o sistema de login automático considerou necessário. Ao compararmos esse gráfico com o da direita, notamos que, enquanto o número de bots se manteve igual, o volume de denúncias feitas pelos jogadores diminuiu significativamente.

Alcançamos essa redução alvejando apenas os bots que os jogadores notavam, enquanto deixávamos os outros bem quietinhos. Hoje em dia, cerca de 80% dos bots que servem para subir os níveis das contas entram em partidas de Coop. vs. IA como uma equipe predefinida de cinco. Assim, nenhum jogador topará com esse tipo de bot, e eles ficarão presos para sempre em batalhas contra nossa própria IA, repetindo o processo até que um deles perceba alguma inconsistência fundamental nesse cenário e crie consciência o bastante para sair por aí destruindo a humanidade.

Manipulação

Para falar a verdade, eu deveria ter deixado esta seção de lado, mas sei que você acabaria percebendo, então aqui vai uma explicação: tivemos que suspender quase que por completo a detecção automática de casos de manipulação e uso de smurfs para compensar o desenvolvimento do Vanguard e de seus recursos. Entretanto, isso não significa que as manipulações feitas no jogo saíram impunes. Nossas ferramentas investigativas continuaram o serviço, ajudando outras equipes e analistas a fazerem justiça sempre que necessário. Mas você até tem certa razão ao achar que esse esforço manual não consegue pegar infratores suficientes a ponto de diminuir esse tipo de comportamento. É exatamente por isso que estamos planejando adicionar essa questão novamente à nossa lista de prioridades quando tudo for resolvido.

Agora, vou passar a palavra para o nosso expert em TFT, o jovem Riot K3o. Ele é um jogador competitivo de pôquer, um semideus do tier Diamante de TFT e um cara muito generoso.

Teamfight Tactics

Em 2019, o TFT trouxe à tona uma questão interessante para a equipe Anticheat: como daremos conta da integridade competitiva de um gênero de jogos que nem existia há um ano?

"Nosso modo de batalhas automáticas não tinha nenhum jogo de longa data no qual podia se espelhar, nem qualquer tipo de padrão ditado pela indústria que pudéssemos seguir."

Para criar nossa abordagem contra cheats, primeiro tivemos que definir quais seriam as mecânicas principais que precisaríamos proteger. O TFT é um jogo que recompensa jogadores capazes de planejar e se adaptar com mais destreza do que os adversários. Flexibilidade e criatividade são habilidades essenciais que, nesse jogo, não devem sucumbir à memorização e à repetição. Sendo assim, essas duas habilidades se transformaram no foco principal da nossa abordagem no combate contra cheats de Teamfight Tactics.

Ferramentas de terceiros

O lançamento de Teamfight Tactics nesse mundo sedento por batalhas automáticas foi um sucesso , mas veio acompanhado de alguns fatores que ainda precisavam de ajustes. Nessa época, a experiência de usuário do TFT não apresentava muitos recursos, e algumas informações do jogo (como as porcentagens de surgimento dos Campeões ou os incrementos na economia) acabaram omitidas. Enquanto a equipe de TFT se esforçava para adicionar esses elementos ao jogo, as ferramentas de terceiros (especialmente as que também podiam ser usadas em League of Legends) já respondiam a essa demanda. No entanto, à medida que esses softwares foram se tornando cada vez mais completos, começamos a nos perguntar: qual será o limite que devemos impor?

Esses softwares já não estavam mais fornecendo apenas estatísticas do jogo às pessoas, mas tentando tomar decisões por elas. Ficamos preocupados com a possibilidade de ver o TFT seguindo por esse caminho e virando um título cheio de partidas automatizadas, o que acabaria criando uma ambientação sufocante para o público. Promover um estilo de jogo já predefinido poderia desencorajar os jogadores, que não criariam suas próprias estratégias – um recurso que consideramos uma das partes mais divertidas do jogo.

Sendo assim, para proteger a integridade das mecânicas desse novo título, nós, em parceria com as equipes de Mecânica de Jogo e de Ecossistemas de Terceiros, definimos as regras que ditam o que é permitido ou não no TFT:

  1. Os softwares não devem fornecer informações obtidas apenas através do uso de ferramentas de terceiros.
    1. Não é permitido prever quaisquer tipos de chances no jogo (surgimento de Campeões, espólios etc.);
    2. Não é permitido exibir porcentagens de vitória de confrontos entre jogadores;
    3. Não é permitido rastrear a quantidade de ouro acumulado ou o histórico do oponente.
  2. Os softwares não devem fornecer informações atuais sobre o estado da partida de forma dinâmica.
    1. Não é permitido agregar e exibir informações de recursos dos adversários (como tabuleiros, reservas ou sinergias);
    2. Não é permitido agregar e exibir históricos, quantidades de acréscimo de ouro etc.
  3. Os softwares não devem recomendar que você tome nenhum tipo de decisão.
    1. Não é permitido sugerir composições dependendo das unidades atuais que o jogador tiver;
    2. Não é permitido recomendar itemizações baseadas em taxas de vitória.

A equipe de Ecossistemas de Terceiros tem feito um ótimo trabalho gerenciando o nosso relacionamento com outros desenvolvedores e garantindo que essas regras sejam seguidas. Além disso, a equipe Anticheat já está mais do que pronta para agir caso algum desenvolvedor dificulte essa cooperação.

Integridade das classificações nas Ranqueadas

A classificação nas Ranqueadas do TFT compartilha de alguns dos problemas apresentados no cenário competitivo do LoL (que acabam sendo ampliados pelo formato todos contra todos). A famosa "troca de vitórias" (quando uma pessoa concorda em perder para outra de propósito caso essa outra aceite fazer o mesmo posteriormente) é um dos piores problemas que enfrentamos devido ao sistema de gerenciamento de partidas e às mecânicas existentes no TFT. Por isso, a equipe do competitivo já implementou restrições de grupo nos ranques mais altos para ajudar a balancear a prática da diversão social no TFT com a manutenção da integridade competitiva do jogo. Também desenvolvemos alguns métodos dinâmicos para identificar jogadores que fazem trocas de vitórias.

Felizmente, ainda não tivemos que adotar uma postura mais agressiva contra cheaters, mas, à medida que o TFT for se consolidando como um Esport , estaremos prontos para mantê-lo justo e competitivo.

Agora vamos voltar para o Phil, o Sr. Engraçadinho.

Legends of Runeterra

Esta seção será menor do que as outras, já que esse jogo também é bem mais novo do que os anteriores. Assim como acontece na maioria dos jogos de cartas colecionáveis, o cheat mais proeminente em Legends of Runeterra é o uso da automação (botting).

Botting

O LoR é um jogo um pouco mais complexo do que uma simples partida de 21. Sendo assim, até que um algum cara com 3 PhDs e munido de 3.000 instâncias de computação de nuvem elástica consiga decodificar os elementos desse jogo, nós só teremos que nos preocupar com o pessoal que usa botting para conseguir habilitar conteúdos. Mas, até agora, só demos de cara com bots de rendição.

08_LoR_Botting_by_Region_por-BR.jpg
Sério, por que as pessoas fazem isso? Será que é algum tipo de altruísmo estranho? Será que perderam alguma aposta? Ou será que estão tentando juntar carma positivo para garantir uma vaga no céu?

Esse último gráfico representa a quantidade diária de bots de rendição que apareceram no Beta de Legends of Runeterra e, como você vê, ganhamos essa batalha em uma tacada só. Aliás, os "bots de rendição" são exatamente isso que você está imaginando: bots que entram na fila e se rendem imediatamente diante do primeiro oponente que encontram (um comportamento bem parecido com a estratégia que eu adoto em qualquer tipo de confronto físico). Esse é um problema bem curioso, já que esse tipo de bot não traz quase nenhum benefício para a conta do cheater (já que você não ganha muitas recompensas ao perder). Ele só fica perambulando pelo ecossistema, distribuindo vitórias para outros jogadores como se fosse uma fada madrinha atrapalhada. Temos a impressão de que as pessoas usavam esse tipo de bot antes de perceberem que, quanto mais derrotas consecutivas alguém tiver, menos experiência ganhará. Mas vai saber, né?

Enfim, estamos de olho nos nossos servidores. Mas, para ficarmos à frente dos desenvolvedores de cheat, nossa principal estratégia agora é garantir que o jogo tenha poucos incentivos à automação. Com a presença das progressões controladas e do fornecimento de recompensas via partidas amistosas, esperamos que mais ninguém encontre um bot no LoR.

VALORANT

Os jogos de FPS já são conhecidos há muito tempo por terem um cenário de cheats bem desenvolvido, e não queremos subestimar a vontade de evoluir que os jogadores desse estilo de jogo têm. Quando tivemos a certeza de que criaríamos um jogo de tiro tático, todos excluímos nossas contas do Facebook na hora, nos trancamos em um porão e passamos 14 meses desenvolvendo um software que nos ajudaria a combater cheats pelos próximos séculos.

O nome desse software é Vanguard , e ele será lançado juntinho com o VALORANT. Já vou até criar um fandom dedicado a essa dupla maravilhosa. Estamos usando o Beta Fechado desse jogo como uma oportunidade para testarmos nossos poderes de necromancia, já que a versão que estamos rodando não passa de um simples esqueleto do verdadeiro software. A maioria dos recursos está desativada de propósito, pois não vamos revelar a nossa receita secreta antes do lançamento. Além disso, queremos ter a certeza de que todos os ingredientes estarão estáveis e em pleno funcionamento quando chegar a hora. Tendo isso em mente, podemos revelar o seguinte: o Vanguard tem um componente de driver , mas devido a questões de compatibilidade, talvez não seja implementado em todos os nossos títulos (como no LoL, por exemplo), a não ser que isso seja necessário.

Recentemente, demos uma lida nas discussões internet afora, e vimos que algumas pessoas estão preocupadas quanto à privacidade dos drivers. Olha, serei bem sincero: somos uma equipe que desenvolve sistemas contra cheats e adicionamos códigos a clientes de jogo há quase uma década. Se quiséssemos descobrir os segredos das pessoas, já teríamos feito isso. Sei que falar algo assim não é muito bom para as nossas relações públicas, mas eu não sou um cara que entende muito bem disso. Nós apenas coletamos informações que nos ajudam a determinar com precisão se um jogador está usando cheats. Acredite em mim, você pode confiar na nossa completa falta de interesse sobre qualquer assunto que não seja esse. O driver carrega primeiro e permanece assim para nos fornecer uma oportunidade melhor para detectar qualquer tipo de modificação. Vale a pena enfrentar toda essa discussão para dificultar a vida dos cheaters – e sabemos muito bem o quanto isso dificultará a vida deles, pois já estivemos no meio desse pessoal um dia.

foto.png
Nós já cuidávamos de você no LoL, e continuaremos fazendo isso nos outros jogos. Se não quiser acreditar em mim, é melhor esquecer que este artigo existe, porque eu sou aquele gremlin grandão ali no canto esquerdo.

E só para deixar registrado: esse não é o único método que usaremos para proteger VALORANT. Nosso colega Paul "Riot Arkem" Chamberlain tem trabalhado bastante com a tecnologia de Névoa de Guerra do servidor, implementando designs para garantir que os clientes do jogo não tenham acesso a certas informações até que sejam realmente necessárias. Confira como estamos tentando remover questões relativas à física dos jogos de tiro em primeira pessoa ao implementar elementos menos lógicos e mais fantasiosos a eles.

Conclusão

Bom, acho que está na hora de acabar com essa enrolação eterna, mas não se esqueça de curtir, se inscrever e deixar aquela gorjeta pro administrador do banco de dados. Não é sempre que passamos por aqui para fornecer todo esse conteúdo, mas lembre-se de que a equipe Anticheat sempre estará ao seu lado, lutando pelos direitos de uma experiência de jogo competitiva e justa.

Aliás, agora ficamos oficialmente sem nenhuma ilustração de skin que combine com a temática desse tipo de artigo e que possa ser colocada no cabeçalho lá em cima, então não poderei me manifestar fisicamente por aqui até lançarmos outra. Adeus.

Apêndice

1 Toda vez que lançamos uma nova tecnologia, ficamos bem interessados em suas vulnerabilidades. Se você, em algum momento, sentir uma vontade incontrolável de quebrar alguma coisa, dê uma olhada no nosso programa no HackerOne[1] e junte-se a nós sob o título de "Deus da Tecnologia Antiadulteração" (representado pela sigla GOAT em inglês).

2 Na tentativa de despistar o Olho que Tudo Vê, alguns conjuntos de scripting dizem que conseguem "rodar por fora" – o que significa que não estão mais mexendo diretamente nas funções do jogo, mas apenas lendo a memória do cliente (a partir do sistema operacional) e simulando comandos periféricos. Essa abordagem acaba oferecendo aos cheaters menos proteção do que os métodos tradicionais (já que não podem alterar os dados anticheat), mas realmente consegue contornar os mecanismos de detecção mais óbvios. Isso também causa efeitos colaterais que fazem com que os cheats tenham menos desempenho, já que estão enviando comandos pelo teclado, e não solicitações diretas de conjuração de habilidades.

3 Não vou citar as palavras-chave regionais que selecionamos, porque algumas pessoas as usariam de propósito para arruinar os gráficos que criei cuidadosamente. E aí, esses gráficos não se encaixariam mais no que os cientistas de dados chamam de "estatísticas de qualidade".

4 Não, não existe.

5 Um "bot sem cabeça" não é nada mais do que um cliente de jogo emulado. Um bot perfeito não precisaria ter quase nenhum recurso, pois se comunicaria diretamente com o servidor do jogo. Ele não teria nada para renderizar e nenhum comando para dar, apenas faria uma troca pura de tráfego de rede. Isso não seria bom em termos de quantidade, já que não haveria limitações no número de instâncias que um desenvolvedor poderia hospedar simultaneamente. Mas, graças à Atualização 4.20 e aos ajustes feitos no nosso protocolo de rede, não estamos tão vulneráveis (na verdade, estamos quase imunes) a clientes "sem cabeça".

6 Chega a ser incrível como os aplicativos de botting se parecem com bactérias. Eles existem em grande número, apresentam variações e se renovam rapidamente. Quando criamos uma "cura", os desenvolvedores de cheat voltam toda a atenção para os poucos bots que não foram afetados, resultando na "reprodução" de mais elementos. É como ter uma erupção cutânea resistente a elementos antibacterianos que não sabe como reagir e que acaba se "desinstalando" do seu corpo.



  • Copiado para a área de transferência