Resumen Hito 4 [29/05/15]

¡Muy buenas a todos! Esta vez queremos empezar el resumen mostrando el vídeo que preparamos para este cuarto hito. Así que… ¡Dentro vídeo!

Como veis esta vez nos hemos puesto más cinematográficos para mostrar los avances. ¡Que se note ese background en audiovisuales!.

En cuanto a los avances, como habréis podido ver en el vídeo, han sido fundamentalmente a dos niveles: programación interna y assets. Hemos decidido dejar de implementar mecánicas para centrarnos exclusivamente en mejorar el juego, eliminando bugs, ajustando las mecánicas ya implementadas y mejorando la parte visual.

OBJETIVOS

  • Arreglar bugs.
  • Hacer más minijuegos/variaciones.
  • Darle un empujón a los assets.
  • Integrar todo en el flujo de juego.
  • Añadir sonido y música.

¿QUÉ FUE BIEN?

Aunque no hemos podido cumplir algunos objetivos, hemos avanzado en muchos otros y estamos bastante satisfechos con los avances.

  • Cambio de versión de Unreal (de 4.6 a 4.7) = Mejoras en el motor (sobre todo en los UMG). En un principio pensamos en no cambiar de versión e intentar terminar Hacked con la 4.6, pero vimos que esta nueva versión traía una serie de mejoras que nos iban a facilitar mucho la vida en los meses posteriores. Sin pensarlo demasiado, hicimos una copia del proyecto y cambiamos de versión. Al principio nos escamó un poco el cambio porque nos bugueó algunas partes del proyecto, pero no nos rendimos y tras una tarde de ajustes, Hacked pasó a la versión 4.7. La mejora más notable es de los UMG (Unreal Motion Graphics), muchísimo más estables que antes (¡¡por fin podemos hacer copy/paste sin que crashee todo!!).
  • Avance con los assets. Aunque aun queda mucho por hacer, las oficinas de Hacked están más vivas gracias a los nuevos assets.
  • Flujo de juego integrado. El menú ya no es de pega, y podemos guardar la partida (con todas las variables -mejores tiempos, notas recogidas…-). Sin duda el mayor avance de este hito. No ha sido fácil, porque aunque Unreal nos facilita mucho el trabajo, los bugs inesperados no nos los quita nadie. Hemos tenido bugueado el archivo de savegame durante semanas, pero al final conseguimos arreglarlo. Ahora ya sí podemos decir que tenemos juego de verdad.
  • Selección de idioma (español e inglés). La versión 4.7. de Unreal viene con una mejora en el tratamiento de archivos de Excel, y gracias a esto, hemos implementado un sistema para textos en inglés y español. Para añadirlos, solo hay que escribir el texto en su casilla correspondiente de la tabla de Excel, et voilà!. (Necesita unos pequeños ajustes porque da algunos problemas con caracteres españoles, pero es un buen avance).
  • Pruebas con partículas. Hemos sustituido los cubos con texturas feas del minijuego por unas bolas de partículas muy fashion. No es definitivo, porque tras unas cuantas pruebas decidimos darle un aspecto 2D (ya para el siguiente hito). Por otro lado, también hemos sustituido el tubo de nuestro láser de seguridad por unas partículas mucho más realistas.

MinijuegoHito3Minijuego Hito 3

MinijuegoHito4Minijuego Hito 4

