Fleet Commander Pacific
Rescaté un juego de estrategia naval a mitad del desarrollo tras la marcha del programador anterior. Construí multijugador, IA y herramientas para el diseñador mientras desenredaba el código heredado.
Resultados clave
- Asumí el código tras la marcha del desarrollador anterior a mitad de proyecto
- Implementé la sincronización multijugador para el combate naval
- Publicado con sistema de mando de flota con IA en tiempo real
El contexto
Fleet Commander: Pacific es un juego de estrategia naval diseñado por Philippe Thibaut, el legendario diseñador detrás de Europa Universalis y otros títulos de gran estrategia. Es un juego de mesa digital que recrea el combate naval de la Segunda Guerra Mundial.
Entré para el rescate. El desarrollador anterior se había ido a mitad del proyecto y había dejado una base de código sin documentación, con referencias rotas y problemas de .gitignore que provocaban la pérdida de archivos .meta de Unity. Antes de poder construir nada nuevo, tuve que desenredar lo que ya existía.
Mi rol
Como programador principal trabajando directamente con Philippe, toqué casi todos los sistemas del juego: mecánicas de gameplay, multijugador, IA, herramientas de diseñador, audio y efectos visuales.
Qué construí
Sistema multijugador
Combate naval por turnos sincronizado entre jugadores usando Mirror:
- Modelo de replicación de cliente para sincronización fiable de estado
- Integración con Steam para matchmaking y transferencia de archivos
- Resolví problemas de serialización que inicialmente rompían el guardado/carga a través de la red
IA de mando de flota
La IA necesitaba comandar flotas enteras de forma inteligente, gestionando:
- Toma de decisiones estratégicas para posicionamiento de flotas
- Priorización de objetivos y lógica de combate
- Maniobras a nivel de barco y control de fuego
Los jugadores comentaban que la IA parecía un rival de verdad, no un script predecible.
Herramientas para el diseñador
Philippe necesitaba iterar rápidamente en el balance del juego y el contenido. Construí herramientas que le permitieron:
- Ajustar estadísticas de barcos y escenarios sin tocar código
- Probar cambios al momento durante sesiones de diseño
- Centrarse en diseñar en vez de esperar soporte del programador
De todo un poco
Con un equipo pequeño, tocaba hacer de todo:
- Mecánicas de gameplay core y nuevos sistemas
- Implementación de audio
- Efectos de partículas y pulido visual
- Corrección continua de bugs y estabilización
El reto
Trabajar con código heredado implicó que no siempre podía escribir el código que quería. Algunas decisiones venían condicionadas por lo que ya existía. La clave no era solo crear funcionalidades nuevas: era decidir con pragmatismo qué arreglar, qué esquivar y qué publicar.
Resultados
- 40+ barcos funcionando de forma fluida en batalla
- Publicado en Steam Early Access
- Colaboración con un diseñador legendario en un género nicho que me apasiona