videojuego
(Para ver mi perfil tรฉcnico e intereses, consulta Incursiรณn en los videojuegos.)
Explora los proyectos de videojuego en los que he trabajado en mi formaciรณn y personalmente.
Pincha en Detalles para ver el proceso de desarrollo de cada uno.
Nota: Algunas imรกgenes a continuaciรณn se presentan en menor resoluciรณn para proteger los proyectos.
(Utiliza las miniaturas para saltar a cada proyecto. Regresa a las miniaturas con el icono de grilla amarillo, abajo-derecha)
2WAYBACKDOOR
(Prueba de implementaciรณn en AGS)

Caracterรญsticas desarrolladas:
- Guiรณn literario
- Bocetos (manuales y digitales)
- Animaciรณn 2D
- Nivel (Creacion dentro del motor)
- Movimiento del personaje
| Gรฉnero | Aventura grรกfica: Point&Click |
| Pรบblico | +12 |
| Estilo visual | 2D Pixel |
| Caracterรญsticas | Diรกlogo, Inventario, Objetos, Puzzles, Desplazamiento, Point&Click / Teclado |
| Motor | AGS |
| Estado | Preproducciรณn / Prueba de Implementaciรณn |
Necesitaba hacer una primera internaciรณn en el terreno tรฉcnico de la implementaciรณn y la programaciรณn, pues no tenรญa los conocimientos necesarios para encarar un proyecto por mi cuenta. Despuรฉs de indagar en las opciones de motor al alcance, y teniendo en cuenta las referencias de otros videojuegos, decidรญ que utilizarรญa AGS (Adventure Game Studio) para iniciar unas pruebas del proyecto en estilo pixel-art. Segรบn los resultados de mis bรบsquedas y la presencia de una comunidad activa, serรญa una opciรณn con la que comenzar a hacer unas pruebas.
Escribรญ unas cuantas pรกginas de un primer guiรณn. En ellas se narraba, casi a modo de secuencia cinematogrรกfica, el inicio de una trama con la que comenzarรญa el videojuego: 2 personajes estรกn destinados a encontrarse para destapar una historia de acciรณn, real pero desconocida, cuyo telรณn de fondo es tejido por grupos de poder, tecnologรญas y el propio destino de las personas.

Guiรณn (Introducciรณn de la historia)
Hice algunos bocetos en papel y varias pruebas de dibujos y animaciones pixel-art para acompaรฑar al texto.




Bocetos y esbozo digital de uno de ellos [Photoshop]




Boceto de escena y versiรณn digital del cartel que figurarรญa en ella (con animaciรณn) [Photoshop]

Animaciรณn 2D de personaje e implementaciรณn [PixelEdit – Photoshop – AGS]
Tambiรฉn hice algunas pruebas de implementaciรณn de un personaje en AGS (walkable areas, walkbehind areas, mouse cursor, actions inventory). Estaba satisfecho con estas primeras pruebas que me servirรญan posteriormente, de modo que dejรฉ en el cajรณn esta primera idea para continuarla en otro momento. Como prueba inicial del motor AGS y como medida de mis habilidades, fue una experiencia breve y vรกlida.
El valor aรฑadido de este trabajo es el hecho de que lo hice con mi hija de 10 aรฑos.
WHERE’S THE PARADISE?
(Este proyecto se encuentra aรบn en estado de desarrollo)

Caracterรญsticas desarrolladas:
- Documento de diseรฑo de juego
- Guiรณn literario (2 episodios)
- Descripciรณn de personajes
- Diรกlogo
- Storyboard
- Diagramas (trama, objetivos, niveles, personajes)
- Bocetos (personajes, 25 / entornos, 40)
- Animaciรณn 2D
- Nivel (creaciรณn dentro del motor, 13)
- Movimiento en/entre niveles
- Programaciรณn(niveles, hotspots, objetos, diรกlogo)
| Gรฉnero | Aventura grรกfica: Point&Click |
| Pรบblico | +16 |
| Estilo visual | 2D Pixel |
| Caracterรญsticas | Diรกlogo, Inventario, Objetos, Puzzles, Desplazamiento, Point&Click / Teclado |
| Motor | AGS |
| Carga productiva | 3 episodios / +60 pantallas / +20 personajes |
| Estado | Preproducciรณn / Prueba de Implementaciรณn |
| Tiempo de desarrollo | 4 meses |
Debido al interรฉs de algunos colegas por colaborar conjuntamente en una historia, me puse a trabajar en algo fresco y atractivo, mรกs ajustado a nuestras preferencias de jugadores de aventuras grรกficas clรกsicas (aventura, puzzles y sarcasmo), y que estarรญa ambientada en tiempos modernos.
La historia se divide en 3 episodios, relacionados pero independientes, y estรก enfocada en grupo de chavales inmaduros que se enfrenta a la novelesca, y nada usual, situaciรณn de toparse con el paraรญso en medio de su cotidianeidad y de sus sueรฑos adolescentes. Los temas de fondo son el crecimiento juvenil y la resoluciรณn de un extraรฑo misterio.
El juego serรญa un “point & click” de 2 acciones con la opciรณn de controlar a mรกs de un personaje, de estรฉtica 2D pixel-art. Deberรญa incluir diรกlogos e inventario. El motor: AGS. El desarrollo comenzarรญa por el episodio 2 (MCPPM).
Trabajar en este proyecto me sirviรณ, fundamentalmente, para entrenar en el trabajo de diseรฑo y documentaciรณn del juego durante el estado de pre-producciรณn.