(Está fatalmente encuadrado en la pantalla, pero como ya comentamos, es una prueba y la vamos a descartar, así que tampoco pusimos extremo cuidado.)

  • Mejora del hackeador. Inclusión de mensajes de ayuda y conexiones entre objetos hackeables y sus terminales para desactivarlos. No son mejoras absolutas, pero vamos avanzando poco a poco con el hackeador. Tras varios testeos, nos hemos dado cuenta de que la gente necesita usarlo para algo más que ver dónde están los guardias. Por eso, hemos decidido añadir mensajes para que el jugador se pueda elaborar mejor su estrategia para superar el nivel.
  • Códigos aleatorios. Antes nos pasábamos los niveles a la velocidad de la luz porque nos sabíamos de memoria el código de la puerta final. Peeero, ya se acabó el hacer trampa porque ¡tenemos generación aleatoria de códigos cada vez que empieza un nivel!.
  • Añadido de cinemáticas. Es un añadido puramente estético y de hecho no sabemos si lo mantendremos (no queremos marear demasiado a los jugadores), pero por ahora le da un toque más atractivo al juego.
  • Algunos bugs arreglados (cámara de vigilancia, armarios…). Nuestra lista de bugs cada vez es más grande. Los vamos arreglando a la velocidad que podemos, pero aun así queda mucho por hacer.
  • Decisiones de diseño (guardias, aspecto minijuego, conducto de ventilación). Ahora que ya está todo casi listo podemos empezar a ajustar y sobre todo, recortar. Por lo pronto vamos a descartar la mecánica del conducto de ventilación, porque nos estaba dando más problemas de la cuenta. Además pensamos que era mejor dejar las mecánicas ya implementadas y pasar a mejorar el juego en lugar de seguir implementando. El tiempo se agota y más vale cortar en el momento justo que lamentarnos más tarde.

¿QUÉ FUE MAL?

Aunque, en general, este mes nos ha ido bastante bien, los problemas son inevitables.

  • Todavía quedan bugs. (Y cada vez encontramos más…)
  • Tenemos nuevos sonidos, pero seguimos sin música. (Y claro, luego viene Youtube y nos avisa de que tenemos música con copyright en nuestro vídeo)
  • Seguimos con un minijuego. 
  • Mecánicas y features que necesitan pulido. Dejamos esta en último lugar porque en realidad el pulido es lo normal a estas alturas. Y de hecho, seguro que cuando las mejoremos nos quitaremos muchos bugs de golpe. 

OBJETIVOS PARA EL PRÓXIMO HITO

  • Mejorar aspecto visual general.
  • Añadir opciones configurables (menú opciones).
  • Hacer más minijuegos/variaciones (ahora sí).
  • Seguir incorporando assets.
  • ¡Hacer niveles! (tutorial incluido).
  • Conseguir música.

Estamos muy contentos con el avance de Hacked pero no podemos dormirnos en los laureles porque el próximo hito… ¡Nos vamos a la GameLab 2015!. Vamos a trabajar muy duro durante estas semanas para dejarlos a todos con la boca abierta en la GameLab, jejeje.

¡Un abrazo a todos los que nos apoyáis! ¡Nos vemos en la próxima entrada!

Resumen Hito 3 [24/04/15]

Estamos bastante contentos con los resultados obtenidos en este hito. Si el anterior fue de aprendizaje, este ha sido totalmente de implementación, mejoras visuales y optimización de código.

OBJETIVOS

  • Perfeccionar dispositivo de hackeo (estilo visual y funcionalidades).
  • Terminar de implementar todas las mecánicas de objetos hackeables.
  • Implementar sistema de habitaciones bloqueadas.
  • Terminar de implementar todos los comportamientos de los guardias.
  • Empezar la implementación del primer minijuego.

¿QUÉ FUE BIEN?

