Foxaroo project #1: TARDIS Adrift

Yes my friends and I also grieved. At 65 I regard this as still too young to depart this world, and I feel for her husband Brian and her daughter Sadie Miller who at the mere age of 26 has lost her mother. The world has lost a great actress who created a memorable character.

PS I don’t mind people discussing Dr Who in this thread, so long as the moderators approve.

Progress update: Was stuck for a while trying to design the code that actually allows the player to pass a charge from one device to another, however I have now solved it.

Meanwhile I’ve been accumulating a list of leser problems that I haven’t been able to figure out on my own. These aren’t actually interfering with my current project, but I’m keen to hear advice from anyone on these.

Three problems, all of these fairly minor in terms of my current project

Problem #1:
I recently upgraded to the version of Inform7 “24th December 2010” when I started using my new PC. While looking for answers in one of my experimental maps I received an error on code which had been accepted previously. The newer version of Inform7 didn’t like the fact that have a door which is situated between both north & south as well as between inside & outside.

North of Delta Street Alleyway and south of the Musty Foyer is the scratched wooden door.  Inside of Delta Street Alleyway and outside of the Musty Foyer is the scratched wooden door.  The scratched wooden door is a door.  The scratched wooden door is closed.

Error: “scratched wooden door seems to be a door with three ways out (specified ‘North of Delta Street Alleyway and south of the Musty Foyer is the scratched wooden door’ , ‘North of Delta Street Alleyway and south of the Musty Foyer is the scratched wooden door’ and ‘Inside of Delta Street Alleyway and outside of the Musty Foyer is the scratched wooden door’ ), but you can only have one or two sides to a door in Inform: a one-sided door means a door which is only touchable and usable from one side, and an example might be a window through which one falls to the ground below. If you really need a three-sided cavity, best to make it a room in its own right.”

Worked fine in the old version. I guess it’s not really essential to provide “Inside” and “Outside” as supplementary to the compass directions, but if there’s a workaround to this I’ll be very keen to know. In TARDIS adrift it will be handy to offer the player “Inside” and “Outside” for egress through the TARDIS door rather than having to remember which direction the TARDIS is facing at a particular location.

Problem #2:
How do you override the text for when the player is left in darkness? Saying “It is now pitch dark in here!” doesn’t work if night falls, or if the player steps out of the TARDIS onto a planet with a permanently dark region.

Problem #3:
Follows on from the one above. Can you illuminate or darken regions instead of individual rooms?

A TARDIS (like many inter-stellar spaceships) is vast and fully lit when powered up, but fully dark when powered down. Power will be on and off several times during the game. I’ve tried the below, but it produces a run-time error:

[code]The TARDIS Interior is a region. The Console Room, TARDIS Kitchen, Fore end of TARDIS Broadway, Your Bedroom and Boot Cupboard 12 are in the TARDIS Interior.

To Darken the TARDIS:
Now the TARDIS Interior is dark.

To Illuminate the TARDIS:
Now the TARDIS Interior is lit.[/code]
The rough approach would be a full list:

