Some time ago, I wrote here about the Habitat project, an effort to relaunch the first massively multiplayer online game. This is an effort led by my non-profit, the Museum of Art and Digital Entertainment, an all-volunteer videogame museum reopening in Oakland on Feb. 5.
Last week, that project made a major stride forward as we began to upload code assets into GitHub for the first time. Just as with most software projects, when writing a game, you must first sit down and write your tools. To this end, we’ve pushed Macross, one of the tools used to make Habitat, to GitHub.
Why am I writing about Macross, here, on SD Times, where we write about hardcore enterprise software development? Because Macross is fascinating.
Just what is Macross, aside from a 1982 anime about giant transforming jet robots? To understand Macross, we must first understand the architecture of Habitat.
Habitat was a client/server online game, with the client based on the Commodore 64, and the server running on a Stratus VOS machine. The C64 has a 6502 processor, the Stratus a 68000. Between these two systems was Q-Link, the immediate predecessor to America Online, and a system that had grown out of a skunkworks project to get the Atari 2600 online.
Let us pause here to ruminate upon the ridiculously high levels of optimism required to make any of these systems work, let alone bring them to market. The idea of bringing a C64 online may seem crazy today, as the device only had 64KB of RAM, but the Atari 2600 had only 1024 bits of RAM. How Steve Case and the gang at AOL ever planned to bring an online service into 1KB of RAM is beyond me.
So, clearly, the AOL/QLink team were just phenomenal developers shooting for the stars. To enable their online service to be highly available and run non-stop, QLink ran on the Stratus VOS system. Stratus systems are highly redundant, and can be chained together to work in a group. They come from the days when highly available software was, essentially, dependent upon highly available, super-redundant hardware.
Before someone even decides to write a 1,000+ player game for these systems, they’d have to figure out how to get them all to talk to one another, and how to develop software for three platforms at once.