Considero que existen unas definiciones bรกsicas para comenzar a crear la estructura de un juego: la esencia de la trama, el espacio y el momento en que se desarrolla, y los personajes que aparecen con sus historias. Para encarar el proyecto con calidad en calidad en la forma de trabajar es recomendable ordenar todo desde el inicio, sobre el papel.
Los primeros pasos se centraron en definir a grosso modo estas cuestiones para poder elaborar un guiรณn inicial sobre el que basar el trabajo. Definรญ los momentos clave de la trama, las conexiones e incohrencias entre ellos y sus detalles particulares (mapas, objetos, eventos, etc…).






Esquemas y Preguntas y Respuestas pertenecientes al Brainstorming
Este guiรณn entra en los detalles de las historias de los personajes (de dรณnde vienen, cuรกl es su situaciรณn actual, cรณmo se van relacionando entre ellos…) y explica las razones por las cuales suceden las cosas.

Breve ejemplo del guiรณn subdividido en secuencias detalladas y concretas
Pasรฉ del esquema en papel a los diagramas digitales planteando asuntos como las escenas, los objetivos, las relaciones entre los personajes…






Escenas y Objetivos del juego [Office – yEd – XMind]


Relaciones entre personajes y sus historias personales [XMind]
Tambiรฉn dediquรฉ un tiempo a definir los mapas en los que se sucederรญan las escenas. Crear un mapa de escenarios conectados y vinculados a una historia aรบn parcialmente indefinida no fue tarea simple, pero รฉste fue el resultado:


Escenarios con sub-escenarios (mapas). Versiรณn de texto y versiรณn codificada (para ser llamados por cรณdigo) [Office]


Diagramas del Mapa completo de escenarios. Versiones comprimida y expandida [XMind]


Diagramas del Mapa completo de escenarios. Versiones alternativas con mรกs detalles [yEd]
Una vez que la estructura principal estaba definida, era hora de hacer una aproximaciรณn al arte del videojuego.
Comencรฉ haciendo bocetos a mano de los personajes, de manera que pudiese agregar algo de identidad al proyecto. Aquรญ presento algunas imรกgenes:



















































Bocetos de personajes
Despuรฉs realicรฉ una prueba de transformaciรณn de uno de los personajes a pixel-art, y creรฉ un ciclo de animaciรณn:



Transformaciรณn de 1 personaje. Fotogramas de ciclo de animaciรณn y animaciรณn de movimiento lateral [Photoshop – PixelEdit]
A continuaciรณn, iniciรฉ la labor de plasmar la idea de los escenarios, que despuรฉs serรญan dibujados digitalmente. El entorno estรก parcialmente basado en localizaciones reales, por lo que abordรฉ esta tarea mediante 2 mรฉtodos complementarios: por un lado, utilicรฉ imรกgenes satelitales y de Internet para obtener vistas aรฉreas y fotografรญas de referencia; por otro, realicรฉ el “scouting” de las zonas, sacando mis propias fotografรญas de los detalles que me interesaban. Combinรฉ esta informaciรณn recopilada con “bocetos de memoria” y con mis propias ideas para crear las primeras imรกgenes de los escenarios, buscando encuadres y estรฉtica (en esos mismos dibujos se desarrollarรญan las tramas ya definidas en el guiรณn):
































































Bocetos en papel y bocetos digitales de algunos escenarios [Photoshop]
En el momento de hacer una prueba de implementaciรณn hay ciertas limitaciones importantes a considerar. Principalmente, es el hecho de que los personajes se moverรกn sรณlo por zonas especรญficas, dibujadas a mano sobre el mapa o fondo (walkable area). Lo mismo sucede con las zonas en las que los personajes estarรกn enmascarados por el mapa o fondo, como pasar por detrรกs de un รกrbol (walkbehind area). La limitaciรณn reside en que, si el mapa no es el definitivo, es posible que haya que redibujar estas zonas una y otra vez, cada vez que se altere el mapa (por ejemplo, al agregar una puerta o una farola, o al modificar el suelo de la escena). Lo mรกs razonable, sobre todo si se trata de muchos mapas, es no dibujarlas hasta disponer de los fondos con las รกreas definitivas definidas (aunque sean bocetos inacabados aรบn).
Dado que aรบn no disponรญa de estas imรกgenes, pero querรญa hacer pruebas de implementaciรณn en AGS, decidรญ utilizar las fotografรญas en las se basarรญan los dibujos finales de los mapas, e incluir algรบn dibujo si ya lo tuviese encaminado. Podrรญa empezar a programar y mรกs tarde me podrรญa dedicar a mejorar el arte, pero ya teniendo algunas funcionalidades en marcha. Tambiรฉn decidรญ utilizar al personaje por defecto de AGS (Roger).
Prueba de implementaciรณn: Recorrido por los mapas [AGS]
Prueba de implementaciรณn: Hotspots, Objetos, Diรกlogos [AGS]
Paralelamente, fuimos conversando con los compaรฑeros sobre la precuela de este episodio (el que serรญa el episodio 1), y haciendo algunos avances sobre la trama.

Personalmente, pensรฉ en cรณmo podrรญa crear un nivel que enriqueciese la jugabilidad dentro del gรฉnero “aventura grรกfica”, explorando ideas para favorecer a la experiencia del jugador. El nivel serรญa un bucle, cuyos puzzles serรญan la “llave de salida”. Otra vez sobre el papel, planteรฉ el diseรฑo de un nivel en el que resolver 4 รณ 5 puzzles para poder avanzar, y que introdujese al jugador en la historia personal de uno de los personajes protagonistas.

Tambiรฉn hice algunos bocetos de los momentos clave y los escenarios:
























