Devlog #6 – Football Legends: Seis meses de desarrollo en Unity
Mirando el historial de estos seis meses, es curioso ver cuánto puede cambiar un proyecto en relativamente poco tiempo. Lo que empezó como una nueva base para Football Legends fue incorporando poco a poco pantallas, sistemas y herramientas hasta convertirse en algo mucho más parecido al juego que tengo en mente.
No todo el trabajo ha sido añadir nuevas funcionalidades. También ha habido bastante tiempo dedicado a conexión, errores, refactors, rendimiento y documentación. Algunas de esas tareas son prácticamente invisibles para el jugador, pero han terminado siendo igual de importantes que las nuevas pantallas.
Por eso creo que merece la pena detenerse un momento y recorrer el desarrollo mes a mes, para ver no sólo qué se añadió, sino también cómo fue cambiando el enfoque del proyecto durante este periodo.

Enero · Construyendo la base
El desarrollo comenzó construyendo buena parte de la infraestructura que necesitaba Football Legends. Durante este mes se construyó el flujo de registro, se integraron Google y Firebase y se empezó a conectar Unity con el servidor para obtener información real del equipo y su división.
También empecé a crear los primeros componentes reutilizables de UI Toolkit y a definir la estructura general sobre la que se construirían las futuras pantallas.
Fue un mes de mucho trabajo interno, pero fundamental para que el resto del proyecto pudiera crecer sobre una base común.
📌Hitos:
- Primera versión del proyecto Unity.
- Flujo de registro de nuevos usuarios.
- Integración con Google/Firebase.
- Comunicación inicial con el servidor.
- Datos dinámicos para el registro del equipo.
- Primeros componentes reutilizables de UI Toolkit.
- Primeras pruebas de autenticación en dispositivos.
Febrero · Conexión y estabilidad
Febrero estuvo mucho más centrado en hacer que la aplicación fuese robusta.
Se desarrolló el nuevo sistema de conexión, incluyendo comprobación del servidor, pérdida de conexión y reconexión automática. También se creó el Network Overlay para informar al usuario de los problemas de red y se mejoró el sistema de logging.
Hacia el final del mes empezó además a tomar forma la estructura visual de la aplicación principal.
Fue un mes con menos funcionalidades visibles, pero importante para dejar preparada una aplicación capaz de gestionar correctamente los problemas habituales de un juego online.
📌Hitos:
- Nuevo sistema de gestión de conexión.
- Detección de pérdida de conexión.
- Sistema de reconexión.
- Comprobación de disponibilidad del servidor.
- Gestión de errores de red.
- Network Overlay para informar al usuario.
- Mejoras del sistema de logging.
- Soporte de conexión durante las pruebas en Unity Editor.
- Primera estructura de la interfaz principal.
Marzo · El juego empieza a tomar forma
En marzo Football Legends empezó a parecerse mucho más a un juego de gestión.
Office y Squad comenzaron a evolucionar como pantallas funcionales conectadas a datos reales. La plantilla empezó a mostrar información detallada de los jugadores, incluyendo posición, edad, nacionalidad y otros datos localizados.
También apareció uno de los sistemas más característicos del proyecto: los rostros dinámicos de los jugadores. Las diferentes partes de la cara se descargan, almacenan en caché y combinan para generar la apariencia de cada jugador a partir de los datos del servidor.
A partir de aquí, las diferentes piezas del proyecto empezaron realmente a trabajar juntas.
📌Hitos:
- Primera evolución funcional de Office.
- Desarrollo de Squad.
- Información detallada de jugadores.
- Posiciones, edades y nacionalidades.
- Banderas dinámicas.
- Integración progresiva de la localización.
- Primer sistema dinámico de rostros.
- Descarga, composición y caché de caras.
- Mayor integración entre datos del servidor y UI.
- Primeras pantallas conectadas entre sí.
Abril · Player Profile y mercado
Abril estuvo marcado principalmente por el desarrollo de la pantalla Player Profile.
Los jugadores pasaron a tener una pantalla propia con información más detallada, atributos y nuevas opciones de gestión. También se incorporó el Radar Chart para comparar sus características y se empezó a trabajar en el estado de mercado, incluyendo jugadores transferibles y cedibles.
El mercado comenzó además a conectarse con Squad y Player Profile, dando los primeros pasos hacia una gestión más completa de la plantilla.
Durante este mes también instalé BookStack y empecé a utilizarlo como documentación interna del proyecto. Con el crecimiento de los sistemas, disponer de un lugar donde guardar y consultar esta información empezó a resultar cada vez más útil.
📌Hitos:
- Nuevo sistema Player Profile.
- Información detallada de jugadores.
- Atributos y estadísticas individuales.
- Comparación mediante Radar Chart.
- Selección y gestión del dorsal.
- Estado de mercado del jugador.
- Primeras operaciones de venta y cesión.
- Integración del mercado con Squad.
- Nuevo servicio y estructuras de datos para el mercado.
- Instalación de BookStack.
- Inicio de la documentación interna del proyecto.
- Nuevos componentes reutilizables para formularios y UI.
Mayo · Ordenar para seguir creciendo
Después de varios meses añadiendo sistemas, mayo fue principalmente un mes de reorganización y mejora.
Player Profile recibió un refactor importante: la lógica de mercado, dorsales, lesiones y Radar Chart (comparador de jugadores) se separó en componentes independientes. Squad también recibió mejoras de interacción y rendimiento.
Uno de los cambios más interesantes fue la precarga de los rostros de los jugadores, evitando que las caras tuvieran que descargarse y componerse mientras se estaba navegando por la plantilla.
También se creó la pantalla de Settings, con selección de idioma y temas claro/oscuro.
No fue el mes con más novedades visibles, pero sí uno de los que más ayudó a preparar el proyecto para lo que viene después.
📌Hitos:
- Gran refactorización de Player Profile.
- Separación de lógica de mercado, dorsal, lesiones y Radar Chart.
- Mejora de interacción de Squad.
- Mejoras de scroll y selección de jugadores.
- Precarga y caché de rostros.
- Reducción de cargas visibles y problemas asíncronos.
- Nueva pantalla Settings.
- Selector de idioma integrado.
- Preferencias persistentes.
- Sistema inicial de temas claro/oscuro.
- Refactorización de estilos.
- Correcciones del sistema de localización.
- Mejoras generales de arquitectura y mantenibilidad.
Junio · El club empieza a tomar forma
En junio el foco empezó a desplazarse del jugador hacia el club y el manager.
Se desarrolló Club Manager, incorporando información del equipo, fecha de registro y nuevos elementos de personalización. También se creó un sistema para generar dinámicamente el avatar del usuario y otro para construir los escudos de los equipos.
Office comenzó además a utilizar información real de los rivales y de los próximos partidos, mostrando sus escudos y preparando una visión más completa del calendario.
Aunque fue un mes con menos commits, varias de las funcionalidades desarrolladas fueron importantes para ampliar la experiencia más allá de la plantilla.
📌Hitos:
- Nueva pantalla Club Manager.
- Información del club y fecha de registro.
- Sistema de apariencia del usuario.
- Descarga y caché de apariencia.
- Sistema dinámico de escudos.
- Shield Composer y Shield Cache.
- Información de rivales.
- Nuevo endpoint para obtener próximos rivales.
- Calendario de partidos ampliado.
- Integración de rivales en Office.
- Escudos dinámicos en las pantallas.
- Localización completa de Club Manager.
- Mejoras visuales y correcciones de assets.

