[Godot] - Juego de bloques

AikonCWD

Estoy haciendo un pequeño y sencillo juego. Mi idea es que sea mi primer proyecto para móvil (web o android). El juego genera una línea nueva de bloques que se añade en la parte inferior, haciendo que el resto de bloques suban. Tu misión es apilar 3 o más bloques iguales para eliminarlos, evitando que los bloques toquen la parte superior.

Me he basado en un juego que vi hace tiempo en pico8

Los controles son muy sencillos: Desplazamiento con flechas, en el borde puede saltar al otro lado. Con los gatillos de un gamepad te sitúas en la posición inicial o final de golpe. Espacio o botón A para coger y soltar bloques. Abajo para generar una línea manualmente.

Hay 3 modos diferente de juegos:

  • Time Attack: Cada X segundos aparece una nueva línea. Tu objetivo es ser lo más rápido posible eliminando bloques para evitar que toquen la pantalla superior. La dificultad aumenta gradualmente con el paso del tiempo.
  • Speedrun: Intenta completar 100 puntos en el menor tiempo posible. Tú generas nuevas líneas pulsando "abajo".
  • Practice: Modo libre, sin tiempo ni presiones. Tú generas nuevas líneas pulsando "abajo".

Espero que os guste!!

6
totespare

Está chulo!! Mola tio :D. He tenido este bug, por cierto

Ha habido varios combos a la vez y se ha quedao así rallao xD. Luego con el siguiente pack de bloques automático que ha salido se ha arreglado. Por cierto el outline negro del sprite del selector de cubo se queda negro en el lateral izquierdo cuando se hace pequeño :P

1
r2d2rigo

Ponle un nombre mas currado, desgraciao.

Cuando lo tengas un poco mas maduro le echare unos buenos vicios, good job <3

1 respuesta
carra
#3r2d2rigo:

Ponle un nombre mas currado, desgraciao.

Bueno estás hablando con el creador de "GodoRogue", jejeje

Lo he probado y funciona bien, me he enterado de como iba rápido. Aunque no soy muy bueno :rofl:

AikonCWD

Ah si? pues voy a dejar el nombre de Juego de bloques, por joder xd

1 respuesta
carra

#5 Bueno yo tampoco diré mucho, que mi último juego ha sido "Basic Platformer"...

1
B

Me ha gustado mucho el juego, quizás deberías ponerle un botón diferente para empezar porque me ha pasado varias veces que cuando aparece Game Over al pulsar la barra espaciadora no me da tiempo a ver cuantos puntos he conseguido, ni tampoco hay un histórico ni una puntación máxima.

Como dicen más arriba hay veces que deja piezas que se supone que están eliminadas.

Por lo demás me lo guardo en favoritos porque es adictivo.

AikonCWD

He podido dedicarle ahora un par de horas.

https://aikoncwd.ovh/bloques/

Los errores visuales con la animación al destruir bloques deberían estar resueltos.
La versión web va fatal, pero para testear creo que ya sirve.

Mañana me pongo a buscar musica, hacer la GUI y los modos de juego.

1
thenanox

se pueden coger varios a la vez? lo digo pa poner a veces mas de 3

1 respuesta
AikonCWD

#9 No. Tampoco había barajado esa opción. Quiero hacerlo simple con un solo botón porque la idea es que lo pueda jugar en el movil con controles en pantalla.

1
B

Control desde móvil?

1 respuesta
AikonCWD

#11 me estoy documentando, a ver que mierda me sale

1
AikonCWD

Bueno, he subido un mini update. Deberían salir unos controles por pantalla para poder jugar desde el movil.

La dificultad está un pelín alta, no es adaptativa y faltan muchas cositas, pero bueno, a ver que feeling tenéis.

1 1 respuesta
B

#13 Chrome Android va perfect

1 respuesta
AikonCWD

#14 y a nivel de gameplay? ya sé que tendré que poner unos controles decentes y mejor posicionados, etc... pero se puede jugar bien?

1 respuesta
B

#15 se juega bien... la dificultad es full random

Edit: lo he probado con un Razer Kishi y no lo reconoce (Chrome Android)

23 días después
AikonCWD

No he abandonado este proyecto, eh?

Le acabo de meter un mini-update

He trabajado la pantalla principal, el título, etc... el gameloop lo tengo terminado. Me falta resetear el timer al empezar una nueva partida (me di cuenta una vez había compilado el juego xd). Tengo que arreglar una condición a la hora de stackear bloques en la última fila y poco más...

Probadlo un poco si queréis. Si no veo nada raro adicional, me pongo con los modos de juego y la tabla de puntuaciones.

Para jugar: https://aikoncwd.ovh/bloques/

6 1 respuesta
totespare

#17 108 puntos, esta de puta madre macho, vicia mucho y estresa bastante xD

AikonCWD

Pues le he metido un gran update hoy. He puesto los 3 modos de juego que tenía pensado

  • time attack: el clasico, cada X segundos se genera una nueva línea. El tiempo entre líneas se reduce poco a poco, incrementando su dificultad. Mi record es de 303 puntos.
  • speedrun: No hay tiempo, tú generas las nuevas líneas pulsando "abajo". Tienes que completar el 100% en el menor tiempo posible. Mi record 82.52
  • practice: No hay tiempo, tú generas las nuevas líneas pulsando "abajo". No hay objetivo, simplemente relajarte y romper bloques. Me sirve para testear el juego sin handicaps.

