jueves, Abr 25 2024 8:01AM

ONIRIC FACTOR

From the deep dream dominions

Después de venir debatiendo un tiempo mediante Whatsapp sobre la posibilidad de introducirnos en el desarrollo para plataformas móviles y de la creciente necesidad de cambiar de herramientas para conseguirlo, estuvimos comparando alternativas… hasta que finalmente decidimos embarcarnos en el mundillo de Monkey.

Sin embargo, a la hora de realizar el primer acercamiento, casi pareciera que todo el cosmos nos odiara (y mucho) ya que al comienzo de la investigación, nos encontramos ante el siguiente panorama:

– No existe soporte en español.

– El soporte oficial del foro de es de solo lectura y no puedes preguntar a menos que tengas una copia registrada.

– El único soporte que no está en inglés… es Ruso.

Finalmente Fenris se hace, pago mediante, con un libro en inglés sobre el lenguaje y las cosas empiezan a enderezarse. Pasados varios días de estudio y tras experimentar con las clases de Monkey (en mi caso hacia mucho que no trabajaba con clases, pese a que antes programaba en Java) logramos comprender un poquitín mejor al animalito.

Ya con cierta base y llegados a este punto, se nos plantea una pregunta ¿Qué vamos a hacer primero?

Cada uno tenia un millón de ideas, pero ninguna certeza. Finalmente dado que estábamos aprendiendo, decidimos simplemente usar un ejemplo del libro como base para fortalecer nuestros conocimientos. El ejemplo estaba basado en un clásico de Atari: Missile Command

Posteriormente Fenris presenta un prototipo base para iniciar la programación y tras preparar el “Product Backlog” del proyecto, pasamos a diseñar el primer Sprint:

Fecha limite: 12 Octubre 2012 

Fenris78: 

Objetivo 01: Cambiar control para usar solo la pantalla táctil.

El prototipo original estaba diseñado para jugarlo con teclado y ratón. En esta ocasión se pretende que se maneje todo con una única pulsación en pantalla:  la lanzadera que dispara se debe seleccionar automáticamente, simplificando el control.

Shaoran: 

Objetivo 02: Cambiar flujo de juego (maquina de estados)

El flujo del prototipo es demasiado simple. Es preciso ampliarlo para dar espacio a los estados diseñados en el “Product Backlog” antes de entrar en profundidad en otras áreas del desarrollo.

    – Menú (ya existe, sin modificar)

    – Selección de nivel (añadir estado): es preciso averiguar como se guardan datos en Monkey. El usuario debería de poder empezar desde donde lo dejo o repetir fases ya superadas. mojo.app / SaveState-LoadState (esto no es necesario terminarlo en este Sprint, solo que haya una pantalla intermedia, basta con que por ejemplo, haya que pulsar una tecla para seguir, pero no tiene porque grabarse aun la partida. Si te da tiempo cojonudo, pero no es parte de los objetivos del Sprint).           

– Juego (el estado ya existe, sin modificar)    

– Fin oleada (nuevo): una animación, viñetas de historia o resumen de estadísticas entre fases. Por el momento con añadir el modo en la lógica del programa y que aparezca una pantalla estática, basta.

– Game Over (el estado ya existe, sin modificar)

El Sprint fue completado dentro del tiempo definido, sin incidentes. Por lo tanto, podríamos pensar que el resultado global fue: “Excelente”.

Sin embargo, este primer Sprint nos dejaría muchas dudas provocadas por nuestro desconocimiento técnico del lenguaje, lo cual hizo que las cosas se tornasen algo más complicadas en posteriores iteraciones.

Una cosa a destacar es que tras finalizar este Sprint, observamos que el prototipo había quedado “Bugueado”.

Siempre cargaba desde el Nivel 2: Esto se debía a que cuando se estaba en la pantalla de selección de nivel, al hacer Touch en la pantalla se daba un aumento no deseado en el valor de la variable.

No se podía retomar el juego: Al hacer la pantalla del Score, el prototipo se tildaba y no había forma de volver al estado anterior.

Posteriormente, durante el último día de plazo antes de comenzar a crear la memoria del primer Sprint y diseñar el segundo, se lograrían solucionar ambos problemas.

Es todo por hoy. Espero que les haya gustado, en próximas entradas publicaremos mas información sobre el estado del proyecto.

About The Author

Te pueden interesar

Translate »