¡Todo!… nah, es broma, jeje, pero la verdad es que en general las cosas fueron bastante mejor que en anterior hito. ¡Hacked va cogiendo forma!

  • Nuevo recluta en modelado 3D. Al principio solo contábamos con un miembro del equipo dedicado al 3D, pero siendo un juego totalmente en 3D era necesario que alguien más ayudara. Ahora sí que podemos decir que somos 3 programadores y 2 modeladores 3D.
  • Todas las mecánicas principales implementadas. Tenemos láser y cámara de seguridad, luces, puertas, lógica de habitaciones bloqueadas, armarios, terminales hackeables (de hackeo simple o vinculados a minijuego/código), sistema de emails y códigos funcionales. Necesitan pulido, pero al menos ya están casi todas añadidas.
  • IA completa. Y muy personalizable. Hemos añadido total personalización para cada uno de los guardias que queramos añadir al nivel (número de waypoints de la patrulla, tiempo de espera y dirección de rotación en cada waypoint). Además ya reaccionan a luces encendidas/apagadas (y van a dejarlas como estaban) y se alertan si el jugador atraviesa un láser o cámara de seguridad.
  • Gran avance en postprocesado (estilo visual del dispositivo de hackeo). O del hackeador como nosotros le llamamos. Después de mil pruebas con materiales de postprocesado, luces, sombras, postprocesado de cámara, tonalidades de color, materiales varios, y un largo etcétera, conseguimos dar con la clave para darle un aspecto más vistoso a nuestro dispositivo de hackeo. Evidentemente dista mucho de ser perfecto, pero al menos tiene algo más de personalidad jaja (lo iremos perfeccionando poco a poco).

DispHackeoHito2

 Dispositivo de Hackeo Hito 2

DispHackeoHito3

Dispositivo de hackeo Hito 3

  • ¡Nivel jugable!. Con todas las mecánicas implementadas lo único que quedaba era montar el nivel de principio a fin. ¡Y funciona! (eso sí, necesita un equilibrado bestial, aunque no lo parezca, nuestros guardias son demasiado listos -o más bien parece que tengan superpoderes-).
  • Tenemos diseñador de sonido, animador y ¡hasta traductor/corrector estilístico!. Gracias a contactos cada vez tenemos más colaboradores.
  • Minijuego. Aunque le queda mucho, tenemos el primer esbozo de un minijuego.
  • Efectos de sonido. Como podréis apreciar en el gameplay, hemos añadido algunos efectos de sonido provisionales para ir dándole otro aspecto al juego. Los pasos de los guardias lo hacen cuanto menos inquietante.
  • Pruebas de iluminación. Hemos estado probando con varios tipos de iluminaciones. Ya que nuestro juego transcurre durante la noche, queremos darle un aspecto oscuro, pero evitando un efecto Amnesia (oscuridad total). Tampoco queremos que los jugadores piensen que los guardias los van a matar jeje (ay, qué mal estoy xd).

¿QUÉ FUE MAL?

  • Problemas con el tileado. Resulta que hasta este momento no nos habíamos dado cuenta de la importancia de un nivel tileado. Nuestro tutor se quedaba un poco extrañado cada vez que le comentábamos que las cosas no nos encajaban bien, hasta que un día nos preguntó si estaba tileado… la respuesta obviamente fue no. Inmediatamente tuvimos que ponernos manos a la obra y reconstruir el nivel en base a tiles. Con esfuerzo, se replanteó el nivel una vez más y se ajustó todo a tiles de 100×100. ¡Ahora encaja todo a la perfección!.
  • Aumento en la complejidad de la programación. Aquí llegan los blueprints una vez más. Para algunas cosas son muy útiles y rápidos, pero para otras se pueden ir un poco de las manos. Nosotros tenemos el código entero en blueprints de Unreal Engine 4, y aunque lo ordenamos con muchos comentarios, funciones y demás, hay cosas más complejas que no están implementadas en blueprints de Unreal Engine 4 y requieren auténticas triquiñuelas para sacarlas.
  • Rehacer código viejo. De la mano de lo anterior, hemos aprendido mucho en estos meses trabajando con el motor y cuando vemos las primeras cosas que hicimos nos llevamos las manos a la cabeza.
  • Baja temporal en el equipo. El ordenador de nuestro compañero Alfonso pasó a mejor vida y eso significa que no puede hacer nada.

MUESTRA DE GAMEPLAY

¡Y aquí el tan esperado vídeo!