Me falta poquito para acabar. Música, efectos al ganar o perder, al empezar partida, etc... Es posible que haya algún bug al cambiar entre diferentes modos de juegos (alguna variable que no haya reseteado tras perder, etc... ese tipo de bugs). Me falta implementar el sistema para almacenar hi-scores. Me falta meter un delay entre partida completada y nueva partida (si vas muy rápido pulsando, te saltas la screen de gameover).

Con el gameplay no deberían salir bugs. Los cuadrados, líneas, etc... se deberían comportar perfectamente.

Para jugar: https://aikoncwd.ovh/bloques/

Agradecería un poco de feedback, sobretodo si encontráis algún bug.

2
carra

Está entretenido. Me he encontrado algo que no sé si es un bug. Cuando en una columna estás a un bloque del techo, si pones otro bloque igual que el último (2 iguales) se eliminan y se ve un tercer bloque por encima del tablero.

3 respuestas
AikonCWD

#20 cierto! se me olvidó comentarlo que este es uno de los bugs conocidos. Tengo que comprobar si en el momento de soltar un bloque, la fila ya está completa. En ese caso no sé si negar la posibilidad o saltar directamente a gameover porque llegaste al techo.... :thinking:

edit: el título y el logo son lo más. Lo que más me mola de todo el juego

CrimsonRed

Oye, acabo de verlo, está bien chulo, me estaba viciando y he tenido que dejarlo porque si no dejaba de lado lo que estaba haciendo yo jajaja, pero me mola mucho, es muy viciante, perfecto para matar el rato de vez en cuando, ¿para cuándo la app de teléfono? xD

1 respuesta
AikonCWD

#22 Gracias! Como mucho compilo el apk para android y poco más. No quiero ni mirarme como se sube a la store. Otra opción sería dejarlo para web, que @_-Debug-_ ya hizo pruebas.

A parte tendría que meterle controles para manejarlo con el movil.

1 1 respuesta
B

Cuando llegan al techo el último bloque se queda ahí, sale en el menú y mientras se carga el tablero, luego desaparece.

Las piezas que se quedaban congeladas en el aire, yo por lo menos no las he vuelto a ver. La animación de parpadeo cuando eliminas tres o cuatro bloques funciona bien casi siempre, excepto algunas veces que no sale y directamente desaparecen (queda un poco brusco).

Como curiosidad cuando empiezas una partida (time attack) y pulsas intro repetidamente mientras carga se ven piezas aparecer y desaparecer o en posiciones altas, dando resultados raros.

Unas veces sale GAME OVER y otras "Congratularions!" ... no sé por qué.

Y el "best" siempre está a 0.

PD: No sé si has variado el tiempo en time attack o yo estoy desentrenado pero ahora parece mucho más difícil.

1 respuesta
AikonCWD

#24 Gracias por el feedback!

  • Cuando llega al techo el último bloque se queda ahí: solucionado
  • A veces la animación de parpadeo no sale: solucionado
  • Al pulsar intro muchas veces, aparecen cuadrados random: solucionado
  • Resetear correctamente el texto de GAME OVER: solucionado
  • Las puntuaciones máximas no salen: No van a salir de momento, no lo he implementado y solo es un placeholder

El bug que comentó #20 todavía persiste porque no me he puesto con ello. Lo de la animación de parpadeo la estaba borrando en el momento que una nueva línea sube, para evitar que parpadeen sobre bloques nuevos. Lo he quitado a ver como lo ves ahora. Al final esto es un poco a gusto personal.

He modificado un poco el algoritmo de time-attack, quizás estaba un pelín ajustado y ahora le he dado un poco más de margen al inicio de la partida. A medida que progresas la dificultad irá en aumento hasta un límite el cual no puede ir más rápido. En teoría si llegas a ese límite, tarde o temprano terminas muriendo (como ocurre con el tetris). No quiero partidas infinitas donde los jugadores decidan suicidarse por aburrimiento. De todos modos este equilibrio es super complicado de programarlo bien.

Para jugar: https://aikoncwd.ovh/bloques/

Supongo que en breves tocará ir montando la web en itch.io

1 1 respuesta
B

#23 era un Snapdragon 865+ e iba fino fino. Habría que ver que tal rinde en cpus inferiores, no descartaría el apk para ganar rendimiento nativo.

B

#25 Va muy bien, he estado dándole un buen rato y no he visto ningún fallo de los anteriores. En la primera partida si que me ha ido bastante lento, he llegado a los 200 y pico puntos, luego la velocidad ha cambiado y se notaba más complicado (entre 90 y 100 y algo puntos).

El único fallo que he visto es que cuando coges una pieza ya en las última filas y la pones encima de otra, la que has puesto desaparece fuera del tablero (creo que solo si es de diferente color). Si es el mismo color con 2 haces haces que desaparezcan, lo cual para mi gusto, aunque es un poco trampa, está bien porque ahí estás ya casi a la desesperada xD

Está genial el juego y engancha.

1 respuesta
AikonCWD

#27 Pues solventado ya este bug (comentado por primera vez en #20 )
Añadida música y efecto de sonido gameover
Implementado savefile para almacenar puntuación máxima. Compatible en web usando cookies.

Juraría que ahora está completo.

Mi record actualmente: 462 an time attack y 60.08 en speedrun.

Para jugar: https://aikoncwd.ovh/bloques/

AikonCWD

Editado #1
Subido a itch.io

3 1 respuesta
Kalgator

#29 Está implementado la L ?, osea poner dos bajo, dos al lado y al dejar una pieza haga la L haciendo dos lineas de 3

(aun no lo he probado) xddd

1 respuesta

Usuarios habituales

Tags