La maestría del contraataque como arte.
Arcade, aventura y acción.
Navegador: Google Chrome, Mozilla Firefox
Tipo: Free to play
El objetivo es llegar a un acuerdo con una compañía conocida, en el que la compañía lance una línea de productos cuya temática sea la misma que la del juego (y de la que recibiríamos un porcentaje de los beneficios), y al mismo tiempo dentro del juego se publicite dicha compañía y sus productos. De esta forma, se produciría un proceso de retroalimentación en el que la compañía vendería más productos gracias a la publicidad del juego, y al mismo ese aumento de ventas supondría también un aumento de los ingresos de Gold Pillow Games.
- Coste principal: 87.50 €
- Tiempo: 7 semanas
Nombre | Roles |
---|---|
Germán López Gutiérrez | Game Designer, Programador |
Elvira Gutiérrez Bartolomé | Arte 2D |
Ignacio Atance Loras | Level Designer, Programador |
Jorge Sánchez Sánchez | Arte 2D |
Fernando Martín Espina | Game Designer, Programador |
Nombre | Software / Licencia | Coste Total |
---|---|---|
Ignacio Atance Loras | 1. Clip Studio Paint | 22.50€ |
Jorge Sánchez Sánchez | 1. Clip Studio Paint |
45€ |
Elvira Gutiérrez Bartolomé | 1. Photoshop | 20€ |
Germán López Gutiérrez | 1. Gimp | 0€ |
Fernando Martín Espina | 1. Gimp | 0€ |
Coste Total | 87.50€ |
- Medio: Videojuego
- Motivo: El estilo visual en formato pixel art.
- Medio: Videojuego
- Motivo: La mecánica del parry como elemento clave en el sistema de combate.
Garden Gnome: Prune the Weeds es un juego arcade para un solo jugador donde se debe avanzar por un escenario procedimental en 2 dimensiones eliminando enemigos, siendo la mecánica principal el contraataque, la cual toma inspiración en juegos como Sekiro: Shadows Die Twice. El juego se ha desarrollado haciendo uso de Javascript moderno orientado a objetos y el framework Phaser 3, lo cual ha agilizado el avance del proyecto y ha permitido que sea jugable en navegadores como Google Chrome y Firefox. El diseño visual del juego se basa en elementos de la naturaleza y la jardinería, concluyendo en un resultado simpático y amigable para todos los públicos, cumpliendo el juego los requisitos para obtener un hipotético Pegi 3, lo que permite que la suma de todos estos puntos dé lugar a un juego divertido y apto para el público objetivo.
El juego consiste en el avance de un personaje en un mundo de fantasía, partiendo de su reino hasta llegar al castillo de la maldad, donde el protagonista se enfrentará al mayor de los males. Durante el transcurso de los niveles, surgirán encuentros con enemigos en donde la única forma de defenderse y atacar a los mismos es contratacando en el momento exacto, siendo esta la mecánica principal y la única forma de progresar hasta llegar al jefe final.
- La mecánica de contrataque como recurso imprescindible en el combate.
- La accesibilidad en el estilo visual y en su jugabilidad.
- Assets propios y de calidad (Sprites, sonidos, música, etc.).
- Una aventura de corta duración donde el jugador sienta que sus reflejos han mejorado.
Un gnomo de jardín, que llevaba una vida pacífica, se ve invadido por una serie de monstruos, por lo que deberá luchar contra ellos para proteger su hogar.
La vida de un gnomo de jardín no suele ser especialmente interesante, y la del protagonista de Gargen Gnome: Prune the weeds no es diferente. Pero tiene un objetivo claro, cuidar y proteger su jardín, por lo que cuando este se ve invadido por una serie de monstruos, no duda es armarse con su hacha y salir a por ellos. Las criaturas parecen no acabarse nunca, pero el gnomo no piensa rendirse, por lo que luchará hasta el final, cueste lo que cueste.
La sensación de mejora constante a nivel personal ya que la vida y el daño del personaje son constantes durante la aventura. Sin embargo, lo que el jugador sentirá como progreso, serán sus reflejos al responder con mayor certeza a los ataques enemigos y sus respectivos patrones.
El jugador hará progresar al personaje en scroll lateral mediante las teclas A y D en PC, y el deslizamiento del dedo sobre cualquier punto de la pantalla en dispositivos móviles.
Durante el combate, los enemigos tienen patrones de ataque definidos, a los cuales el jugador deberá responder deslizando el dedo o el ratón sobre la pantalla al momento de recibir dicho ataque. Si el jugador logra hacer esto correctamente, no recibirá ningún daño y hará que el enemigo vea desgastado su aguante (representado como la barra amarilla bajo la vida).
Si en un enfrentamiento, el enemigo gasta todo su aguante, el jugador cuenta con un tiempo variante en función del tipo de enemigo para atacarle. En esta situación debe hacer click (o presionar en la pantalla en dispositivos móviles) múltiples veces sobre el rival para reducirle la cantidad de puntos de vida hasta que este recupere su aguante o muera.
La rana se hincha y lanza la lengua al personaje para atacarlo.
La seta tiene un ataque donde escupe al personaje.
El cactus ataca alzando sus brazos al aire y pegando un puñetazo al suelo donde lanza una onda expansiva al protagonista.
La planta tiene un ciclo de ataque donde retrocede levemente y se lanza a morder al personaje.
El caracol tiene un ataque que consiste en el lanzamiento de un rayo por su vara, la cual muestra unos rayos que crecen levemente antes de lanzar su proyectil.
El videojuego contará con un estilo cartoon con figuras y paletas de colores pastel similares al de juegos como Rogue Legacy o Redungeon, con diseños amigables para el jugador casual. La temática de los diseños se centrará en un estilo “Guerra en el jardín” donde tendremos que enfrentarnos tanto a plantas como animales que se nos crucen en nuestro camino al objetivo.
En la esquina superior izquierda se mostrará la barra de vida del jugador, y al lado de esta aparecerá la cabeza del gnomo.
Debajo de la barra de vida aparecerán los puntos conseguidos por el jugador hasta el momento.
Encima de los enemigos se mostrará su barra de vida y su barra de resistencia. A la izquierda de estas 2 barras se mostrará una flecha indicando la dirección del parry.
En la esquina superior derecha habrá un botón que servirá para terminar la partida y volver al menú principal.
En el menú de inicio se encontrará como background el personaje principal caminando sobre un terreno verde que nunca termina y montañas de fondo (teniendo en cuenta el faralaje para que sea notoria la profundidad de las capas).
A su vez, en el frontground se encuentran 3 botones, siendo el del medio el de jugar, el de la izquierda el de ajustes y el de la derecha el de créditos y contacto.
El título se ubica en la parte superior con una leve animación de escalado ejecutándose en bucle.
En cuanto a la transición inicial, esta comienza con un fade in de 200 milisegundos de duración a la par que los tres botones de la mitad inferior de la pantalla ascienden mientras rotan levemente en un ángulo de 45º hasta colocarse en sus respectivos lugares.
Si se pulsa el botón de jugar (el del centro), los 3 botones desaparecerán con una animación, para aparecer otros 2 botones. Aquí el jugador podrá elegir entre uno de los 2 escenarios disponibles para jugar. Cuando esto suceda, de nuevo desaparecerán los botones y aparecerán otros nuevos para elegir la dificultad. Será entonces cuando el jugador elija la dificultad, se producirá un fade out de 200 milisegundos, y empezará la partida.
En el menú de opciones, se puede configurar el volumen global del juego, y los volúmenes de los efectos de sonido y de la música por separado, para que se pueda configurar la mezcla al gusto del jugador.
También se podrá elegir el idioma, entre el inglés y el español, y habrá un botón para volver al menú principal.
En la escena de créditos y contacto, se mostrarán los autores del proyecto, las referencias necesarias y una forma de contacto por correo electrónico, para poder comunicarse con los desarrolladores.
También habrá un botón para volver al menú principal.
Se trataría de un gnomo de jardín armado con un hacha similar al estilo de los gnomos de la película de Gnomeo y Julieta.
Diseño de una rana, un caracol mago, un cactus en una maceta, una seta que escupe, y una planta carnívora.
- Música de menú.
- Música de combate.
- Música para caminar por el escenario.
- Sonido para los botones.
- Sonido de impacto entre el hacha y los monstruos.
- Sonido del hacha parando un ataque enemigo.
- Sonido de derrota del gnomo.
- Sonido para los monstruos.
Se gestiona tanto el movimiento del personaje, como su comportamiento en los combates. También se gestionan sus animaciones, y su puntuación.
Nada más empezar, crea al jugador, el escenario, los 3 primeros enemigos y todos los elementos de la interfaz (algunos empezarán ocultos). Cada vez que el jugador derrote a un enemigo (a excepción del primero) se generará nuevo terreno y un nuevo enemigo en la dirección X de la escena, para que el nivel sea infinito. Para generar este nuevo terreno se utilizan aquellos objetos que se encuentren a la izquierda del jugador, por lo que nunca los iba a volver a ver. De esta forma se evitan problemas de rendimiento al no tener cada vez más objetos en la escena, y al no tener que eliminarlos e instanciarlos de nuevo cada vez que se quiera hacer avanzar el terreno. Para crear los enemigos se utiliza la clase Enemy, y se les asigna una función que se ejecutará cuando el jugador se acerque suficiente, para iniciar el combate. Los enemigos se generan de forma aleatoria cada vez (a excepción de los 3 primeros).
El funcionamiento es parecido al del nivel 1, pero con un nuevo enemigo, con sus características correspondientes, y un aspecto visual diferente.
Se configura el enemigo con los datos que se le hayan pasado en el constructor (vida, resistencia, animaciones, tiempo de ataque y de contraataque...). Funciona como una máquina de estados, ya que el enemigo puede estar en 3 estados distintos, pasando de uno a otro cada cierto tiempo, o tras un suceso. Si se encuentra “atacando”, no puede perder vida ni resistencia o ser contraatacado. Si está en estado “parry” si podrá ser contraatacado, perdiendo resistencia, pero no vida, y si se le acaba la resistencia, pasará a estado “cansado” y podrá perder vida por los ataques del jugador.
Gestiona todo el comportamiento y las animaciones de los botones. Se posiciona y escala en función de los parámetros recibidos en el constructor. Se configura siempre para estar en una capa visible por el jugador, y para moverse junto a la cámara de la escena en la que se encuentra. La función que se ejecuta cuando se pulsa el botón se define una vez instanciada la clase, de forma que cada instancia.
Gestiona el comportamiento de los botones del menú, y la decoración del mismo. Al principio aparecen 3 botones, uno para ir al menú de créditos, otro para ir al menú de opciones y otro para jugar. Este último hará aparecer 2 nuevos botones, uno por escenario, y tras elegir aparecerán 2 botones para elegir la dificultad.
Se encarga de recibir y gestionar todas las entradas, bien sean a través del teclado y el ratón, o bien sea a través de la pantalla táctil del teléfono.
Muestra la puntuación obtenida durante la partida, y permite volver a jugar, o volver al menú de inicio.
Contiene funciones genéricas útiles para los programadores en cualquier otro script.
Sirve para crear barras deslizantes que se mueven de un lado a otro con el ratón.
Permite al jugador modificar el volumen global, el de la música o el de los efectos de sonido. También hay un botón para volver al menú principal.
Muestra los autores del proyecto, un correo para contactar con el equipo, y un botón para volver al menú principal.
Muestra una pequeña animación del logo del equipo desarrollador, antes de pasar al menú principal.
Gestiona la carga de todo el material necesario para el juego (tanto visual como sonoro). Una vez ha sido cargado, se pide al jugador que pulse, para comenzar. Mientras se produce la carga, se muestra una animación donde se ven a los personajes del juego.
Se trata de un contenedor, al que se pueden añadir distintos elementos de la interfaz, para que todos se comporten de la misma manera (avancen con la cámara y se escalen si la cámara hace zoom).
Escena donde los programadores harán cualquier tipo de prueba necesaria, antes de añadirse al juego final.
Contiene 2 funciones, para reproducir música y audio respectivamente. También se encarga de que los sonidos y la música se reproduzcan con el volumen correspondiente.
Permite elegir entre varias opciones preestablecidas por los programadores (por ejemplo, entre varios idiomas).
Permite instanciar nubes en las escenas. Controla el comportamiento de las mismas.
- Andar
- Atacar con hacha
- Parry superior
- Parry inferior
- Muerte
- Idle
- Ataque
- Idle
- Ataque
- Idle
- Ataque
- Idle
- Ataque
- Idle
- Ataque
Hito | Fecha |
---|---|
Inicio del proyecto | 09/10/2020 |
Definición de la paleta de colores | 19/10/2020 |
Assets comunes y de los escenarios | 29/10/2020 |
Animaciones de enemigos parametrizadas | 10/11/2020 |
Juego infinito, dificulad, y barras de vida | 15/11/2020 |
Spritesheets del personaje | 16/11/2020 |
Importación de los assets al proyecto de Phaser | 16/11/2020 |
Fin del proyecto | 19/11/2020 |