Entrevista a Quasar Soft
Con motivo de la celebración la nueva edición de Madrisx & Retro tuvimos la ocasión de
conocer allí a los desarrolladores del que ha sido el juego estrella de este año, Vega
Solaris. Fernando Saénz Pérez y Carlos García Cordero, miembros de Quasar Soft y autores
del mencionado juego, se han prestado a contestar a esta interesante entrevista.
"Todos tenemos un poco de este gusto por lo
antiguo, sobre todo cuando ocurre en una época tan influyente de nuestras
vidas." |
 |
¿Cómo os conocéis y decidís empezar a desarrollar software para Spectrum?
Fernando: Es curiosa la relación entre los videojuegos y el cine en varios
aspectos. Incidentalmente, estaba involucrado en la preproducción de un mediometraje
(Task Computer) aficionado para el que necesitaba software. Nuestros medios eran escasos
y recurrimos a programas copiados en cinta. En aquella época (año 1983) estudiaba primer
curso de Ciencias Físicas y Antonio, el hermano de Carlos y que estudiaba conmigo
Físicas, nos presentó para que me proporcionase estos programas. Con el tiempo y dada mi
experiencia en la programación y nuestra afición por los videojuegos, decidimos crear el
videojuego al que nos hubiese gustado jugar. Como a Carlos no se le daban mal los
gráficos, nos repartimos de ese modo el trabajo, aunque más tarde Carlos demostró una
gran competencia como programador (él es el responsable del juego de marcianitos que
aparece durante la carga del programa). También es responsable de otro par de cosas: el
nombre de Vega Solaris procede del original Bego (una chica conocida de Carlos), pero en
Dinamic pensaron que no era adecuado y Azpiri sugirió este otro. El nombre de Quasar, y
más tarde Eclipse, como grupo son también idea de Carlos.
Carlos: Fernando ya ha contestado casi todo. Sólo añadir que cuando nos conocimos
yo ya tenía la idea del juego y algunos gráficos. En aquella época Fernando estaba
pensando en hacer un juego basado en la película Tron. Estaba con la fase tipo frontón
y quería mejorar los gráficos. Al principio estuvimos ayudándonos mutuamente en nuestros
respectivos proyectos (llegué a hacerle varios gráficos) y al cabo de no mucho tiempo
decidimos centrarnos en Vega.
¿Dónde y cómo adquiristeis los conocimientos informáticos/gráficos necesarios para
crear Vega Solaris?
Fernando: Mi afición por la informática comienza muy temprano siguiendo mi afición
por la electrónica. La revista Elektor publicó un entrenador digital basado en el
Rockwell 6502 que podía construirse con un sencillo circuito dotado de teclado y display
de 7 segmentos, que fue el predecesor del Rockwell AIM65. Creo que costaba alrededor de
5.000 pts de entonces y mis bolsillos no estaban preparados para ello. Curiosa y
coetáneamente, con la consola de juegos Videopac de Philips podía comprarse un cartucho
que permitía la programación en ensamblador. No obstante, por aquel entonces no
comprendía la necesidad de programar un algoritmo de multiplicación en ensamblador si la
propia consola proporcionaba una calculadora. Las instrucciones, escuetas y en inglés,
no ayudaron mucho. Más adelante mi padre me regaló el ZX 81, la verdadera introducción
de la informática doméstica, un lujo con un maravilloso manual de usuario que te hacía
devorar páginas con miedo a que terminase.
Con esta primera época Basic desarrollo las capacidades básicas de programación
(estructuras de control, bucles y rutinas) y hago mis pinitos en código máquina gracias
a un libro inglés sobre programación en ensamblador del Z80. Posteriormente me regaló el
Spectrum, en el que desarrollé la programación en ensamblador y pude exprimirle casi
todos sus recursos. Algunos artículos de las revistas de entonces proporcionaban trucos
y pistas que también me ayudaron en la programación. Como casi todos los programadores
de la época, adquirí estos conocimientos de forma autodidacta. Como anécdota curiosa, en
cuarto curso de Ciencias Físicas me examiné de nociones básicas de programación en
ensamblador. Obtuve simplemente un compensable, es decir, un suspenso con opciones de
hacer media. Mi error fue optimizar el código para tiempo y memoria al igual que estaba
acostumbrado con el Spectrum. Creo que no dedicaron tiempo a analizar mi solución.
Carlos: A mí me gustaban los videojuegos y pintar. Mi padre le regaló un ZX81 a mi
hermano, y acabé usándolo yo. Aprendiendo a usarlo y cómo funcionaba. Como mi padre me
vio afición, me regaló un Spectrum con todos sus colorines :-). Poco a poco me fui
introduciendo en el mundillo leyendo revistas y experimentando. En aquella época no
había Internet y era más difícil conseguir información.
|
Vega Solaris en su versión final |
El proceso de programar el juego fue muy artesanal. ¿De qué medios disponíais entonces
para desarrollar?
Fernando: Casi la totalidad del juego lo desarrollé con el Spectrum y el casete.
Por dar una idea a grandes rasgos y sin que pueda dar fe de estos números, esto
significa que dediqué un 10% a desarrollo y el resto a depuración. Si en pruebas el
juego se colgaba, había que reiniciar, volver a cargar el código ensamblado, los
gráficos, el ensamblador y el fuente que se estaba depurando. Todo ello a 300 baudios.
Es decir, al menos cinco minutos para poder recuperar la situación anterior. En
ensamblador es fácil olvidar o equivocarse en una dirección cuando no se tiene todo el
fuente. El proceso de reubicación de código era un infierno e intentaba evitarlo a toda
costa. Si debido a la depuración alguna rutina se excedía en tamaño, intentaba acortarla
usando otra lógica e instrucciones que ocupasen menos en memoria. En la última época
compré un microdrive y esto agilizaba la carga del ensamblador y de los bloques de
memoria preensamblados. No obstante, no eran muy fiables.
Carlos: Los medios eran un Spectrum y un casete viejo. Pasado cierto tiempo me
regalaron un casete que ¡hasta tenía cuentavueltas!. Yo en aquella época era muy joven y
no tenía mucho dinero.
¿Creéis que con más medios el juego se hubiera acabado antes y hubiera sido mejor? ¿O
pensáis que esa falta de medios os hizo superar las dificultades y ser aún más
perfeccionistas?
Fernando: Con absoluta seguridad puedo decir que un ensamblador cruzado hubiera
acortado el tiempo de desarrollo drásticamente. Sin embargo, dudo que hubiésemos hecho
algo cuantitativamente mejor, ya que nuestro objetivo era claro y creo que lo
alcanzamos. No obstante, todo se puede mejorar, como el sonido, otro tipo de concepción
de los gráficos (otra perspectiva, etc), la inteligencia artificial (IA), etc.
Carlos: Habríamos terminado mucho antes. El proceso de localizar las cosas en la
cinta era lento y muchas veces fallaba la carga, con lo que había que volver a empezar.
Más que hacer algo mejor, habríamos podido hacer más cosas. Habríamos terminado el juego
y podríamos habernos puesto a hacer otros, con planteamientos de inicio más ambiciosos
por lo menos en el apartado gráfico.
En cuanto al diseño de los gráficos, ¿usasteis algún programa para dibujarlos o
recurríais al papel cuadriculado?
Fernando: Mi único papel en el diseño de los gráficos fue contactar con otro amigo
de estudios de la carrera que diseñó el talismán de Vega Solaris, tanto la punta de
flecha completa como su descomposición en fragmentos, igualmente imposibles. Estaban
inspirados en el trabajo de M.C. Escher e hizo un gran trabajo. Lamentablemente no
recuerdo su nombre para hacerle los merecidos honores.
Carlos: Al principio usaba el Melbourne Draw, cuando el programa no daba más de sí
para las cosas que yo quería, empecé a hacerme uno por mi cuenta (con GUI tipo Windows).
Pero luego conseguí el Artist y me encantó, descubrí que era posible salir del programa
sin borrar la pantalla. Con lo que entonces hice un programa que lanzaba el Artist y
luego tomaba el control para tratar los gráficos como a mí me interesara.
Para hacer el mapa, primero me hice uno en papel de alto nivel para hacerme una idea de
la conectividad, por dónde tenían que ir las cosas y cómo distribuir las distintas zonas
(templo, jungla, grutas...). Luego las pantallas las hacía con un programa que escribí
para ello.
Sorprende sobre todo la inteligencia artificial que se le ha dotado al protagonista
controlado por el ordenador, ¿usasteis algún algoritmo de IA propio u os basasteis en
alguno ya existente?
Fernando: El algoritmo de IA es un desarrollo personal y fue muy edificante. Por
su complejidad partí de una descripción de reglas en alto nivel usando pseudocódigo
(lenguaje natural) que "compilé" posteriormente a ensamblador. Realmente, después de
tantos años terminado el desarrollo, cuando vi funcionar el juego de nuevo me sorprendió
el nivel al que se llegó; no tanto por su funcionalidad, sino por haberla podido incluir
en tan poco espacio de memoria. El objetivo, dadas las limitaciones de memoria, fue
crear un oponente lo suficientemente listo como para que te complicase el juego. Como
detalles puedo indicar que no había espacio ni siquiera para conservar memoria del
camino recorrido salvo para unas pocas pantallas y, ni mucho menos, para incorporar un
algoritmo de búsqueda de caminos en un grafo. Me limité a implementar estrategias del
tipo: "Dirigirse en dirección noroeste", "Intentar alcanzar la puerta; si no es posible,
retroceder por un camino diferente", "Si un obstáculo impide tu paso, intentar
sortearlo, si no es posible en un margen de tiempo razonable, renunciar", "Intentar
coger un objeto de interés". Apliqué un sistema de prioridades para coger y usar los
objetos, los de mayor prioridad para coger eran los cristales y, para usar, los que
proporcionaban mayor poder de ataque y defensa. La IA actual de los juegos no es
diferente a la de entonces, la diferencia es que ahora se usan scripting, motores de
inferencia y muchas reglas, pero las reglas siguen siendo fundamentalmente las mismas.
Actualmente se puede modificar la IA y ver los nuevos comportamientos sin necesidad de
recompilar. Entonces había que hacerlo con todos los efectos desagradables que
conllevaba.
Carlos: Esto lo hizo todo Fernando, yo me limité a hablar con él las reglas de
alto nivel que me comentaba por si podía aportarle alguna idea y a hacer de beta-tester.
|
Proceso de carga con minijuego incluido |
Personalmente pude comprobar lo metódicos y ordenados que erais etiquetando, comentado
todo tipo de código en papel, realizando mapas de memoria, etc. Supongo que resultaría
fundamental todo esto para no perderse a la hora de depurar o verificar el
funcionamiento del juego...
Fernando: Intento ser consciente de mis limitaciones, y una de ellas es mi
memoria. Sabía que era fundamental documentarlo todo para atar todos los cabos en un
contexto tan complejo como el desarrollo casero de productos con intención profesional.
Con decenas de variables globales y rutinas con múltiples puntos de entrada y de salida,
es imprescindible llevar buena cuenta de todo ello. Para crear una nueva rutina
generalmente desarrollaba la idea en papel y sólo cuando tenía las cosas claras las
implementaba; y con decir claro me refiero a tener escrita la rutina en papel y
repasada. La depuración era tan frustrante que tenía que asegurarme de acotar el mayor
número de errores.
Carlos: Yo tenía en papel gran parte de las cosas que iba haciendo. Tenía dibujos
de los gráficos en papel para ayudarme a hacer los mapas, aunque con el paso del tiempo
ya me los iba aprendiendo de memoria. Hice menos código que Fernando, pero con la
limitación de medios que teníamos no teníamos más remedio que ser cuidadosos.
¿Teníais algún contacto con Dinamic durante el desarrollo inicial de Vega Solaris? ¿Se
interesaban por el proyecto? ¿Recibisteis algún tipo de ayuda por su parte?
Fernando: Creo que el proyecto estaba suficientemente avanzado cuando le dieron el
visto bueno pero yo tuve pocos contactos con ellos durante el desarrollo. Nos pareció
que el proyecto sí les resultaba interesante, pero no para tirar cohetes o, al menos, es
la sensación que nos transmitieron.
Carlos: Dinamic no intervino apenas nada en el desarrollo del juego, solamente en
el dibujo que hizo Azpiri. Todas las ideas son nuestras para bien o para mal.
Económicamente, Dinamic invirtió muy poco en nosotros. A mí me adelantaron 15.000
pesetas y creo que fue todo lo que nos dieron. En aquella época Dinamic tenía bastantes
proyectos, por lo que sé funcionaban de esta manera, se gastaban poco en ellos, así no
tenían mucho que perder si las cosas iban mal.
¿Os sentisteis presionados tras ver el anuncio del juego Vega Solaris en la revista
Microhobby?
Fernando: El contacto con Dinamic era tan parco que ni siquiera nos avisaron de su
publicación, nos cogió de improviso. Esto nos sorprendió, además considerando que no
habíamos fijado fecha de fin de proyecto ni habíamos firmado ningún contrato. Obviamente
sí fue una obligación moral acabar cuanto antes pero, dado que mientras estudiaba
Físicas estaba además trabajando, mi tiempo era muy limitado.
Carlos: No nos consultaron nada para hacer el anuncio, con lo que fue una
sorpresa. No recuerdo si nos lo dijeron con algo de antelación, supongo que sí. Nosotros
trabajamos todo lo rápido que podíamos, pero hay que tener en cuenta la falta de medios
así como que no era una dedicación plena. Fernando tenía que estudiar en la facultad y
yo en el instituto.
¿Buscasteis más distribuidoras para vuestro juego antes o después que Dinamic? ¿Cuáles
fueron sus respuestas?
Fernando: Que yo recuerde contactamos en primer lugar con Dinamic. Después
hablamos con muchas otras y en general demandaban versiones para otras plataformas que
para nosotros eran inabordables por la falta de experiencia y fundamentalmente por la
escasez de tiempo. Anecdóticamente, algunas nos pidieron los fuentes antes de firmar.
Creo que sólo a una les dejamos una demo.
Carlos: Hablamos con algunas y, en general, el juego gustó. Nos decidimos por
Dinamic, ya que nos ofrecían tratos similares y Dinamic tenía más nombre. A posteriori,
puede que hubiera sido mejor decidirse por una que nos apoyara más en el desarrollo.
Cuando Dinamic os propuso realizar las versiones para el resto de sistemas y no
pudisteis aceptar por falta de tiempo, provocó que Dinamic descartara vuestro proyecto,
¿cuál fue vuestra reacción ante esta decisión?
Fernando: Creo que la bajada de precios del software de 2.500 a 850 pesetas fue
determinante para reducir el presupuesto para el desarrollo de los juegos y nos afectó
directamente. Ante las nuevas condiciones económicas vimos que no compensaba su
publicación e intentamos otras distribuidoras, que resultaron vías también infructuosas.
Añadiendo a esto la exigencia de conversiones para otras plataformas, el juego terminó
no publicándose. La caída de precios afectó a todas las empresas y sólo Dinamic
sobrevivió a aquella época.
Carlos: El trato con Dinamic era muy distante, no es que nos gustara la situación,
pero tampoco nos lo tomamos muy a mal.
¿Cuánto tiempo os ha llevado finalmente el desarrollo de Vega Solaris?
Fernando: Carlos y yo nos conocimos en el año 82. No recuerdo que pasase mucho
tiempo hasta que decidimos hacer el juego. Si contamos que en el 89 aparece firmada la
versión definitiva son alrededor de siete años, pero si contamos que no hemos encontrado
la última versión con el gráfico de la calavera que marca el avance del tiempo y que,
gracias a la ayuda de Miguel García Prada, lo hemos incluido actualmente, pues serían 23
añitos. Esto es lo que diferencia los desarrollos caseros de los profesionales.
|
Fernando (Izquierda) y Carlos durante la
preservación del juego en la pasada Madrisx & Retro
|
En la pasada MadriSX & Retro se pudo recuperar gran parte de las demos, versiones beta
y finales del juego, ¿qué supuso para vosotros que tras casi 20 años, vuestro juego
viera al fin la luz?
Fernando: Es algo que tenía olvidado hasta tal punto que no recordaba parte de la
funcionalidad del juego e incluso de los gráficos y, por tanto, me sentí incluso
sorprendido. En la propia MadriSX & Retro me hicieron una pregunta similar: cómo veía el
juego después de tantos años. Lo primero que contesté fue: primitivo; claro, ha llovido
mucho desde entonces en el mundo de los videojuegos, aunque la pregunta iba más por
estos otros derroteros.
Pero mi mayor reacción ha sido la de alegría y satisfacción de que personas como Josetxu
Malanda, Juan Pablo López-Grao, José Manuel Claros, Miguel García Prada y Santiago
Romero hayan hecho posible su difusión y hayan creado nuevos materiales. Dada la
expectación que provocó me siento obligado a aportar todo lo que esté en mi mano
proporcionar, como los mapas de memoria, los fuentes e incluso pensar en una versión e
instrucciones en inglés para nuestros colegas internacionales. En verdad me siento
sorprendido y halagado de que el juego haya sido tan bien acogido actualmente.
Carlos: Ha sido una gran sorpresa y estoy encantado, estoy muy halagado de que
haya tanto interés. En cuanto a la versión beta (más bien una alpha, ya que era bastante
primitiva) que estaba corriendo por ahí, esa versión la pasé yo a PC, no pude pasar la
última debido a la carga especial que hice. Sin embargo sólo se la di a Fernando, se la
enseñé a alguno que otro amigo y ya está. Como era una versión tan primitiva nunca
pensamos en publicarla. No sabemos cómo llegó a distribuirse por Internet. Supongo que
como tengo juegos de Spectrum en CDs, debí de prestar ese CD a alguien, ese alguien a
otro alguien... y así llegó hasta un alguien que la reconoció.
Por otro lado, en este evento, pudisteis comprobar en persona cómo se encuentra
actualmente el mundo de la retroinformática, ¿qué impresión os dio? ¿Conocíais de
antemano algo del mundillo: emuladores, nuevo software, nuevo hardware...?
Fernando: Fue una sorpresa encontrar a tanta gente y tan bien preparada en este
mundo. Aunque conocía algún emulador, no era completamente consciente de este movimiento
retro hasta mi asistencia a MadriSX & Retro'2005. Creo que todos tenemos un poco de este
gusto por lo antiguo, sobre todo cuando ocurre en una época tan influyente de nuestras
vidas.
Carlos: Conocía algo de emuladores. Tengo afición a los emuladores aunque
últimamente lo sigo menos. No obstante, nunca había estado en una feria y ha sido muy
agradable encontrarse con gente con tantas ganas y tanto interés por aquellos tiempos.
Ambos, de un modo u otro, seguís o habéis estado ligados al tema de la programación de
software, ¿la experiencia con el Spectrum fue determinante para haceros seguir por este
camino?
Fernando: Mi primer programa lo escribí en el Videopac de Philips (1979), mi
último programa lo retoqué la semana pasada (2005). Entre estas dos fechas he programado
asiduamente usando múltiples plataformas, desde ordenadores domésticos a mainframes. Aún
actualmente, como profesor titular de Universidad, sigo en ello, aunque se supone que
quizás no debería. Tenía relativamente claro mis objetivos formativos desde temprano. El
Spectrum fue la máquina en la que desentrañé la arquitectura de un procesador y, por
tanto, anticipadora de conocimientos que fundamentaría más adelante. El desarrollo de
Vega Solaris sobre el Spectrum fue una tarea ardua que se completó por tres motivos
fundamentales: era el juego al que más nos hubiese gustado jugar, suponía un desafío y
era/soy un empecinado. Se puede decir que fue una piedra en el camino, pero una piedra
muy importante.
Carlos: Aunque no llegáramos a comercializar el juego, la experiencia fue muy
positiva. Te sientes muy orgulloso cuando ves moviéndose algo en lo que has estado
trabajando durante bastante tiempo y encima la gente a la que se lo enseñas le gusta.
Desde luego la experiencia no fue negativa para dejar el mundo de la programación de
videojuegos. Luego he seguido en ese mundillo durante bastantes años aunque en la
actualidad, por circunstancias, ya no lo esté. Trabajar con Fernando fue muy agradable y
creo que conseguimos sacar adelante algo muy interesante.
|
Horace y Fernando posando para la posteridad |
Gracias por atendernos y, especialmente, por haber mantenido guardado todo este
material sobre Vega Solaris. Simplemente, si queréis añadir o decir algo a nuestros
lectores, este es vuestro espacio...
Fernando: Retomando el tema del cine que mencioné al principio de la entrevista,
quisiera incidir en la relación entre ambos medios, no sólo por el interés o fascinación
que pueden presentarse simultáneamente por ambos. En la pasada mesa redonda "Historia
del videojuego en España" que se celebró en abril de 2005 en la Universidad de Zaragora
y hablando con Gonzalo Suárez (alias Gonzo, autor de Commandos y fundador de Pyro
Studios, la empresa española de videojuegos con mayor impacto internacional) vi que él
también tiene sus raíces en el cine. Observando las producciones recientes en
videojuegos, se hace evidente que en las presentaciones se elabora material
cinematográfico en el que participan elementos tales como el montaje, la narrativa, el
guión, el ritmo, la banda sonora y los efectos sonoros. Esto se extiende al videojuego
en sí y somos testigos de aventuras cada vez más parecidas a películas interactivas.
Mi participación más activa en el desarrollo de un videojuego de orientación profesional
ha sido Vega Solaris; sin embargo, he estado y estoy relacionado con proyectos gráficos
y videojuegos a lo largo de mi carrera, aunque a partir de entonces relegados a un
segundo plano. En concreto he dirigido algunos proyectos de sistemas informáticos de la
Ingeniería de Informática de la UCM como simuladores de vuelo de helicóptero y un
videojuego en primera persona del tipo shoot'em up. Los simuladores los desarrollamos
por una parte en C++ y DirectX y por otra con Simulink sobre Matlab y el paquete de
realidad virtual. También participo en un proyecto del Departamento de Arquitectura de
Computadores y Automática para el control automático de vuelo de helicópteros a escala,
para el que hay que desarrollar el software de simulación, control y construir la
mecánica de la maqueta. Colaboramos en este proyecto con el Instituto de Automática
Industrial del CSIC (Centro Superior de Investigaciones Científicas), que actualmente ha
desarrollado una plataforma para llevar a cabo las mediciones de parámetros físicos de
la maqueta con objeto de incorporarlos en el simulador de vuelo.
Finalmente quisiera indicar mi participación en el máster en desarrollo de videojuegos de
la UCM, que se imparte en colaboración con Pyro Studios. Mi papel en este máster es la
dirección de un proyecto que llevan a cabo tres alumnos. El proyecto está inspirado en
la película (otra relación entre videojuegos y cine) Minority Report y en el primer hito
de abril los alumnos han presentado un ejecutable del juego que consiste en carreras de
coches magnéticos que circulan por cualquier superficie, ya sea suelo, pared con
cualquier inclinación o techo. Este ejecutable ya es jugable y causa adicción, signo de
que el proyecto, cuando termine, tiene visos de ser muy interesante. Como colofón,
quisiera recalcar la importancia que tiene presentar un proyecto cerrado (un videojuego
que funcione) a los (pocos) empresarios de videojuegos en nuestro país si queremos
trabajar en ello, como así coincidimos por ejemplo con Gonzo.
Para saber más, se puede consultar http://www.fdi.ucm.es/profesor/fernan/fsp/
Carlos: Yo no soy tan elocuente como Fernando, gracias a vosotros por vuestro
interés y por ayudarnos a recuperar el Vega de las cajas de cintas viejas.