I’m trying to implement shipboard directions as per example 42 (Fore). I believe I have copied the example pretty literally, but it’s not working for me.
The starboard is a direction. The starboard has opposite port. Understand "s" as starboard when the location is nautical.
The port is a direction. The port has opposite starboard. Understand "p" as port when the location is nautical.
The fore is a direction. The fore has opposite aft. Understand "f" as fore when the location is nautical.
The aft is a direction. The aft has opposite fore. Understand "a" as aft when the location is nautical.
Does the player mean going a nautical direction when the location is nautical: it is very likely.
Index map with fore mapped as north.
Index map with aft mapped as south.
Index map with port mapped as west.
Index map with starboard mapped as east.
A room can be nautical of earthbound. A room is usually not nautical.
A direction can be nautical or earthbound. A direction is usually not nautical.
Starboard, port, fore, aft, up, down, the inside, and the outside are nautical.
Before going a nautical direction when the location is not nautical, say "Nautical directions can only be used on board ship."
Before going an earthbound direction when the location is nautical, say "Compass directions make no sense on board ship, but you can use [list of nautical directions] instead." instead.
The Cockpit is a room.
The Cargo Hold is aft from the Cockpit.
The Cockpit and the Cargo Hold are nautical.
is yielding
Problem. The sentence 'A room is usually not nautical' seems to tell me that 'room' and 'not nautical' have to be the same, but it looks odd to me. 'room' is something generic - not something definite; but 'not nautical' is (presumably) something specific. So it's as if you'd written 'A room is the Sydney Opera House'. (Which room, exactly? You see the trouble.)
--------------------------------------------------------------------------------
Problem. In 'A direction can be nautical or earthbound' , you proposed the new either/or property 'nautical': but this already has a meaning.
See the manual: 4.7 > 4.7. New either/or properties
--------------------------------------------------------------------------------
Problem. In order to act on 'A direction is usually not nautical' , I seem to need to give a new meaning to 'not nautical', something which was created by the earlier sentence 'A room is usually not nautical' . That must be wrong somehow: I'm guessing that there is an accidental clash of names. This sometimes happens when adjectives are being made after objects whose names include them: for instance, defining 'big' as an adjective after having already made a 'big top'. The simplest way to avoid this is to define the adjectives in question first.
--------------------------------------------------------------------------------
Problem. The sentence 'The Cockpit and the Cargo Hold are nautical' appears to say two things are the same - I am reading 'Cockpit' and 'nautical' as two different things, and therefore it makes no sense to say that one is the other: it would be like saying that 'Tarzan is Jane'. It would be all right if the second thing were the name of a kind, perhaps with properties: for instance 'Treehouse is a lighted room' says that something called Treehouse exists and that it is a 'room', which is a kind I know about, combined with a property called 'lighted' which I also know about.
Any idea what I’m missing?