Espero que se aprecien los avances. El nivel está construido de principio a fin, pero fuimos cortándolo para que no se hiciera eterno.

OBJETIVOS PARA EL PRÓXIMO HITO

  • Pulir mecánicas y arreglar bugs.
  • Terminar minijuego y crear más tipos/variaciones.
  • Darle un empujón a los assets.
  • Integrar menús en el flujo de juego (iniciar el juego en el menú principal, guardar y cargar partida y elegir entre varios niveles).
  • Añadir sonido y música definitivos.

Hasta aquí el resumen del Hito 3 de Hacked. ¡Nos vemos en la próxima entrada!

Resumen Hito 2 [13/03/15]

Primero de todo tenemos que disculparnos por esta larga ausencia de las redes sociales, pero hemos estado muy liados con los proyectos y prácticamente no hemos tenido tiempo para subir nada. ¡Mil perdones!

Y ahora sí, os dejamos con el resumen del ya tan lejano hito 2.

El pasado 13 de marzo tuvo lugar el Hito 2 del Máster. Ya nos dejamos de prototipos y nos metimos de lleno en la acción para empezar a darle forma a nuestro juego.

A grandes rasgos, este fue un hito de decisiones y aprendizaje. Todavía estábamos aprendiendo a manejarnos con el motor y además nos dimos cuenta de que había detalles del diseño que no estaban tan cerrados como pensábamos, por lo que la mayoría del tiempo se fue en lo que parecían “tonterías”. (Moraleja: una buena preproducción es CLAVE, y además lo hemos comprobado por nosotros mismos).

OBJETIVOS
Para este hito nos propusimos:

  • Añadir interfaces y menús.
  • Terminar de implementar mecánicas (hackeo, cámaras de seguridad, láseres, luces).
  • Decidir la cámara definitiva.
  • Añadir feedback a objetos interactuables.
  • Definir más o menos un estilo visual para el nivel.

QUÉ FUE BIEN

  • Biblia de Arte para definir un estilo visual. Por fin definimos un estilo que más o menos nos gustaba a todos. Además, que es lo más importante, añadimos los modelos de la protagonista y de los guardias (aunque estos últimos necesitan más retoques).
  • Cámara definitiva. En el prototipo la cámara estaba situada a 90º, pero no nos terminaba de convencer. Después de muchas pruebas nos decantamos por una cámara a 75º, con la que se aprecia mejor la geometría del nivel y en general queda todo mucho más vistoso.
  • Avance con la implementación de mecánicas. No nos dio tiempo de implementar todas las mecánicas que nos propusimos (que básicamente eran todas). Entre otras cosas, añadimos la mecánica de hackear luces, nuevos comportamientos de los guardias y áreas de hackeo (a puertas y terminales).
  • Geometría definitiva del nivel. Paredes, suelos, puerta y materiales para estos. Lo más notable son las puertas, ya que tuvimos que cambiar el diseño para que quedase mejor con la vista de nuestro juego.
  • Interfaz y Menús. Tal y como nos planteamos, añadimos las versiones iniciales de unos menús, hechos totalmente con los widgets de Unreal Engine 4 y blueprints (y gracias a esto también descubrimos que en la version 4.6 del Unreal Engine, los widgets tenían muchíiiisimos bugs).
  • Feedback objetos interactuables y vista del dispositivo. Esto va de la mano con las interfaces y menús, pero añadimos el dispositivo de hackeo y un feedback visual para que el jugador sepa con qué objetos puede interactuar y si está o no dentro del área de hackeo.

