miércoles, 3 de julio de 2013

Simulación computacional de combate (III): Movimiento

El movimiento de las unidades en el  campo de batalla es una ciencia en si mismo y corresponde tanto al nivel estratégico, como al operacional y al táctico. Para el propósito de estudiar y modelar el movimiento nos vamos a limitar al estudio de unidades pequeñas ya sean unidades individuales o grupos de individuos en pequeñas unidades a la Age of Empires o Starcraft.

EL movimiento de los agentes depende principalemnte de 3 factores, el terreno, el enemigo y las propias tropas, me voy a basar en esta explicación en el trabajo que he hecho con mis alumnos y en el trabajo Reynolds sobre el comportamiento autoorganizado de grupos de agentes e el sistea que el llamó boids.

Las reglas básicas de Reynolds para ver la autoorganización de grupos son tres:

1.- Una regla de atracción hacia los demás boids
2.- Una regla de repulsión para evitar que todos los boids terminen en el mismo punto
3.-Una regla de igualación de las velocidades (en forma vectorial, por o que se igualan velocidad y dirección).

Basados en estas reglas nosotros podemos describir ajustando ciertos parámetros, la cohesión y velocidad de un grupo. Los grupos que tenemos aquí solo responden a estímulos generados dentro del mismo grupo or lo que debemos añadir un par de reglas más:

4.- Regla de atracción hacia un objetivo.
5.- Regla de evitar colocarse en la línea de fuego de un compañero.

Basándonos en estas reglas tenemos masas de soldados sin líderes que son proactivas, van hacia el objetivo, y evitan colocarse en la línea de fuego de sus compañeros, lo que básicamente los hace soldados con un entrenamiento muy rudimentario.

Las siguientes reglas que podemos implementar son reglas que los hagan responder al terreno:

6.-Regla de atracción hacia cobertura.
7.-Regla de atracción hacia caminos que permitan moverse velozmente.
9.-Regla de atracción hacia zonas con camuflaje.

Unas de las reglas mas enfatizadas en las tácticas de pequeñas unidades es utilizar siempre el camuflaje y la cobertura disponibles, para evitar ser vistos y para protegerse del fuego enemigo. Esto debe ser hecho aún a costa de la velocidad para llegar a los objetivos excepto en casos excepcionales como para responder a una llamada de auxilio, incluso entonces lo principal es avanzar rápido hasta una distancia prudente y entonces tomar una ruta que trate de combinar la cobertura y el camuflaje a expensas de la velocidad.

Hecho esto debemos tomar en cuenta la reacción que tendrán los agentes a la presencia del enemigo.

10.- Alejarse del enemigo si estan en inferioridad numérica.
11.- Si perciben que tienen superioridad numérica acercarse al enemigo.
12.- Alejarse de zonas donde han caído aliados

Ahora lo que nos falta es tomar en cuenta las órdenes de los líderes.
Una manera de hacer esto es que los agentes sigan al líder.
Otra es utilizar formaciones, en las cuales los agentes mantienen posiciones relativas respecto a un líder para completar la formación especificada. Un tratamiento adecuado de esto se puede ver en este artículo de Gamasutra de Dave Pottinger que fue el encargado de implementar las formaciones en AoE.

Utilizando agentes estas son las reglas que yo he utilizado y creo que son mas que suficientes para conseguir un movimiento realista en una simulación computacional.

Si conocen otras que se hayan utilizado en simulaciones o juegos por favor díganlo en los comentarios.

No hay comentarios:

Publicar un comentario