Conclusion
Over the course of this tutorial we've introduced most of the features of the adv3Lite library and some of the most common features of the TADS 3 language. To do this we've walked through the implementation of three adv3Lite games, two very short and simple, the third a bit longer and more complex (though still quite small by the standards of most typical IF). If you've faithfully followed this tutorial all the way to the end, typing in and trying out the code as you've gone along, and maybe trying a few things on your own as well (such as the "exercises best left to the interested reader"), then you should now be in a strong position to start writing your own game.
But don't worry if it doesn't all seem entirely plain sailing at first. Not everything about writing IF is easy, and if you're at all ambitious, sooner or later you're probably going to attempt something quite difficult. My best advice is not to try to tackle something too difficult too soon, but first concentrate on implementing the more straightforward parts of the game. Attempting to run before one has fully mastered the art of walking is one of the most common sources of frustration among new IF authors (people don't always like my pointing this out, but there really is no point in pretending otherwise). Still, at some point you will almost certainly want to tackle something more challenging, and of course if you're ever going to progress as an IF author it's quite right and proper that you should do so.
If you find yourself running into trouble (of course I hope you don't, but some people do) then consider taking the following steps:
- Make sure you have fully analysed the problem you're trying to solve. Maybe breaking it down into a series of smaller steps will help.
- Look back over this tutorial, or over the adv3Lite Library Manual or the TADS 3 System Manual to see if you can find a possible solution, or at least to ensure you fully understand the feature(s) of the system you're trying to use.
- Make use of the debugging tools provided, either in Windows Workbench (if you're using it) or (or additionally) those provided by adv3Lite. They may help you track down what's going awry.
- Take a look at the library source code to see if that can help you figure out what's going on.
- Seek help on the TADS forum of Intfiction.org.
Of course most of the time you shouldn't run into any problems at all, and though it's a lot of work to produce a well polished work of IF of any size, you should find that doing so in adv3Lite is reasonably straightforward. I hope you enjoy using adv3Lite when you come to use it for your own projects.
Eric Eve
Oxford, England
February 2013