QUÉ FUE MAL

  • Poca documentación específica de Unreal Engine 4. Al trabajar exclusivamente con blueprints, hay muchas mecánicas con las que literalmente nos quebramos el cerebro para poder implementarlas. Afortunadamente tardando más o menos, siempre las logramos sacar.
  • Mucho tiempo decidiendo el aspecto final de la cámara y del nivel. Pues eso, decidimos el aspecto final de estas cosas, pero si no nos dio tiempo de hacer más cosas fue porque empleamos DEMASIADO tiempo en esto. Qué le vamos a hacer.
  • Rehacer UI por falta de conocimientos de programación. Estuvimos probando mil formas de hacer interfaces pero nunca resultaban como era debido. Un consejo, NUNCA copiéis tutoriales de Youtube sin entender lo que estáis haciendo, a la larga pasa factura. Y nada, debido a esto, tardamos un poco más en ponernos con las interfaces, lo bueno es que ya sabemos lo que estamos haciendo y no necesitamos tutoriales de Youtube.
  • Problemas al migrar elementos implementados en el nivel del hito 1 al definitivo. Esto también nos supuso un graaan retraso. Parecía que todo estaba muy bien programado de forma que pudiésemos hacer muchos niveles, pero no, no lo estaba y al crear uno nuevo se destrozó todo. Tocó cambiarlo casi todo para que funcionara mejor.

MUESTRA DE GAMEPLAY

En este hito tuvimos problemas hasta con el vídeo. Lo tuve que grabar en mi ordenador, ese que comentaba en el hito 1 que está ya un poco antigüillo, y el pobre Hacked sufrió bajada de fps.


Y hasta aquí el resumen del Hito 2. ¡Nos vemos en la próxima entrada!

Resumen Hito 1 [06/02/15]

El pasado viernes 6 de febrero tuvo lugar el Hito 1 de los proyectos del Máster de Diseño (los de programación tuvieron su Hito 2). En este momento, nuestro proyecto no llevaba activo ni un mes, ya que lo empezamos a la vuelta de navidades (8-9 de enero).

OBJETIVOS
Para este Hito 1 nos propusimos:

  • Terminar el Documento de Diseño Ampliado (GDD).
  • Diseñar Minijuegos.
  • Prototipar un nivel jugable con:
    • IA básica (guardia).
    • Mecánica de interactuar al hacer click.
    • Vista general del mapa (dispositivo hackeador).
  • Modelo de la protagonista.

Durante el mes de enero nos fuimos reuniendo todas las semanas para concretar las mecánicas en el GDD y diseñar un nivel para prototipar junto con algunas mecánicas básicas. De esta forma podíamos comprobar que el juego resulta divertido. Tuvimos unos 25 días para dejar todo esto listo antes del Hito 1 (no contamos los días que estuvimos en la GameJam).

PROGRESO
Tras este primer mes de vida de nuestro proyecto, el día 6 de febrero teníamos:

  • Terminada segunda versión del GDD. Con todas las mecánicas definidas y, en general, todo el funcionamiento y características del juego.
  • Terminado diseño de minijuegos. Intentamos no “inspirarnos” demasiado en otros puzles de este estilo ya existentes, así que era necesario elaborar un pequeño documento con las mecánicas de estos puzles y dónde serían utilizados en nuestro juego.
  • Nivel prototipado exitosamente. Basándonos en un nivel diseñado sobre papel, logramos prototipar exitosamente el prototipo jugable:
    • Todo el nivel está construido con BSPs (las geometrías que trae por defecto Unreal Engine 4), excepto puertas y terminales que se modelaron desde 0, y lo decoramos todo con materiales de manera totalmente aleatoria (realmente lo que queríamos era probar que las mecánicas funcionaban).
    • Implementamos una inteligencia artificial básica para los guardias: patrullan y si nos ven se lanzan a por nosotros hasta que nos pierden de vista, volviendo a retomar su patrulla.
    • Finalmente, también implementamos las mecánicas de interactuar con puertas y terminales haciendo click con el ratón, y una primerísima versión de la vista de la tablet o “hackeador” (así lo llamamos hasta que se nos ocurra un nombre mejor). Con todo esto, nos quedamos bastante satisfechos con nuestro prototipo.
  • Protagonista diseñada. Necesitábamos tener lista a Alexandra cuanto antes ya que nos van a ayudar con las animaciones, así que nos pusimos manos a la obra y dejamos listo un primer modelo de la prota.

