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.