Óscar Toledo nació en México en 1978. Más conocido como @Nanochess (alias por el que se le conoce en Twitter y en multitud de foros), comenzó a programar a los cinco años en BASIC y conoce el lenguaje ensamblador desde los nueve. Más tarde fue conociendo los más usados, desde Pascal a Java pasando por C, C++ y lenguajes web. Es autor de los juegos de ajedrez más pequeños del mundo en C, Java y Javascript, que le convirtieron en el único mexicano ganador en los concursos de la IOCCC. Actualmente trabaja en Familia Toledo, la empresa familiar dedicada al mercado de la informática y los desarrollos propios en México.
Pero hoy lo entrevistamos por su hobby: desarrollar para plataformas pasadas. Lo hemos llamado retro-indie. Empezó por el MSX pero saltó a Colecovision, Atari 2600 y acaba de abrir el melón de la Intellivision.
Óscar Toledo
Empezaste a programar en BASIC desde muy pequeño, ¿qué llevó a un niño de cinco años al lado oscuro?
Fue el ejemplo de los padres. Mis padres trabajaban mucho con computadoras, de alguna forma mientras jugaba sentado en la alfombra me di cuenta de que una computadora podía ser divertida y absorbente. Por supuesto ayudaba mucho el que ellos también escribían pequeños juegos. Los niños acaban haciendo lo que ven hacer a sus padres.
¿Recuerdas cuáles fueron las primeras aplicaciones que escribiste? Supongo que un niño se vería capaz de todo tras descubrir el potencial que se escondía tras ese teclado.
Lo primero que hice fue bastante pequeño. Poner un montón de PRINT para formar un gráfico en la pantalla, agregar un FOR para desplazar un carrito por la pantalla, INPUT para preguntar el nombre y cosas por el estilo.
En ese momento me di cuenta de que había un universo de posibilidades, me entró la sed de aprender, y empecé a preguntar. Desde entonces creo que nunca he dejado de hacer preguntas. ¿Ya vamos a llegar? ¿Cómo funciona? ¿Qué es eso?
¿A qué es aficionado Óscar Toledo?
En principio me atrae todo lo que tenga un principio estético o creativo. Los juguetes desde luego eran mi fascinación inicial, en especial cosas como retroexcavadoras en versión miniatura y los bloques de construcción. La música y los clásicos como Mozart, Beethoven y Bach, algunos melodías románticas de los 70’s, otras de los 80’s y algunos modernos. El cine me atrae por lo visual y las infinitas posibilidades de contar una buena historia. Las radionovelas, aunque sólo llegué a escuchar Kalimán, me creaban un mundo entero. Las novelas, tanto leerlas como escribirlas, siempre me sorprenden por el hecho de que tan solo cambiando de posición una simple palabra puedes crear un sentimiento nuevo, o decir más. El piano y el teclado también me agradan. Practico el ajedrez y algunos otros juegos de tablero. También me gusta hacer ejercicio para mantenerme en forma.
Creo que mi afición más grande es, en realidad, conocer más; estudio todo lo que cae en mis manos. Aprecio crear y ponerle sentido del humor, tal vez por eso se me da bien la programación y también el escribir juegos.
Viendo su biografía, tu padre debía estar orgulloso de su hijo pequeño. ¿Qué es lo que más destacarías de él y de su influencia sobre ti?
Sus enseñanzas son numerosas. Las más importantes que recuerdo constantemente son “hacer las cosas bien porque hacerlas mal es doble trabajo”, la disciplina a la hora de terminar un proyecto, la puntualidad, cumplir tu palabra, y ser estoico; a veces hay que sufrir un poco para lograr lo que quieres en la vida, o en otras palabras, no hay guerreros en la comodidad de un sillón.
Por cierto, tus primeros pasos, ¿fueron en una Computadora Familia Toledo?
Así es. Fue justo en el momento en que mis padres la estaban construyendo y alimentando con programas.
Los primeros pasos de Óscar Toledo en una Computadora Familia Toledo.
Familia Toledo
Ya que estamos, la mayoría de los que lean esto no las conocerán así que ¿te importaría presentar la labor que realiza vuestra empresa familiar, Familia Toledo?
Nuestra actividad principal es el desarrollo e investigación de tecnologías de computadoras (ordenadores les llaman en España) y sus campos de aplicación. Como es investigación y desarrollo nos tenemos que ayudar de otras fuentes para la financiación. Entonces vendemos detectores de metales, computadoras de ingeniería y otros productos. También damos cursos y conferencias.
Biyubi. En zapoteco (o Diidxazá) significa “busca sin tregua”. ¿Es una buena manera de definir el trabajo de la familia? ¿Cuáles son vuestros proyectos actuales?
Puede ser una buena definición. La investigación y desarrollo es continua y no tiene final. De hecho, si te detienes tu trabajo se queda obsoleto en un abrir y cerrar de ojos. En este momento nuestros desarrollos más recientes son una computadora portátil muy pequeña y un CNC (Control Numérico por Computadora) económico, aún en estado de prototipos.
¿Cómo está distribuido el mercado mexicano de la informática? ¿Crees que tiene espacio para vuestras alternativas, como la del portátil más barato del mundo?
El mercado mexicano de informática se basa en importación y maquila* (dícese de las empresas que emplean a obreros con muy bajo salario para armar productos en base a piezas importadas fabricadas en el extranjero) de productos diseñados en otros países. Se prefiere una marca establecida, compatible y de prestigio, antes que invertir, experimentar y establecer algo nuevo como nuestros portátiles o sistema operativo. Está claro que la balanza comercial local se desequilibra brutalmente por el exceso de tecnología importada y la casi cero generación de tecnología y software local.
Volvamos a nuestro mundo, los juegos y las maquinitas. ¿Cómo entraste en contacto con ellos? ¿A qué jugaba Óscar Toledo de pequeño?
Los juegos por supuesto me llamaban la atención por sus sonidos y colores. Tuve suerte de vivir en una época con una amplia variedad de plataformas disputándose el mercado. Así conocí juegos de Timex Sinclair 2068, Atari, Commodore 64 e IBM PC. También visitaba salas de arcade y echaba una moneda en algunas máquinas. No recuerdo casi ningún nombre de aquella época. Como yo no tenía ninguna de estas máquinas, yo mismo “exprimía” mi ingeniosidad para escribir juegos parecidos en las computadoras que yo tenía disponibles.
Un joven Óscar trabajando en el laboratorio familiar.
Nanochess
A algo que jugabas y por lo que desarrollaste afición fue el ajedrez. Más tarde desarrollarías los programas de ajedrez más pequeños del mundo al menos en tres lenguajes, C, Java y Javascript. ¿Cómo fue ese proceso? ¿Qué te llevó a proponerte ese impresionante reto?
Con anterioridad ya había escrito varios programas de ajedrez y cuando concursé la primera vez por el IOCCC tuve que escribir uno muy pequeño para entrar en los límites del concurso. Me sorprendí de ganar el concurso y se me ocurrió que era el juego de ajedrez más pequeño del mundo. Entonces por 2006 puse una nota en comp.lang.c y alguien respondió diciendo que no era el más pequeño. Lo único que pude pensar en ese momento fue “¡rayos!”.
¿Qué requerimientos debías cumplir?
Mi programa tenía que ser más pequeño que el de mi competidor y debía jugar mejor. Creo que aquí el orgullo pudo más y por eso seguí adelante.
En tu página especificas que los programas debían de ser suficientemente inteligentes. ¿Qué significa suficientemente inteligentes en este caso? ¿Deben ganar a un cierto número de rivales?
Para que un programa de ajedrez sea un reto para jugador debe mantenerse cierto nivel. Entonces mi objetivo al crear un código de juego pequeño no era simplemente que fuera pequeño sino que mantuviera un nivel de juego aceptable. Descubrí algunas tácticas interesantes que hacen que el juego desbarate a cualquier usuario que no se esfuerce lo suficiente.
Y, por curiosidad, ¿cómo se certifican estos hitos?
El público lo certifica. Cuando dices que tienes el programa más pequeño del mundo siempre sale algún curioso que quiere probar lo contrario. Pero nadie ha conseguido hasta el momento crear programas más pequeños. Incluso me he tomado la molestia de compilar un listado de todos los programas pequeños que he encontrado. El más cercano es P4WN, que fue el primer ajedrez en 5K, pero desde el principio de 2009 el mío es más pequeño y ronda los 2K.
De hecho, estuvo en 2K por mucho tiempo hasta que se me ocurrió participar en el concurso JS1K. Varios competidores mostraban tableros de ajedrez y se podían mover las piezas. Y me pregunté: ¿puede caber una inteligencia artificial de ajedrez en 1K de Javascript? Pues conseguí hacerlo posible y la verdad es que la respuesta del público fue apabullante -conseguí el segundo lugar del concurso JS1K.
La versión limitada en 1K de Javascript con la que participé en el JS1K tiene una versión completa de 1K y cuarto con todas las reglas del ajedrez, que sinceramente me sigue sorprendiendo cuando la vuelvo a ver.
(Pueden encontrarse los códigos mencionados en http://nanochess.org/chess.html)
Aparte de los programas de ajedrez de los que entiendo que cogiste tu alias en Twitter, @nanochess, has logrado muchos premios más en los concursos de la IOCCC. De hecho, eres el único mexicano que has ganado alguno. ¿Qué es lo mejor de dichos concursos?
La fortísima competencia que representa. Participan muchos programadores con un gran nivel y se requiere un gran conocimiento del lenguaje C para impresionar a los jueces y por supuesto un buen programa. Los jueces realizan rondas eliminatorias y se va tamizando lo mejor de lo mejor.
¿Y su lado negativo?
No lo tiene, o tal vez yo soy muy positivo. Pero después de ganar 5 veces en 3 concursos del IOCCC, preferí retirarme para dejar el camino libre a nuevas ideas y nuevos concursantes.
Retro
Zombie Near (Óscar Toledo, 2010). ¿Qué te lleva a decidir programarlo y presentarlo a la MSXdev’10?
Escribir juegos es una de mis aficiones, sólo que es difícil encontrar tiempo para codificar uno de estos. Tenía noción del MSXdev desde 2005, y viendo los juegos me pareció que yo podía preparar uno de buena calidad, así que lo hice sólo para ver hasta dónde podía llegar.
Pero antes del MSXdev conocí el MSX a través de las revistas Input MSX que llegaban a México y que pedía que me compraran porque me mostraban una miríada de juegos que yo quería escribir. Con el tiempo escribí muchos juegos para mi uso privado y otros bajo pedido, pero siempre me quedó la espinita clavada del MSX.
En 2010 empecé a codificar uno para MSX pero me atoré por falta de experiencia, lo dejé en el limbo y el gusanito me volvió a picar en enero del 2011 con una buena idea. Me di cuenta de que había escasez de juegos de zombies en MSX, así que me anoté para el MSXdev’10.
Mi mayor duda es la siguiente: ¿cómo lo programaste sin haber tocado nunca un MSX? Me parece increíble que el primer cartucho de MSX de tu vida fuese tu propio juego publicado por Matra.
Cuando ya tienes experiencia en programación y circuitería sólo tienes que informarte de qué chips se usan en la máquina. Y como por azar del destino conocía esos chips pues me fue fácil empezar a programar utilizando un ensamblador de Z80. Otra curiosidad es que en mi tiempo libre sólo disponía de una laptop Toshiba viejísima que sólo podía correr los emuladores BrMSX y MSKISS, así que técnicamente programé retro en retro. Tuve suerte porque el MSX puede ser “temperamental” con ciertos tiempos del procesador de vídeo.
¿Sabes qué? Recuerdo un día cuando tenía unos doce años, que tomé una revista Input MSX y la miré y dije “Un día voy a hacer un juego y se venderá en cartucho”. Nunca olvidé ese pequeño sueño.
Se vendió por primera vez en la 39 RU de MSX en Barcelona. ¿Qué tal salió? ¿Y cómo es tu relación con S.T.A.R.?
Me agradó el resultado final, el cartucho envuelto en su caja y con su pequeño manual. Y tuvo una excelente recepción, me llegaron muchos emails de felicitación.
De S.T.A.R pues que es un tipazo, siempre tiene las cosas muy claras y es muy generoso. Tampoco me puedo olvidar de Daniel Zorita que tiene una paciencia increíble para estar probando los juegos en todos sus MSX, tomando en cuenta que a veces yo le enviaba hasta 3 versiones por semana cuando aún no tenía mi propio MSX.
El paso de MSX a Colecovision es, por decirlo de alguna forma, natural a nivel técnico por la similitud de especificaciones. Pero, ¿por qué decides portarlo?
Estaba investigando en Internet las posibilidades del chip de vídeo, con la idea de exprimir más efectos gráficos, y de pronto me salió Colecovision que también lo usa. Me sorprendí, lo dejé a un lado y seguí buscando. Pero se quedó la idea grabada en mi mente y otro día con más calma me leí la página de Wikipedia con las especificaciones y entonces me di cuenta de que era casi como un MSX.
Pensé que tal vez alguien también publicaba juegos como hacía Matra y cuando busqué juegos de Colecovision una de las primeras páginas que aparecieron fue una (Collectorvision.com) que decía: “¿tiene juegos para publicar? nosotros los queremos”.
Así que escribí un email. “Tengo un juego de zombies, ¿lo quiere?”. Me contestaron que encantados, así empecé la traslación. Lo acabé en Semana Santa, aunque luego me pasé un mes corrigiéndolo porque la Colecovision tiene una señal de interrupción increíblemente complicada que necesita un código especial para manejarse.
Y, como te aburrías, entre noviembre y diciembre de 2011 programas Princess Quest (Óscar Toledo, 2011) para MSX. Una maravilla de juego teniendo en cuenta la ardua tarea que representa programar su scroll. Aún así, lo haces en dos meses. Rápidamente Matra y Bitwise se volvieron a interesar para publicarlo. ¿Lo consideras tu mejor juego retro?
Ese juego estaba escrito en mi mente desde finales de los 80 y en un cuaderno viejo estaba descrito incluso cómo iban a ser los niveles. Había alguna diferencia en personajes, pero todo lo que puse estaba ahí: el bosque, los templos, el castillo. Y al final me faltaron unos cuantos personajes, pero los reservaré para otro juego.
Lo único que me faltaba era un buen scroll. El MSX tiene el scroll de 8 píxeles en 8 píxeles pero yo quería algo de lujo que se moviera con suavidad. Lo conseguí después de experimentar mucho y, con el scroll en marcha, ese juego soñado empezó a volcarse.
Y sí, posiblemente es mi mejor juego retro, con Mecha-8 pisándole los talones. Es algo que uno nota; estuve un tiempo sin poner mi MSX y un domingo lo saqué, puse el cartucho de Princess Quest, y empieza la musiquita, y saltas y brincas, corres, te caes, te persiguen, los monstruitos salen por todos lados, y… ¡te diviertes! Cuando llegas a los últimos niveles te das cuenta de que el juego te atrapó y de que tus manos están calientes de la emoción.
Sus influencias son muy marcadas
Nunca pensé en influencias como tales. De hecho, en un tiempo muy lejano era fan acérrimo de algunos juegos y trataba de crear juegos similares, hasta que me di cuenta de que siempre seguiría como un imitador y que la única forma de trascender es la originalidad. Obviamente he jugado muchos juegos y también es posible que haya trasminado algo de esas ideas a mi mente.
Pero al fin y al cabo es un juego de plataformas, igual pueden decir que es un Mario con armadura o que es un erizo que no corre. En mi vida había jugado a Ghosts and Goblins (Capcom, 1985) y nunca vi más allá de unas pantallas del Castlevania (Konami, 1986) original pero bueno, el público le encuentra similitudes que a mí ni siquiera se me habían ocurrido.
Me sugirieron algunas ideas durante el diseño y me parecieron buenas y las integré. Por ejemplo, mi hermano sugirió que los zombies surgieran del suelo como si se desenterraran por sí mismos, una persona que no quiere ser mencionada (es la modestia personificada) entre otras cosas propuso la barra de energía para saber si ya ibas a derrotar al jefe y yo, de repente, cambiaba o agregaba características según cómo iba quedando hasta “sentir” si se ajustaba a mi estética personal. Por ejemplo, al jefe final no se le ondeaba la ropa y lo cambié cuando se me ocurrió que debía ser así; también otros elementos como que cambiara de color cuando hacía “magia”.
Algunos franceses dicen que Zombie Near es como un Left 4 Dead (Valve, 2008), lo mencionaban tanto que tuve que conseguirme ese juego para verlo. Puede decirse que es similar grosso modo (unos tipos salen huyendo perseguidos por un montón de zombies y al final los recoge un helicóptero) pero son interpretaciones. Otros incluso dicen que parece un Metal Gear (Konami, 1987) para MSX1, creo yo que por la longitud del juego.
De Mecha-8 se ha dicho que es como Aleste para MSX2 (Compile, 1988) sería en MSX1, y que tiene influencias de Robotech. Supongo que esto simplemente significa que les agradan mis juegos lo suficiente para compararlos con esos cánones o grandes obras.
Y también saltó a la Colecovision. ¿Lo tenías ya pensado tras el port de Zombie Near?
Lo difícil que fue la conversión a Colecovision de Zombie Near me hizo darme cuenta de que requería una especie de plataforma base y si solucionaba eso podía escribir al mismo tiempo para las dos consolas.
Construí esa especie de base común que necesitaba unas pocas rutinas dependientes de la plataforma y así, al mismo tiempo que hacía la versión MSX de Princess Quest, se “iba construyendo” casi en automático la versión para Colecovision.
Princess Quest se convirtió en el cartucho de mayor capacidad jamás lanzado para Colecovision. Otro récord en tu cuenta.
Así es, pero al fin y al cabo es culpa de Coleco, la compañía creadora del Colecovision, que sólo puso un misérrimo 1K de RAM en la consola.
Eso no me alcanzaba para los niveles con scrolling pixel a pixel. Tuve que mandar datos directamente desde el cartucho, con lo que el tamaño se incrementó de forma sorprendente, requiriendo por supuesto un PCB más caro con chip de mayor capacidad.
Por fortuna el juego es de muy buena calidad y muy vistoso, así que Luc Miron de Team Pixelboy no puso ninguna objeción al tamaño cuando vio el vídeo y dijo que lo quería. Me dejó impresionado porque en la práctica él nunca tomaba proyectos externos. Más impresionado quedé con el arte que mandó diseñar para la caja. Apenas tiene un año de haber salido, pero es muy probable que cuando se publique esta entrevista ya esté agotado el juego.
(El entrevistador puede confirmarlo: se llevó la penúltima copia).
Es curioso pensar que se puedan publicar juegos todavía hoy día para consolas como la Colecovision, pero la comunidad de usuarios es realmente muy activa. Imagina que tengo un juego listo… ¿cómo lo debería hacer para sacar (físicamente) un juego a la luz en 2013 para una máquina de principios de los 80?
En primer lugar hay que informarse del hardware de cartucho que requiere la máquina en cuestión. Es muy diferente Colecovision, Intellivision, Atari y MSX, por decir algunas. Una vez contemplado puedes diseñar tu propio PCB de cartucho o buscar uno prediseñado en Internet, ya que estas consolas aún son relativamente populares.
Necesitas los chips de interface, montar todo esto en el PCB, soldarlo y probarlo. Una vez que tienes esto algunos homebrewers optan por reciclar carcasas de cartuchos, mientras que otros fabrican nuevas carcasas. Montas todo adentro y le pones una etiqueta, y ya está el juego básico. Después puedes hacer cajas y manuales. Claro que el arte juega un papel importante, es fácil que parezca diseñado por un niño de 5 años si no se le pone cierta atención.
Supongo que la ayuda de personas enamoradas de dichos sistemas como S.T.A.R. o Luc Miron de Team Pixelboy es imprescindible en la mayoría de casos.
Totalmente (agradecimientos infinitos a S.T.A.R, Daniel Zorita, J-F Dupuis y Luc Miron). Ellos se encargan de montones de detalles. Es difícil, pero también es muy difícil escribir un juego que sea lo suficientemente bueno para atraer la atención.
Y todo en tiradas muy limitadas. ¿Cuántas copias se han producido de tus juegos?
Tengo un acuerdo con Matra para no revelar el total en MSX, pero por otra parte en el ambiente Colecovision son más abiertos en esos temas: lo normal son 70 a 150 copias de cada juego. Princess Quest sería mi juego más vendido, seguido muy de cerca por Mecha-8 y Zombie Near.
Óscar nos muestra, orgulloso, la versión de Colecovision de Mecha-8
Luego viene Mecha-8 (Óscar Toledo, 2011), otra vez para la dupla MSX/Colecovision. Me impresiona su movimiento, tan fluido. ¿Cuál fue la mayor dificultad para desarrollarlo?
Contiene una versión mejorada del núcleo de scrolling de Princess Quest, lo difícil fue que yo había diseñado muchos (demasiados) gráficos antes de poner scroll pixel a pixel, así que no cabían. Tuve que ingeniármelas para reducir el número de “tiles” (cuadros de dibujo) usados. Además contiene un cargador que reutiliza el espacio de dibujo para cargar los jefes de final de nivel. Se me metió en la cabeza que debían ser gigantescos (miden media pantalla de alto) así que necesitaba el cargador.
Otra obsesión mía fue que el jugador controlara un mecha enorme y lento (con opción a más velocidad) en un espacio lleno de balas dirigidas directo al jugador. Algunos jugadores sólo de ver esto se quedan atónitos, están acostumbrados a una nave pequeñita como en Zanac donde los enemigos simplemente disparan a lo loco en todas direcciones.
Pero como han notado bien algunas reviews, cuando haces méritos y obtienes la máxima velocidad y el máximo poder de disparo, entonces el jugador es atacado por un fandango de marcianos en salsa (siempre quise usar esta frase) y entra en una especie de estado zen o la “zona”, donde está perfectamente sintonizado para barrer los enemigos. Por supuesto es parte del esquema esfuerzo/recompensa del juego.
Lo demás se me fue ocurriendo, una historia de amor, una invasión extraterrestre, la secuencia de niveles, todo lo que se ve en juegos modernos está aquí aunque sea en una escala más reducida. Como dicen algunos, para mí el juego tiene un muy buen diseño.
Aproveché además la síntesis FM que está disponible en generaciones recientes de MSX para una música más arcade. Por el tiempo extra de desarrollo en Colecovision añadí soporte para sonido extendido con el Super Game Module y algunos enemigos nuevos como una torreta de cañón y un dragón espacial.
Con Space Raid fuiste un paso más allá. Pasar de máquinas comparativamente tan potentes como el MSX o la Colecovision a la Atari 2600 no debió ser fácil.
¡Fue el horror absoluto! No tienes nada. Es como si estuvieras trabajando con un martillo y clavos y entonces te los cambian por un tenedor y palillos. O como si te dijeran que te sacan el apéndice con cuchara.
El Atari te da 2 barras de 8 pixeles y te dicen que son los players, 2 barras de 1 pixel y te dicen que son los missiles, 1 barra de 1 pixel y te dice que es la pelota (ball) y para acabar te “regala” 40 pixeles gordos para el fondo y se atreve a llamarlo campo de juego (playfield).
Me tomó como tres meses entender correctamente cómo posicionar una figura en la pantalla, pero lo “bonito” vino cuando traté de combinar más elementos en la pantalla. Me di cuenta de que estaba frente a una de las máquinas más complicadas de la historia y entonces me animé: me encantan los desafíos.
¿Querías hacerle justicia al Zaxxon (Sega, 1982) original?
Más bien tenía dudas. Todos (en los foros de Atariage y alguno que otro por ahí) decían que el Zaxxon original era lo mejor que se podía hacer en Atari VCS, que los programadores hicieron su mejor esfuerzo y cosas así.
Así que me puse a hacer experimentos de simulación de proyección isométrica, un pseudoscroll de elementos, codifiqué unos efectos de sonido muy arcade y de repente ya tenía Space Raid, se veía bien, se jugaba bien y dejó sorprendido a todo el mundo. Espero que salga pronto en cartucho con su caja y manual.
Tras tu experiencia con la VCS… ¿Zilog Z80 o MOS 6502?
Sigo prefiriendo el Z80. ¡Por piedad!
Futuro
Me ha dicho un pajarito que podría ser que viéramos Space Raid (Óscar Toledo, previsto 2014) para Intellivision. ¿Cómo es programar para ella?
Su resolución de pantalla es cercana al Atari, pero es más avanzada ya que tiene varias facilidades como 8 sprites de 8×8 o 8×16 y carácteres de fondo. El detalle es que cuando lo usas todo quedas más o menos cercano al Atari, excepto en el fondo. Ahí si tiene una gran ganancia, hay espacio para dibujar casi cualquier cosa. Lo más simpático es que tiene el mismo procesador de audio del MSX y a la misma velocidad.
Está documentada gracias a los esfuerzos de muchos homebrewers, eso me ayudó mucho a empezar a conocerla.
Su CP1610 debe ser especialito.
Es lento, usa muchos recursos, tiene un bus complejo y demasiado avanzado para su época. Es un procesador de 16 bits. Imagínate un tiempo donde una memoria de 1K era costosísima y aparte tenías que usar dos de éstas porque el bus del procesador es de 16 bits.
El chip de vídeo también es de 16 bits y la memoria scratch es de 8 bits, así que tienes que hacer algunas manipulaciones para salvar datos grandes pero casi no es necesario para juegos. Cada instrucción toma de 6 a 7 ciclos y tienes apenas 2300 para manipular los sprites y los gráficos definibles.
¿Cuándo calculas tener el juego disponible? ¿Alguna posibilidad de que vea la luz en formato físico?
Espero terminarlo a más tardar en febrero de 2014, ya está casi todo listo, faltan unas pruebas en hardware real y resulta que los cartuchos programables para developers son escasísimos. Y sí, verá luz en formato físico, tan pronto como Collectorvision supo que tenía el proyecto ofrecieron sus recursos para publicarlo.
Con tu historial, apostaría a que no paras. ¿Tienes más proyectos entre manos a día de hoy?
Siempre tengo varios proyectos en paralelo, aunque algunos no cuajan al final y se abandonan. Ya tengo algunos “planos” para conquistar el m… perdón, para hacer más juegos, que no son más que unas hojas garrapateadas con indicaciones, pero cuando las miro veo grandes posibilidades y mundos llenos de color y sonido.
Hay algo de Sega Master System, pero ya veremos.
¿Nos puedes contar algo más sobre la idea que tienes en la cabeza para Master System?
Va como un experimento. Te puedo decir que he completado el port de uno de mis juegos previos con mejoras gráficas de acuerdo al Master System, pero aún no he decidido si voy a liberarlo o cómo lo haría.
¿Y a más largo plazo? ¿Consolas portátiles? ¿Vectrex, quizás? (risas).
No tengo ni la menor idea. Vectrex lo dudo porque es muy grande y no creo que tenga más espacio en mi habitación (risas). Veo un poco difícil las otras consolas porque tienen pocos usuarios y el esfuerzo requerido es bastante grande, pero no descarto nada.
De hecho tengo un par de ports sin publicar de Zombie Near para Memotech MTX 512, que según tengo entendido sólo tiene 3 usuarios y otro para Tatung Einstein que al parecer sólo tiene un usuario activo. (risas)
Más seriamente, ¿te has planteado programar algún juego para los ordenadores (o sistemas) actuales?
Ahí me siento completo porque ya he programado juegos para PC sobre pedido para salas de arcade, pero van con marca blanca, o sea que nadie se entera de que yo los hice. Tal vez en el futuro haga algunos juegos con mi marca, la única limitante es el tiempo libre que es el momento cuando hago estos hobbies y estos juegos requieren muchísimo más tiempo para estar bien hechos.
Aunque también puede ser que se me antoje hacer unos gráficos feos y unos beeps para acompañar un buen gameplay y perpetuar la leyenda indie de los juegos extraños e intrigantes.
Ya que hablas de indie… ¿te consideras un desarrollador indie? ¿Cómo ves este movimiento?
Pues lo soy, porque un desarrollador indie es aquel que trabaja con sus propias ideas al margen de la industria actual. Considero que es indispensable que existan los programadores que desarrollen juegos motu proprio, es un difícil equilibrio entre lo que el programador quiere hacer, lo que el público quiere jugar y la imaginación. Es una brizna de creatividad versus la industria masiva “ordenada” que se ha decantado por puros FPS (First-Person Shooter).
Hace poco entré a una tienda de juegos y una chica le preguntaba a un chico por los juegos, y él le contestaba “pues este es de matar pero en el espacio, aquel también pero son zombies, ¡ah! y este también pero en el futuro”. Miré el resto de los estantes y todo era lo mismo, excepto por un par de RPG y un juego de carreras.
Así caí en la cuenta de que la creatividad es/fue aplastada por las fuerzas del mercado. Ya ni siquiera tomo en cuenta cuando alguien dice que salió el siguiente juego de esas franquicias estáticas porque es lo mismo de hace veinte años.
Aún sin ser tu objetivo, ¿crees que se puede vivir de desarrollar títulos independientes para consolas u ordenadores como el MSX, es decir, fuera de posibilidades como Steam?
¡Eso estaría bien! pero según mis cuentas y lo que he visto en MSX y Colecovision yo debería “acaparar” el mercado y publicar un juego por mes (risas). Y eso es difícil porque se requiere mucho esfuerzo, cultivar las ideas, ajustar todo en un plan, planeación preliminar, codificación, pruebas, mejora, diseño… Hacen falta un mínimo de tres meses para escribir un buen juego y a veces hasta un año.
En estos tres años en la escena de MSX y Colecovision he conocido muchas personas que también hacen juegos y publican igual que yo casi un juego por año, y todos tienen un empleo y esto lo hacen por hobby. El único caso excepcional del que supe hace unas semanas. El RPG Pier Solar (WaterMelon, 2010) para Sega Genesis tomó 6 años (mediados de 2004 hasta finales del 2010) para desarrollarse y vendieron 6.000 copias en 3 años y al final fundaron una compañía que se llama Watermelon y está a punto de sacar una versión para Xbox 360.
Divulgación
Das conferencias que tratan sobre distintos temas, desde programación hasta la influencia del software en la sociedad. ¿Cuál es, para ti, el mayor impacto causado por la expansión de las últimas décadas?
Las redes de comunicación están cambiando todo. Internet sigue siendo un lugar para buscar información entre toneladas de basura, contactar con personas de todo el mundo y descubrir formas de colaboración inusitadas (cuando te llega un email de Rusia, Japón o China diciéndote que les gustan tus programas, eso es Internet, te encontraron). Pero la comunicación se ha vuelto demasiado cercana, tomas un teléfono portátil y ya trae redes sociales, estás saturado de información que a veces no necesitas, demasiados dramas o leyendas urbanas, te llega un mensaje y esperan que lo contesten en cinco segundos cuando estás ocupado con un trabajo de lo más complicado.
A mí me preocupa que los jóvenes en una fiesta familiar se pongan los audífonos para escuchar su propia música y se abstraigan en un teléfono portátil, platicando entre ellos en silencio o con gente que no se encuentra ahí y se olviden de los temas sociales reales. La tecnología en el momento adecuado ayuda a ser más sociable, pero otras veces los jóvenes se abstraen demasiado, no se dan cuenta de cómo la vida pasa a su alrededor, y puedes ver cómo sus formas de expresión habladas y corporales están como truncadas. Se están perdiendo mucho. No me extraña que algún día cuando su aparato se quede sin energía por un par de días, entonces miren el infinito y digan “¡Anda! ¿El cielo es azul?”
Óscar en una de sus conferencias.
¿Que muchos todavía disfrutemos con máquinas de hace más de 30 años es un indicador de que todo pasa demasiado rápido? ¿O, simplemente, nos hacemos abuelos?
Creo que los juegos de hace 30 años eran más imaginativos y te exigían menos, puedes divertirte sin pretensiones viendo si alcanzas cierta puntuación. Todos pueden jugar al comecocos y pasarlo bien.
En contraste los juegos modernos te exigen que te aprendas un repertorio completo de órdenes, que controles indicadores de estatus, exceso de atención al entorno virtual, es tanto que a veces deja de ser divertido y se convierte en un trabajo que te cansa. A veces es incluso tan realista que se vuelve intolerable. Así que creo que lo retro resurge porque queremos diversión sin complicaciones. Claro que también hay un componente de nostalgia (yo jugaba ese juego y me gustaba mucho), de remembranza (yo siempre quise jugar ese juego) o de curiosidad (yo veía que jugaban eso, y quiero probarlo).
También hablas de diseño y programación de juegos. ¿Qué es lo más importante antes de empezar a desarrollar?
Aprender a pensar, formar un plan. Conozco infinidad de personas que hacen hermosos gráficos pero muy pocos de esos diseños entrarían en un juego real. A veces los gráficos llevan al juego y otras veces el juego pide los gráficos. Otras veces codificas sin plan y ves que va saliendo. Todo depende de la experiencia. A los novatos les recomiendo que escriban todo lo que puedan y que hagan refritos de los clásicos para que vayan aprendiendo los algoritmos.
Cuando se llega a ser profesional entonces ya puedes hacer planes de antemano, a veces sólo en la mente, codificas rápido y sin errores, ya sabes por dónde ir, y todo el mundo cree que eres un genio o algo así, pero no es más que años de experiencia. Creo que si escribiera un libro con cada error que he cometido sería más gordo que cinco diccionarios telefónicos puestos juntos.
¿Cuáles serían tus juegos de cabecera?
En realidad juego muy poco, si me ves jugando es probable que esté trabajando en ese juego en particular, pero nadie me la cree (risas). A veces tengo ganas de volver a lo retro y juego una partida al Pac-Man (Namco, 1980), el Qbert (Gottlieb, 1982), Donkey Kong (Nintendo, 1981) o Zaxxon. Otras veces prefiero algunos arcade como Metal Slug (Nazca Corporation, 1996). Me encanta ese episodio donde toman la nave espacial para enfrentar a los alienígenas, Metal Slug 3 (SNK, 2000), Super Street Fighter 2 Turbo (Capcom,1994) o Double Dragon (Technōs Japan, 1987). De hecho, como capricho, me conseguí las placas originales de este último.
Y bueno, cuando me invitan a la party, pues le entro a juegos más recientes como Burnout (Criterion Games, 2001), Halo (Bungie, 2001) o Gears of War (Microsoft Studios, 2006). Las gráficas, la animación, la música y los efectos son impresionantes, pero si le quitas todo esto, tienes uno de esos juegos de los 80, porque evolucione lo que evolucione, siempre quedan las mecánicas antiguas.
En Twitter sueles comentar habitualmente sobre películas o series que ves. ¿Alguna recomendación? ¿Qué es lo último que has visto?
Considero que últimamente hay mucha masa y poca calidad, los guiones son fabricados en torno a una máquina/receta llamada “el viaje del héroe” y todos parecen lo mismo.
Hay películas que no son buenas (de hecho son malas) pero intentan transmitir un mensaje, en esa categoría me agradan La Historia Sin Fin y El Gran Pez. Algunas otras son como joyas que deben verse por alguna situación, ahí pongo Sexto Sentido, Cazadores del Arca Perdida, Furia de Titanes (la de 1981), El Joven Manos de Tijera, Mi Pandilla (Sandlot), Willow, El Planeta Prohibido, V de Venganza y Yo, Robot, estás últimas las considero un gran ejemplo de cómo no seguir un libro y ¡seguir pareciendo interesantes!* (los títulos se encuentran en su versión mexicana).
Hay otras películas que son atemporales, fueron buenas en su época, son buenas hoy y serán buenas en el futuro, de esa categoría recomendaría Amadeus, Volver al Futuro, El Oro de McKenna, Star Wars: El Imperio contraataca, Lo que el Viento se Llevó, Sensatez y Sentimientos (Emma Thompson).
Me temo que no puedo recomendar una serie, son demasiado personales. Pero me intriga la atmósfera de miedo inteligente de 24 (todos tienen miedo a todos, nada es lo que parece y según los guionistas todo el mundo puede ser malvado en la situación adecuada), me llama la atención la trama de Fringe de una dimensión alterna y el sentimiento humano impreso en algunos capítulos (aunque le quita mucho y es aburrido ver tanto uso de drogas), me extraña el comportamiento neurótico de The New Girl, me parecen ingeniosas las primeras tres temporadas de Buffy: Vampire Slayer, me rasco la cabeza pensando en cómo es que Terminator: Sarah Connor Chronicles es tan mala serie con tanto material que pudieron usar, y después paso a Star Trek: The New Generation y me parece interesante que aún parezca moderna, doy vueltas viendo la enorme telenovela que es Dragon Ball Z (me da risa que se puedan pasar todo un capítulo hablando antes de pelear) y entonces me doy cuenta de que todavía hay mucho por inventar.
¿Hacia dónde vamos?
Hacia un mundo mejor espero. Un mundo donde la tecnología nos ayude a vivir mejor, donde el trabajo sea leve y con más tiempo para nuestras aficiones. Hace diez años hubiera dicho “con más comodidad”, pero la comodidad acaba con las personas.
Un mundo donde las personas sean más sensibles a los problemas de su entorno y se unan para mejorarlo, un mundo donde las personas puedan evitar que los políticos se supediten a las decisiones antisociales de las grandes corporaciones, un mundo donde los gobiernos recuperen su responsabilidad social de proteger al ciudadano. Sólo cuando una persona está tranquila, tiene trabajo, seguridad y puede cuidar las necesidades de su familia, es cuando puede desarrollar al máximo su creatividad y su intelecto, y en esta época donde todos estamos conectados todos nos beneficiamos.
La entrada Entrevista a Óscar Toledo, desarrollador retro-indie es 100% producto Deus Ex Machina.