Under normal circumstances, if you have an immoveable object, you would either:
(a) describe it in the room description and give it an attribute of scenery; or
(b) not describe it in the room description and give it an attribute of static.
If you choose option (a) and the scenery object is a supporter and there are objects on the supporter, then the library lists those objects after the room description, but before the other objects are listed. For example, “On the table are some food scraps.”
Unfortunately, the library does not do the same thing for containers and there are no hooks to provide for this. I want to say something like, “In the sink are some dirty dishes.”
The library also uses one paragraph per supporter. I would prefer to compress this into one paragraph for all supporters and containers with one sentence each.
As far as I can see, the only way to overcome the flawed logic in the library is to replace Locale with a custom routine. Unfortunately, like everything in the library, it is very hard to work out what’s going on.
Has anyone ever done this before?
@DavidG, as you’re working on the library at the moment, could this be added to the list of things to do?
Incidentally, it is easy to do the listing of objects on scenery containers (and scenery supporters) AFTER the other objects are described using a custom LookRoutine, but it would be better to include them after the room description and BEFORE the other objects.