terça-feira, 23 de fevereiro de 2016

Matemática e Games: Como a matemática pode te ajudar no metagame em Pokémon

Olá amigos entusiastas da Matemática! E também um olá pra você, que como eu, é fissurado em games. Hoje pretendo começar uma seção esporádica aqui no blog, baseada em como conhecimentos matemáticos podem te ajudar nesse ou naquele outro jogo eletrônico que você tanto gosta.
E pra abrirmos o Matemática e Games, trago para vocês a minha franquia predileta, Pokémon:


Como assim? Matemática no Pokémon? Tá brincando, né?

Pois bem amigos, tudo o que ocorre na programação dos jogos envolve questões de lógica e matemática, fato. Mas isso não vemos na interface dos jogos. Porém, você pode me dizer que Pokémon envolve questões "aleatórias", como as chances que temos de capturar aquele pokémon com uma pokéball ou se aquele ataque decisivo vai entrar na hora certa, por exemplo. Porém, NADA DISSO É ALEATÓRIO. E é isso que será elucidado logo abaixo. Dominando a base de cálculo te dará uma visão mais ampla das suas decisões no jogo, e consequentemente o seu percentual de sucesso será BEM maior. Dividiremos em três grupos as melhores equações que o jogo usa, vamos lá!

*OBSERVAÇÃO: essa postagem é mais voltada para jogadores experientes em pokémon com uma nível mediano de conhecimento matemático. Se preferir, confira o artigo que aborda como os jogos eletrônicos podem potencializar seu conhecimento matemático clicando aqui.



STATS
->HP
((level x (( HP base x 2) + IV's + (EV's/4))) / 100) + 10 + level
->outros stats
(((level x ((base stats x 2) + IV's + (EV's/4))) / 100) + 5) x nature
Como ajuda: serve para você calcular os IV's do seu pokémon, ou então calcular a quantidade necessária de EV's que o pokémon precisa para chegar a determinado valor de stat.
OBS.: quando se refere a nature quer dizer o quanto ela ajuda, podendo o valor ser 1.1 (se afetar positivamente o stat), 1 (se não afetar o stat) ou 0.9 (se afetar negativamente o stat).
EX.: Meu Ninjask está no level 50 e quero saber o IV de spd dele, sendo que a spd tem 210 pontos.
(((50 x ((160 x 2) + IV's + (252/4))) / 100) + 5) x 1 = 210. Simplificando a equação, obtemos que: ((50 x (320 + IV's + 63)) / 100) + 5 = 210 e finalmente descobrimos que o IV de spd do Ninjask é 27.



DANO
-> Fórmula 1 (em unidades de HP)
( [ { 0,84 x poder do ataque x valor do atk ou sp.atk com algum stat-up ou Choice Bands / def ou sp.def com algum boost nesses stats} + 2 ] x STAB x efetividade x boosts como Life Orb ou Muscle Band ) x valor randómico variando de 85 a 100 / 100
-> Fórmula 2 (em unidades de HP)
(((( 2 x level/ 5 + 2) x atk ou sp.atk x valor do ataque/ def ou sp.def) / 50) + 2) x STAB x efetividade x valor randomico entre 85 e 100/100
Como ajuda: faz o treinador perceber com quantos ataques são necessários para derrotar o pokémon adversário, ou também faz ele perceber quantos EV's o pokémon deve ser treinado.
OBS.: eu sei que a fórmula é complexa e dificil de ser aplicada, ainda mais com o valor variável de 85 a 100, mas vou tentar explicá-la. Stat-up quer dizer algum ataque como Swords Dance, STAB é um boost de 50% que o ataque recebe se ele for do mesmo tipo que o pokémon que o usa, se o ataque for STAB se coloca 1,5 no cálculo, se não se coloca 1. Efetividade se refere a tabela de fraquezas e resistências, se ele for 4 vezes resistente o valor é 0,25, duas vezes: 0,5, nem resistente nem fraco: 1, duas vezes fraco: 2, quatro vezes: 4.
EX.: Charizard sem nenhum item ou stat-up usa Flamethrower em um Venusaur que também está sem itens, em quantos ataques o Venusaur vai ser derrotado?
([{0,84 x 95 x 348/328} + 2] x 1,5 x 2 x 1) x 92/100. Simplificando, obtemos que: ([aproximadamente 84 + 2] x 3 x 0,92 e finalmente descobrimos que o dando seria de 237, significando que Venusaur seria derrotado com somente dois ataques.


CAPTURAR POKÉMON
-> Chance de capturar tal pokémon (em porcento)
(( 1 + ( MaxHP x 3 - HP atual x 2 ) x catch rate do pokémon x catch rate da pokéball x status ) / ( MaxHP x 3 )) / 256
Como ajuda: dá uma ideia mais clara para a pessoa das chances dela capturar determinado pokémon e o que vai ser necessário para isso.
OBS.: essa é uma das fórmulas mais fáceis do jogo, porém tem suas complicações: quando me refiro a status, quero dizer inflingir uma condição especial ao pokémon, só existem 3 que ajudam na captura, elas são: Frozen, Sleep e Paralysis, Burn e Poison não são aconselháveis, pois acabam matando o pokémon, e no na fórmula devem ser substituidos pelos seguintes números: 10 (Frozen e Sleep) ou 5 (Paralysis, Burn e Poison). Clique aqui para saber mais sobre as catch rates das melhores pokébolas.
EX.: Quero capturar um Arceus com 1 de HP Frozen com uma Dusk Ball a noite. Quais as minhas chances?
(( 1 + ( 381 x 3 - 1 x 2 ) x 3 x 4 x 10 ) / (381 x 3 )) / 256. Simplificando obtemos que:
(( 1 + 1141 x 120) / 1143 ) / 256 = ( 136921 / 1143 ) / 256 = 119 / 256 = 0, 46 ou seja 46 % de chance de você capturar o Arceus.
Então lápis e caneta na mão amigos, e aprimorem suas técnicas! Até mais!

*Referências na base de cálculo extraídas de: 

Nenhum comentário:

Postar um comentário