As one of the two creators of the Adventure Game Toolkit (AGT), David Malmberg had a huge effect on amateur interactive fiction. He took Mark J. Welch's Generic Adventure Game System (GAGS), turned it into AGT, and in doing so created a tool that many early authors used to create interactive fiction. From the mid-1980s until the mid-1990s, AGT was by far the most popular interactive fiction language. A glance at the IF Archive's AGT directory shows the sheer number of AGT games still available.
David kindly agreed to discuss AGT, its history, how many registrations he received, and more.
Stephen Granade [S.G.]: To start with, could you tell us a little about yourself?
David Malmberg [D.M.]: I am a semi-retired senior executive. I spent 30 years in the corporate world and was a VP of several Fortune 500 companies. For the last five years I have been an independent management consultant. You can learn more at www.malmberg-consulting.com.
I have always been interested in adventure games - ever since I first played Scott Adams' Adventureland and issued the command CLIMB TREE and I entered a whole new world. I reverse-engineered Scott's BASIC code and wrote my first adventure, Castle Adventure, using his basic engine and game structure.
Castle Adventure was later published in the magazine "Micro - The 6502 Journal," where I was a Contributing Editor.
S.G.: AGT began life as the Generic Adventure Game System, by Mark Welch. How did you end up turning GAGS into AGT?
D.M.: I saw an article about GAGS in a local weekly computer newspaper (Computer Currents), in which Mark offered to sell the Turbo Pascal source code to GAGS for $50. I sent him a check and also bought Turbo Pascal 2.0 (only available via mail order in those days) for $50.
I was working in downtown San Francisco and riding BART two hours a day, so I had plenty of time to teach myself Turbo Pascal (which I didn't know—I was a COBAL and FORTRAN programmer in those days) and to teach myself how GAGS worked by studying Mark's GAGS code.
S.G.: Why did you choose to update GAGS rather than attempt your own system?
D.M.: After studying GAGS in detail, it became obvious that it was limited to very simple games with only a few verbs. I wanted to create Infocom-like games. GAGS in its current state would never make it. However, Mark had defined the essential data structures very well, e.g., ROOMs, NOUNs, and CREATUREs, but GAGS lacked flexibility in manipulating those objects. So I set about extending GAGS by adding what I called "meta-commands," which really increased the power and flexibility of GAGS. These meta-commands allowed for an almost unlimited number of nouns, verbs, and objects (and synonyms for any of them) and the ability to manipulate them. It came close to my goal of creating games that were truly Infocom-like.
By this point I had so much time invested in strengthen GAGS and using Turbo Pascal that I had no reason to change and write my own Adventure development language from scratch.
S.G.: How much was Mark involved in your rewrite of GAGS?
Mark was the author of GAGS, which was the basic foundation of AGT. He did not have any direct involvement of the enhancements which became AGT. He did not write any Turbo Pascal beyond GAGS.
Mark and I met for lunch one day and I showed him what I had done to GAGS. We agreed to market the product under the name the "Adventure Game Toolkit," or AGT, and split the profits 50/50. Mark did not want any further involvement in AGT—I think he was burnt out—so I took responsibility for all further product development, support and marketing.
Incidentally, AGT was a labor of love. Neither of us expected to make any real money from it.