El daño por rasguño es una mecánica de juego por la cual cualquier ataque exitoso siempre causa una cantidad mínima de daño. Esto se usa a menudo en sistemas de combate sustractivo, donde la defensa se resta directamente del daño hecho por un atacante. Por lo tanto, el objetivo siempre recibirá un daño mínimo.
La desventaja de tal sistema, al menos para mí, es que es un truco. Se necesita una fórmula sencilla como Damage = Attack - Defense
y lo convierte en un uno (ligeramente) más complejo: Damage = max(Attack - Defense, 1)
.
También siento que resta valor a la habilidad de un jugador para desarrollar su personaje, etc. No importa cuántas bonificaciones de defensa obtengan, cada ataque causará un pequeño daño. Entonces, ¿por qué poner tu defensa tan alta, si no significa nada?
Además, esto ahora alienta el uso de números más grandes para Hp y daños, por lo que el daño por arañazo es realmente insignificante. Después de todo, si el daño mínimo es 1, y solo tienes 10 Hp, eso sigue siendo el 10% de tu salud. Incluso con 20 Hp, eso es 5%. Y preferiría evitar usar números más grandes como ese a menos que sea absolutamente necesario.
Sin embargo, hay una ventaja muy importante del daño por arañazos: resuelve el problema de punto muerto.
El punto muerto ocurre cuando ninguno de los lados puede dañar al otro. Si inviertes todos tus recursos en defensa y unos pocos en ataque, es posible que tu personaje no reciba daño, pero tampoco podrán hacer mucho daño . Por lo tanto, podrías encontrar un encuentro en el que ninguna de las partes podrá infligir daño, por lo que la batalla continúa para siempre. Esto es especialmente si no tienes mecánicas aleatorias como golpes críticos (que también odio).
Al menos con daños por arañazos, alguien finalmente ganará. Puede que solo sea el que tenga más HP o el mayor número de ataques, pero la batalla terminará.
Así que me gusta tener un sistema de combate donde siempre habrá un resultado. Pero no me gusta tener daños por arañazos. ¿Cuales son mis alternativas?
Alternativas que no implican rodar números aleatorios; Quiero que el combate sea 100% determinista. Si se libra la misma batalla, debe ocurrir exactamente el mismo resultado.
Si quieres detalles sobre la jugabilidad, piensa en términos de combate por turnos, donde la batalla se puede automatizar (diseñas tus fuerzas y luego las enfrentas con otras).
fuente
Respuestas:
Podría implementar un sistema de fatiga / resistencia. A medida que se realizan más y más ataques, el jugador se fatiga cada vez más, lo que significa que no puede mantener una defensa tan buena (ese brazo protector de repente comienza a sentirse realmente pesado después de balancear la espada 50 veces) a medida que aumenta la fatiga, la defensa cae. Esto significa que un jugador que ha desarrollado un buen personaje no sufrirá daños en encuentros rápidos, pero un combate prolongado dará como resultado un aumento del daño que evitará un punto muerto.
fuente
Esta parece una pregunta muy abierta. Soluciones (que ya no se mencionan) para evitar puntos muertos:
fuente
Como variante, puede agregar acumulación de heridas. Seguramente, el hacha gigante de cobre no penetrará una armadura de acero pesada, pero hará un daño contundente e incluso puede romper huesos. Lo mismo es cierto para balas y chalecos.
Cada vez que se golpea a un personaje, convierte parte del daño punzante y cortante en daño contundente, que se acumula. Después de cierto umbral (que depende de la resistencia, por ejemplo), el daño acumulado interferirá con las habilidades de combate del personaje. Algunas opciones aquí:
La armadura podría ser menos eficiente al recibir golpes en las mismas partes del cuerpo.
Heridas significativas: daño periódico, debilidad debido al dolor.
Heridas graves: pérdida de conciencia a corto plazo (lo que hace que el personaje sea muy vulnerable).
Heridas extremas: pérdida permanente de estadísticas (si el personaje logra sobrevivir).
Relacionado: Mecánica de daños en Fortaleza Enana
fuente
Implemente diferentes tipos de daños, con armaduras que solo protegen contra algunos tipos de daños. Por ejemplo, daño cinético, daño por ácido, daño por fuego, etc. Ninguna armadura debe proteger contra cada tipo de daño.
Los usuarios pueden colocar sus armaduras en capas para protegerse contra todos los tipos de daños, pero no pueden proteger contra todos los tipos de daños al mismo tiempo. Esto implementa también una estrategia en las batallas, donde los jugadores tienen que cambiar los tipos de daño para atravesar las diversas capas de armadura.
fuente
Simplemente no podrías tener una estadística de defensa y solo darles a los enemigos más grandes HP. Sé que quieres evitar números gigantes, pero si quieres un juego determinista basado en turnos donde los ataques no se basen en la entrada de los jugadores directamente (no hay posibilidad de que un error humano arruine el ataque) la estadística de defensa parece un poco inútil también.
Si le preocupa el aspecto de la presentación, puede dividir HP en Hearts o Health pips EG 100 hp = 1 heart. Los corazones comienzan a ponerse negros cuando un personaje pierde HP, luego desaparecen por completo. De esa forma, es más fácil de entender para el jugador que 129301239103123hp, pero no tiene que preocuparse por equilibrar alguna ecuación mágica.
Si le preocupa el realismo, siempre puede animarlo para que parezca que el objetivo del ataque bloquea con éxito o solo se rasca ligeramente hasta el golpe mortal.
fuente
Agregue una mecánica de desgaste para la defensa. Hacer que cada ataque reduzca ligeramente la defensa del objetivo.
Finalmente, incluso un ataque débil desgastará la defensa de los objetivos lo suficiente como para infligir daño real.
fuente
Si estás de acuerdo en salir del mundo de los enteros y estás dispuesto a darle vida al sistema de sustracción, puedes usar el algoritmo de reducción de daños de Warlords Battlecry III:
Esta es la función que se comporta de manera muy similar al pseudocódigo anterior:
Cuando DR es más pequeño que el ataque (daño entrante), se comporta como un ataque: k * DR donde k es 0.693 (
ln(2)
para ser exactos). Cuando DR está cerca o es más grande, el daño entrante que el daño se reduce a la mitadDR/attack
. Por ejemplo, para DR = 30 y ataque = 10, el daño sería 1.25 (ataque reducido a la mitad 3 veces).Puede parecer más complicado y más difícil de evaluar para los humanos, pero está libre de ataques y los cambios en ambos parámetros son relevantes. Si el atacante gana poder de ataque adicional o el defensor gana o pierde DR incluso en pequeñas cantidades, el daño resultante cambiará.
fuente
Usa flotadores.
Incluso si presenta HP entero al jugador, use float para hp y float para daño.
Ahora estoy usando clases de armadura fraccionaria, donde la armadura de 1.0 es invencible y la armadura de 0.0 significa "recibe daño completo". El daño se reduce como:
Esta fórmula tiene el efecto de permitir "doble daño" al establecer la armadura en -1.
También he clasificado el daño en categorías, vea los tipos de daño conmoción / explosivo de Starcraft, o el sistema de tipo de daño de Eve para un ejemplo.
Así que ahora, un pequeño diablillo rascando tu armadura de clase .99 eventualmente te matará a Cherry Tap , pero los ataques parecerán que no hacen daño al jugador (él permanecerá en 1 hp mientras pasa de 1.15 hp a 1.1499 hp el próximo ataque ..)
fuente
Un gráfico de habilidades podría poner algunas habilidades de daño como requisitos previos para las habilidades defensivas de nivel superior para reducir la capacidad de un jugador para hacer construcciones altamente asimétricas.
Los golpes críticos pueden recibir algo de daño mientras la defensa no sea absurdamente alta. Si los haces periódicos en lugar de al azar, todavía tienes un combate determinista.
Después de varios golpes fallidos, puede reducir automáticamente la velocidad de ataque en favor de una mayor probabilidad de golpe y daño. Tu personaje scratch superrápido estaba haciendo diez ataques por segundo; ahora, después de quince ataques sin hacer daño, obtiene tres ataques por segundo a + 50% de golpe y + 200% de daño. Esto es similar a los golpes críticos, pero es más rápido para este tipo de situación.
Podrías usar la reducción de daño basada en porcentaje de la armadura, pero para hacerla más interesante que otra forma de mejorar tu HP máximo, podrías hacer que el porcentaje de reducción sea mayor para golpes más débiles. Por ejemplo, 90% de reducción por 1-20 hp de daño, 60% por 20-30 y 30% por todo lo demás.
Finalmente, no te preocupes por los grandes números. Te dan un grado de control mucho más fino que los pequeños. Tener un personaje de nivel 1 comienza con 100 puntos de golpe significa que puedes tener algo que los mata en siete golpes pero no en cinco. Significa que puede tener daños por veneno y otros daños a lo largo del tiempo que no son escandalosamente devastadores (así como algunos que sí lo son, si lo desea). Si no le gusta mostrar números grandes, busque la forma de no mostrarlos.
fuente
Dices que quieres que siempre haya una resolución, pero ¿tiene que ser una victoria?
Considere el enfoque utilizado por Dominions : al cumplir 50 años, el atacante se enruta automáticamente. En el turno 75, el defensor derrota automáticamente. (Una ruta no funciona automáticamente; algunas unidades son inmunes a la ruta e incluso si una unidad inmóvil se enruta, en realidad no puede salir). En el turno 100, todo lo que queda se mata.
Si bien no estoy de acuerdo con la forma exacta en que funciona (hay situaciones en las que simplemente lleva demasiado tiempo matar al otro lado), la idea básica sigue siendo válida.
Lo que sugeriría:
Mire alguna medida del poder de cada lado. (Los puntos de golpe son un punto de partida obvio, pero tenga cuidado, Dominions tiene un problema a este respecto en el que se cuenta la "pérdida" de puntos de golpe que no es significativa: cambio de forma, convocatoria, etc., lo que resulta en el enrutamiento de los ejércitos debido a las bajas cuando no ocurrieron ni siquiera tome ninguno). Mantenga un registro del valor mínimo alcanzado y observe cuántos turnos han pasado desde que se estableció un nuevo mínimo. Si pasa demasiado tiempo sin que se establezca un nuevo mínimo, tiene un punto muerto de algún tipo y el atacante debe retirarse.
fuente
Una alternativa que aún no he visto es que a medida que el valor de su armadura hace que el ataque sea negativo, podría agregar un poco de RNG para un verdadero bloqueo:
Cuanto mayor sea el déficit de daño después de tener en cuenta la armadura, más ataques puede bloquear el personaje antes de sufrir otro ataque de arañazos.
Esto proporciona una pequeña escala adicional para las estadísticas defensivas sin hacerlos invulnerables, también permite que los ataques atraviesen esta mecánica de bloqueo si así lo desea y, naturalmente, evitará puntos muertos.
Las peleas pueden tomar mucho tiempo si has acumulado estadísticas en tu defensa sobre la ofensiva, pero al final llegará allí.
fuente
Muchos juegos de lucha en 3D evitan daños por arañazos. Algunos ejemplos son Tekken y Soul Calibur 2. Evitan esto al dificultar tener una defensa perfecta. Algunos ataques son simplemente demasiado rápidos para reaccionar. Creo que es una muy buena solución.
fuente
Creo que reducir la efectividad de Defensa no es una buena opción. Darle poder a un jugador lleva a una mala experiencia de juego. ¿Por qué no dar la vuelta?
¿Por qué no encender el ataque a medida que pasa el tiempo? Esto aumenta el daño por arañazos con el tiempo, lo que reduce el incentivo del bloqueo. En la mitad del juego, un personaje puede matar a otro mientras se lamenta sobre él mientras se defiende.
Algunos pnp rpgs implementan un "mecanismo de tensión". Cada tensión de giro aumenta en uno. Todas las tiradas tienen el modificador agregado del valor de tensión, empujando la batalla hacia un final.
Otra idea, proveniente de los juegos de lucha, es un ataque que pasa por la defensa. No sé si tu juego es por turnos o en tiempo real, pero este ataque también podría abrir al oponente a un combo o desactivarlo o algunas de sus habilidades temporalmente.
Creo que el truco no es quitarle la potencia a la defensa. Haga otras opciones tan buenas como la defensa, o reduzca los tiempos en los que la defensa es una buena opción.
fuente