sábado, 5 de dezembro de 2020

bate-bate pt.3: parâmetros de um golpe

cada golpe é essencialmente definido por três parâmetros: o efeito, a área afetada e o gatilho que faz ele disparar automaticamente na rodada de batalha, fora isso só grau do efeito que pode ser maior ou menor. 

o gatilho está sempre relacionado à corrente de contatos da batalha, podendo disparar o golpe sempre que a célula for ativada, somente quando ela fizer um contato com um aliado ou um inimigo, quando ela receber um ataque primário (ofensivo ou suporte) ou quando ela realizar um ataque primário. a área afetada pode ser todas as células adjacentes, a própria célula ou o boneco que está fazendo contato com essa célula. nessa fase inicial há somente uma quantidade pequena de efeitos para os golpes, dar dano, curar dano, buff e debuff de ataque, buff e debuff de defesa e veneno, que causa dano ao longo do tempo.

para evitar que as coisas espiralem durante uma partida e permaneçam mais previsíveis, decidi que não queria que qualquer efeito afetando um boneco dure mais que uma rodada. assim que a rodada de batalha acaba todos os buffs, debuffs e veneno são removidos.

isso também ajuda a reforçar a dinâmica alternada entre a rodada de administração e a rodada de combate, em que o "palco" é posto na rodada de manutenção e o evento se desenrola na rodada de combate, de forma auto contida.

 

buff e debuff

mesmo com todos os efeitos sendo resetados no final da rodada, ainda seria possível um aumento descontrolado de buffs e debuffs. esse problema teria que ser resolvido dando um efeito pequeno e gradual demais para os dois, o que seria um pouco chato. 

se o efeito fosse grande, dar buff nos seus bonecos e debuff nos inimigos para contrabalancear o buff deles se tornaria uma parte vital do combate, afinal um personagem sem buff algum daria uma quantidade muito menor de dano que um personagem que acumulou buffs de ataque ao longo da rodada.

a solução que estou testando é que todo buff ou debuff seja imediatamente "gasto" assim que faz efeito. buffs e debuffs de ataque aumentam ou diminuem o dano de ataques primários realizado pelo boneco. buffs e debuffs de defesa diminuem ou aumentam o dano sofrido por -qualquer ataque- apenas excluindo dano sofrido por veneno. isso quer dizer que o buff e o debuff de ataque de um boneco é zerado sempre que ele realizar ataques primários que infligem dano e seu buff e debuff de defesa é zerado sempre que ele recebe dano de qualquer golpe.

ainda estou refletindo sobre o momento que cada buff/debuff toma efeito e pretendo observar as possibilidades estratégicas de cada um. o buff de ataque só tomar efeito em ataques primários conserva ele para ataques mais fortes (ataques primários costumam infligir dano bem mais forte que ataques secundários), mas também torna ele inútil para bonecos que não sejam especializados em ofensiva.

o buff/debuff de defesa tomar efeito em todo dano sofrido por golpes significa que ele vai ser perdido com mais frequência, já que vários golpes secundários infligem um pouquinho de dano em múltiplos alvos, em compensação pode ser útil para bonecos que não estejam sendo diretamente atacados, mas ainda podem ser alvos desses golpes secundários de área.

isso também cria uma possível situação estratégica interessante, usar golpes secundários de área, ainda que fracos, para "abrir" oponentes com muito buff de defesa, deixando eles expostos para ataques primários mais fortes.

agora é mais difícil que o buff/debuff de ataque ou defesa acumule, mas ainda é possível, testando o jogo por agora já observei até quatro buffs acumulados. para tornar esse novo desafio de acumular buffs mais interessante e deixar o efeito menos linear, cada buff de ataque aplica 20% a mais de dano, mas exponencialmente. então o primeiro aplica +20%, o segundo aplica +20% em cima dos 20 anteriores e por aí vai. conseguir acumular quatro buffs por exemplo é ainda mais efetivo que um buff quatro vezes. isso se torna interessante quando se pensa nas consequências do posicionamento dos bonecos no campo quando se tenta induzir dois bonecos a se ativarem várias vezes em seguida.

o efeito do buff de defesa é semelhante, deduzindo 20% do dano recebido,  mas devido à ordem dos efeitos aplicados isso não é simétrico. se um buff de ataque aumentar um golpe de 10 de dano para 12, o buff de defesa só irá surtir efeito após isso e reduzi-lo de 12 para  9.6. uma coisa não cancela a outra, o buff de defesa acaba sendo mais efetivo por vir por último. não sei se me importo com isso ou não.

ainda estou pensando nas consequência de ganhar um buff de ataque vs. infligir um debuff de defesa no alvo e vice versa.


veneno

também queria que o veneno beneficiasse o esforço de conseguir acumulá-lo, assim como buffs e debuffs. para isso só peguei a mecânica de veneno de slay the spire. a cada vez que for ativado um personagem perde 0.2 pontos de vida por veneno que tiver e logo depois se cura de um ponto de veneno. 

logo um personagem com 5 pontos de veneno perderia na primeira ativação 1 ponto de vida, depois 0.8 (4 pontos de veneno), 0.6 (3 pontos de veneno) e por aí vai. isso também significa que conseguir aplicar mais ponto de veneno se torna mais efetivo quanto mais veneno já tiver sido acumulado.

tomemos esse personagem com 5 pontos de dano como exemplo: ao longo de 3 ativações ele perdeu 2.4 pontos de vida. um personagem com apenas 3 pontos de vida teria perdido 0.6 + 0.4 + 0.2 = 1.2 ao longo das mesmas três ativações. agora digamos que o personagem com 5 pontos de veneno ganhe um sexto, ao longo de três ativações ele perderia 1.2 + 1 + 0.8 = 3, já se o personagem com 3 pontos de veneno ganhasse um quarto ele perderia 0.8 + 0.6 + 0.2 = 1.6.

o personagem que ganhou seu sexto ponto de veneno perdeu 0.6 pontos de dano a mais por conta disso, já o personagem que ganhou seu quarto ponto de veneno perdeu 0.4 pontos de dano a mais, com o veneno surtindo efeito pela mesma quantidade de tempo. a diferença é muito sutil e isso me incomoda ainda, mas o jeito que o veneno funciona significa que o jogador também é exponencialmente recompensado por conseguir concentrar veneno em um oponente.

Sem comentários:

Enviar um comentário

Floreio, minha gramática de geração procedural de texto

Gostaria de falar um pouco da ferramenta de geração procedural de texto por gramática de substituição que eu venho desenvolvendo na Unity pa...