Mirando hacia adelante
Mirando ahora estos seis meses en conjunto, resulta curioso comprobar que el desarrollo ha seguido un camino bastante más definido de lo que parecía mientras estaba ocurriendo.
Primero hubo que construir la base. Después hacer que la aplicación pudiera conectarse y recuperarse de los problemas de red. Más tarde llegaron las primeras pantallas realmente funcionales, la gestión de jugadores y un inicio de mercado. Y, poco a poco, el foco empezó a ampliarse desde los jugadores hacia el manager y el propio club.
Muchas de las decisiones tomadas durante estos meses no tienen una representación especialmente llamativa en una captura de pantalla. Refactors, sistemas reutilizables, mejoras de rendimiento, documentación interna o herramientas para facilitar el desarrollo no son precisamente las partes más vistosas de hacer un juego, pero empiezan a marcar una diferencia importante cuando el proyecto crece.
También creo que es interesante que el resultado de estos seis meses no sea simplemente una colección de pantallas nuevas. Las diferentes partes empiezan a depender unas de otras y a formar un mismo sistema. Los jugadores tienen sus datos, esos datos aparecen en la plantilla, pueden consultarse individualmente, empiezan a participar en el mercado y, finalmente, todo esto forma parte de un club que el usuario puede gestionar.
Todavía queda muchísimo por hacer y probablemente habrá más cambios de dirección, refactors y problemas por el camino. Pero llegar a este punto me permite mirar el proyecto de una manera diferente a como lo hacía en enero.
Football Legends ya no es solamente una base sobre la que empezar a construir.
Poco a poco empieza a convertirse en el juego que quería construir.

