A short history of Avara - avaraline/Avara GitHub Wiki

See the 20th Anniversary stream by ScarletSwordfish to see the original game being played and examined in detail!

Prehistory

Avara dates back to 1992. Juri Munkki, an interactive media design student at Helsinki University of Technology, studied computer science, with a particular focus in 3D graphics and video games. He published a clone of Tempest called Arashi for the Apple Macintosh.

Juri later built a binary space partitioning library for the Macintosh. Invented in 1969, BSP is an efficient algorithm for organizing the data required to display a three dimensional model on a two dimensional computer screen. Juri studied an example from the popular Graphics Gems textbook, and re-implemented, optimized, and extended the basic idea using Motorola 68k assembly and THINK's LightSpeed C compiler.

In 1994, Munkki started to network with several other game developers via Usenet, notably Stuart Cheshire, developer of Bolo and Andrew Welch, president of Ambrosia Software. Juri built and published a demo of the BSP library for the Macintosh to comp.sys.mac.games in October 1994. At the same time, he took demos to Apple Developer conventions and tried to get the attention of a publisher or game studio. These included demos built around his realtime software renderer, where the player drove a spaceship around in a fully 3D environment.

For a bit of context, this was two years before Quake was released, which is one of the earlier commercially successful software titles to utilize the BSP algorithm for drawing models. Avara was a cutting edge use of the hardware available at the time. The prototype for Avara's codebase started off on Juri's PowerBook 180, a 33Mhz system that had a four color grayscale screen. Avara continued to be built and tested there, even after its commercial release in 1996. The renderer was fully implemented in software, and didn't require any expensive 3D hardware (which very few Mac users purchased separately).

Several developers were interested in his demo. Juri wrote more experiments to show developers and publishers, including a Battlezone-type game with tanks that had independently moving turrets as part of the core gameplay. Juri posted demos of his games frequently to Usenet, often including the full source code, which was quite rare in the early Macintosh development community. Eventually he got in touch with Andrew Welch of Ambrosia Software, which became the exclusive publisher for Avara.

Ambrosia Software

Andrew signed a contract with Juri and immediately contributed to the project with extra multiplayer levels. As a fellow denizen of the Macintosh gaming and development Usenet mailing lists, he encouraged Juri to work up a complete game from his demos, playable over the network. This would be one of only two games from Ambrosia that supported competitive networked game play, the other being the space RTS Ares, which had been released previously by Changeling Software.

Juri was able to hack lockstep networked multiplayer together in the span of a few weeks early in 1996, eventually improving it to the point of being able to play a trans-Atlantic game with Andrew via modem. Juri published a paper on designing networked multiplayer games in 1997, detailing many core problems with latency in game networking over the internet.

Avara released with networked multiplayer over UDP, a full single player campaign, level editing and modding documentation, and all of the original assets that Juri created for the game.

Despite this, Ambrosia's 1996 release of Avara was quite unluckily timed, and not successful shareware. Though impressive, Avara's graphics were unfairly compared to games on other platforms of the time of release (including Quake) as technology rapidly advanced, and the open nature of the gameplay, modding and level design were all lost on the early small market of Mac gaming. Macintosh specific gaming has always been a niche community. The exact number of licenses Ambrosia sold is not known, but ASW's Avara forums moved fairly slowly even during the (current) height of online play. Though it was a fantastic value at $20 USD, Avara was quickly overshadowed, even within Ambrosia's own marketing of their more successful titles.

Community

Though the overall number of players was low, the people who did play Avara played a lot. It was not uncommon to see multiple servers up on a given weekend all the way until 2000, and a small community of dedicated fans held on to the game for a much longer time. Around 2001, there were several active forums, level design communities, guilds, and a ladder that was active until 2003, all without any official support. There were even Hotline servers dedicated to Avara (one of which eventually became the Avaraline community).

Mac OS X was released in 2001. Avara was technically supported under the Classic emulation environment, but only barely--certain mouse code simply did not work the same, and greatly hindered game play. Ambrosia released a point update to the game, an attempt at fixing some of the issues with the moving target of Classic emulation, without much success.

The issues compacted the small community as players steadily upgraded their computers and were unable to run the game. Even so, a "total conversion" mod existed by this point called Aftershock. Many intrepid designers kept making levels for Avara even as the Ambrosia Software website was languishing. However, in Mac OS X 10.5, the Classic environment was removed entirely, and third party software was required to emulate a Mac OS 9 environment. The world slowly moved on from the hardware that Avara was built for, and by the time Apple changed architectures to Intel, it was fairly impossible to use a Mac OS 9 machine for lack of a working web browser.

From 2006 onward, the game rarely saw more than a few players online any few months at a time. A small group of dedicated folks kept Avara alive by obtaining and maintaining older Mac hardware (one could have a quite excellent retail Avara experience on a PowerMac G4 MDD, the last and fastest PowerMac to support booting into pure Mac OS 9). Occasionally there were stirrings of veteran community members and software developers posting vague screenshots of their own attempts at an "Avara 2", but none came to fruition.

Open source

By 2015, it was clear that Ambrosia Software was in trouble. The main forum and several other parts of the website went offline. The official Avara tracker, which was pretty much the only way to meet other players online in practice, was taken down with the rest of the site. In late 2018 Ambrosia SW was finally closed down completely. Several prominent community members were trusted with archives of the forums and the curated file uploads pages, and the Avara files eventually found their way to us.

In 2017 Avaraline reached out to Juri directly, to see if he would be comfortable posting the source code for Avara. He received an informal blessing from what remained of Ambrosia to release the source code and posted it on Github in winter of that year.

Our small group has seen several attempts to rewrite the game for modern systems since 2010. After Juri posted the original source of the game, many mysteries we encountered making our clones suddenly became quite clear. Juri's extensive optimizations are nothing short of heroic.

In early 2018, Avaraline's Dan Watson was able to port the game's THINK C source to modern C++ using SDL/OpenGL, some old Macintosh Toolbox appendices (pdf), a 68k assembler manual, and a month of furious progress.

Future

Juri can still be found online and welcomes comments and questions about Avara, but any feedback about this project should not be sent to him.

So far, the project has eliminated bugs that existed in the original, allowed play with an adjustable frame rate from 60fps down to the original 15fps, vastly improved the networking reliability, and authored an anti-aliased, high definition graphics renderer. For the (double-digit in number!) contributors to the project, Avara is an endless fount of ideas, problems, and potential.

Now that the game can run on modern computers, we would love to reconnect with as many of the old Avara fans as possible, to let them know that 25+ years later, one of their favorite games lives on (and even plays on Windows/Linux)! At the same time, we hope to continue to bring improvements to the way Avara plays and invite new players to join us.