To Darken the TARDIS: [Now the Console Room is dark; Now the TARDIS Kitchen is dark; Now the Fore end of TARDIS Broadway is dark; Now Your Bedroom is dark; Now Boot Cupboard 12 is dark.
However I’d like to avoid that if possible, so that I can more freely add or delete rooms inside the TARDIS.

I don’t know the other answers off the top of my head, but I think you should just be able to do:

To darken the TARDIS: now all rooms in the TARDIS Interior are dark.

In the first example you could try something like this (untested):

Instead of going outside in the Musty Foyer: try going south. Instead of going inside in the Delta Street Alleyway: try going north.

(I think it’s “in” and not “from.”)

In the general case you could maybe say something like this:

Instead of going outside in the Tardis Entryway [or whatever it's called]: try entering the Tardis Door. Instead of going inside when the location is the front side of the Tardis Door or the location is the back side of the Tardis Door: Try entering the Tardis Door.

though I’m particularly not entirely sure about that last bit. Anyway, 3.12 of the documentation might give you some ideas; another thing you can play around with is “the direction of the Tardis Door from the location.”

I do recommend including this; it always bothers me when I’m in a building or something and I can’t use “out” to leave.

That worked a treat, thanks shammack!

Approaches such as these occured to me, but are they able to be re-mapped later in the game? The TARDIS will relocate to different places as the game progresses. I’ve read through chapter 3.12 of the manual and this type of situation doesn’t appear to be covered. I’m sure though that other game designers have had a need for this though. Any large vehicle such as a train, riverboat, ocean liner, submarine, aircraft or other spaceship type would incurr this situation (or maybe they took the easy way out and had the door face the same compass direction each time).

(BTW the name of the location immediately inside the TARDIS door is ‘The Console Room’.)

Same here. :slight_smile:

Well, poop.

OK, here’s what I got [EDIT: Someone with more of a clue might have something better]:

[code]The Console Room is a room. Og is a room. Bog is a room. Log is a room. Nog is a room.

The big dial is in the Console Room. The big dial has a room called the destination. The destination of the big dial is usually Og. The initial appearance of the big dial is “A big dial with a pointer is in the middle of the room.” The description of the big dial is “It can be set to Og, Bog, Log, or Nog. It is currently set to [destination of the big dial].”

The Tardis Door is a door. The Tardis door is open. The Tardis Door is not openable. [Because I don’t want to mess around with “open door”. You might want to, depending on your puzzles.] The Tardis Door is north of the console room. “The Tardis door sits in its usual place, always to the north, thank Zog.”
Instead of entering the Tardis door: [This is the easy part]
move the Tardis-door-prop to the destination of the big dial;
move the player to the destination of the big dial.
.
[And we have to set up a fake door to allow you to return. You could write some code to give the door a direction in each of these places, too, if you like.]
The Tardis-door-prop is a container. The Tardis-door-prop is privately-named. The Tardis-door-prop is enterable. The printed name of the Tardis-door-prop is “Tardis door.” Understand “Tardis” and “door” as the Tardis-door-prop. The description of the Tardis-door-prop is “The Tardis door mysteriously sits in the middle of this trackless wilderness.” The initial appearance of the Tardis-door-prop is “The Tardis door mysteriously sits in the middle of this trackless wilderness.”
Instead of entering the Tardis-door-prop:
move the player to the Console Room;
remove the Tardis-door-prop from play.
Instead of inserting something into the Tardis-door-prop: [It would be a huge mess if you could do this, though it’s probably wiser just to block this completely]
say “You bestow [the noun] to the safety of the Tardis.”;
move the noun to the console room.

The fort is a container in the Console Room. The fort is enterable. The description of the fort is “You’re not sure exactly why you built this fort.”

Instead of setting the big dial to:
if the topic understood matches “Og”:
now the destination of the big dial is Og;
say “You set the dial to Og.”;
otherwise if the topic understood matches “Bog”:
now the destination of the big dial is Bog;
say “You set the dial to Bog.”;
otherwise if the topic understood matches “Log”:
now the destination of the big dial is Log;
say “You set the dial to Log.”;
otherwise if the topic understood matches “Nog”:
now the destination of the big dial is Nog;
say “You set the dial to Nog.”;
otherwise:
say “You have to set it to Og, Bog, Log, or Nog.”

[Here’s the stuff you were actually interested in.]
Instead of going outside in the Console Room: try entering the Tardis Door.
Instead of exiting when the player is in the Console Room: try entering the Tardis Door. [You have to say “the player is in the console room” rather than “the location is the console room” to cover cases where the player is exiting something that’s in the console room – “in the console room” is only true when the player isn’t inside anything else. I think. The fort is there to test this.]
Instead of going inside when the Tardis-Door-Prop is in the location: try entering the Tardis-Door-Prop.

The player carries an ordinary whatsit. [For putting into the Tardis-Door-Prop.][/code]

It’s quite possible I’m misunderstanding the situation, but have you considered creating the TARDIS as an enterable container, and then just doing something like:

instead of entering the TARDIS, now the player is in the Console Room; instead of exiting when the location is the Console Room, now the player is in the location of the TARDIS; instead of going inside when the TARDIS is in the location, try entering the TARDIS;
That way:

  • you could move the TARDIS object wherever you want during the game
  • in/out should always go between the interior and wherever the TARDIS is
  • you wouldn’t have to worry about moving rooms and doors around
  • you’d have an automatic “You can see the TARDIS here” (or whatever) message wherever the TARDIS is

If you need a door on it, you could make the TARDIS object itself openable and understand “TARDIS door” as the TARDIS, which should cover entering from the outside. For the inside, put a separate door adjacent to the Console Room, and instead of going in that direction when the location is the console room, try exiting? (not sure if I have the right syntax for going through a door there, but you get the idea) You would of course also want to check for putting things into the TARDIS, looking inside/outside it, etc. and respond appropriately.

I’m not sure how well that solution fits with your existing world layout, but if I were implementing a TARDIS that’s how I’d do it.

I like it…

[code]Space is a scene.

When Space begins:
move the TARDIS to the Console Room.

[/code]

Inspired by this discussion, I’ve submitted my updated version of Conditional Backdrops to the i7 site. Unless and until it is accepted there, you can find it at:

eyeballsun.org/i/Conditional%20Backdrops.i7x

“An extension to allow a single rulebook to determine the presence of multiple backdrops.”

shammack’s solution seems very nice and much more true to the TARDIS than having a door in the middle of nowhere. Not sure what I was thinking with that description.

Thanks guys. I’ll have a play around with both matt w’s and shammack’s suggestions as soon as I can. Hopefully this weekend.

To clarify: Yes there will definitely be a door on the TARDIS, one that has a key. The door will be pivotal (pun not intended) to several puzzles, the first being how the player will find their way out of the TARDIS having no power available to operate the door mechanism (which forces the player to explore the TARDIS a little before being able to venture outside). They’ll be doing so using the crank handle that appeared in the 3rd Doctor Story “Death to the Daleks” where the TARDIS was left completely without power due to an energy-absorbing tower on the Exxilon city.

The 2nd puzzle I haven’t fully fleshed out the details yet. The TARDIS will still be unpowered when the player has catapulted it into space via the mag-lev rail. While in space the player encounters something (another spaceship, space station, etc - I haven’t yet decided) and gains entry by spacewalking using a personal force field generator (similar to the one used by Borusa in The Invasion of Time, but also able to contain a bubble of breathable air) and gloves so that their hands don’t freeze onto the exterior hull of said spaceship/station. To prevent the TARDIS’ entire reserve of air being drawn out into space, the player has to apply a temporary resin to the internal doors as an air seal before opening the external door.

I also had another idea. Is it possible to have a null room outside the TARDIS acting as a go-between? IE when the player moves through the TARDIS doorway they enter this never-seen room and are transported either inside or outside the TARDIS (depending which way they were going). That way the door could function as a normal door, never needing to actually be moved, and I could easily re-map the movement directions of the null room to suit the current location of the TARDIS? I’ll experiment with that too.

Movable doors will be a vital component when I go to work on my intended project #3, based on The Goon Show where this is very typical of the show’s brand of cartoon physics.
Examples:
The Red Fort. Seagoon’s raiding party steal the door to the Red Bladder’s fort and carry it back to their base, only to have Major Bloodnok abducted through the door when he opens it.
The Vanishing Room. Partway through a murder investigation that Seagoon is bumbling his way through as the detective, the room with the deceased is suddenly shifted to a hotel in Paris, along with Eccles who emerges thinking that he is still in London.
The Treasure in the Lake. In an effort to escape two men he believes to be the police, Seagoon and Willium [SIC] fold up the walls of a house, hide the floor in a sack and put the door up on the (unsuported) ceiling.

(I’m sure there are others, but I need to get to work right now).

It was my bandmate Jim who was the real Dr. Who fan… he named another one of his bands “Invasion of Time!”

Jim’s also really into the Goon Show. Please make sure you announce when these projects are finished because I want to show them to him…

I expect he would have wanted to go with “Ned’s Atomic Dustbin” if it hadn’t already been taken? :smiley:

I’ll be sure to make an announcement when each is ready. There will be a long wait for each however; as a labour of love I’m only able to work on these in my spare time (I’ve even written parts of the code while going to & from work on the train) and as this thread shows, I have a lot to learn before I’m proficient in Inform.

In that case, you should still be able to use my suggestion; you’ll just want to make sure that every time an action opens/closes/locks/unlocks the container or the door, it also sets the other one to the same state (so you don’t end up with the door being open on the inside and closed on the outside, etc.).

Ah, I hadn’t realized you needed two sets of doors. The same principles apply, but instead of moving the player directly to/from the Console Room, you’d probably want a new TARDIS Entryway room that’s separated from the Console Room by a normal door.

I’m not sure I understand this… since you can’t move rooms around during play, you would have to fake it by remapping all the possible entrances/exits using instead rules or something… and if the door is between the null room and the TARDIS, it’s still not going to be accessible from the outside.

If you’re going to be doing a lot of that kind of stuff, I recommend against trying to use the actual “door” kind, since it’s required to be permanently physically located between two rooms. Since you need the doors to be connected in physically impossible ways, you’re going to have to write your own rules for going through the door anyway, so there’s not really any advantage to its being a door. All you really need is an openable, lockable (if desired), enterable object, and containers and vehicles have all those properties built in.

Another possibility is that, if you don’t have any puzzles involving getting back into the TARDIS, you could not bother implementing the door on the outside side; just allow the player to enter the TARDIS without messing about with doors. The players may not notice that they don’t have to open a door to get in, and if they do notice they may not mind. (No one likes seeing “The TARDIS door is in the way” when the TARDIS door is openable.)

Well, it isn’t strictly true that you need two rooms – in my example there’s a room on one side of the door and not on the other, and you intercept all attempts to go through the door. But this point is a good one, that the door kind might not be the most suitable for what you want to do.

Hi All,

Glad to hear. :slight_smile: I always try to avoid playing favourites, but yes I did find shammack’s suggestion easy to implement. More on that further down. I did however study your suggestion in great detail to ensure that I learned from it. Your code about inserting objects into the TARDIS from outside was valuable. Some of the terms are unfamiliar to me though. I recall reading about Inform7 things that are “privately-named” but I’m yet to comprehend the concept. The same goes for “the topic understood” used in the code.

I’m learning… slowly… slowly…

Um… now this is going to get confusing. The internal doors in the abovementioned puzzle are going to be the kitchen door and the aft door, with the player needing to use the entire console room itself as a temporary airlock.

However what you’ve said about needing two sets of doors is still correct.

In the current series of Dr Who they’ve taken the lazy way out and had just the one set of doors serving both the inside and outside. These being the iconic police box’s rather unremarkable hinged doors opened by hand power. However in the classic series, of which my Inform game is based, there were separate internal and external doors on either side of the deus ex machina threshold. The external doors were the aforementioned unremarkable doors of the police box, and again hand powered. The internal doors however were much larger, made of the same material as the walls of the console room, swinging wide open like a pair of gates. They were power driven, operated by one of the switches on the TARDIS console. As best my memory serves, “Death to the Daleks” was the only occasion that they were opened manually, although it can be assumed that they automatically opened and closed in synch with the external doors. It is also important to note that the lock for the TARDIS key was fitted to the external doors. (For sake of clarity I also need to mention that in Season 14, from “The Masque of Mandragora” to “Robots of Death” there was an alternative console room in use which did not appear to have internal doors).

The room wont need to move, I’ll just be remapping the directions. There are a couple of advantages. One being that I can use your enterable container as the external doors, and also have the internal doors functioning as a normal openable doorway. I’ve coded it below. Another being that I can equip the player with a homing device (as featured in the Dr Who stories “Full Circle” and “Mawdryn Undead”) that always points to the null room, effectively pointing to the TARDIS. IF I can get the remapping to work. I seem to be running into a syntax error there.

[code]Fore is a direction. The opposite of Fore is Aft. Understand “f” as fore when the location is nautical.
Aft is a direction. The opposite of Aft is Fore. Understand “af” as aft when the location is nautical.
Port is a direction. The opposite of Port is Starboard. Understand “p” as port when the location is nautical.
Starboard is a direction. The opposite of Starboard is Port. Understand “sb” as starboard when the location is nautical.

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 or groundbased. A room is usually not nautical.

A direction can be nautical, groundbased. A direction is usually not nautical. Starboard, port, fore and aft are nautical.

Before going a nautical direction when the location is not nautical, say “Nautical directions can only be used on board ship.” instead.

Before going an groundbased 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.

A door is usually scenery.

The player carries the TARDIS key, and the homing device. The description of the homing device is “A small gadget that beeps when aimed in the direction of [best route from the location to The TARDIS Threshold].”

The Console Room is a room. The description of the Console Room is “You are in what serves as the control deck of your time machine, or rather what remains of one. Surrounding you are smooth white walls with a honeycomb of recessed opaque circles. In the centre of the room is a fire-damaged piece of apparatus; a pentagonal arrangement of five inclined consoles, each with an array of different controls and instruments, all inactive, some still smouldering.
The main doors of the TARDIS lie fore of the console and are currently [if the main TARDIS doors are open]open[else]closed[end if], while the kitchen is starboard through a wide pair of restaurant-style swinging doors and the TARDIS Broadway lies south through a regular door. A free-standing storage locker sits against the portside wall opposite a coat rack on the starboard wall.” Fore of the console room and aft of The TARDIS Threshold is the main TARDIS doors. The main TARDIS doors are a door.

The big dial is in the Console Room. The big dial has a room called the destination. The destination of the big dial is usually The Rocky Outcrop. The initial appearance of the big dial is “A big dial with a pointer is in the middle of the room.” The description of the big dial is “It can be set to The Rocky Outcrop, The Eden Nightmare, The Empress Broadway, or Nerva Beacon Control Centre. It is currently set to [destination of the big dial].”

Instead of setting the big dial to:
if the topic understood matches “The Rocky Outcrop”:
now the destination of the big dial is The Rocky Outcrop;
move the TARDIS exterior to the destination of the big dial;
[ now The Rocky Outcrop is mapped outside of the TARDIS exterior;][Produces a syntax error]
say “You set the dial to The Rocky Outcrop.”;
otherwise if the topic understood matches “The Eden Nightmare”:
now the destination of the big dial is The Eden Nightmare;
move the TARDIS exterior to the destination of the big dial;
[ now The Eden Nightmare is mapped outside of the TARDIS exterior;][Produces a syntax error]
say “You set the dial to The Eden Nightmare.”;
otherwise if the topic understood matches “The Empress Broadway”:
now the destination of the big dial is The Empress Broadway;
move the TARDIS exterior to the destination of the big dial;
[ now The Empress Broadway is mapped outside of the TARDIS exterior;][Produces a syntax error]
say “You set the dial to The Empress Broadway.”;
otherwise if the topic understood matches “Nerva Beacon Control Centre”:
now the destination of the big dial is Nerva Beacon Control Centre;
move the TARDIS exterior to the destination of the big dial;
[ now Nerva Beacon Control Centre is mapped outside of the TARDIS exterior;][Produces a syntax error]
say “You set the dial to Nerva Beacon Control Centre.”;
otherwise:
say “You have to set it to The Rocky Outcrop, The Eden Nightmare, The Empress Broadway, or Nerva Beacon Control Centre.”

The TARDIS Threshold is a room. [This is a transient or null room and does not require a description as the player never actually stands in this room]. Outside of The TARDIS Threshold is The Rocky Outcrop [Initial setting, and will be changed as the game progresses].

Starboard of the Console Room is TARDIS Kitchen.
Aft of the Console Room is Fore end of TARDIS Broadway.

The Console Room, TARDIS Kitchen and Fore end of TARDIS Broadway are nautical.

The Rocky Outcrop is a room. The description of The Rocky Outcrop is “You are standing on a wind-swept rock formation, gazing across what looks to be an endless desert of shifting sands. The outcrop is not alone; there are many here, some the size of small mountains, but spread out randomly across the somewhat garsih landscape of red and yellow colours. Sand envelops the rock immediately in front of you.”

The Eden Nightmare is a room. The description is “You are surrounded by dense jungle, which includes tangled undergrowth, low-hanging vines, a high canopy that completely obscures the sun, and a few man-eating plants”.

The Empress Broadway is a room. The description is “A long, polished corridor aboard the luxury spaceliner. In the forward direction you can see the unstable matter interface where the two ships were joined during the rematerialisation collsion”.

Nerva Beacon Control Centre is a room. The description is “The forward control room of the Nerva Beacon space station, set up to guide and service space craft navigating their way past Jupiter’s moons”.

The TARDIS exterior is a lockable container in the rocky outcrop. Understand “TARDIS” as TARDIS exterior. The matching key of the TARDIS exterior is the TARDIS key. The TARDIS exterior is enterable. Rule for writing a paragraph about The TARDIS exterior:
say “The TARDIS stands solemnly nearby.”

Instead of inserting something into TARDIS exterior:
say “You bestow [the noun] to the safety of the TARDIS.”;
move the noun to the console room.

Instead of going outside from the Console Room:
try going fore.
Instead of exiting from the Console Room:
try going fore.

Instead of going to the TARDIS Threshold from the Console Room:
if the main TARDIS doors are closed:
say “The TARDIS doors are still closed.”;
stop the action;
otherwise:
say “(You exit the TARDIS).”; [This is just for testing purposes]
now the player is in the location of the TARDIS exterior.

Instead of going to the TARDIS Threshold from The Rocky Outcrop: [Is there a way to make this generic?]
try entering the TARDIS exterior.

Instead of going to the TARDIS Threshold from The Eden Nightmare: [Is there a way to make this generic?]
try entering the TARDIS exterior.

Instead of going to the TARDIS Threshold from The Empress Broadway: [Is there a way to make this generic?]
try entering the TARDIS exterior.

Instead of going to the TARDIS Threshold from Nerva Beacon Control Centre: [Is there a way to make this generic?]
try entering the TARDIS exterior.

Instead of entering the TARDIS exterior when the TARDIS exterior is open:
say “(You enter the TARDIS)”; [This is just for testing purposes]
now the player is in The Console Room.[/code]

I’ve run into the following problems:

#1 : Those syntax errors when I try to re-map the null room to the locaiton of the TARDIS exterior. As far as I can tell those ought to work fine.

#2 : In, out, up and down are not recognised when the location is nautical. Result: “Compass directions make no sense on board ship, but you can use Fore, Aft, Port and Starboard instead.” Seems that the player can “exit” the TARDIS just fine, but not go “outside.” Is there a way to make In, out, up and down recognisable in both types of locations?

#3 : When outside, typing in the commands to open, close, lock, unlock or enter the “TARDIS” causes Inform to try doing these things to the TARDIS key and not to the TARDIS exterior. This happens even though I’ve coded “Understand “TARDIS” as TARDIS exterior”.

#4 : The homing device isn’t functioning within the TARDIS.

The phrase “can be nautical or ground-based” makes “ground-based” the negation of “nautical”. So any room or direction that’s not nautical is ground-based. You can however easily define those properties separately:

[code]A room can be nautical. A room is usually not nautical.

A direction can be nautical. A direction can be groundbased. Starboard, port, fore and aft are nautical.
North, northeast, northwest, south, southeast, southwest, east and west are groundbased.

Before going a nautical direction when the location is not nautical, say “Nautical directions can only be used on board ship.” instead.

Before going an groundbased 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.
[/code]

One way to make the parser not choose the key is to add a “Does the player mean rule”.

Does the player mean opening, closing, locking, unlocking or entering the TARDIS key: it is very unlikely.

(or simply “it is unlikely”). You may want to extend the list of actions that shouldn’t be understood to apply to the key.

Another, more radical way, would be:

The TARDIS key is privately-named. Understand "key" and "TARDIS key" as the TARDIS key.

Making it privately-named, ensures that the game will not understand either “TARDIS”, “key” or “TARDIS key” as the TARDIS key (that’s what the privately-named property’s for). From there you tell the game (afresh as it were) to understand “key” and “TARDIS key” as the TARDIS key; but it still won’t ever understand the mere word “TARDIS” as the TARDIS key.

Also, you may want to do something like this:

The printed name of the TARDIS exterior is "TARDIS".

to prevent exhanges like “> CLOSE TARDIS You close the TARDIS exterior”, when you’re in the same location with the TARDIS exterior.

Just to repeat what Felix said, when we declare that something is “privately-named,” it means that the parser won’t interpret the name that object has in the code as referring to it. Ordinarily when you call an object something like “the TARDIS key,” Inform automatically interprets “Tardis” and “key” and “tardis key” as possibly referring to that object. If you declare “The TARDIS key is privately-named,” then Inform won’t have that automatic understanding.

In my code, if I hadn’t said “The Tardis-door-prop is privately-named,” then player would’ve been able to say “Enter tardis-door-prop” and it would’ve worked. (Which wouldn’t actually have been a big deal, because no one would ever use that command.)

This comes up because the “setting it to” action that lets you enter free-form text; the player can say “set the dial to Og” even though Og isn’t an object in scope, and even “set the dial to frabjous” would be accepted as a command. In a case like this, “the topic understood” is the free-form text that the player has entered. It’s basically analogous to “the second noun,” except it’s a string of text (technically a snippet, I think) instead of an object.

See section 16.5 of the documentation; the grammar for setting it to that’s built in to the standard rules is “set [something] to [text]”, so that text token gives us a value for the topic understood.

Ah, I see. I’m less familiar with the classic series, unfortunately.

I’ve not tested it, but you should be able to do this:

Instead of going to the TARDIS Threshold from the Console Room: if the main TARDIS doors are closed: say "The TARDIS doors are still closed."; stop the action; otherwise: if the location is the Console Room: say "(You exit the TARDIS)."; [This is just for testing purposes] now the player is in the location of the TARDIS exterior; otherwise: try entering the TARDIS exterior.

I’m confused about this too… that appears to work for other directions, just not inside/outside. Hopefully someone else knows why.

The required syntax, I believe, is now The Rocky Outcrop is mapped outside the TARDIS exterior without the “of”—similarly for all the non-compass compass directions: above, below, inside and outside.

Well, what do you know… that works. It’s a bit confusing that that’s the opposite of the syntax you have to use when defining the rooms in the first place.