Bocetos en papel de algunas escenas y escenarios
Para finalizar, aunque es un trabajo continuo durante todo el desarrollo, debo mencionar el ejercicio de documentaciรณn. Reunรญ toda la informaciรณn que se fue generando en un documento de diseรฑo organizado, maquetado e indexado del que poder disponer durante el desarrollo del juego para consultar las definiciones del proyecto, o cualquier informaciรณn relevante, y que seguirรญa actualizรกndose.
Adjunto a este documento, fui creando otros para tener reporte de revisiones, cambios, incoherencias, errores… que iba registrando mientras trabajaba.



Ejemplos de documentos de trabajo generados para el desarrollo del juego
WELCOME TO MYST MOUNTAIN
(Este proyecto se encuentra aรบn en estado de desarrollo)

Caracterรญsticas desarrolladas:
- Guiรณn tรฉcnico (jugabilidad, textos)
- Diagramas (trama, objetivos, niveles)
- Bocetos (entornos, interfaz)
- Recursos (gestiรณn assets)
- Niveles (creaciรณn dentro del motor, 5)
- UI/UX (menรบs, HUD)
Programaciรณn Blueprints:
- Objetos
- Triggers
- UI
- Niveles
- Game Instance
- Temporizador
- Linterna
- Inventario
- Radio
- Reiniciar nivel
- Expresiรณn del personaje
- Mensajes narrativos
- Mensajes del jugador
- Puzzle Laberinto
- Puzzle Items
- Puzzle Fรญsicas
- Puzzle Conducciรณn
- Sonido y Mรบsica de fondo
- Efectos de cรกmara
- Nadar y bucear
| Gรฉnero | Aventura grรกfica: Point&Click, 3ยช persona, Conducciรณn, Primera persona |
| Pรบblico | Todos |
| Estilo visual | 3D estilizado |
| Caracterรญsticas | Contrareloj, Objetos, Inventario, Puzzles, Exploraciรณn, Conducciรณn, Desplazamiento, Point&Click / Teclado |
| Motor | Unreal Engine 4.27 |
| Carga productiva | 5 niveles / 4 personajes |
| Estado | Demo |
| Tiempo de desarrollo | 2 semanas |
El momento de Unreal Engine habรญa llegado. De hecho, el momento de EMPEZAR.
Como proyecto final del primer curso que hice de Creaciรณn de videojuegos con Unreal Engine, naciรณ “Welcome to Myst Mountain“.
Objetivo alcanzado:
- Mi idea en esta primera incursiรณn era aprender, y aprendรญ mucho mรกs que lo bรกsico. Con este proyecto hice una primera toma de contacto con Unreal Engine y aprendรญ lo esencial en la creaciรณn de un videojuego con este motor y a moverme dentro de ese entorno.
- Aunque faltaban algunas configuraciones para obtener un producto cerrado y entregable, el juego podรญa probarse de principio a fin con sus funcionalidades.
- Como reto personal, me propuse hacer varios niveles en los que reinase un modo de juego diferente: point and click, conducciรณn, tercera persona y primera persona. De este modo, me permitirรญa echar un vistazo a las generalidades de cada uno de ellos, y enfrentarme al Game Mode.
Algunas notas:
- el tiempo de desarrollo fue muy escaso: apenas 2 semanas, de un curso de 6 semanas de duraciรณn).
- el curso estaba mรกs orientado a la modalidad FPS (shooter en primera persona)
- utilicรฉ la versiรณn 4.27 de Unreal Engine (estaban lanzando la versiรณn 5). Recientemente, migrรฉ el proyecto a la versiรณn 5, y algunas cosas dejaron de funcionar. [la carga en la web de medios actualizados queda pendiente por el momento]

Historia: La historia trata de un desarrollador de videojuegos que recibe una extraรฑa misiรณn la noche anterior a una importante entrevista de trabajo, mientras prepara su portfolio para la misma. Lo que no sabe es que la misiรณn “encargada” esconde una importante sorpresa. Por otro lado, la trama se apoya en una antigua leyenda sobre unos famosos diskettes perdidos…
Guiรณn tรฉcnico:

Guiรณn tรฉcnico de las escenas que corresponden a cada nivel

Detalles y notas sobre configuraciones a ser implementadas
Hice varios planteamientos iniciales en el cuaderno antes de cerrar el concepto y concretรฉ lo mรญnimo necesario para tener definidas las escenas o niveles.
Transcribรญ esta informaciรณn en formato digital, ahondando en los detalles y definiendo la nomenclatura que utilizarรญa.
Los campos de este cuadro me permitirรญan localizar los detalles importantes de cada escena:
- Modo de juego
- Checkpoint
- Escenario
- Movilidad
- Hotspots
- Inventario
- Interacciรณn/Acciรณn
- Animaciรณn/Estados
- Sonido
- HUD

Tabla definitiva del guiรณn tรฉcnico
Mensajes del HUD: Por otro lado, al existir un importante componente de narrativa y aventura, dediquรฉ un tiempo a pensar y ordenar todos los mensajes de texto que irรญan guiando la trama y serรญan presentados en el HUD
Los mensajes de texto fueron ordenados considerando las siguientes categorรญas:
- Hotspots (nombre, descripciรณn, acciรณn, sรณlo 1 vez)
- Items de Inventario (nombre, descripciรณn, acciรณn, destinos vรกlidos, actualizaciรณn , sรณlo 1 vez)
- SMS (mensajes recibidos)
- Personaje (expresiones, sรณlo 1 vez)
- Jugador (mensajes de juego)
Todos los mensajes de texto se ordenaban por escenas y por orden de apariciรณn, y estaban vinculados entre las categorรญas. Posteriormente, a la hora de la implementaciรณn, todos los mensajes fueron almacenados en variables de tipo string (array) para ser llamados en el momento oportuno.

