Subject: Rooms and "Free Entry"

From: [email-masked] (Jack Eifrig)
Date: Sun, 22 Aug 1993 15:25:56 -0700

I was messing around with the "free entry" property of rooms the other day,
and discovered some "unexpected behavior."  (It's not clear if this is a
bug, or just me misinterpreting the meaning of "free entry".)

If a room is *not* set for "free entry", the only way for an object to enter
the room is:

	1) Via invoking an approved exit (the whole "blessed object" idea.)
	2) Being owned by the owner of the room.
	3) Being on the "residents" list of the room.

In particular, you can't drop anything there!  I propose that a fourth
condition be added:

	4) The entering object's current location is within the room.

My understanding of "free entry" was that it was intended to be the 
equivalent of TinyMU*'s "JUMP_OK" flag:  If a room was not set "free entry",
you just couldn't teleport there.

What do other people think of this?  Granted, it weakens the strength of
a room's security considerably; in particular, there's no way to stop people
from leaving a "portal" object within a room that is set "not free entry",
and using it as a sort of teleportation pad.  On the other hand, if there
aren't too many programmers around, it let's you make more interesting puzzle
rooms that don't behave too weirdly: it's very counter-intuitive to be unable
to drop something because of the room you are in.  :-)

---

From: "Jacqueline D. Hamilton" <[email-masked]>
Date: Sun, 22 Aug 1993 15:41:33 -0700

> 	4) The entering object's current location is within the room.

Good idea.  In fact, I'd already altered the rooms on my moos to
allow this.  Its easy enough to add another condition to $room:accept,
if what.location.location == this...

Another more formidable addition was hacking the :accept to allow
return from editors.  Since we wanted people to be able to return
to a room if they'd left from it, but not @move to any room on the 
MOO from an editor.

-j.

---

From: Jonathan Bradshaw <[email-masked]>
Date: Sun, 22 Aug 1993 18:35:28 -0700

> to a room if they'd left from it, but not @move to any room on the 

My solution for that was to use ISA($generic_editor) and .owner == $hacker
to stop people making a child of the generic editor to teleport with!

However, this brings up a point. When to use :accept and when to use
:is_unlocked_for for these additions?

 Jonathan Bradshaw | Preferred E-Mail is [email-masked] | Ham N9OXE
 WNDU-AM/FM/TV South Bend, IN | Disclaimer "My opinions are not my employers"
 "If any girl rejects you, don't you doubt it's part of the .plan"- D. Gibson