Acknowledgements and Explanations
All three games used as examples in this book are drawn from other sources.
"The Adventures of Heidi" is drawn from the Inform Beginner's Guide by Roger Firth and Sonja Kesserich. The discussion of this game in Chapters Three to Five also draws heavily on the structure and format of the corresponding chapters in the Inform Beginner's Guide, although the detailed content is somewhat different, since adv3Lite is different from Inform 6. Roger was kind enough to let me take Heidi for another walk in the forest for Getting Started in TADS 3, so I hope he and Sonja won't mind if I take her out again here (especially in a game that's even closer to the original). For the rest, I trust that Roger and Sonja will regard imitation as the sincerest form of flattery.
Both the Goldskull game and the Airport game that follow were originally devised by Mike Roberts. Goldskull was originally an example in the TADS 2 manual. Airport also originated in the TADS 2 manual as an example of game design, and was subsequently recycled by Mike for use as an example of game design in the TADS 3 Technical Manual.
To some extent I'm guilty of simply not wanting to reinvent the wheel in using these existing games as the material for this tutorial. But I hope there may also be some didactic value. Users coming from Inform 6 may well be familiar with the IBG and the original Adventures of Heidi. Meeting Heidi again in such a familiar setting may help ease their transition to TADS 3 with adv3Lite. Users coming from TADS 2 may well be familiar with both the Goldskull and the Airport examples, and that may help them get up to speed all the more quickly with TADS 3 plus adv3Lite.
Conversely, both the Goldskull and the Airport examples appear in the existing TADS 3 documentation for adv3, as does another game involving Heidi in the forest. Not only may this be helpful for existing TADS 3 users wanting to get a quick idea of what's different in adv3Lite (they can compare the sample code here with the equivalent adv3 code), it may also prove helpful for users of adv3Lite who subsequently want to learn the adv3 library, since the similarities and differences between adv3Lite and adv3 should become all the more rapidly apparent through working with familiar material.
That does not mean that there will be nothing original, game-wise, in this tutorial. The Airport game as described in the TADS 2 manual and the TADS 3 Technical Manual is really only a sketch for the start of a game, with plenty of scope for further development and expansion. When we come to implement our Airport game in adv3Lite we shall be taking full advantage of that scope to illustrate parts of the adv3Lite library that otherwise would remain quite unexercised.
Other Acknowledgements
My thanks to Mark Engelberg for many helpful suggestions that have been incorporated into adv3Lite, and to Jim Aikin for help with the instructions on using it on non-Windows systems.