Tabla con todos los textos que aparecen en el juego
La producciรณn: Debido al escaso tiempo de desarrollo, utilicรฉ los recursos (herramientas y funcionalidades) propios del motor Unreal Engine, asรญ como packs y objetos 3D de Internet de uso libre, que referenciรฉ debidamente en la pantalla de crรฉditos.
En otros, simplemente, coloquรฉ los objetos y configurรฉ las cรกmaras, luces y texturas.
El juego se compone de 5 niveles, uno de los cuales se visitarรญa en 2 momentos y situaciones diferentes. Aquรญ se ven algunos ejemplos:




























Algunas capturas de los niveles
Por รบltimo, resumo las caracterรญsticas implementadas mediante cรณdigo en los blueprints:
| Caracterรญsticas de juego | descripiciรณn |
|---|---|
| Timer | Cuenta regresiva de tiempo reflejada en el HUD que lleva al Game Over al llegar a 0. Valor almacenado en Game Instance |
| Linterna | Luz vinculada al personaje y controlada mediante la orientaciรณn del mismo |
| Inventario | Relaciรณn de objetos recogidos por el jugador necesaria para el desarrollo de los puzzles (sistema no visual). Valores almacenados en Game Instance |
| Radio | Tracklist de canciones controlables por el jugador en la modalidad de Conducciรณn |
| Reiniciar nivel | Input mediante tecla de Reinicio del nivel en la modalidad de Conducciรณn cuando el vehรญculo queda atascado |
| Menรบ | Sistema de pantallas de Menรบ de Inicio, Pausa, Game Over para acceder a los puntos de inicio o final del juego, o detener el juego en curso |
| Puzzle Laberinto | Puzzle basado en la bรบsqueda de una รบnica salida dentro de un entorno cerrado y del que se pueden utilizar pistas para salir del mismo |
| Puzzle Items | Puzzle basado en la necesidad de conseguir cierto nรบmero de items relacionados con la trama para poder avanzar en el nivel. Valores almacenados en Game Instance |
| Puzzle Fรญsicas | Puzzle basado en la interacciรณn del personaje con el entorno y los objetos (movimiento, salto, desplazamiento, …) |
| Puzzle Conducciรณn | Puzzle basado en la conducciรณn de un vehรญculo (direcciรณn, acelerador, freno, freno de mano) desde un origen hasta un destino por un recorrido de diferentes dificutades |
| Hotspots | Sistema de obtenciรณn, y presentaciรณn en el HUD, de informaciรณn del entorno y los objetos mediante la interacciรณn con el cursor del ratรณn o de un raytrace |
| Expresiรณn del personaje | Sistema de presentaciรณn en el HUD de las opiniones y reacciones del personaje ante los sucesos o la exploraciรณn del entorno y del juego |
| Mensajes narrativos | Sistemas de presentaciรณn en el HUD de textos narrativos de los tipos “narrador” u “otro personaje” |
| Mensajes al jugador | Sistema de presentaciรณn en el HUD de textos informativos para el jugador acerca del juego |
| Modo Point and Click | Modo de juego basado en el movimiento y las acciones de un personaje en tercera persona, a cรกmara fija, controlados mediante el ratรณn |
| Modo Conducciรณn | Modo de juego basado en el control de un vehรญculo, a cรกmara dinรกmica exterior, mediante el teclado |
| Modo Tercera persona | Modo de juego basado en el movimiento y las acciones de un personaje en tercera persona, a cรกmara dinรกmica, controlados mediante el ratรณn y el teclado |
| Modo Primera persona | Modo de juego basado en el desplazamiento y salto de un personaje en primera persona, controlados mediante el ratรณn y el teclado, con raytrace para interacciรณn |
| Mรบsica y Sonido de fondo | Sistema de mรบsica con transiciones configurado para cada nivel. Sistema de sonidos de fondo con atenuaciรณn lanzados segรบn la situaciรณn |
| Efectos de cรกmara | Efectos de movimiento de cรกmara en el Modo Conducciรณn y efectos visuales dentro del agua |
| Nadar y bucear | Simulaciรณn de efecto acuรกtico segรบn la situaciรณn y configuraciรณn de controles acordes a la misma |
| Game Instance | Sistema de guardado y lectura de datos entre niveles para la continuidad de ciertas caracterรญsticas del juego |
GRAFFO-WAR
(Este proyecto se encuentra aรบn en estado de desarrollo)


Caracterรญsticas desarrolladas:
- Guiรณn tรฉcnico (jugabilidad, textos)
- Diagramas (niveles, blueprints, desarrollo, objetos, animaciones, hotspots, eventos, acciones)
- Bocetos (entornos, interfaz)
- Recursos (gestiรณn assets)
- Niveles (creaciรณn dentro del motor, 3)
- UI/UX (menรบs, HUD)
| Gรฉnero | Aventura 3ยช persona, Conducciรณn |
| Pรบblico | Todos |
| Estilo visual | 3D realista |
| Caracterรญsticas | Contrareloj, Objetos, Inventario, Puzzles, Exploraciรณn, Conducciรณn, Movimiento |
| Motor | Unreal Engine 5.1 |
| Carga productiva | 3 niveles / 4 personajes |
| Estado | Demo |
| Tiempo de desarrollo | 4 semanas |
Programaciรณn Blueprints:
- Triggers de Eventos/Textos
- HUD
- Niveles
- Game Instance
- Temporizador
- Lanzar / Coger
- Explorar hotspots
- Interactuar
- Pintar graffiti
- Capacidad respiratoria
- Linterna / Minimapa
- Lugar de recarga
- Lugares seguros
- Lugares para graffiti
- Inventario
- Reiniciar vehรญculos
- Puzzle conducciรณn
- Puzzle graffiti
- Puzzle Androide
- Puzzle bodega (2)
- Puzzle alarma
- Puzzle cartel
- Sonido y Mรบsica de fondo
- Blueprint animaciรณn y blendspace
- Comportamientos IA (routine, patrol, chase, attack, arrest)
- Expresiรณn del personaje
- Mensajes narrativos
- Mensajes al jugador
“Graffo-War” es el resultado del proyecto final de mi segundo curso de formaciรณn en Unreal Engine.

