Modifying Default Library Messages (ADV3LITE)

Pretty simple question that I couldn’t find in the manual, I’m sure it’s in there and I overlooked it somehow, basically in adv3lite there’s a lot of default ‘messages’ that will appear in some way or another, for example in this gameplay snippet:

A beat up leather steering wheel waits in front of you. Smoke burns your lungs courtesy of the cigarette you've not removed, won't make for safe driving.
//not auto generated, all of this is done through a custom interiordesc and contents indexing


You are in the car. // autogenerated


The car is open and contains a cigarette. //autogenerated


You can see curb here. //car is transparent, the curb is outside and part of the room, autogenerated

This is usually fine, but in some instances I can imagine I’ll want to modify/overwrite these, by replacing our outright removing them in some cases. That goes for all three cases shown. Ideally on a case by case basis instead of changing the entire class responsible for these.

So how do I do so, help would be appreciated.

There are a number of ways you can achieve this, depending on what you’re trying to do in what context.

At least some of the cases you mention could be handled simply by defining the specialDesc (or initSpecialDesc) property on the object concerned, for example:

curb: Fixture 'curb'
   "It's just a curb, running alongside the road. "
   specialDesc = "A curb runs along the side of the road. "
   cannotTakeMsg  = 'You can hardly walk away with the curb! '
;

If you don’t want the curb mentioned at all, defining it as a Fixture should suffice to prevent it being listed in the room description.

The most general mechanism for customising library messages is with a CustomMessages object. This is described in the discussion on Messages in the Library Manual. tads.dev/docs/adv3lite/docs/manual/message.htm](https://tads.dev/docs/adv3lite/docs/manual/message.htm)

Ways of customising how things are described in room descriptions (as in most of your examples) are explained in the chapter on Room Descriptions in the Library Manual tads.dev/docs/adv3lite/docs/manual/roomdesc.htm.

The Library Manual article on Lists and Listers tads.dev/docs/adv3lite/docs/manual/lister.htm may help you with the way some lists are shown.

If you haven’t done so already, you might want to look at the article “Analysis on a Transcript” in the Adv3Lite Technical Manual tads.dev/docs/adv3lite/docs/techman/t3messages.htm, which gives a number of common examples.

2 Likes

Thank you! The Room Descriptions chapter was pretty much exactly what I was looking for! I’ll be sure to read the rest as well!

1 Like

thank u for linking to the site I made to host your documentation eric!! :face_holding_back_tears:

1 Like

Thank you for hosting the site!
No hurry, but have you got the documentation for the recent release (version 2.2.1)?

Ah, I have 2.2…? I can update soon, and will try to fix search then :slight_smile: if it’s not too much to ask, fixing the libref framesets to be iframes would make this a lot easier heh (just download and host as is). we can move more conversation to that thread if needed