"purloin all"

I just noted a slightly peculiar behavior:

"Demo" by Peter Orme.

the demo is a room. The stone is a thing in the demo. Mr Miyagi is a man.

What is peculiar about this?

Purloin is a debug command. It does not follow the normal rules of portability.

I liked that.

Here’s the way to another place you may not have been: The Place is a room. The player is lit.

I didn’t know this was a testing command, or what it did/does. I’d noticed it in the General Rules in passing, but assumed it was a synonym for TAKE or STEAL or something. It’s not mentioned in the Inform docs, but then I don’t think ABSTRACT is either - I only learned about that from Aaron Reed’s book.

  • Wade

Well, I just thought it was a little odd to be carrying directions around, and maybe people. It would seem more useful if this just fetched all regular things which are not fixed in place? But whatever.

@severedHand, the “purloin something” (which teleports any thing into the player’s possessions) and “gonear something” (which teleports the player to a room or to the location of any thing) are really useful testing commands!

Also, in the extension Locksmith by Emily Short you’ll find “unlockall” command which unlocks everything in the world.

Thanks. Yeah, and here I was acquiring objects during testing by doing ‘abstract (thing) to me’, like a chump.

  • Wade

I think you could define an out of world action “purall” which could do:

carry out puralling:
now player has all not fixed in place things;

Reserved\Tests.i6t has a list of tests–I don’t know if it tells you anything new, but it may be neat to see the guts of it all.

I just create my own debugging commands. However, this was well before I found out about Inform 7’s debugging commands. This is what I use as as equivalent to purloin.

[code]Calling is an action applying to one visible thing. Understand “Call [any thing]” as calling.

Check calling (this is the standard check calling rule):
if the noun is fixed in place, say “[The noun] can’t be moved.” instead.

Carry out calling (this is the standard carry out calling rule):
say “[The noun]['s-'re] now here.”;
move the noun to the location of the player.[/code]

Hope this helps.