Pantalla de Menรบ principal
El curso durรณ 12 semanas (aprox.), de las que 4 semanas (aprox.) se destinaron a la producciรณn del proyecto final. Con tan poco tiempo, no estuvo de mรกs adelantarse, a nivel personal, en la bรบsqueda de la idea y en el trabajo de pre-producciรณn. Para nada.
Objetivo alcanzado:
- Dedicar un tiempo previo a realizar un trabajo de pre-producciรณn consistente para definir en detalle los lรญmites del proyecto, me permitiรณ conocer en todo momento la relaciรณn tiempo-objetivos-producciรณn.
- Uno de los primeros parรกmetros de trabajo que me establecรญ para la producciรณn fue el de comenzar por las mecรกnicas, de modo que ubiquรฉ al final del calendario las fases de arte y de creaciรณn de niveles, y me centrรฉ en la programaciรณn desde el primer momento.
- Aรบn con varios detalles que pulir, conseguรญ realizar un Build del proyecto en tiempo y forma.
- Adquirir mayor soltura con los blueprints y visual scripting estaba entre mis objetivos primordiales, lo cual alcancรฉ con creces, entendiendo en mayor profundidad la lรณgica detrรกs de esta forma de programar, creando mis propias funciones y solucionando por mi cuenta todos los problemas que fueron surgiendo.

– Hmmm…!
Condiciones del proyecto (directrices a las que ajustarse, pautadas por el curso):
- Tipo de juego: Tercera persona (libre elecciรณn del personaje)
- Niveles: 2 niveles de mundo abierto (1.5 kmยฒ cada nivel) + 1 nivel cerrado con iluminaciรณn interior
- Coleccionables: Objetos que se recojan y que actualicen su contabilizaciรณn en el HUD
- IA: NPCs con varios comportamientos, influidos por la presencia del Jugador, y al que puedan perjudicar
- Ataque: Jugador debe disponer de un sistema de ataque
- Checkpoint: Se cargarรก la รบltima partida si se alcanza Game Over
- Puzzles: 4 puzzles (pulsadores, baldosas, combinaciรณnโฆ) – 2 puzzles por nivel
- Splash-Screen: Animaciรณn, video o imagen antes del menรบ del juego
- Menรบ: Comenzar partida, Salvar/Cargar partida, Opciones, Salir
La historia
La protagonista de esta historia debe realizar un graffiti y subirlo a Internet. Es parte de una reivindicaciรณn social dentro del urgente, aunque desigual, debate tecnolรณgico de la actualidad. Transversalmente, se cruzan la trama y el pasado del histรณrico lugar al que ella acude.
Pre-Producciรณn – Idea
Como es habitual, comencรฉ a moldear la historia mediante una lluvia de ideas y algunos bocetos, aunque algunas limitaciones personales (independientes de las pautas del curso) me ayudaron a acotar el รกmbito de bรบsqueda:
- Querรญa que fuese una aventura
- Querรญa basar la historia en un emplazamiento real en el que venรญa pensando
- No querรญa armas sangrientas, ni violencia
- Querรญa conseguir un ambiente solitario, nocturno y con niebla
- Querรญa una historia que mezclase tecnologรญa de tiempos modernos con historia de siglos pasados
- Querรญa introducir la importancia de la expresiรณn artรญstica


Primera idea lรบcida de lo que podrรญa ser el juego

Algunas ideas que tenรญa en el bolsillo
Pre-Producciรณn – Investigaciรณn
Realicรฉ un pequeรฑo trabajo de investigaciรณn de la estรฉtica que estaba buscando, tanto en Internet (videojuegos, pelรญculas, …), como haciendo mi reportaje fotogrรกfico del lugar en dรญas y noches de niebla. Tambiรฉn conversรฉ con gente del lugar y leรญ algunas historias que pudiesen ayudarme a conducir la trama en algรบn aspecto.

Libro de anรฉcdotas histรณricas sobre el lugar en el que se inspira el juego [Alfonso S.M.]

Notas mรกs relevantes de orientaciรณn de la producciรณn


Detalles de la estructura del juego y del nivel principal
Pre-Producciรณn – Documentaciรณn
Unifiquรฉ toda la informaciรณn en un documento de diseรฑo en el que definรญa aquello que aparecerรญa o sucederรญa en el juego, ademรกs de referencias al estilo de entornos o personajes.


Una versiรณn del Documento de Diseรฑo
Traduje las ideas iniciales a algo mรกs detallado y ordenado mediante diagramaciรณn digital, profundizando todo lo posible en las definiciones a las que me limitarรญa durante la producciรณn, y evidenciando las dependencias entre ellas, de manera que pudiese evaluar la repercusiรณn de los recortes que fuesen necesarios por falta de tiempo.
desarrollo
objetos
hotspots
eventos
actionsNPC
blueprints
animation
actionsPlayer
Diagramas de Diseรฑo: DESARROLLO – OBJETOS – EVENTOS – HOTSPOTS – BLUEPRINTS – ACTIONS – ANIMATION [yEd]
Tambiรฉn pensรฉ en los textos que debรญan aparecer en pantalla en cada situaciรณn del juego, y los organicรฉ por categorรญas en un cuadro (mensajes de juego, de nivel, del personaje y de los NPCs).

