El juego Empire es un juego de simulación de guerra originalmente escrito por Walter Bright para la fundacional mainframe PDP-10. Les dejo aquí un raconto de la historia del mismo, escrito por el autor. Una breve historia del EMPIRE por Walter Bright Prehistoria: Inspiración Empire tiene muchos orígenes que le sirvieron de inspiración. Uno es la película de guerra clásica de 1968 "Battle of Britain". En esta aparece una escena donde sale el personal británico inclinándose sobre una mesa de operaciones muy grande que tiene un mapa pintado. Las oficiales movían piezas que representaban aviones de caza, bombarderos, barcos, etc. Otra inspiración fue el juego de mesa RISK, uno que disfruté mucho. El primer juego Empire lo realicé en 1971 en una tabla de contrachapado de 10x20. Tracé laboriosamente una cuadrícula en la madera, pinté un mapa y me fabricé las fichas del juego. Fue un fracaso total. El juego era absolutamente impráctico: tenía demasiados datos estadísticos que dificultaban realizar un seguimiento y además necesitaba que otra persona se quedase sentada durante horas completamente dedicada a ser mioponente. Dejé de lado la idea. Mientras estaba en la escuela secundaria, aprendí a escribir programas en BASIC y almacenarlos en tarjetas perforadas. Uno que me interesó en especial aparecía impreso en un libro de listados de juegos BASIC, se llamaba Hamurabi. Lo piqué y comencé a modificarlo. Luego, fui a CALTECH. Me llevé mi mazo de tarjetas de Hamurabi. Por aquel entonces Caltech ofrecía tiempo de computación gratuito a sus estudiantes, y no dudé en inscribirme. El acceso al mainframe se realizaba a través de terminales conectadas al Laboratorio Jorgensen. Pasé muchas noches jugando al Nstar y otros juegos computados primigenios bastante malos y olvidables, hasta que un día me cansé de ellos. Conseguí entonces que el Operador cargara mi Hamurabi, lo renombré "King" y pasé el siguiente semestre aprendiendo cómo mejorarlo. Primeras Versiones Cuando me cansé del King, me acordé de aquel viejo juego que había inventado cuando era chico. Se me ocurrió que una computadora era la solución ideal para resolver los problemas obvios que había tenido el juego: una computadora podía llevar la contabilidad automáticamente, y - si podía programarla para que fuese también un jugador - tendría siempre a mano un oponente incansable y listo para jugar. El mapa de 60x100 viene a consecuencia de la cuadrícula más grande que la terminal DECwriter era capaz de escupir en una hoja de papel. Empecé a programarlo en BASIC. Después de un tiempo, se me hizo evidente que Empire nunca funcionaría en BASIC ya que el lenguaje era demasiado limitado. Necesitaba aprender FORTRAN, un lenguaje bien implementado en la PDP-10. Mis buenos amigos Mark Stroberg, Shal Farley y Dave Rolfe me dieron una mano y me enseñaron cómo programar en FORTRAN. Escribir Empire y aprender FORTRAN iban de la mano. (Muchos nombres de variables del código fuente en FORTRAN demuestran su herencia BASIC). Como las terminales que teníamos disponibles para los laboratorios Jorgensen eran las teletipos DECwriters de 300 baudios y ASR-33 de 110 baudios, diseñé al Empire para operarlo con estas terminales, que son increíblemente primitivas. Pero realmente nunca funcionó en ellas. El progreso del juego se estancó hasta que recibimos las veloces terminales de vidrio (Nota, se refiere a las terminales con pantalla de video): ¡por fin, una terminal de 1200 baudios a gran velocidad! El Empire se convirtió en un "juego orientado a pantalla". Después de trabajar esporádicamente en él durante un año, se fue convirtiendo en un juego completamente operativo. Incluso conseguí que la computadora opusiera una estrategia creíble como oponente contrario, aprovechando unas vacaciones de Navidad para imaginar cómo hacerlo. Recuerdo que tuve bugs divertidos, como ejércitos que "caían" desde la esquina de la pantalla. La desventaja de implementar la estrategia computada (que luego sobrevaloré enormemente llamándola "IA") fue que consumía enormes cantidades de memoria y tiempo de CPU en la PDP-10 de tiempo compartido. Otros estudiantes también se aficionaron a jugar al Empire, por lo que los SysOps decidieron tomar medidas bastante drásticas restringiendo el uso de programas de "juegos" durante el horario escolar, y más adelante incluso durante la semana de exámenes finales. Limitaban constantemente las horas en las que se podía jugar en la "10"... Obviamente, esto me irritó, así que renombré al Empire llamándolo "test", de modo de poder correrlo cuando quisiera. Seguí así durante meses hasta que finalmente los operadores del sistema percibieron que este programa "de prueba" que acaparaba los todos los recursos tenía la misma huella de consumo de memoria que el Empire. Igual fueron muy amables al respecto y acepté desistir. A algunos en Caltech no les gustaba Empire, e incluso lo declararon culpable del fracaso en los exámenes de un par de estudiantes, ya que afirmaban haberse vuelto adictos al juego y descuidar sus estudios. Incluso uno de ellos me amenazó por esto (increíble, ¿no?). Proyectos posteriores de Caltech Otros programadores viejos coincidirán en que estos fueron los años en los que salió el ADVENT original (abreviatura de Adventure). Causó sensación. Nadie había visto nada parecido. ADVENT era un juego muy inteligente, escrito totalmente en FORTRAN. El último juego Zork derivó de este ADVENT, pero fue el ADVENT el que inventó todo el género de los "juegos de aventuras". Decidí escribir mi propio juego de aventuras, llamado Castle. Era demasiado ambicioso, me quedé sin fuerzas y lo dejé. Mientras estaba en la universidad, gané algo de dinero escribiendo juegos para aqel sistema de videojuegos hogareño Intellivision que sacó Mattel. El Empire nunca hubiese sido capaz de funcionar en una máquina de tan poca potencia, ni tampoco en otras microcomputadoras muy extendidas en ese momento como Commodore PET. Tal vez lo podría haber reprogramado para que corriese en la Apple II, pero nunca lo intenté. La versión para PDP-11 Cuando conseguí un "trabajo en serio" en el campo de la ingeniería mecánica me olvidé del Empire (afortunadamente, guardé una copia, disponible para descargar). Después de un par de años de eso, me aburrí y me entraron las ganas de volver a programar. Como un estúpido, compré una H11 por U$S 6,000 (era la versión clon de Heathkit de la DEC PDP-11). No era mala máquina, realmente era muy adecuada para implementar Empire. El único problema fue que DEC nunca se dio cuenta de que habían inventado la PC y nunca intentaron adentrarse en el mercado de los aficionados. Si hubiese tenido cerebro, me habría comprado una Apple II. Pero tenía la H11 y rehice el Empire en el código ensamblador de la PDP-11 (también se puede descargar). Una vez terminada la nueva versión, la anuncié con orgullo al mundo a través de la revista BYTE de abril del 83, y vendí, bueno, exactamente dos copias. Desanimado, dejé tirado al Empire de nuevo a cambio de otro "trabajo en serio". La versión de IBM para PC En mi siguiente trabajo, estábamos en un gran proyecto con una de las primeras computadoras IBM. Descubrí el lenguaje de programación C, y bien podría haber sido llamado EIL, por "Lenguaje de Implementación de Empire". La PC podía manejar Empire de taquito, el C era un lenguaje fácil de implementar y - lo mejor de todo - ¡la PC era del Pueblo! Me dediqué a hacer que funcionara. Incluso funcionó en la malograda PCjr de IBM. Como para ese entonces era demasiado cobarde para invertir dinero en de marketing en serio, aproveché los anuncios de nuevos productos que salían en la revista BYTE y me asombró la avalancha de pedidos que llegaron. Me sentaba en el piso del living, ordenando las hojas de los manuales fotocopiados, copiando diskettes y membretando los sobres de envío. Era divertido, pero se me ocurrió que con algo de marketing, podría venderse aún mejor. Era hora de licenciarlo a una empresa importante de videojuegos a cambio de regalías. Interstel Así que lo envié para ponerlo a consideración de las grandes empresas de juegos de la época. Todas me lo rechazaron. Solo una compañía pequeña, Interstel, mostró interés y llegamos a un acuerdo rápidamente. Interstel contrató a Mark Baldwin para actualizar el juego con una interfaz gráfica de usuario, y el juego fue un éxito espectacular en el mercado, superando todas mis expectativas. Mientras tanto en el rancho Sin que yo lo supiera, después de que dejé Caltech, alguien hackeó las protecciones y se hizo con una copia del código fuente del Empire. Viajó de mano en mano, de un sistema a otro, en algún momento les sacaron los anuncios de autoría y derechos de autor, y finalmente toda la trazabilidad desapareció. Jacobs y Mitton aparentemente lo encontraron en una computadora en Massachusetts y lo portaron al sistema VAX/VMS, enviándolo a DECUS (el grupo de usuarios de DEC) bajo los seudónimos DeNobili y Paulson. Así terminó así como algo que los técnicos de la DEC te instalaban junto con el sistema operativo VMS. Un amigo mío de la universidad me avisó que lo estaban distribuyendo en DECUS, cosa que comprobé en julio de 1983. Unas cuantas llamadas telefónicas más tarde a DECUS, y logré demostrarles a su satisfacción que yo era el autor original y el titular de los derechos de autor, y DECUS acordó señalar eso en la descripción del catálogo y el código fuente. Peter Langston Empire Hay otro juego tipo Empire que fue desarrollado originalmente por Peter Langston. Langston Empire y mi Empire fueron concebidos y desarrollados de forma independiente en la década de 1970, cada uno de nosotros no tenía conocimiento del otro. Varios sitios web asumen que uno se basa en el otro, estas declaraciones simplemente no son ciertas.