Aquí estamos una semana más. Para los se incorporan nuevos esta semana, aquí tenéis la lista de los artículos anteriormente publicados:
Esta semana el artículo será mucho más corto. Por un lado el Mobile World Congress nos ha absorbido a todos y el tiempo disponible para escribir se ha visto drásticamente reducido.
Por otra parte el desarrollo del juego está llegando a una fase en la que, aunque hay cosas que aún se están implementando, los cambios cada vez son mas sutiles. Cada vez hay menos desarrollo y mas testeo. Por lo tanto es difícil explicar cosas nuevas. Simplemente estamos terminando de implementar funcionalidades y probando todo.
Game Client
Esta semana en la parte de cliente, hemos estado implementando la máquina de estados, para que por fin ya realice los ciclos de comer, diversión, sueño y salud.
Es un trabajo que al final ha requerido de toda la semana y unos días más. Aquí tenéis unas capturas de pantalla con Petogotchi ya vivo. Ya come, juega, duerme, y se pone enfermo.
El testeo de la máquina de estados se prolongará hasta el mismo día en que publiquemos el juego ya que es compleja y tenemos que ir probándola a lo largo de varias semanas.
A nivel de cliente, esta semana ha servido también para cargar toda la lista de items que se pueden comprar con sus respectivos requisitos (precio y si tienen o n o un nivel mínimo). A continuación tenéis un ejemplo de como definen los objetos (items) y de sus requisitos para ser comprado y equipado en la tienda del juego (store).
Y este es parte del código fuente que carga los archivos de configuración cuándo ponemos el juego en marcha
Game Connection
Esta semana también completamos el desarrollo de la parte de servidor y preparamos todo para hacer la interconexión, una vez tengamos el cliente terminado.
Una de las cosas que explicamos en el artículo de la semana pasada, era la lista de funcionalidades para las cuales necesitábamos un servidor. Pues bien, esta semana, Rafa (Archimago de GAE nivel 100) nos reunió ante la pizarra principal y nos dibujó el esquema de interconexión entre cliente y servidor. Lo tenéis en la siguiente imagen.
En este diagrama se pueden ver todos los casos en los que el cliente contacta y negocia con el servidor. Es el que implementaremos durante la última semana de desarrollo.
Por último, os muestro unos logs de actividad del backend. En ellos podréis ver las simulaciones que hemos hecho de operaciones (buscar un petogotchi aleatorio, obtener el ranking, guardar un petogotchi, votar, etc…). Estas pruebas se han hecho para evaluar que todo funciona correctamente y los niveles de carga por cada operación.
También os pongo un vídeo en qué podéis ver la funcionalidad de «limpieza» del Petogotchi.
Por el momento queda claro que: hemos avanzado mucho, pero el proceso de testeo es muy complejo y algunos días nos hemos visto atascados por bugs “tontos”, de esos que te tienen en vela 2 días, y luego resulta que es la mayor tontería (dos líneas de código que tienen que estar en un orden diferente, etc…).
Llevamos ya 5 semanas y parece claro que aún nos quedan unas 2 semanas más de desarrollo y testeo.
Aunque lo que queremos publicar en Google Play es una beta, debe que ser una beta que funcione bien y sin bugs conocidos. Con todas las funcionalidades sociales en marcha y con el sistema de validación de códigos promocionales. Así que, ¡no hay descanso para los valientes!
Para cualquier duda o comentario, no dudés en contactar conmigo en mi twitter o el de Blinzy Studios. Nos vemos la próxima semana! :)