Versiรณn temprana de la Tabla de textos HUD
Un calendario reunรญa las tareas de desarrollo. De este modo, pude hacer un cรกlculo de la viabilidad del proyecto. El calendario contiene categorรญas cruzadas de ACCIรN y PRODUCTO:
- ACCIรN:
- DOCUMENTACIรN
- PRODUCCIรN
- DISEรO
- UX
- PROGRAMACIรN
- MODELADO
- TEXTURIZADO
- ANIMACIรN
- ILUMINACIรN
- AUDIO
- PRODUCTO
- DOCUMENTO
- PROYECTO
- NIVEL
- OBJETO
- PERSONAJE
- UI
- SONIDO

Calendario de categorรญas cruzadas
Las tareas se actualizaban a diario, de acuerdo a su nivel de avance. El calendario permite realizar balance de cargas cuando algunas tareas tienen un desfase, con respecto a los tiempos previstos.
De acuerdo a la carga de trabajo prevista, se hicieron algunos recortes y cambios en la trama y en las bases del juego, que podrรญan ser abordados en iteraciones posteriores.
Producciรณn – Programaciรณn – Personajes
Comencรฉ a trabajar en blockout las funcionalidades que tendrรญan los personajes.
En Graffo-War existen 2 personajes principales, controlados por el jugador, y 2 NPCs.




POLICรA
NPC 2
Asset/Programaciรณn de Unreal Engine 5
Personaje principal: PLAYER/PLAYERcar
| Caracterรญstica | descripiciรณn |
|---|---|
| Movimiento | Andar, Correr, Sprintar, Agacharse, Saltar con cรกmara dinรกmica en tercera persona (WSAD – LShift – LCtrl – LAlt – Spacebar) |
| Mensajes | Mensajes posicionados en el HUD para cada circunstancia |
| Pintar | Pintar graffiti (LMB). Selecciรณn de color (1, 2, 3) |
| Ataque | Lanzar nueces (LMB). Apuntar con cambio a cรกmara cercana (RMB) |
| Alternar modos | Cambio de modo Pintar/Atacar (Mouse Wheel) |
| Examinar | Obtener informaciรณn de zonas/objetos del entorno (hotspots) mediante puntero (MMB) |
| Cรกmara | Alternar entre cรกmaras cercana y lejana (C) |
| Interactuar | Activar eventos en puzzles (I) |
| Smartphone | Encender/Apagar Smartphone con linterna, GPS y consumo de baterรญa (F). Cuando la baterรญa es 0, el Smartphone se apaga y no se puede utilizar. El Smartphone se utiliza al final del juego para realizar una fotografรญa. |
| Pulmones | Cuando PLAYER se desplaza en modo Sprint, comienza a consumir la capacidad respiratoria, lo que disminuirรก la velocidad a partir de ciertos lรญmites. Se repondrรก automรกticamente con el tiempo. |
| Vehรญculo (PLAYERcar) | Acelerar, Frenar, Girar (WSAD/Up-Down-Left-Right) Freno de mano (Spacebar) Luces (L) |
Algunos comportamientos del PLAYER
Personaje NPC1: ANDROIDE (inteligencia artificial)
| Caracterรญstica | descripiciรณn |
|---|---|
| Movimiento | Correr |
| Mensajes | Mensajes posicionados encima de sรญ mismo para cada circunstancia |
| Pintar | Pintar graffiti al pasar por zonas “pintables” |
| Ataque | Lanzar nueces al personaje PLAYER |
| Modo “pintada” | Recorrido aleatorio por un mapa en el que se puede pintar |
| Modo “alerta” | Detiene un tiempo su rutina en ciertas condiciones |
| Modo “evasiรณn” | Movimiento evasivo en ciertas condiciones |
| Modo “ataque” | Ataque al personaje PLAYER en determinadas condiciones |
Algunos comportamientos del NPC ANDROIDE
Personaje NPC2: POLICE (inteligencia artificial)
Nota: De este personaje se hicieron varias versiones para obtener NPC’s con diferentes roles en el juego y comportamientos frente al jugador.
| Caracterรญstica | descripiciรณn |
|---|---|
| Movimiento | Conducciรณn libre y por caminos definidos |
| Mensajes | Mensajes posicionados encima de sรญ mismo para cada circunstancia |
| Modo “patrulla” | Recorrido predefinido pero inteligente por un mapa haciendo patrulla. “Recuerda” si ya viรณ al PLAYER antes. |
| Modo “persecuciรณn” | Recorrido libre, a mayor velocidad, en persecuciรณn del PLAYER |
| Modo “cacheo” | Detener al PLAYER, revisar lo que lleva y proceder acorde a ello |
| Modo “arresto” | Lanzar el Game Over en ciertas condiciones |
| Modo “reinicio” | Auto reinicio de la posiciรณn y de la velocidad del coche para evitar quedar atascado en su movimiento |
Algunos comportamientos del NPC POLICรA
Producciรณn – Programaciรณn – Eventos
EVENTOS: Estas son algunas caracterรญsticas que le dan juego y vida al entorno:
| Caracterรญstica | descripiciรณn |
|---|---|
| Recarga de baterรญa | Zona de carga automรกtica de la baterรญa del Smartphone mientras PLAYER permanezca en la zona. La interacciรณn con esta zona es debidamente informada en el HUD, asรญ como tambiรฉn son reflejados en tiempo real los cambios sobre el nivel de baterรญa (porcentaje y 3 colores). |
| Lugar seguro | Zona segura en la que no es posible que PLAYER sea detectada por los NPC POLICรA. La interacciรณn con esta zona es debidamente informada en el HUD. |
| Pared para PLAYER | Zona en la que PLAYER podrรก hacer el graffiti, y NPC ANDROIDE podrรก “pisar la pintada”, y asรญ repetidamente. La interacciรณn con esta zona es debidamente informada en el HUD. |
| Paredes para ANDROIDE | Zonas en las que NPC ANDROIDE harรก automรกticamente su pintada, y en las que PLAYER deberรก borrarla, y asรญ repetidamente. |
| Pintadas | PLAYER deberรก borrar con 1 color especรญfico todas las pintadas de NPC ANDROIDE para poder pasar de nivel (esta informaciรณn se gestiona desde Game Instance). PLAYER sรณlo podrรก pintar el graffiti con 3 colores en el orden indicado, y eso permitirรก avanzar hacia el final del juego. |
| Botes de spray | PLAYER deberรก recoger latas de pintura de 3 colores diferentes de diferentes lugares de los mapas. PLAYER necesitarรก estas latas para realizar su graffiti y para borrar las pintadas de NPC ANDROIDE. PLAYER tambiรฉn podrรก perder, en diferentes circunstancias con NPC ANDROIDE o NPC POLICรA, las latas que haya recogido. PLAYER puede/debe seleccionar la lata de pintura que utilizarรก en cada caso. La lata seleccionada y la cantidad de pintura restante se reflejarรกn en el HUD. Cada vez que se adquiere una lata nueva, se cambia al modo pintura y se selecciona la lata adquirida automรกticamente. La informaciรณn sobre las latas de pintura y los textos programados en relaciรณn a ellos, se muestran en el HUD en el evento que corresponde. |
| Nueces | PLAYER podrรก recoger y lanzar nueces que le servirรกn para 2 propรณsitos fundamentales: quitarle a NPC ANDROIDE sus latas de pintura, e inhabilitar la cรกmara de seguridad de la puerta de la bodega. Las nueces que se lanzan se pueden recoger. La interacciรณn con las nueces es debidamente informada en el HUD |
| Fรญsicas | Ciertos elementos han sido configurados con fรญsicas y gravedad para aportar realismo a ciertos eventos. |
Algunos Eventos














