The Four-Eyed Guide to TADS 3 by David Welbourn index


ABOUT

Default minimal behavior

>about
Put information for players here. Many authors like to mention any unusual commands here, along with background information on the game (for example, the author might mention that the game was created as an entry for a particular competition).

versionInfo: GameID
  • • •
  showAbout()
  {
    "Put information for players here.  Many authors like to mention
     any unusual commands here, along with background information on
     the game (for example, the author might mention that the game
     was created as an entry for a particular competition). ";
  }
;

about matches VerbRule(About) which invokes AboutAction. AboutAction creates and sorts a list of all the ModuleIDs in the program and calls their showAbout methods to print the about-information for each module, if any. If no output was produced, AboutAction calls libMessages.noAboutInfo to display a default message that there is no about-information.

Authors of games should define an instance of GameID (a subclass of ModuleID) as suggested by the sample games and modify the string values as appropriate. Put about-information in the showAbout method. See also the comments for ModuleID.showAction in modid.t for suggestions on typical information disclosed by the ABOUT command.

Authors of library extensions should define an instance of ModuleID for their extensions for other reasons (see VERSION), but leave the showAbout method alone.

Summary of library references to ABOUT

actions.t

Short description

DefineSystemAction(About) Defines class AboutAction: SystemAction
Shows about information for each library, or libMessages.noAboutInfo if none.
Note: DefineSystemAction(name) is a macro defined in adv3.h. Note: SystemAction is a class defined in action.t. ModuleID is a class defined in modid.t.

modid.t

Short description

class ModuleID: object The base class for storing module info.
ModuleID.showAbout() Normally does nothing; however, instances of the subclass GameID should override this method to print the about-information.
ModuleID.getModuleList() Finds, sorts, and returns a list of instances of ModuleID in the program.
class GameID: GameInfoModuleID Your game's sourcefile should define an instance of GameID (see yourgame.t below).

en_us\en_us.t

Short description

VerbRule(About) Associates the grammar "about" with AboutAction.

en_us\msg_neu.t

Short description

libMessages.noAboutInfo "<.parser>This story has no ABOUT information.<./parser> "

yourgame\yourgame.t

Short description

versionInfo: GameID Define this instance of GameID in your game's source as suggested by the TADS 3 sample games.
versionInfo.showAbout() Define this method to print your game's ABOUT information. Typically, you may wish to tell the player about any special verbs that this game requires, what sort of conversation system is used, how cruel the game is, if the game features sex or gore, license or detailed copyright info, whether any graphics or sound is optional or not, or any other unusual features of the program that you think the player ought to know about.
NOTE: GameID is defined in modid.t (see above).