¿QUÉ FUE BIEN Y QUÉ FUE MAL?
En este punto del proyecto ya podíamos hacer un pequeño balance de lo que fue bien y lo que fue mal:

BIEN:

  • Terminamos todo lo que nos propusimos.
  • Equipo multidisciplinar. Esto no estaba planeado desde el principio, pero nos está viniendo muy bien en el proyecto. A pesar de que todos queremos ser diseñadores, cada uno viene de un área distinta (uno de informática, otro de diseño 3D y tres de audiovisuales -y decir audiovisuales es decir muuuuchas áreas distintas, creedme-). Esto nos ha servido muchísimo, ya que las dudas que surgían las resolvíamos entre nosotros mismos.
  • Trabajo regular todas las semanas. Este punto es evidente pero clave. Si no hay trabajo regular el proyecto no avanza.
  • Unreal Engine 4. Maravilloso motor, pero aún más maravilloso es el hecho de poder programar visualmente, con los blueprints. Como ya he dicho, cuatro miembros del equipo venimos de campos alejados de la programación. Solo es necesario tener la mente abierta y entender un poco cómo funciona la lógica de la programación para poder ponerte a “programar” con blueprints, consiguiendo que las cosas funcionen. La satisfacción es indescriptible. Eso sí, que nadie se piense que Unreal Engine 4 nos hace las cosas solito, que buenas horas nos hemos tirado tratando de hacer funcionar tonterías.

MAL:

  • Coordinación SVN. ¿Hay algún informático en la sala?…. vuelvo a repetir que solo un miembro del equipo tiene formación en informática, y bueno, el resto no habíamos visto en nuestra vida todo el tema de repositorios online y esas cosillas. Así que, como era de esperar, la liamos un poquito al subir cosas al SVN. Por suerte, no ocurrió nada grave.
  • Unreal Engine 4. Todo lo bueno tiene su lado “malo”. En nuestro caso, acabábamos de empezar con este motor y teníamos que aprender para hacer cualquier cosa. Por un lado, nos ralentizaba con el propio proyecto, pero viendo el lado positivo, estamos aprendiendo un montón de cosas del motor, que estamos seguros nos vendrán muy bien en el futuro.
    • Y siguiendo dentro de Unreal Engine 4 hubo otra cosa que no fue del todo bien: los BSPs. Las malditas geometrías estas son muy útiles para prototipar, pero saturan cualquier ordenador más normalito (para hacernos una idea, en un ordenador sobremesa con una AMD Radeon HD 6570 de 2Gb, y 6Gb de RAM, el prototipo sufría una bajada de frames que lo hacía prácticamente injugable). Es gracioso que en este ordenador pueda jugar fluidamente a Metro: Last Light (aunque en mínimo), pero a nuestro prototipo no. Al menos esto nos sirvió para sacar otro punto clave: ¡optimización!.

MUESTRA DE GAMEPLAY
Y finalmente llegamos al momento más esperado de todo el hito: ¡la muestra de gameplay!.

Vídeo 1:
En este vídeo podemos ver las mecánicas de interactuar con puertas y terminales, la IA de los guardias y el primer esbozo de la vista del “hackeador”.

Vídeo 2:
Este segundo vídeo lo editamos en clave de humor para enseñar un poco mejor el comportamiento de los guardias, ya que en el anterior no se apreciaba demasiado. Básicamente, si te ven, te siguen hasta que te pierdan de vista.

Y hasta aquí el desarrollo de Hacked hasta el Hito 1. Nos queda relativamente poco para el próximo (13 de marzo), donde esperamos enseñar muchas cositas nuevas (¡y definitivas!, se acabaron los prototipos).

¡Nos vemos en la siguiente entrada del blog!