Algunos Eventos del juego
Producciรณn – Programaciรณn – Mensajes
MENSAJES: Existen diferentes mensajes que se muestran en el HUD, segรบn el origen y la circunstancia:
| TIPO de mensaje | descripiciรณn |
|---|---|
| Mensaje de juego | Mensajes de introducciรณn, progreso y finalizaciรณn del juego, a modo de voz narrativa. Incluye tรญtulos. Puede compartir funciones con el personaje virtual que acompaรฑa al personaje PLAYER en todo momento. |
| Mensaje de nivel | Mensajes acerca de las caracterรญsticas que existen o se activan en el juego, y con las que se puede interactuar. Ofrecen informaciรณn al usuario sobre cรณmo proceder. |
| Mensaje de PLAYER | Mensajes en donde el personaje principal, PLAYER, expresa alguna opiniรณn o aporta alguna informaciรณn relevante sobre la situaciรณn, o de utilidad para los puzzles. |
| Mensaje de NPC ANDROIDE | Mensajes de expresiรณn del NPC ANDROIDE cuando se le ataca con nueces. El texto se posiciona siempre sobre el emplazamiento del NPC ANDROIDE, aunque se mueva. |
| Mensaje de NPC POLICรA | Mensajes de aviso y detenciรณn del NPC POLICรA cuando intercepta al personaje PLAYER. El texto se posiciona siempre sobre el emplazamiento del NPC POLICรA, aunque se mueva. |
| Mensaje de HOTSPOT | Mensaje de informaciรณn acerca del objeto o lugar examinado. El texto se posiciona siempre sobre el emplazamiento del HOTSPOT. |
Para agilizar el trabajo de presentar tanta informaciรณn en pantalla mediante mensajes de texto, diseรฑรฉ y fui refinando un sistema de varias funciones. Hablo mรกs sobre el tema en este post.
Producciรณn – Programaciรณn – Puzzles
PUZZLES: Existen varios puzzles que superar durante el juego:
| puzzle | descripiciรณn |
|---|---|
| Puzzle del coche de policรญa | Puzzle de ingenio y de habilidad: Un vehรญculo de policรญa (NPC POLICรA) bloquea el paso al nivel 2. Si la personaje PLAYER se acerca al lugar, es GameOver. Mientras tanto, otros coches de policรญa recorren el mapa. Si cualquier coche alcanza a la personaje PLAYER, es GameOver. La personaje PLAYER debe obligar al vehรญculo a abandonar el lugar y dejar el paso libre para pasar de nivel. |
| Puzzle de la alarma | Puzzle de ingenio: Una alarma se activarรก en varias circunstancias: al pasar frente a la puerta vigilada de la bodega y al errar en el cรณdigo para abrir รฉsta. La alarma se puede desactivar con un interruptor yendo hasta ella, pero la personaje PLAYER puede “desactivar” la cรกmara de seguridad para evitar que la alarma se active cada vez que se acerque a la puerta de la bodega. |
| Puzzle del cรณdigo de la puerta de la bodega | Puzzle de exploraciรณn y deducciรณn: Una puerta con cรณdigo numรฉrico bloquea el paso al nivel 3. Gracias a las informaciones brindadas durante el juego, el jugador deberรก deducir un nรบmero de 4 dรญgitos que le abrirรก la puerta. Errar en el cรณdigo activarรก la alarma. Para crear este puzzle, seguรญ la idea y los pasos de Ryan Laley. |
| Puzzle del pรณster de la protesta social | Puzzle de exploraciรณn y recolecciรณn: Un pรณster de una protesta social, vinculado a la historia del juego, estรก repartido en varios pedazos por uno de los mapas. Recolectarlos todos brindarรก algo mรกs de informaciรณn sobre la historia y ayudarรก en la resoluciรณn de puzzles. |
| Puzzle de vencer al NPC ANDROIDE | Puzzle de exploraciรณn y habilidad: El NPC ANDROIDE estรก pintando graffitis en varios puntos del mapa, y lo hace a toda velocidad. La personaje PLAYER debe borrar todas sus pintadas para detener su acciรณn, acabar con รฉl y hacer avanzar la historia hacia el siguiente nivel. Para ello, la personaje PLAYER debe encontrar la lata de spray adecuada, asegurarse de no perderla en los encuentros con el NPC ANDROIDE o el NPC POLICรA, reponerla si se le agota, y revisar todos los puntos en los que el NPC ANDROIDE puede pintar, ya que รฉste no dudarรก en regresar a pintar de nuevo, aunque su pintada haya sido borrada alguna vez. |
| Puzzle del compartimento secreto de la bodega | Puzzle de tiempo y exploraciรณn: La personaje PLAYER no podrรก abandonar la bodega hasta que ella no encuentre lo que fue a buscar, la lata de spray de color especial. Pero รฉsta estรก escondida en un compartimento secreto ubicado en la oscuridad, y al cual sรณlo podrรก acceder durante un limitado perรญodo de tiempo, y siempre que active el mecanismo que se interpone en medio. |
| Puzzle final: Pintar y Enviar | Puzzle de tiempo y habilidad: La personaje PLAYER deberรก realizar una pintada en un lugar especรญfico, usando los colores en un orden determinado, sin ser interceptado por el NPC POLICรA, ni interrumpido por el NPC ANDROIDE. Ademรกs, deberรก hacer una fotografรญa del mismo cuando lo tenga finalizado, para poder concluir el juego. |
















