"Creating New Kinds of Things" by John Timmons
The release number is 1. The story creation year is 2007. The story headline is "Creating New Kinds of Things". The story description is "We often create common objects in our world: tables, chairs, sofas, etc. These are usually built each time from existing kinds and properties. This demonstrates how we can create new kinds and save ourselves a lot of keystrokes."
Release along with the source text and a website.
[- - - - - - - - - -]
[First define your new kinds. Doing this first prevents problems that may come up later.]
[Here we create a new kind called a 'table' that is a supporter: something that we can put things on and is fixed in place.]
A table is a kind of supporter.
[Here we create a new kind called a chair that is both a supporter and enterable. Inform understands something that we can either sit or stand on as 'enterable.' ]
A chair is a kind of thing that is an enterable supporter.
[By default, objects of the supporter kind cannot be taken by the player. Here we create another new kind that is built from our new chair kind and can also be picked up and carried by the player.]
A portable_chair is a kind of chair that is portable.
[- - - - - - - - - -]
The Livingroom is a room. "Your basic living area."
[Here we create a coffee table with our new table kind.]
The coffee table is a table in the Livingroom. The description is "This wooden coffee table is a convenient surface."
[Here we create a vase of flowers and locate them on the coffee table.]
A vase of flowers is on the coffee table.
[Here we create a red sofa with our new chair kind.]
A red sofa is a chair in the Livingroom. The description is "The sofa looks like a very comfortable place to sit."
[Inform understands 'sit on sofa' or 'get on sofa' as 'entering the sofa. Here is an example of how we might check on this action.]
After entering the red sofa:
say "Mmm, this sofa is reallly comfortable."
[Here we create a stool with our new portable_chair kind.]
A stool is a portable_chair in the Livingroom.
Test me with "x table / take flowers / put flowers on table / sit on sofa / get up / stand on stool / get up / take stool".