Una semana con Godot haciendo un top down shooter en 2D
Actualización: Hice una pequeña página donde estoy colectando la información.
El sábado anterior publiqué un experimento que había hecho migrando un juego de Ren’Py a Godot, decidí hacer una demo de un top down shooter en 2D y luego de una semana estoy muy satisfecho.
Me gustó mucho la facilidad con que se desarrollan las cosas, a veces faltan ejemplos en la documentación pero es cuestión de experimentar. Algo importante en la documentación es que hay que asegurarse de no leer la última (latest) sino que hay que elegir a mano la versión, en mi caso la 3.2 porque hay cosas que sólo funcionan con la versión en desarrollo y no es esa la que descargamos la gente común.
Actualmente tiene un tipo de enemigo con ciertas características: - Puede o no ser patrullero: si lo es, quiere decir que patrulla un área y si detecta al jugador lo perseguirá y le disparará. Si lo piede de vista durante un tiempo regreasará a su patrulla. - Detecta al jugador si lo tiene al frente en una distancia definida, si se le acerca mucho el jugador o si el jugador dispara un arma en una área donde “escucha” (un radio algo cercano del enemigo). - La ruta la sigue usando el nodo Navigation2D, no quise probar el nodo Astar que trae Godot, tal vez más adelante. - Sólo tiene el arma de pistola. - Parpadea a rojo dependiendo de la cantidad de daño que ha sufrido.
El jugador puede: - Moverse usando WASD. - Apuntar y rotar usando el mouse. - Activar puertas. - Usar 5 tipos de armas: cuchillo y pistola, escopeta, ametralladora y lanzacohetes. - Si dispara una rafaga muy grande con la ametralladora ésta moverá su blanco algunos grados a la derecha o la izquierda de forma aleatoria. - El lanzacohetes puede dañar al jugador si está muy cerca cuando el misil está explotando.
El escenario tiene: - Iluminación. - La salida del nivel: único de momento. - Puertas horizontales y verticales. - Recogibles: armas y munición de momento.
La interfaz es mínima y sólo muestra la munición, armas y puntos de vida del jugador. Los recursos gráficos en su mayoría vienen de https://opengameart.org/ y https://www.kenney.nl/assets/. Los sonidos vienen en su mayoría de https://freesound.org/
Y para muestra un vídeo: