O melhor personagem do Mario Kart de acordo com a ciência dos dados

Mario Kart foi um dos elementos básicos da minha infância – os meus amigos e eu passávamos horas depois da escola como Mario, Luigi, e outras personagens do universo Nintendo a correr em torno de pistas de cartoonish e a atirar bananas pixelizadas umas às outras. Uma coisa que sempre irritou o nosso pequeno grupo de aspirantes a speedsters foi a questão de qual das personagens era a melhor. Algumas pessoas juraram pelo zípido Yoshi, outras argumentaram que Bowser grande e pesado era a melhor opção. Na altura, havia apenas oito opções para escolher; rapidamente para a actual iteração do franchise Mario Kart e a questão é ainda mais complicada porque se pode seleccionar diferentes karts e pneus para ir com a personagem. Os meus reflexos do Mario Kart já não são o que eram, mas sou melhor na ciência dos dados do que era como um aluno do quarto ano, por isso neste post vou usar os dados para finalmente responder à pergunta “Quem é o melhor personagem do Mario Kart?”

Esta é uma pergunta complicada porque agora há toneladas de potenciais configurações personagem / kart / pneu e todos eles têm estatísticas muito variadas ao longo de vários atributos. Em geral, não é possível optimizar em múltiplas dimensões simultaneamente, no entanto, algumas configurações são inegavelmente piores do que outras. A questão para um aspirante a campeão de Mario Kart hoje em dia é “Como posso escolher uma combinação personagem / kart / pneu que seja de certa forma óptima, mesmo que não exista uma opção ‘melhor’? Para responder a esta pergunta, recorremos a um dos compatriotas de Mario, o economista italiano do século XIX Vilfredo Pareto, que introduziu o conceito de eficiência de Pareto e a respectiva fronteira de Pareto.

O conceito de eficiência de Pareto aplica-se a situações em que existe um conjunto finito de recursos e múltiplos resultados concorrentes que dependem da forma como esses recursos são atribuídos. As atribuições “Pareto eficiente” são aquelas em que é impossível melhorar um resultado sem agravar outro resultado. Isto é mais facilmente explicado com uma imagem (cortesia da Wikipédia).

Cada círculo é uma potencial atribuição de recursos, que, no nosso caso, significa uma distribuição de pontos estatutários pelos diferentes atributos como peso, manipulação e tracção (as personagens no Mario Kart têm aproximadamente o mesmo número de pontos estatutários totais, e diferem apenas na sua distribuição). A posição de cada círculo representa o resultado dessa distribuição em duas dimensões concorrentes, por exemplo, velocidade e aceleração. As atribuições a vermelho situam-se na fronteira de Pareto: para cada uma destas atribuições, uma melhoria num resultado requer uma diminuição no outro. As afectações a cinzento não são eficientes em Pareto porque se pode melhorar ambos os resultados com uma afectação de recursos diferente. Velocidade e aceleração são geralmente os dois atributos mais importantes no Mario Kart, pelo que o objectivo desta análise é identificar as configurações personagem / kart / pneu que se encontram na fronteira de Pareto para velocidade e aceleração.

Análise de dados explicativos

Comecemos por examinar as estatísticas de cada personagem, kart, e pneu de forma independente, utilizando alguns dados compilados em leque. Uma peculiar peculiaridade do Mario Kart é que embora existam algumas dezenas de caracteres, muitos deles têm estatísticas idênticas. A partir daqui, vou referir-me à classe da personagem (ou kart, ou pneu) pelo nome de um dos seus membros. Por exemplo, no mapa de aquecimento abaixo da fila rotulada “Pêssego” também descreve as estatísticas para Daisy e Yoshi. Os membros completos da classe estão listados no final do post, caso queira ver onde o seu personagem favorito aterra.

Existem sete classes de personagens. Vamos dar uma vista de olhos à forma como as suas estatísticas se comparam.

A tendência mais óbvia é o comércio…entre a velocidade e a aceleração: os caracteres pesados têm boa velocidade mas má aceleração, enquanto os caracteres leves têm uma aceleração rápida mas uma velocidade máxima baixa. Há também variações nas outras estatísticas, mas em grande medida, a velocidade e a aceleração dominam o desempenho de uma determinada configuração, por isso vamos ignorar o resto das estatísticas.

Karts e pneus modificam as estatísticas de base dos caracteres: os atributos da configuração final são uma soma das estatísticas dos caracteres e dos modificadores de kart / pneu. Tal como com os caracteres, existem dezenas de karts e pneus, mas apenas algumas categorias com diferentes stats.

p> As tendências aqui são menos óbvias, mas geralmente concordam com o que vimos nas estatísticas das personagens: as melhorias na velocidade vêm à custa da aceleração, e vice-versa.

O nosso objectivo é encontrar todas as configurações que têm uma combinação óptima de velocidade e aceleração, pelo que o passo seguinte é calcular as estatísticas para cada combinação única (caracter, kart, pneu).

Finding the optimal configurations

Com um pouco de Python podemos enumerar todas as combinações caracter / kart / pneu e calcular os seus atributos somando os valores nas figuras acima. Equipados com as estatísticas para cada combinação possível, podemos traçar a velocidade vs. a aceleração de cada configuração possível, e identificar aquelas que se situam na fronteira de Pareto.

p> De acordo com o gráfico acima, as configurações óptimas constituem um subconjunto bastante pequeno do total das configurações possíveis. Podemos quantificar isto contando todas as diferentes combinações (note-se que algumas combinações se sobrepõem na figura). Só por diversão, vamos também contar as combinações possíveis incluindo todos os caracteres, karts, e pneus com estatísticas idênticas.

Combinações possíveis: 149760
Unique stat combinations: 294
Optimização das combinações: 15

As configurações ideais constituem apenas 5% das potenciais configurações stat únicas! Vejamos como são estas configurações óptimas.

div>>div>>

p>Sem aceleração, parece que um personagem pesado é o caminho a seguir; as duas classes de personagens mais pesadas (Wario e Donkey Kong) correspondem a 11/15 das configurações Pareto-óptimas.

Podemos também ver as outras estatísticas principais para cada uma destas configurações.

Portal aí está, se velocidade e aceleração são as suas principais preocupações, então uma destas 15 configurações é a sua melhor aposta.

Explorar todas as configurações

Por vezes uma configuração óptima não é o que procura (digamos, porque o seu colega de quarto ameaçou parar de jogar se não houvesse algum tipo de handicap, para escolher um exemplo aleatório). Nesse caso, podemos explorar todas as configurações possíveis com um rápido gráfico interactivo bokeh.

Umas poucas observações:

  • Os caracteres pesados são mais versáteis do que os caracteres leves. Enquanto as configurações possíveis de Wario podem atingir cerca de 77% da aceleração máxima, Baby Mario só pode atingir até 50% da velocidade máxima.
  • Metal Mario / Pêssego Ouro Rosa são os únicos caracteres que não têm configurações na fronteira de Pareto.
  • O Badwagon é realmente mau. Quase todas as configurações na fronteira ‘anti-Pareto’ (ou seja, as piores combinações possíveis) envolvem karts da classe Badwagon.

Se quiser ver o código por detrás desta análise, pode encontrá-lo aqui. E finalmente, no caso de ter uma ligação particular a um dos caracteres (ou karts/pneus), pode procurar a que classe pertence abaixo.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *