Message-ID: <3D112517.6070006@csi.com>
Date: Wed, 19 Jun 2002 20:43:03 -0400
From: John Colagioia <JColagioia@csi.com>
User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:0.9.4.1) Gecko/20020314 Netscape6/6.2.2
X-Accept-Language: en-us
MIME-Version: 1.0
Newsgroups: rec.arts.int-fiction
Subject: Re: [CONTENT] Directionless IF
References: <Xns922CA1DEDE6DFjoaomendesnetcabopt@194.65.14.150> <3D0B9293.80707@csi.com> <8bc3adfc.0206190738.3222e9b4@posting.google.com>
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
NNTP-Posting-Host: ool-182f30fa.dyn.optonline.net
X-Original-NNTP-Posting-Host: ool-182f30fa.dyn.optonline.net
X-Trace: excalibur.gbmtech.net 1024533416 ool-182f30fa.dyn.optonline.net (19 Jun 2002 20:36:56 -0400)
Organization: ProNet USA Inc.
Lines: 66
X-Authenticated-User: jnc
Path: news.duke.edu!newsgate.duke.edu!nntp-out.monmouth.com!newspeer.monmouth.com!nntp.abs.net!uunet!dca.uu.net!excalibur.gbmtech.net
Xref: news.duke.edu rec.arts.int-fiction:105308

Jayzee wrote:
[...]

>If you're feeling generous, I'd also appreciate advice on how to
>nobble the code in "spin" that disables the ordinary compass
>directions.
>

I haven't taken a *good* look at the code in question (though I did
glance at it briefly, and mentioned it elsewhere in the thread), but I
think it's a full program, rather than a library, which is why you're
having trouble integrating it.

If you rip out the "content" (rooms and non-direction objects) of the
code, and replace it with your own, that'll work at least until someone
with more patience and experience can hack through and turn it into a
proper library.

>I've no objection to players using compass directions
>rather than "go left" or "go back" as spin allows - in fact if I can
>work out how to code it, I'd like to put a switch in so that players
>could type COMPASSTRAVEL ON  and the room descriptions would then show
>north, south etc in the traditional style.
>

Actually, you make a good point (actually, you made the good point
above, which I snipped in an effort to get to your
question/request--oops!).  It's not the *movement* that's
counterintuitive, but the room descriptions.

However, be that as it may (whatever *that* means...), it's a lot harder
to describe rooms properly, since you honestly *don't* know which way
the player is facing.

I mean, you can make the assumption that the player stands at attention
when he arrives in a room, and make that his current orientation, but is
that really any more realistic than, for example, assuming that he
instantly reorients himself to face the "most interesting" thing in the
room?  And is either option any more realistic than assuming that the
player has "cased" the room, and you're just reporting the abstract
results (in terms of compass directions)?

>A side thought for the "exits" verb; would it be possible to make this
>the response to a blank return? (The parser normally responds "excuse
>me?")
>

The easy, though icky, way is to track down the spot where "excuse me"
appears, and execute the routine associated with the relevant verb
("ExitsSub()," or "<<Exits>>" in Inform, for example).  You can do
better than that by figuring out where the "blank line parsing" happens,
and make the call there, but that strikes me as a lot more work.

>I think hitting return for a list of (currently known) exits
>wouldn't be too arduous.
>

I don't know.  It's not exactly intuitive.  It's something that
(assuming it's undocumented, since modern IF tends to not be packaged,
for obvious reasons) will either be found by accident, or not at all.

If you *must* keep the directions separate from your room descriptions,
I'd suggest something else I don't like (but is at least cleaner,
overall):  Put the compass rose up in the status line so that there's
*no* typing involved.

