You are in a room.
It's cold in here. A pile of charred lumber lies in the center.
You can see a burnt-out fire here.
> take fire
You pick up the burnt logs. They're of no use anymore.
> l
You are in a room.
It's cold in here.
I came across this thread last night because I had the same question. I wanted to know exactly how to use it, because it sounded like a great feature. Then I got to thinking about it, what if you want to change the in-room description based on the condition of an object?
There is no script option for an object's in-room description. I thought I'd try to get sneaky and override that by changing the attribute setting to a script attribute via the object attribute tab, but that failed (no error messages, but no in-room description was added, either). However, I did get the description to change by creating a turn script that modified the string value of the_object_in_question.inroomdescription. After further thought, I realized that it was much simpler to change it through the object itself.
Example:
The starting value, set from the setup tab of an object named "chest":
chest.inroomdescription = "A chest gets your attention."
The value is changed after opening the chest by a script on the container tab:
chest.inroomdescription = "You hear voices screaming from the box."
The value is changed after closing the chest by a script on the container tab:
chest.inroomdescription = "The voices have been silenced."
Any thought/ideas from the experts in the forum?
That's the right way to do it. You must only take care that inroomdescription does not work with rooms that create the room description by script.