Algunas capturas de los Puzzles
Producciรณn – Programaciรณn – UI
UI: Tras varias iteraciones de diseรฑo de la UI, decidรญ utilizar la funciรณn WidgetSwitcher para unificar todo lo referente a interacciรณn entre niveles y a visualizaciรณn de informaciรณn en pantalla en un solo blueprint (inclusive las variables con los textos a mostrar en pantalla), y conmutar a la capa que me interesase en cada momento.
En el caso del HUD, al estar todo unificado y ubicado en un mismo lugar, los procedimientos y emplazamientos siempre son los mismos, y la soluciรณn resulta รณptima.














Detalle de la UI: Pantallas de menu y HUD en un solo blueprint
Producciรณn – Niveles
NIVELES: Existen 3 niveles y misiones que completar durante el juego:
| nivel | descripiciรณn |
|---|---|
| Misiรณn 1: los caminos nocturnos | Es un nivel de conducciรณn. El objetivo es llegar al destino indicado sin ser detectado, para lo que se dispone de un sistema GPS que sirva de orientaciรณn. El mapa estรก lleno de coches de policรญa patrullando, que no dudarรกn en seguir al jugador incansablemente al detectarle, aunque se puede escapar de ellos. Habrรก que resolver un puzzle, un obstรกculo en el camino. La primera misiรณn introduce al jugador en la historia y en la ambientaciรณn. |
| Misiรณn 2: el poblado abandonado | En la misiรณn 2, el jugador en tercera persona debe encontrar en un nuevo mapa, unos sprays y un lugar en el que pintar. La misiรณn principal es hacer un graffiti y fotografiarlo. En medio, se cruzan algunas dificultades, como la policรญa o un androide, que pueden entorpecer la tarea, y algunos puzzles que resolver. Por otro lado, el lugar posee una historia que puede aportar algo de informaciรณn. La segunda misiรณn introduce al jugador al personaje principal PLAYER y profundiza en la historia del lugar y de la trama. |
| Misiรณn 3: la bodega real | En la misiรณn 3, el jugador debe encontrar un item faltante en un nuevo mapa. Necesitarรก este item para concluir el juego. |
Al estar basados en emplazamientos reales, creรฉ los 2 primeros niveles a partir de mapeos 3D satelitales que me sirvieron como referencia de escala y posiciรณn.
Para empezar a crear los niveles, moldeรฉ el terreno con la herramienta Landscape de Unreal Engine, y reservรฉ una capa del mismo para modificar el terreno mediante splines, lo que me sirviรณ para crear los caminos. (Utilizar Landscape era otra de las premisas -no escrita- del curso para realizar el proyecto).
Con la tรฉcnica Automaterial pude asignar texturas utilizando la herramienta Paint del Landscape de Unreal Engine, y elegir sobre cuรกles podrรญa esparcir geometrรญa Folliage segรบn mis intereses, ademรกs de ubicar Folliage “a mano” en determinados lugares.




Nivel 1: Referencia satelital y Resultado de la herramienta Landscape + Automaterial




Nivel 2: Referencias satelitales y Resultado de la herramienta Landscape con algunos assets ubicados
Debido al reducido tiempo de producciรณn, todos los assets y texturas que utilicรฉ en las escenas fueron tomados de Quixel y otras fuentes de uso libre, vรกlidos para proyectos como este.
Esta tarea requiriรณ un importante tiempo de bรบsqueda, organizaciรณn, tomando nota de la autorรญa para dar crรฉdito a sus creadores. En cuanto a la preparaciรณn de los assets, en varias ocasiones hubo que realizar conversiones de formato, correcciones en el transform, o en los materiales, las texturas y normales, y en varios casos hubo que desechar los archivos seleccionados por contener errores o convertirse en retos que, simplemente, llevarรญan mรกs tiempo de resolver que diseรฑar desde 0 un modelo nuevo.
Resultados
A continuaciรณn muestro resultados de implementaciรณn en los niveles.




















Nivel 1


































Nivel 2
















Nivel 3














El final del juego
































