Ironhack — Semana 3 | A practicar se ha dicho + Presentación Juego!
Semana 3
En la semana 3 de Ironhack Web Dev no hay temario a dar en clase. Se plantea la semana marcando un objetivo muy claro y conciso para todos los alumnos, presentar el viernes a primera hora un MVP (Producto Mínimo Viable) de un juego, pensado, creado y programado por ti. Teniendo de Lunes a Jueves toda la jornada para programar y el Viernes hacer una mini presentación para exponerlo delante de tus compañeros.
A primera hora de la mañana hacíamos la “daily” para comentar el progreso de cada uno de nosotros, dificultades encontradas hasta el momento y las sensaciones. Personalmente, agradezco estas pequeñas sesiones de charla, ya que viene bien para hacer trabajo de introspección, autoevaluación y también para ver cómo vas, aunque no es muy importante, respecto a tus compañeros.
Aunque el trabajo y la maquetación de juego es de forma individual, tienes a tu Lead Teacher junto con la Teacher Asistant para asesorarte y ayudarte con cualquier duda. En todo caso, promueven ser autónomos y saber buscar para sacar el proyecto adelante con la menor ayuda suya posible.
Puedo deciros personalmente, que durante esta semana, los días se pasan volando. A mediados de semana, la Lead Teacher te convoca para hacer una entrevista personal y ver cómo va tu proyecto. Durante la entrevista, evalúa el juego y te aconseja sobre cómo enfocar los futuros retos de tu código.
También se nos da las instrucciones para empezar a plantear la presentación del juego para el Viernes.
Con un MVP prácticamente terminado, y una presentación de Slides, dispones de 5 minutos para explicar el proyecto, las dificultades encontradas a la hora de codificarlo y hacer un test del juego.
Gracias a Trello he podido organizar las tareas y objetivos diarios de forma visual y bonita, teniendo en cuenta en todo momento cuáles son los elementos que conforman el MVP y cuáles son las tareas del backlog.
Llega el Viernes y todos tenemos nuestros proyectos listos para mostrar. Hacemos, mediante ruleta, el orden de presentación.
En la presentación, no solo se premia tener unas diapositivas limpias, sin mucho texto, sino que las Soft Skills toman las riendas y la comunicación, el entusiasmo de tus palabras y el saber presentar acaban siendo los factores más importantes.
Todos estos aspectos, Ironhack, se encarga de promocionarlos y enseñarlos a lo largo del bootcamp, no solo en las presentaciones, sino también en nuestro día a día.
🎮 El juego — Town Defense
Town Defense es el juego que he desarrollado a lo largo de esta semana 3.
Se trata de un juego de navegador cuyo objetivo es defender el pueblo central, mediante una torreta que puede disparar, de los enemigos que se van acercando por todo el perímetro del mapa.
Es un juego con dificultad incremental, ya que, por cada enemigo eliminado, el siguiente vendrá con más velocidad y, aunque tus disparos también incrementarán de velocidad, lo harán a menor escala que los enemigos.
Así pues, el juego es finito y llegado a un cierto nivel de puntos, por muy bueno que sea el jugador, será imposible acabar con el enemigo.
Retos técnicos
La parte matemática superaba mis expectativas.
Conseguir el ángulo / trayectoria entre el jugador central y el punto aleatorio fuera del mapa, para aplicarlo a los enemigos, fue un verdadero quebradero de cabeza.
Así mismo con la trayectoria de la bala al hacer clic con el ratón en cualquier parte de la pantalla.
Aparte de eso, controlar la colisión de la bala con el enemigo, los dos en constante movimiento, también tenía su complicación.
He de decir que YouTube me ha ayudado bastante en todos estos aspectos, al final, en programación, cuando a uno no le salen las cosas, se tiene que espabilar para sacarse las castañas del fuego :)
Futuras implementaciones
Debido al escaso tiempo disponible durante la semana, dejé mucho de lado la parte gráfica del juego. Los dibujos, tanto del poblado central, junto con su torreta y los enemigos, no son visualmente muy atractivos.
Por eso una mejora indispensable es el tema estético, reconozco que la parte gráfica no es mi fuerte, y eso incluso puede hacer dudar de la calidad del juego, por eso mejorar los gráficos es un MUST de cara al futuro.
También me gustaría implementar mejoras en cuanto a la escalabilidad y jugabilidad, tengo pensado aplicar upgrades en el disparo del jugador, por ejemplo, que las balas sean penetrantes, o implementar doble disparo…
En este enlace podréis jugar a la versión final de Town Defense🔗🌐 (Abrir y jugar desde un ordenador, a ser posible)
Con todo esto dicho, gracias por vuestro tiempo y espero que mis blogs semanales os ayuden a que si queréis dar el paso, lo hagáis con menos dudas :)
Link Anterior Blog Semanal: Ironhack — Semana 2| Se empiezan a complicar las cosas
Link Siguiente Blog Semanal: Ironhack — Semana 4| Empezamos Back-End con NodeJS
Puedes contactar conmigo a través de LinkedIn o enviándome un correo a eloipampliega@gmail.com.