From graham@gnelson.demon.co.uk Thu Dec 30 15:53:07 CET 1999
Article: 67989 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newsfeeds.belnet.be!news.belnet.be!news-x.support.nl!bullseye.news.demon.net!demon!news.demon.co.uk!demon!gnelson.demon.co.uk!graham
From: Graham Nelson <graham@gnelson.demon.co.uk>
Newsgroups: rec.arts.int-fiction
Subject: Re: Historical: colossal cave?
Date: Thu, 30 Dec 1999 13:43:32 +0000
Organization: none
Message-ID: <ant301332d07M+4%@gnelson.demon.co.uk>
References: <84e3dq$qh6$1@baker.cc.tut.fi> <84fgu2$jeb$1@neptunium.btinternet.com>
NNTP-Posting-Host: gnelson.demon.co.uk
X-NNTP-Posting-Host: gnelson.demon.co.uk:194.222.103.187
X-Trace: news.demon.co.uk 946563877 nnrp-01:1469 NO-IDENT gnelson.demon.co.uk:194.222.103.187
X-Complaints-To: abuse@demon.net
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
X-Newsreader: ANT RISCOS Marcel [ver 1.46]
Lines: 20
Xref: news.lth.se rec.arts.int-fiction:67989

In article <84fgu2$jeb$1@neptunium.btinternet.com>, David Kinder
<URL:mailto:D.Kinder@btinter-remove-to-reply-net.com> wrote:
> > I just read Craft of Adventure document and would like to know
> > if the very first original Will Crowther's adventure is available
> > somewhere? That first version where there is no problems as in 1977
> > version.
> 
> The very original (pre Don Woods, so no magic etc.) version is
> believed to be lost - the oldest sources around are the original PDP
> Fortan source for Woods' 350 point version.

"No magic etc." is a simplification, I think.  When I last looked
into this, I had the impression that more of the ideas are
Crowther's than is generally allowed.  The snake and bird are
Crowther's puzzles, for instance, and the claim sometimes made
that Crowther's version didn't have puzzles is false.

-- 
Graham Nelson | graham@gnelson.demon.co.uk | Oxford, United Kingdom



From okblacke@my-deja.com Tue Jan  4 16:17:24 CET 2000
Article: 68099 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!fu-berlin.de!arclight.uoregon.edu!logbridge.uoregon.edu!nntp2.deja.com!nnrp1.deja.com!not-for-mail
From: okblacke@my-deja.com
Newsgroups: rec.arts.int-fiction
Subject: Re: Player freedom vs. Author freedom
Date: Tue, 04 Jan 2000 09:31:24 GMT
Organization: Deja.com - Before you buy.
Lines: 38
Message-ID: <84sele$or6$1@nnrp1.deja.com>
References: <386EB6E7.E3920408@email.com> <84qbvb$8gr$1@nnrp1.deja.com> <84roa1$9bq$1@nnrp1.deja.com>
NNTP-Posting-Host: 63.198.128.215
X-Article-Creation-Date: Tue Jan 04 09:31:24 2000 GMT
X-Http-User-Agent: Mozilla/4.5 [en] (Win98; I)
X-Http-Proxy: 1.0 x23.deja.com:80 (Squid/1.1.22) for client 63.198.128.215
X-MyDeja-Info: XMYDJUIDokblacke
Xref: news.lth.se rec.arts.int-fiction:68099

In article <84roa1$9bq$1@nnrp1.deja.com>,
  skiprosebaugh@email.com wrote:
> The point is, Black doesn't seem to have a brain. It's like Mr. Nelson
> said (No offense intended.) "Hmm. Black's gonna change WWI. I know,
> let's save the archduke. Alright. Now, we'll change the Titanic. I
know,
> let's prevent survivors. (That's what not sending a SOS or CQD would
> do!) That sounds good." and he goes off and implements it without
> thinking about Black's motivation to do it. First Black prevents a
war,
> saving millions of soldiers, then Black tries to kill off the Titanic
> survivors. Something doesn't fit here.

Sure: You're refusing to accept that Graham wrote a story other than the
one you wanted to read. And now you're criticizing him for that.

Black's motivations have been explained. It's one thing not to buy them
and another to say that Graham glibly implemented something without
considering the effects.

> So? I don't care. If White were a Jew, and visited the Holocaust, how
> likely would it be that things would be left alone. It's certainly
> possible, seeing what happens when you let Black alone at WWI. I have
> several friends who are Jews. If I were playing, you think there's any
> chance I'd leave things alone, even to finish the game? I mean, war I
> can tolerate, but not that.

So, then, you'd be wanting to play a different game, then.  I'd
recommend staying away from "Photopia", too, though, because there are
things in that you just *have* to leave alone, no matter how much you'd
like to change them.

--
[ok]


Sent via Deja.com http://www.deja.com/
Before you buy.


From emshort@mindspring.com Wed Jan  5 11:13:27 CET 2000
Article: 68137 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!skynet.be!newsfeed00.sul.t-online.de!t-online.de!news-MUC.ecrc.net!news-FFM2.ecrc.net!news.mindspring.net!firehose.mindspring.com!not-for-mail
From: "Emily Short" <emshort@mindspring.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: Player freedom vs. Author freedom
Date: Wed, 05 Jan 2000 02:09:17 -0700
Organization: MindSpring Enterprises
Lines: 73
Message-ID: <84v0v8$9ng$1@nntp5.atl.mindspring.net>
References: <386EB6E7.E3920408@email.com> <84roa1$9bq$1@nnrp1.deja.com>
	 <84sueb$345$1@nnrp1.deja.com> <84tgam$cur$1@watserv3.uwaterloo.ca>
	 <FntwMH.p3@world.std.com>
NNTP-Posting-Host: a5.79.20.73
Mime-Version: 1.0
Content-Type: text/plain; charset="US-ASCII"
Content-Transfer-Encoding: 7bit
X-Server-Date: 5 Jan 2000 08:56:08 GMT
X-Newsreader: Microsoft Outlook Express for Macintosh - 4.01 (295)
Xref: news.lth.se rec.arts.int-fiction:68137


----------
In article <FntwMH.p3@world.std.com>, buzzard@world.std.com (Sean T Barrett)
wrote:


>***   SPOILERS: Jigsaw   ***
>
>
>Joe Mason <jcmason@undergrad.math.uwaterloo.ca> wrote:
>>
>>
>>
>>
>>
>>
>>
>>
>>          This space intentionally left blank.
>>
>>
>>
>>
>>
>>
>>
>>
>   Be put in a horrific, horrific delimma that obligates me
>   to kill someone (echoing an infamous philsophy/morality
>   gedankenexperiment).  [Personally, I think anyone who
>   thinks that in a hypothetical Holocaust-involving Jigsaw
>   it's acceptable for the game to demand you to kill one
>   person but not for you to allow millions of others to
>   perish needs to rewind their moral compass.]

Arguably so.  [Thanks, btw, for this unexpected little metaphor.  I have yet
to meet a winding compass, but I find the concept charming.]  Yes, the
dilemma is horrific, and it is more genuine, and more significant, for not
using the Holocaust.  Graham's reason for not wanting to include it makes
perfect sense to me, but I also think that the use of an event so freighted
would have been, from an artistic point of view, a mistake.  The Holocaust
is one of our few remaining pieces of common cultural mythology -- by which
I do *not* mean it didn't happen, but simply that it is widely known, and
discussed, and used as a proof against which other evils may be judged.  And
so (because we already know the answer) who would even bother to ask,
"Should this have been allowed to happen?"

Revolving the matter around the Archduke, who is at least to most of us
little more than a dim memory from history class, and who carries no special
emotional coloring, puts the dilemma on a fairer ground.  

Now here is the sticking point: I do agree with Jigsaw's enforced
conclusion, once for the rather abstract reason that playing God is
dangerous, and again, somewhat more specifically, because I believe that
history is the result of the moral choices of billions of people.  To mess
with it would be to tamper with their freedom, and would at best have
ambiguous repercussions re. the state of their souls.  Since I do agree with
White's agenda, I have to accept the results for the gameplay -- for
instance, that the Archduke must die as scheduled.  And, I suppose, that the
Holocaust would have to be allowed to go forward.  (At this point one is,
Pilate-like, reaching for a bowl of water and a washcloth...)  If I'd
encountered a scene in which I'd actually had to carry through on this,
though, I think I would have found it too much to take -- too manipulative,
too weighty, and too trite, all at once.  The single bullet for a single man
got the same idea across, without clouding the issue.

Not everyone is likely to agree with the reading on my moral compass. 
(Perhaps it has wound down after all.  Or the Earth's moral field has
flipped polarities.)  But I think the point stands regardless: it would have
damaged the delicacy of the work to have included a choice whose
significance, to almost all of the audience, is predetermined.

ES


From skiprosebaugh@email.com Mon Jan 10 18:56:21 CET 2000
Article: 68271 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newsfeed.berkeley.edu!netnews.com!newspeer1.nac.net!news.maxwell.syr.edu!nntp2.deja.com!nnrp1.deja.com!not-for-mail
From: Skip the Penguin <skiprosebaugh@email.com>
Newsgroups: rec.arts.int-fiction
Subject: [Inform] Program which prints its source
Date: Fri, 07 Jan 2000 23:01:48 +0000
Organization: Deja.com - Before you buy
Lines: 44
Message-ID: <3876705C.FCC5FD71@email.com>
NNTP-Posting-Host: postnews.dejanews.com
Mime-Version: 1.0
Content-Type: text/plain
Content-Transfer-Encoding: 7bit
X-Mailer: Mozilla 4.61 [en] (X11; I; Linux 2.2.13-7mdk i586)
X-Accept-Language: en
To: rec.arts.int-fiction@list.deja.com
X-DejaID: _S7vnFcxsBK4bgr2svZHTqA=
Xref: news.lth.se rec.arts.int-fiction:68271

I had to do some real hacking to the printf example in the DM to get
this to work. Speaking of which, one of the lines needs to be removed
>from  that example to make it work in any case.

Array pt table 180;
[Main s j k;
s="Array pt table 180;%r[Main s j k;%rs=%c%s%c;%r%doutput_stream 3
pt;%rprint (string) s;%r%doutput_stream -3; %rj=pt-->;%rfor
(k=2:k<j+2:k++)%r{   if (pt->k == '%%')%r{   switch(pt->(++k))%r {  
'%%': print %c%%%c;%r'c': print (char) 34;%r'd': print (char) 64;%r's':
print (string) s;%r 'r': new_line;%r}%r}%relse print (char)
pt->k;%r}%r];";
@output_stream 3 pt;
print (string) s;
@output_stream -3; 
j=pt-->0;
for (k=2:k<j+2:k++)
{   if (pt->k == '%')
{   switch(pt->(++k))
 {   '%': print "%";
'c': print (char) 34;
'd': print (char) 64;
's': print (string) s;
 'r': new_line;
}
}
else print (char) pt->k;
}
];

-- 
A beggar asked a millionare,
"How many more dollars
Would it take to
Make you truly happy?"
The millionare,
Reaching his gnarled hands
Into the beggar's cup, replied,
"Only one more!"
- Calvin Miller, A Requiem For Love


 Sent via Deja.com http://www.deja.com/
 Before you buy.


From dns361@merle.acns.nwu.edu Wed Jan 12 19:35:32 CET 2000
Article: 68467 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!cam-news-hub1.bbnplanet.com!news.gtei.net!hermes.visi.com!news-out.visi.com!newsfeed.direct.ca!logbridge.uoregon.edu!newsfeed.stanford.edu!news.crhc.uiuc.edu!vixen.cso.uiuc.edu!newsfeed.acns.nwu.edu!news.acns.nwu.edu!merle.acns.nwu.edu!dns361
From: Second April <dns361@merle.acns.nwu.edu>
Newsgroups: rec.arts.int-fiction,rec.games.int-fiction
Subject: Re: XYZZY Awards: Vote for the best games of 1999
Date: Wed, 12 Jan 2000 10:07:38 -0600
Organization: Northwestern University, Evanston, IL, US
Lines: 50
Message-ID: <Pine.HPP.3.93.1000112094806.13505A-100000@merle.acns.nwu.edu>
References: <eileen-1101002032190001@216-164-221-115.s115.tnt4.nyw.ny.dialup.rcn.com>
Reply-To: Second April <dns361@merle.acns.nwu.edu>
NNTP-Posting-Host: merle.acns.nwu.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
In-Reply-To: <eileen-1101002032190001@216-164-221-115.s115.tnt4.nyw.ny.dialup.rcn.com>
Xref: news.lth.se rec.arts.int-fiction:68467 rec.games.int-fiction:48819

On Tue, 11 Jan 2000, Eileen Mullin wrote:

> Hello, strangers! :-)
> 
> Yes, it's that time again: time to vote for the best games of the year
> 1999 in the yearly XYZZY Awards. All games first released in 1999 are
> eligible -- you can find the ballot at
> http://www.xyzzynews.com/99nominees.html.

Thanks, Eileen!

Time for my annual quibble. Suppose someone got around to playing exactly
one of the 128 games released in 1999. Let's say it was a not particularly
notable speedIF game, with one NPC and one puzzle. Would such a person be
justified in firing off an XYZZY awards vote, naming that speedIF game in
all categories? My intuition says no.

On the other hand, I'd submit that anyone who's played every single thing
on that list has way, way, way too much time on his or her hands, and I
trust that such folks are quite few.

So: how much of the year's output should one have played to vote on the
XYZZYs in good conscience? All the non-speedIF? But that's an a priori
judgment that the speedIFs aren't any good, which, particularly for awards
like Best Puzzle, isn't necessarily fair.

I'm not sure this is the sort of thing that necessarily evens out, either.
If the nominees don't turn out to be Varicella, Mulldoon, Worlds Apart,
perhaps Ballerina, perhaps Enemies, and a few comp entries, I'd be rather
shocked, because that's what's been discussed here this year. It may be
that, amazingly, those are what deserve to be nominated, but that would be
quite a coincidence.

This is not a call for a change in the XYZZYs; I don't think any other
format could solve the problem. This is just a conscience question: does
anyone else feel a twinge, voting when you've played a relatively small
sample of what's on the list?

Duncan Stevens
dns361@merle.acns.nwu.edu

But buy me a singer to sing one song--
Song about nothing--song about sheep--
Over and over, all day long;
Patch me again my thread-bare sleep.

--Edna St. Vincent Millay





From obrian@ucsu.Colorado.EDU Wed Jan 12 19:36:26 CET 2000
Article: 68469 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newsfeed.berkeley.edu!news.colorado.edu!ucsu.Colorado.EDU!obrian
From: Paul O'Brian <obrian@ucsu.Colorado.EDU>
Newsgroups: rec.arts.int-fiction,rec.games.int-fiction
Subject: Re: XYZZY Awards: Vote for the best games of 1999
Date: Wed, 12 Jan 2000 10:26:45 -0700
Organization: University of Colorado, Boulder
Lines: 33
Message-ID: <Pine.GSO.3.96.1000112101826.6982A-100000@ucsu.Colorado.EDU>
References: <eileen-1101002032190001@216-164-221-115.s115.tnt4.nyw.ny.dialup.rcn.com> <Pine.HPP.3.93.1000112094806.13505A-100000@merle.acns.nwu.edu>
NNTP-Posting-Host: ucsu.colorado.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: peabody.colorado.edu 947698009 4231 128.138.129.83 (12 Jan 2000 17:26:49 GMT)
X-Complaints-To: abuse@colorado.edu
NNTP-Posting-Date: 12 Jan 2000 17:26:49 GMT
In-Reply-To: <Pine.HPP.3.93.1000112094806.13505A-100000@merle.acns.nwu.edu>
Xref: news.lth.se rec.arts.int-fiction:68469 rec.games.int-fiction:48820

On Wed, 12 Jan 2000, Second April wrote:

> This is not a call for a change in the XYZZYs; I don't think any other
> format could solve the problem. This is just a conscience question: does
> anyone else feel a twinge, voting when you've played a relatively small
> sample of what's on the list?

Well, yeah, although I do try to play all of the major games from that
year for at least an hour or two before voting. (Of course, this brings up
the entirely separate and equally thorny issue of whether it's fair to
vote on a game without having finished it.) Then again, it strikes me that
many of the major awards after which the XYZZYs are patterned may suffer
>from  a similar difficulty: have all the voters for the Best Picture Oscar
really seen every single movie released that year? I know that studios
are in the midst of campaigning heavily to advance their best candidates,
sending out tapes and such to all the voters (never mind that the
experience of seeing a movie on a TV set is far different from seeing it
in a theatre), but even with all that I doubt that every voter's knowledge
is fully comprehensive. 

In past years, the XYZZY awards have always, in my opinion, been won by
highly worthy games. Until that trend changes, I'm going to vote with my
incomplete knowledge and not worry about it. In the words of Homer
Simpson, "Your conscience!?  Lisa, don't let that pushy little weenie tell
you what to do!"

-- 
Paul O'Brian  obrian@colorado.edu  http://ucsu.colorado.edu/~obrian
Watch for SPAG #19, the annual IF Competition special issue!
To be released soon...                http://www.sparkynet.com/spag





From tril@host.ott.igs.net Wed Jan 19 18:08:24 CET 2000
Article: 68709 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!arclight.uoregon.edu!wn4feed!worldnet.att.net!206.191.82.231!rockie.attcanada.net!172.31.25.103!prairie.attcanada.net!newsfeed.attcanada.net!216.58.1.11!nntp.igs.net!news.igs.net!host.ott.igs.net!tril
From: Suzanne Britton <tril@host.ott.igs.net>
Newsgroups: rec.arts.int-fiction
Subject: [OT] New Testament as History (was Re: [OT] changing history)
Date: 19 Jan 2000 16:52:07 GMT
Organization: IGS - Information Gateway Services
Lines: 53
Message-ID: <864q3n$a1c$1@news.igs.net>
References: <85vh8j$3m1$1@news.igs.net> <38835A0A.4EEF2194@bellatlantic.net> <Pine.HPP.3.93.1000117203521.27502B-100000@merle.acns.nwu.edu> <3884CEEE.F17D8A3C@bellatlantic.net> <s8am03uneh636@corp.supernews.com>
NNTP-Posting-Host: host.ott.igs.net
X-Trace: news.igs.net 948300727 10284 216.58.1.2 (19 Jan 2000 16:52:07 GMT)
X-Complaints-To: abuse@igs.net
NNTP-Posting-Date: 19 Jan 2000 16:52:07 GMT
User-Agent: tin/pre-1.4-980818 ("Laura") (UNIX) (FreeBSD/3.1-RELEASE (i386))
Xref: news.lth.se rec.arts.int-fiction:68709

Sheesh. Shouldn't we take this over to alt.religion.quibble.quibble.quibble,
or something?

John Kennedy wrote:

> For the rest, I cannot follow your reasoning.  If you are arguing that a
> "sacred text", qua sacred text, cannot be an historical narrative; that
> despite the plain statement within the Gospel According to St. John that
> it is an eyewitness account, it is nevertheless to be disregarded as an
> eyewitness account, precisely because it is part of the Bible;

No, I'm not. Read on.

> why then
> you have completely abandoned both logic and anything identifiable as
> the historic Christian religion.

I'll leave it to Christ to define what Christianity is, thanks.

>As far as I can tell, she was denying, a priori, the historicity of the
>NT at all.

It is part of my faith to believe that the NT is fundamentally true--or
more specifically, that the reality pointed to by the web of parables,
symbolism, and overlapping eyewitness accounts is truth. But I do not
believe that it can properly be called a "historical record", and the
disrespect of calling it such (disrespect both to historians, and to the
beauty and mystery of the NT itself) makes me wince. These are anecdotal
accounts by a self-selected group of men undergoing a life-changing
experience...by any accepted standard, they are about as biased and
statistically unreliable as you can get. To take them as truth requires
nothing less than a leap of Faith, and it starts from within.

I'm not a historian, so this whole argument may be due to my
misunderstanding of the phrase "historical record". But why on Earth should
it have to be one for anyone other than fundamentalists? No Christian in
faith needs facts and figures, and no one else is going to be sincerely
converted by them.

Dan Shiovitz wrote:

>If someone disputed the accuracy of the history expressed in the bible
>but accepted jesus as the son of god who died to redeem humanity from
>their sins, etc, etc, you wouldn't call them a Christian?

Yes. Thank you.

Suzanne

-- 
         tril@igs.net                 http://www.igs.net/~tril/
         Author of "Worlds Apart"     http://www.igs.net/~tril/worlds/
                    [I'm fresh out of witty quotes today.]


From erkyrath@eblong.com Mon Jan 24 18:23:24 CET 2000
Article: 68931 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!cam-news-hub1.bbnplanet.com!news.gtei.net!hermes.visi.com!news-out.visi.com!news.maxwell.syr.edu!news.mindspring.net!newsfeed.mindspring.net!firehose.mindspring.com!not-for-mail
From: Andrew Plotkin <erkyrath@eblong.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: Infinity, in darkness
Date: 24 Jan 2000 16:49:44 GMT
Organization: MindSpring Enterprises
Lines: 23
Sender: Andrew Plotkin <erkyrath@netcom18.netcom.com>
Message-ID: <86hvr8$8fk$1@nntp3.atl.mindspring.net>
References: <38850732.0@speedtrap.i2k.com> <86at6t$so8$1@nnrp1.deja.com> <fake-mail-2201000334140001@dialup05.nettwerk.com> <86f8l0$d5q$1@nntp9.atl.mindspring.net> <86h5al$h2l$1@bartlet.df.lth.se>
NNTP-Posting-Host: c7.b7.09.76
User-Agent: tin/pre-1.4-19990517 ("Psychonaut") (UNIX) (SunOS/4.1.4 (sun4m))
Xref: news.lth.se rec.arts.int-fiction:68931

Magnus Olsson <mol@bartlet.df.lth.se> wrote:
> In article <86f8l0$d5q$1@nntp9.atl.mindspring.net>,
> Andrew Plotkin  <erkyrath@eblong.com> wrote:
>>And _Hunter_ played some games here, too.
> 
> I've been meaning to ask you since I first saw the game: Exactly how
> did you do the cave? Is it truly infinite? 

(some spoilers below)




It is not infinite. It could be really, really large -- the
description-generation code takes an integer and does mod/div tricks to
create text. It won't repeat until the least-common-multiple of every mod
factor I chose. But, of course, the Z-machine is 16-bit, so I limited it
to 32768 (positive) rooms.

--Z

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the
borogoves..."


From erkyrath@eblong.com Tue Jan 25 16:05:24 CET 2000
Article: 68954 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newsfeed.direct.ca!newsfeed.skycache.com!howland.erols.net!newsfeed.mindspring.net.MISMATCH!news.mindspring.net!firehose.mindspring.com!not-for-mail
From: Andrew Plotkin <erkyrath@eblong.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: Infinity, in darkness
Date: 25 Jan 2000 14:33:34 GMT
Organization: MindSpring Enterprises
Lines: 42
Sender: Andrew Plotkin <erkyrath@netcom13.netcom.com>
Message-ID: <86kc7u$118$1@nntp1.atl.mindspring.net>
References: <38850732.0@speedtrap.i2k.com> <86f8l0$d5q$1@nntp9.atl.mindspring.net> <86h5al$h2l$1@bartlet.df.lth.se> <86hvr8$8fk$1@nntp3.atl.mindspring.net> <86k63h$ls0$1@bartlet.df.lth.se>
NNTP-Posting-Host: c7.b7.09.71
User-Agent: tin/pre-1.4-19990517 ("Psychonaut") (UNIX) (SunOS/4.1.4 (sun4m))
Xref: news.lth.se rec.arts.int-fiction:68954

Magnus Olsson <mol@bartlet.df.lth.se> wrote:
> In article <86hvr8$8fk$1@nntp3.atl.mindspring.net>,
> Andrew Plotkin  <erkyrath@eblong.com> wrote:
>>Magnus Olsson <mol@bartlet.df.lth.se> wrote:
>>> In article <86f8l0$d5q$1@nntp9.atl.mindspring.net>,
>>> Andrew Plotkin  <erkyrath@eblong.com> wrote:
>>>>And _Hunter_ played some games here, too.
>>> 
>>> I've been meaning to ask you since I first saw the game: Exactly how
>>> did you do the cave? Is it truly infinite? 
>>
>>(some spoilers below)
>>
>>
>>
>>
>>It is not infinite. It could be really, really large -- the
>>description-generation code takes an integer and does mod/div tricks to
>>create text. It won't repeat until the least-common-multiple of every mod
>>factor I chose. But, of course, the Z-machine is 16-bit, so I limited it
>>to 32768 (positive) rooms.
> 
> Are the connections to other rooms also determined by some function
> of the room number? 

Yes, a very carefully massaged function. The whole thing is deterministic.
 
> This is way cool (though I think it was a bit cruel of you not to
> include in the first release that hint about mapping being
> unnecessary).

Cruel? Try "stupid". I think that one omission cost me four-ish places in
the final rankings.
 
> Anyc chance the source code for the cave generator will be released?

I started to write a small article about it. I'll try to get back to it.

--Z

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the
borogoves..."


From Lysseus@email.msn.com Sat Jan 29 13:30:01 CET 2000
Article: 69031 of rec.arts.int-fiction
From: "Kevin Forchione" <Lysseus@email.msn.com>
References: <388B19A3.8B88C03F@efortress.com> <86i6ta$dcs$1@news.ycc.yale.edu> <388D086E.3A88F200@0-in.com> <86lm3v$de4$1@nnrp1.deja.com> <86lo71$334_004@invisible.org> <388F651C.F28AF406@0-in.com>
Subject: Re: Comment to TADS: Class of actors and new thread
Date: Thu, 27 Jan 2000 13:53:50 -0000
Lines: 77
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.00.2919.6600
X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6600
Message-ID: <OtDp#5Ma$GA.276@cpmsnbbsa04>
Newsgroups: rec.arts.int-fiction
NNTP-Posting-Host: userat53.uk.uudial.com 62.188.137.156
Path: news.lth.se!feed2.news.luth.se!luth.se!cam-news-hub1.bbnplanet.com!news.gtei.net!hermes.visi.com!news-out.visi.com!uunet!ffx.uu.net!cpmsnbbsb04!cpmsnbbsa04
Xref: news.lth.se rec.arts.int-fiction:69031

"Mitchell Mlinar" <mmlinar@0-in.com> wrote in message
news:388F651C.F28AF406@0-in.com...
> A comment to part of this thread: Many of the extension packages use
> "replace" almost indiscriminantly on a lot of the adv.t basic functions,
> making it difficult to merge them together.

"Indiscriminately" is not the right word choice here. It's true that any
function replacement usually involves a small modification of its operation,
but the result is usually non-trivial.

>Now with the rumours of
> TADS3 where we might have competing adv.t packages, I shudder to think
> that there may be no standard packages (because there are hundreds).

If by this you mean hundreds of libraries then you can relax. There aren't
enough library authors to provide any grounding for your fears. Now, if you
mean library extensions, then let us only hope so, because that indicates
that the system is being explored and pushed to its limits.

> I submit that most authors (I have no interest in writing an adv.t)
> would rather see ONE adv.t with some EXTENSIONS that can be turned
> on/off as needed for disk space (not for me but for others).

I suspect that most authors will CHOOSE one library and use a handful of
extensions, but most would agree that the available source code provided by
the alternative libraries and extensions provides a wealth of ideas and
inspiration.

>If there
> are 10+ adv.t packages out there, that will just fragment and confuse
> the group further, alienating what few people there are out there doing
> this.

That kind of argument would have put car manufacturers out of business.

>There is POWER and ATTRACTION to a single good solution!

But the problem is that single good solutions don't exist. We have dominant
solutions, but we always have solutions that fill a niche for some corner of
the market. WorldClass, powerful as it is, doesn't dominate the TADS user
base; but I don't think anyone would want to see it disappear.

>Lord
> knows I had trouble with just two (adv.t and worldclass.t).  This is
> about writing adventures or adding new constructs to adventures, now
> about who can design the better "door".

Actually it is about designing the better "door" ... or actor, or model
world or parser. Think of it this way: many of us are writers. Why did we
bother learning a word processor package? It had nothing to do with writing.
Why should we have gone beyond the typewriter? Or even pen and ink? Its the
better door that got us beyond AGT. It's the better door that is bringing us
TADS 3.

It's not simply about writing adventures. There are novelests, linguists,
grammarians...

I realise there is a fear of being marginalised. Certain things become
"popular" and then grow to resemble the systems they pushed aside (look at
Windows, for instance).

But things evolve and change. For example, Inform -- loads of extensions --
about 88 to chooose from for the Inform 6 version and around 25 for the 5.5
version. TADS has about 80. Now, some of those extensions do roughly similar
things: moveclass.h and NPC_engine.h for example. But you wouldn't have
gotten NPC_engine without moveclass.h because the author builds upon the
older version. But why should inform have so many library extensions when
its library is more developed than ADV.T?  Because they proved useful to
someone and that person felt that others too might benefit.

Authors who want to use a library or extension use it. Authors who have
questions seek assistance. And so we have discussions and people learn
something. And the community grows.

--Kevin




From reply@adamcadre.ac Tue Feb  1 09:53:11 CET 2000
Article: 69191 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gctr.net!newsfeed.icl.net!newsfeed.icl.net!newspeer.clara.net!news.clara.net!remarQ-uK!supernews.com!remarQ.com!rQdQ!corp.supernews.com!not-for-mail
From: Adam Cadre <ac@adamcadre.ac>
Newsgroups: rec.arts.int-fiction
Subject: Re: CYOA / IF
Date: Mon, 31 Jan 2000 20:51:38 -0800
Organization: Rule #1 is, you do not talk about the Organization.
Lines: 91
Message-ID: <3896665A.6D28@adamcadre.ac>
References: <387A618B.92D06ECD@usu.edu> <bETg4.623$l81.32710@monger.newsread.com> <AEIh4.2633$Ve7.58778@iad-read.news.verio.net> <38879488.5DA8@adamcadre.ac> <Fbhl4.1879$D33.32462@iad-read.news.verio.net>
Reply-To: reply@adamcadre.ac
X-Complaints-To: newsabuse@supernews.com
X-Mailer: Mozilla 3.01 (Win95; I)
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Xref: news.lth.se rec.arts.int-fiction:69191

Someone else has already addressed the MUD stuff, so I'll jump down
a bit...

I wrote:
> All the text in both CYOA and IF is generated by the author or
> authors. [...] The only difference is the degree to which the player
> controls the arrangement of that text.

Philip Goetz wrote:
> That's a huge difference.  Breaking text up into little bits
> that will be seen in an unknown order makes good writing harder.

I disagree.  I think it means you trade in the aesthetics of a
structured monologue for the aesthetics of call-and-response, but
the former is not inherently superior to the latter.

> We agree that it is easier to write a dramatic structure in linear
> fiction than in interactive fiction?

Easier, sure.  But see below.

Also, I think we may not be using the same terms here.  There are at
least three elements to narrative as I've been thinking about it in
this discussion: the "content" (theme, emotion, what have you), the
"dramatic structure" as you put it, and also the moment-to-moment
pleasure of the text.  Now, if you reduce those into two categories,
Story and Writing (as the Xyzzy Awards do, for instance), it seems
obvious that the content goes into the Story category and the pleasure
of the text into the Writing category, but where does dramatic
structure go?  That's not as clear a call, but I've been thinking of
that as part of Story, not as part of Writing.  So I haven't been
thinking of overarching structure at all when the phrase "good writing"
has cropped up -- I've been thinking of resonant turns of phrase,
effective punch lines, snappy dialogue, that sort of thing.

> If so, then it shouldn't be a stretch to accept that there is a
> continuum between linear fiction and Infocom, and things halfway
> along that continuum are harder to write than a linear story, but
> easier to write than Infocom.

Well, ease isn't what I took issue with -- what I took issue with was
the assertion that equally good stories cannot be told, and especially
that equally good writing cannot be achieved.  Is the journey more
arduous?  No doubt!  But that doesn't mean that equal heights cannot
be attained.

I'm also not sure that I buy that CYOA is a step on a continuum
between a reg'lar book on the one hand and an IF game on the other,
or if it is, that it's halfway along.  I'd have to think about that
for a bit.

> Stylistically, the size of the text chunks is probably the major
> factor. From a story perspective, the size of the decision chunks is
> the major factor.

And since there are typically many more decision points in CYOA --
every choice a scene-to-scene transition, while IF's scene transitions
are rarer and not often true branching points, one could contend that
in a sense IF is the midpoint on a continuum between linear fiction
and CYOA.

But really, the more I think about it, the more I come to believe that
in the end CYOA and IF are awfully close to isomorphic in theory, and
it's just the vehicle (dead trees vs. phosphors) that determines the
differences we seen in practice.  This also is something I'd have to
think about for a bit.

> /Photopia/, which you wrote, had a well-crafted story.

Thanks.

> But you had essentially no decision points in that story. Doesn't
> your experience prove my point?

It would, had I originally wanted to write a story with lots of plot
branches along the way, and then given up and compressed them into a
chain of scenes out of frustration.  The reason Photopia has a
predetermined sequence of scenes isn't because there's no way to write
a good story otherwise; it's because that particular story called for
that particular structure.

> Could you have written as good a story if you didn't know how each
> scene would turn out, or what order they would come in?

Could I have written *that* story as well?  Probably not.  Could I
write *a* story equally good that offers copious plot branching?  I
certainly hope to someday.

  -----
 Adam Cadre, Sammamish, WA
 http://adamcadre.ac


From reply@adamcadre.ac Tue Feb  1 12:13:44 CET 2000
Article: 69191 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gctr.net!newsfeed.icl.net!newsfeed.icl.net!newspeer.clara.net!news.clara.net!remarQ-uK!supernews.com!remarQ.com!rQdQ!corp.supernews.com!not-for-mail
From: Adam Cadre <ac@adamcadre.ac>
Newsgroups: rec.arts.int-fiction
Subject: Re: CYOA / IF
Date: Mon, 31 Jan 2000 20:51:38 -0800
Organization: Rule #1 is, you do not talk about the Organization.
Lines: 91
Message-ID: <3896665A.6D28@adamcadre.ac>
References: <387A618B.92D06ECD@usu.edu> <bETg4.623$l81.32710@monger.newsread.com> <AEIh4.2633$Ve7.58778@iad-read.news.verio.net> <38879488.5DA8@adamcadre.ac> <Fbhl4.1879$D33.32462@iad-read.news.verio.net>
Reply-To: reply@adamcadre.ac
X-Complaints-To: newsabuse@supernews.com
X-Mailer: Mozilla 3.01 (Win95; I)
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Xref: news.lth.se rec.arts.int-fiction:69191

Someone else has already addressed the MUD stuff, so I'll jump down
a bit...

I wrote:
> All the text in both CYOA and IF is generated by the author or
> authors. [...] The only difference is the degree to which the player
> controls the arrangement of that text.

Philip Goetz wrote:
> That's a huge difference.  Breaking text up into little bits
> that will be seen in an unknown order makes good writing harder.

I disagree.  I think it means you trade in the aesthetics of a
structured monologue for the aesthetics of call-and-response, but
the former is not inherently superior to the latter.

> We agree that it is easier to write a dramatic structure in linear
> fiction than in interactive fiction?

Easier, sure.  But see below.

Also, I think we may not be using the same terms here.  There are at
least three elements to narrative as I've been thinking about it in
this discussion: the "content" (theme, emotion, what have you), the
"dramatic structure" as you put it, and also the moment-to-moment
pleasure of the text.  Now, if you reduce those into two categories,
Story and Writing (as the Xyzzy Awards do, for instance), it seems
obvious that the content goes into the Story category and the pleasure
of the text into the Writing category, but where does dramatic
structure go?  That's not as clear a call, but I've been thinking of
that as part of Story, not as part of Writing.  So I haven't been
thinking of overarching structure at all when the phrase "good writing"
has cropped up -- I've been thinking of resonant turns of phrase,
effective punch lines, snappy dialogue, that sort of thing.

> If so, then it shouldn't be a stretch to accept that there is a
> continuum between linear fiction and Infocom, and things halfway
> along that continuum are harder to write than a linear story, but
> easier to write than Infocom.

Well, ease isn't what I took issue with -- what I took issue with was
the assertion that equally good stories cannot be told, and especially
that equally good writing cannot be achieved.  Is the journey more
arduous?  No doubt!  But that doesn't mean that equal heights cannot
be attained.

I'm also not sure that I buy that CYOA is a step on a continuum
between a reg'lar book on the one hand and an IF game on the other,
or if it is, that it's halfway along.  I'd have to think about that
for a bit.

> Stylistically, the size of the text chunks is probably the major
> factor. From a story perspective, the size of the decision chunks is
> the major factor.

And since there are typically many more decision points in CYOA --
every choice a scene-to-scene transition, while IF's scene transitions
are rarer and not often true branching points, one could contend that
in a sense IF is the midpoint on a continuum between linear fiction
and CYOA.

But really, the more I think about it, the more I come to believe that
in the end CYOA and IF are awfully close to isomorphic in theory, and
it's just the vehicle (dead trees vs. phosphors) that determines the
differences we seen in practice.  This also is something I'd have to
think about for a bit.

> /Photopia/, which you wrote, had a well-crafted story.

Thanks.

> But you had essentially no decision points in that story. Doesn't
> your experience prove my point?

It would, had I originally wanted to write a story with lots of plot
branches along the way, and then given up and compressed them into a
chain of scenes out of frustration.  The reason Photopia has a
predetermined sequence of scenes isn't because there's no way to write
a good story otherwise; it's because that particular story called for
that particular structure.

> Could you have written as good a story if you didn't know how each
> scene would turn out, or what order they would come in?

Could I have written *that* story as well?  Probably not.  Could I
write *a* story equally good that offers copious plot branching?  I
certainly hope to someday.

  -----
 Adam Cadre, Sammamish, WA
 http://adamcadre.ac


From dbs@cs.wisc.edu Thu Feb  3 12:38:50 CET 2000
Article: 69272 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!fu-berlin.de!bignews.mediaways.net!remarQ-easT!remarQ.com!supernews.com!rQdQ!corp.supernews.com!not-for-mail
From: dbs@cs.wisc.edu (Dan Shiovitz)
Newsgroups: rec.arts.int-fiction
Subject: Re: Zarfian Silence
Date: Wed, 02 Feb 2000 21:49:07 GMT
Organization: none
Lines: 30
Message-ID: <s9h9ijlaer288@corp.supernews.com>
References: <879t66$jco@edrn.newsguy.com> <jdhffr1g3a.fsf@lepton.phy.duke.edu>
X-Complaints-To: newsabuse@supernews.com
X-Newsreader: trn 4.0-test72 (19 April 1999)
Originator: dans@drizzle.com (Dan Shiovitz)
Xref: news.lth.se rec.arts.int-fiction:69272

In article <jdhffr1g3a.fsf@lepton.phy.duke.edu>,
Stephen Granade  <sgranade@lepton.phy.duke.edu> wrote:
>daryl@cogentex.com (Daryl McCullough) writes:
>
>> I noticed that there have been very few posts from Zarf lately.
>> He usually posts a few messages every day.
>> 
>> I'm guessing that that means he's up to something. I hope it's
>> related to IF! (There's always the other possibility---that he
>> may actually have a life.)
>
>I'm guessing the silence is due to him moving.

(For those unaware, Zarf has attained a state of higher consciousness
and spends much of his time each year in absolute stillness, engaged
in contemplation of the Infinite. However, each year around
Valentine's Day come the Great Convulsions which -- though fearsome to
behold -- are not harmful, but do result in him moving approximately a
foot towards the fridge. His disciples predict he will reach the door 
on May 1st, 2032, at which time he will no doubt ascend to the next
level of being.)

>Stephen
-- 
Dan Shiovitz :: dbs@cs.wisc.edu :: http://www.drizzle.com/~dans
"He settled down to dictate a letter to the Consolidated Nailfile and
Eyebrow Tweezer Corporation of Scranton, Pa., which would make them
realize that life is stern and earnest and Nailfile and Eyebrow Tweezer
Corporations are not put in this world for pleasure alone." -PGW



From sgranade@lepton.phy.duke.edu Thu Feb  3 15:29:25 CET 2000
Article: 69277 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!fu-berlin.de!logbridge.uoregon.edu!newsgate.duke.edu!usenet
From: Stephen Granade <sgranade@lepton.phy.duke.edu>
Newsgroups: rec.games.int-fiction,rec.arts.int-fiction
Subject: Re: [bookclub] Prose style in 'Losing Your Grip'
Date: 02 Feb 2000 17:48:38 -0500
Organization: Duke University, Durham, NC, USA
Lines: 33
Message-ID: <jdhffr2pbt.fsf@lepton.phy.duke.edu>
References: <87a244$u21$1@nnrp1.deja.com> <87a6os$1uj$1@nnrp1.deja.com>
NNTP-Posting-Host: login1.phy.duke.edu
X-Newsreader: Gnus v5.7/Emacs 20.4
Xref: news.lth.se rec.games.int-fiction:49381 rec.arts.int-fiction:69277

J.D. Berry <jdberry@my-deja.com> writes:

> I'm torn on this.  Improving the writing aspect of IF as art through
> critical analysis seems a worthwhile endeavor in some cases.
> I'm worried, though, that excessive attention to ANY element may
> discourage rather than improve authors weak in that given element.

I think that's a danger with any critical analysis, though, be it (in
an IF context) writing, puzzles, or coding.

> With the exception of the professional and/or truly gifted writers
> here, how much better are the rest of us going to get with criticism if
> this is but a hobby?  A little better, perhaps, but I think effort
> and natural ability are the largest parts of the success equation.

I pretty much consider myself a poster child for the "You Can Get
Better With Practice" movement. I don't claim to be the end product of
IF author evolution by any means, but I think that anyone who plays my
first game (Waystation) and compares it to my later ones will see that
I'm improving. And I doubt I'm the only one who wants to get better,
even if this is "but a hobby".

That said, you've got to have a reasonably thick skin to see your
works of creative genius dissected under a microscope. I like to see
my games discussed like that, but I could understand people not
wanting to go through the process.

Stephen

-- 
  Stephen Granade                | Interested in adventure games?
  sgranade@phy.duke.edu          | Visit About.com's IF Page
  Duke University, Physics Dept  |   http://interactfiction.about.com


From sgranade@lepton.phy.duke.edu Thu Feb  3 19:42:01 CET 2000
Article: 69310 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!news-peer-europe.sprintlink.net!news.sprintlink.net!logbridge.uoregon.edu!newsgate.duke.edu!usenet
From: Stephen Granade <sgranade@lepton.phy.duke.edu>
Newsgroups: rec.games.int-fiction,rec.arts.int-fiction
Subject: Re: [bookclub] Prose style in 'Losing Your Grip'
Date: 03 Feb 2000 10:04:55 -0500
Organization: Duke University, Durham, NC, USA
Lines: 36
Message-ID: <jd9012uy20.fsf@lepton.phy.duke.edu>
References: <87a244$u21$1@nnrp1.deja.com> <87a6os$1uj$1@nnrp1.deja.com> <jdhffr2pbt.fsf@lepton.phy.duke.edu> <87c2t7$bdj$1@nnrp1.deja.com>
NNTP-Posting-Host: login1.phy.duke.edu
X-Newsreader: Gnus v5.7/Emacs 20.4
Xref: news.lth.se rec.games.int-fiction:49424 rec.arts.int-fiction:69310

J.D. Berry <jdberry@my-deja.com> writes:

> In article <jdhffr2pbt.fsf@lepton.phy.duke.edu>,
>   Stephen Granade <sgranade@lepton.phy.duke.edu> wrote:
> 
> > That said, you've got to have a reasonably thick skin to see your
> > works of creative genius dissected under a microscope. I like to see
> > my games discussed like that, but I could understand people not
> > wanting to go through the process.
> 
> Well, regarding LYG, I was able only to get through 1 1/2 fits.
> The prose worked fine for me.  Nothing "got in the way," meaning
> there was no confusion about situations and my imagination link to
> your world was never disrupted because of clumsy writing.
> 
> I like the mircoscope analogy, though. Is there a point of diminishing
> returns when you magnify to certain levels?   Like Nick's dislike of
> your word "cram?"

As Nick pointed out, going through an entire game like _Grip_ line by
line will get very tiresome very quickly. But he made some good points
about the weakness of certain passages. I may disagree with his
reasoning or with his suggested changes, but I'm glad to find out
where my prose worked for him and where it didn't. (The "Muddy Field"
description is an excellent case in point -- clearly it needed a few
more passes through the ol' Rewrite Machine.) The word-by-word
dissection of the "Cramped Office" is interesting, though at that
level I believe it becomes an issue of personal style, and thus less
generally applicable.

Stephen

-- 
  Stephen Granade                | Interested in adventure games?
  sgranade@phy.duke.edu          | Visit About.com's IF Page
  Duke University, Physics Dept  |   http://interactfiction.about.com


From reply@adamcadre.ac Thu Feb  3 19:42:20 CET 2000
Article: 69314 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gctr.net!remarQ-easT!remarQ.com!supernews.com!rQdQ!corp.supernews.com!not-for-mail
From: Adam Cadre <ac@adamcadre.ac>
Newsgroups: rec.games.int-fiction,rec.arts.int-fiction
Subject: Re: IF Aesthetics
Date: Thu, 03 Feb 2000 08:09:27 -0800
Organization: Rule #1 is, you do not talk about the Organization.
Lines: 13
Message-ID: <3899A837.6C86@adamcadre.ac>
References: <87a244$u21$1@nnrp1.deja.com> <87a6os$1uj$1@nnrp1.deja.com> <3899A471.6EC4@unb.ca>
Reply-To: reply@adamcadre.ac
X-Complaints-To: newsabuse@supernews.com
X-Mailer: Mozilla 3.01 (Win95; I)
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Xref: news.lth.se rec.games.int-fiction:49427 rec.arts.int-fiction:69314

Brad O'Donnell wrote:
> And it's rarely worth going to the trouble of making a good,
> successful game just to prove a point about an ideal.

Wow, I just could not disagree more.  I was hoping that with 9:05
I could nudge people in the direction of actually writing short games
to illustrate their points rather than just posting "what about a game
that did this?" messages to the newsgroup.  I hate those like little
else.

  -----
 Adam Cadre, Sammamish, WA
 http://adamcadre.ac


From erkyrath@eblong.com Thu Feb  3 19:42:25 CET 2000
Article: 69317 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gctr.net!newspeer.monmouth.com!news-FFM2.ecrc.net!news.mindspring.net!newsfeed.mindspring.net!firehose.mindspring.com!not-for-mail
From: Andrew Plotkin <erkyrath@eblong.com>
Newsgroups: rec.games.int-fiction,rec.arts.int-fiction
Subject: Re: IF Aesthetics
Date: 3 Feb 2000 16:55:37 GMT
Organization: MindSpring Enterprises
Lines: 17
Sender: Andrew Plotkin <erkyrath@netcom14.netcom.com>
Message-ID: <87cbu9$afu$2@nntp6.atl.mindspring.net>
References: <87a244$u21$1@nnrp1.deja.com> <87a6os$1uj$1@nnrp1.deja.com> <3899A471.6EC4@unb.ca> <3899A837.6C86@adamcadre.ac>
NNTP-Posting-Host: c7.b7.09.72
User-Agent: tin/pre-1.4-19990517 ("Psychonaut") (UNIX) (SunOS/4.1.4 (sun4m))
Xref: news.lth.se rec.games.int-fiction:49430 rec.arts.int-fiction:69317

In rec.arts.int-fiction Adam Cadre <ac@adamcadre.ac> wrote:
> Brad O'Donnell wrote:
>> And it's rarely worth going to the trouble of making a good,
>> successful game just to prove a point about an ideal.
> 
> Wow, I just could not disagree more.  I was hoping that with 9:05
> I could nudge people in the direction of actually writing short games
> to illustrate their points rather than just posting "what about a game
> that did this?" messages to the newsgroup. 

And, indeed, when I played _9:05_, my first response was "This illustrates
its point so well that there's no need for any discussion about it."

--Z

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the
borogoves..."


From dns361@merle.acns.nwu.edu Sat Feb  5 12:28:52 CET 2000
Article: 69412 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newsfeed.direct.ca!news.maxwell.syr.edu!newsfeed.acns.nwu.edu!news.acns.nwu.edu!merle.acns.nwu.edu!dns361
From: Second April <dns361@merle.acns.nwu.edu>
Newsgroups: rec.games.int-fiction,rec.arts.int-fiction
Subject: Re: [bookclub] Prose style in 'Losing Your Grip'
Date: Fri, 4 Feb 2000 16:44:50 -0600
Organization: Northwestern University, Evanston, IL, US
Lines: 57
Message-ID: <Pine.HPP.3.93.1000204163631.19064A-100000@merle.acns.nwu.edu>
References: <87a244$u21$1@nnrp1.deja.com> <3899B244.446B@cs.york.ac.uk> <3899DADE.D4D94835@health.missouri.edu> <87enfn$6in$1@nnrp1.deja.com> <87f3sp$gge$1@nnrp1.deja.com> <Pine.GSO.3.96.1000204112412.9232B-100000@ucsu.Colorado.EDU>
NNTP-Posting-Host: merle.acns.nwu.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
In-Reply-To: <Pine.GSO.3.96.1000204112412.9232B-100000@ucsu.Colorado.EDU>
Xref: news.lth.se rec.games.int-fiction:49495 rec.arts.int-fiction:69412

On Fri, 4 Feb 2000, Paul O'Brian wrote:

> On Fri, 4 Feb 2000 icallaci@my-deja.com wrote:
> > 
> > The question is: do I write the description as best I can and get
> > docked for not implementing every object mentioned in it, or do
> > I limit the description to objects I can code and get docked for
> > not providing rich descriptive text? It's very difficult to strike
> > a balance between these two extremes, and I'm *very* interested in
> > how other i-f authors handle it.
> 
> Two principles can ease the burden here:
> 
> 1) Aliasing. Say you're describing a computer, with a keyboard, monitor,
> CPU, mouse, cables, CD-ROM drive, etc. Creating one object whose names
> include "drive", "CD-ROM", "computer", "keyboard", "mouse", "cables",
> "monitor", "CPU", and "screen" allows you to mention lots of things in
> descriptions, all of which refer to the same one object. The nice thing
> about this compromise is that not only does it escape the appearance of
> failing to code objects, but it also gives the savvy player a hint that it
> won't be important to do anything with, for example, the cables
> specifically. Of course, the granularity with which you employ this
> technique depends a lot on what level of detail you want to implement -- 
> like many things, it can be taken too far.

In general, this is a good idea and it works well. There are some games
out there, however, that give a general alias but still expect you to look
at the component parts. I-0 is the one that comes to mind, since the
player was asked to infer most of the internals of the car--and with all
respect to Adam and to I-0, this drives me nuts. The virtue of the usual
convention "if it's not mentioned in the room description, it's not there"
(unless of course it's nested in something else) is that it allows the
player to know when she's checked out everything relevant in a given
room--whereas X DRIVER'S SEAT, X PASSENGER'S SEAT, X GLOVE COMPARTMENT, X
TAPE DECK, X STEERING WHEEL, X REAR VIEW MIRROR, X DASHBOARD, X DRIVER'S
SIDE WINDOW, X PASSENGER'S SIDE WINDOW, X DRIVER'S SIDE DOOR, X
PASSENGER'S SIDE DOOR...well, you see what I mean. That Adam was
thoughtful enough to code a lot of this stuff in I-0 just raised the
uncertainty level--okay, if the interior of this car is this exhaustively
detailed, there must be something more here.

Admittedly, the problem is including the relevant pieces in a reasonably
interesting room description, and there generally isn't a lot to say about
a glove compartment and a passenger's seat. But frankly I think that's
better than the alternative.

Duncan Stevens
dns361@merle.acns.nwu.edu

But buy me a singer to sing one song--
Song about nothing--song about sheep--
Over and over, all day long;
Patch me again my thread-bare sleep.

--Edna St. Vincent Millay




From erkyrath@eblong.com Mon Feb  7 09:17:32 CET 2000
Article: 69472 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newspump.monmouth.com!newspeer.monmouth.com!newsfeeds.belnet.be!news.belnet.be!news-FFM2.ecrc.net!news.mindspring.net!newsfeed.mindspring.net!firehose.mindspring.com!not-for-mail
From: Andrew Plotkin <erkyrath@eblong.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: [Inform] Suggestion for ObjectIsUntouchable
Date: 7 Feb 2000 03:38:29 GMT
Organization: MindSpring Enterprises
Lines: 37
Sender: Andrew Plotkin <erkyrath@netcom11.netcom.com>
Message-ID: <87lenl$qm2$1@nntp8.atl.mindspring.net>
References: <87l83v$25fh@edrn.newsguy.com>
NNTP-Posting-Host: c7.b7.09.6f
User-Agent: tin/pre-1.4-19990517 ("Psychonaut") (UNIX) (SunOS/4.1.4 (sun4m))
Xref: news.lth.se rec.arts.int-fiction:69472

Daryl McCullough <daryl@cogentex.com> wrote:
> I read the rules in the Inform standard library for when an object
> is considered untouchable, and I think that the rules are slightly
> wrong. Or at least they make troubles for me.

The current system is too simple to work right in all cases. No easy
correction will prevent all trouble. Sigh.
 
> [...] it seems to me that it
> would be more elegant if the routine "ObjectIsUntouchable"
> always returned "true" for an object that was not
> physically present. (Technically, that means that
> the player and the object share a common ancestor.)
> 
> I think that the reason that the touch rules were
> written that way is because people used add_to_scope
> to implement part-of relationships

Yes. (In such cases, the scope-added object is not contained in anything
at all. Well, that's the most common way it's done.) And such objects
should be touchable. It's a real case. I use add_to_scope that way.

I suspect it's the more common case, too, but counting lines of code isn't
going to help. What you're observing is that Inform has no standard
mechanism for making objects referrable-to but *not* touchable. That is a
correct observation. You need to put in special code for that -- either
before clauses, or (more cleverly) replacing ObjectIsUntouchable.

I agree this is a lack in the libraries. Of course, by the time you've
designed a decent fix -- as opposed to a hack -- you're off into
sense-paths and their converse, whatever you call them, motor-paths.
Sigh.

--Z

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the
borogoves..."


From okblacke@my-deja.com Tue Feb  8 15:08:04 CET 2000
Article: 69515 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newsfeed.berkeley.edu!nntp2.deja.com!nnrp1.deja.com!not-for-mail
From: okblacke@my-deja.com
Newsgroups: rec.arts.int-fiction
Subject: Re: Throwing shoes at lights (was Location management)
Date: Tue, 08 Feb 2000 00:35:04 GMT
Organization: Deja.com - Before you buy.
Lines: 65
Message-ID: <87nobp$fj6$1@nnrp1.deja.com>
References: <85nno2$bsf$1@infosun2.rus.uni-stuttgart.de> <7b0EBGAGMMl4Ew3U@mipmip.demon.co.uk> <s9crv07ner2110@corp.supernews.com> <xsZ2cBA9HLm4Ew8f@mipmip.demon.co.uk> <s9i5hj78er259@corp.supernews.com> <b408JCANtfn4Ewxb@mipmip.demon.co.uk>
NNTP-Posting-Host: 199.107.4.10
X-Article-Creation-Date: Tue Feb 08 00:35:04 2000 GMT
X-Http-User-Agent: Mozilla/4.61 [en] (Win98; I)
X-Http-Proxy: 1.0 x42.deja.com:80 (Squid/1.1.22) for client 199.107.4.10
X-MyDeja-Info: XMYDJUIDokblacke
Xref: news.lth.se rec.arts.int-fiction:69515

In article <b408JCANtfn4Ewxb@mipmip.demon.co.uk>,
  Mike Arnautov <mla@mipmip.demon-co-antispam-uk> wrote:
[a while back]
"To my mind, there are two very distinct strands to IF. One strand
almost attempts to go the way of Doom-like games in allowing the author
to set up the world and then let the engine handle reasonably
realistically anything the player might wish to do, while embroidering a
plot on top of that. [snip]

The other strand is less concerned with world creation and gives the
author a maximal degree of control, but also the responsibility for
anticipating what the player may or may not do. It is more about giving
the player a feeling of indirectly interacting with the author -- more
in the way of traditional oral story-telling."
[then later added]
"And isn't that where we have started? In the absence of a complex AI
which might be able to merge the two approaches, I see two distinct
directions for IF (or co-ordinate axis, if you wish, because the
actual live data points don't have to lie on either of them :-). One I
would be inclined to term Interactive Fiction as Literature (IFL for
short?), and the other Interactive Fiction as Modelling (IFM?). Rather
to my surprise, IFM has come to dominate the scene, by the looks of it,
and I wish to point out the existence of an alternative."

For the sake of this post, I shall refer to what you call "IFL" as just
"IF" and what you call IFM as "simulation".

I can't say I see what you're seeing at all.  There's a lot of talk
about simulation on the board here, but very little that would go so far
as to justify your definition of IFM.  In particular, that part of the
definition that has to do with limiting authorial freedom.

Most IF frameworks that people use today offer very little in terms of
world simulation.  Cardinal direction handling, a few concepts like
"surface", "hidden", and, uh, doors. Oh, and inventory management.  Some
of the nifty add-ons do things like sense-passing.

Your two strands don't actually exist, although you're not the first to
suggest that they do.  If I strive for what you call the "literary"
strand, my system is less "concerned with world creation"--which means
that *I* have to be concerned with it, as I try to anticipate every
little thing the reader might do, in order to give that feeling of
interaction.

Ironically, I spend more time making doors open and shut than I do
writing anything that might actually communicate to the reader.

We have doors that open and shut and inventory commands that work
(though I believe we had examples of doors and inventory failing in the
comp). Why can't we have other things that just work without being any
less literary?  Is it really important to the work that I, personally,
code the opening and closing of doors?  Or can I just put in the text
that I want for the door opening and closing?  Isn't *that* the literary
aspect?

I think that as long as the character and story development isn't
simulated, you still have IF.  When you start having elements randomly
combine to produce new (essentially arbitrary) stories, then you have
DOOM.  Er, "The Sims", I guess.
--
[ok]


Sent via Deja.com http://www.deja.com/
Before you buy.


From gareth.rees@pobox.com Thu Feb 10 10:29:31 CET 2000
Article: 69614 of rec.arts.int-fiction
Newsgroups: rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!news-peer-europe.sprintlink.net!news.sprintlink.net!netnews.com!newsfeed.gamma.ru!Gamma.RU!tank.news.pipex.net!pipex!warm.news.pipex.net!pipex!prlhp1.prl.philips.co.uk!newsman
From: Gareth Rees <gareth.rees@pobox.com>
Subject: Re: Unwinnable situations
Message-ID: <u3dr2ysjx.fsf@pobox.com>
Sender: rees@VAJRAPANE
Date: Wed, 9 Feb 2000 21:28:18 GMT
Lines: 90
References: <87cqvk$obo$1@leopard.it.wsu.edu>
NNTP-Posting-Host: vajrapane
Organization: Philips Research Laboratories, Redhill, UK
X-Newsreader: Gnus v5.7/Emacs 20.4
Xref: news.lth.se rec.arts.int-fiction:69614

Here's a dialogue between Wanda, who thinks games should always be
winnable, and Uther, who thinks that games can sometimes become
unwinnable.  (Some days I side with Wanda, some days with Uther.)

W: Games should never get into stuck positions.  I can't express how
   frustrating it is to find after I have been playing a game for many
   hours that I can't finish the game without starting all over again.

   But what's worse is when I get into a position when I strongly
   suspect that I may be stuck in an unwinnable position, but I can't be
   sure.  Do I try to proceed from where I am, or do I go back to the
   beginning?  Or explore both approaches in parallel?

   When these things happen to me I usually decide that it's not worth
   my while to carry on playing the game at all.

U: If you do that then you're missing out on some superb puzzles, like
   the dog and the ham sandwich in "Hitch-hikers" or just about
   everything in "Philosopher's Quest", or the beautiful way events
   interlock in "A Change in the Weather".

W: No matter how good these games are, it's no fun to have to spend
   hours re-typing a long series of commands.

U: You need to be a bit cleverer in the way you approach these games.
   Keep lots of save files from different points in the game so that you
   can go back to earlier points to check things that you may have
   missed.  Use the interpreter's script capability to record what you
   did -- then you can redo a long series of commands just by pasting
   them into the interpreter window.

W: That's almost worse than having to re-type the commands!  Playing
   games is supposed to be fun, not a horrible exercise in data
   management.

   Isn't there a principle in interactive fiction that authors should
   try to stay clear of puzzles whose solutions are well known and
   tedious?  Once upon a time puzzles like inventory management,
   mapping, mazes, and closed doors were new and interesting.  Now
   they're dull and modern games avoid them altogether or let the game
   engine do the tedious legwork for the player.

   So I think the "saved game management" puzzle is equally old and dull
   and should be avoided.  Especially since having to deal with all
   these issues that are outside the game -- saved files, interpreter
   windows and so on -- detracts from any sense of immersion in the
   world of the game.   

U: But games that never become unwinnable also detract from the sense of
   immersion because they keep having to say "you can't do that" to
   perfectly reasonable actions.  If I want to drop my passport on the
   fire, or lock myself in a room and throw the key out of the window,
   or cast the one-use-only spell at the wrong place in the game, then I
   should be able to and I should suffer the consequences.  If I'm not
   allowed to do those things, the game's realism suffers.

W: But those are just examples of the author being thoughtless or lazy.
   It would have been easy for the author to modify the game to preserve
   realism without making the game unwinnable.  In the case of the fire,
   why does there have to be a fire at all?  If the fire is needed for
   some other puzzle, then put the fire in a place you have to surrender
   the passport to get into.  Or there could be a way of getting another
   passport.  As for the one-use-only spell, why not make it a many-uses
   spell?  And the game could have a character who finds the key and
   lets you out.  Or it could be possible to jump out of the window
   yourself.  It doesn't take very much thought to come up with half a
   dozen ways in which the game could continue.

U: Life may be too short for the author to do all that.  Better to have
   a game now that you can get stuck in than one that's always winnable
   but still under development.

   And there's more to realism than just whether you can carry out an
   action.  There are the consequences to consider.  If interactive
   fiction is to really explore serious issues, then it has to explore
   the consequences of choices.  But if there's no way to make a mistake
   then there are no consequences and thus really no choices.  I want to
   be able to play games that are more than just pretty puzzle boxes.
   And that means the possibility of failure.

W: I don't have any answer to that.  So I guess even I admit that there
   could be a good game in which one could get stuck!  But the getting
   stuck would have to be for a very good reason, and not just there
   because of laziness, or to make the game harder.

   And I think it's only fair for the game to warn players like me that
   wrong choices have consequences.

-- 
Gareth Rees


From emshort@mindspring.com Tue Feb 15 09:22:36 CET 2000
Article: 69783 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!uio.no!news-FFM2.ecrc.net!news.mindspring.net!firehose.mindspring.com!not-for-mail
From: "Emily Short" <emshort@mindspring.com>
Newsgroups: rec.arts.int-fiction
Subject: [DEMI-REVIEW] Shrapnel, with SPOILERS
Date: Mon, 14 Feb 2000 17:35:20 -0700
Organization: MindSpring Enterprises
Lines: 64
Message-ID: <88a608$619$1@nntp4.atl.mindspring.net>
NNTP-Posting-Host: a5.79.52.d5
Mime-Version: 1.0
Content-Type: text/plain; charset="US-ASCII"
Content-Transfer-Encoding: 7bit
X-Server-Date: 15 Feb 2000 00:18:16 GMT
X-Newsreader: Microsoft Outlook Express for Macintosh - 4.01 (295)
Xref: news.lth.se rec.arts.int-fiction:69783

Spoiler space
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Adam Cadre has a genius for coming up with clever ways of restricting the
player's behavior, not only in absolute range of actions, but also in
pacing.  As a result, the plot hangs together and behaves like a story --
even when it's about things coming apart.

The restart trick is flashy; also exactly right, though less blatant, is the
functionality of SPEAK. On ifMUD a few weeks ago Adam mentioned that he was
designing an NPC-interaction system to work this way, and at the time I
thought, "Hmm, that's interesting, but it seems like it would be awfully
annoying."  Of course, in this context, it works -- the rightness of it may
not be fully clear until the end of the story, but I like games in which the
*way* you are forced to play itself reflects what's going on in the story
world.  In that respect I was reminded of Spider and Web.  

With all that, I'm not sure what to make of the content of Shrapnel.  For
all the pyrotechnical power that comes from putting good programming at
the service of strong writing, it left me a bit cold.  I'm not referring
simply to the SF plot, which is avowedly silly.  (Too many raif posts
about Jigsaw and Tampering With History, perhaps?)  I mean the physical
and sexual abuse, the moral squalor with the undercurrent of dark humor.  
Varicella employs the same material, and though I enjoyed the effect more; I
still felt that there was a gap in the portrayal of the characters. 

It's not that I'm afraid of Dark I-F.  On the contrary, I think it could be
quite interesting.  But I find -- and this is purely a personal reaction --
that victimizing an NPC does not necessarily garner him or her my sympathy. 
Nor, for that matter, does it provide character depth.  On the B5 spinoff
series Crusade (which now seems to have gone to its watery grave) it seemed
that each character in turn turned out to be motivated by the traumatic loss
of a lover sometime in the past.  Adam's style is more disturbing and less
gooey than Straczinsky's, but I can't help feeling, after Varicella, that
something similar is going on: he likes the stark chiaroscuro that comes
>from  having a horrific backstory, perhaps.  But when there is *no one* that
I find appealing as a person, the rest of the story doesn't have quite the
effect on me that perhaps it is supposed to have.  Playing this game
reminded me of lifting a rock to see the bugs under it: icky, fascinating,
and basically futile.  

Of course, that may have been the point.  It's a very short game, and most
of the impact comes from the way it takes your expectations and slams them,
headfirst and repeatedly, against a brick wall.  

ES


From gmckean@wsu.edu Tue Feb 15 09:22:46 CET 2000
Article: 69796 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!fu-berlin.de!logbridge.uoregon.edu!uunet!sea.uu.net!news.wa-k20.net!news.wsu.edu!not-for-mail
From: "Gabe McKean" <gmckean@wsu.edu>
Newsgroups: rec.arts.int-fiction
Subject: Re: [DEMI-REVIEW] Shrapnel, with SPOILERS
Date: Mon, 14 Feb 2000 06:11:17 -0800
Organization: Washington State University
Lines: 41
Message-ID: <88ai7r$av4$1@leopard.it.wsu.edu>
References: <88a608$619$1@nntp4.atl.mindspring.net>
NNTP-Posting-Host: res156008.resnet.wsu.edu
X-Newsreader: Microsoft Outlook Express 4.72.3110.1
X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3110.3
Xref: news.lth.se rec.arts.int-fiction:69796

Wow, that game was weird.  A few of my thoughts on it:

Spoiler space...

























I thought all the Zork references seemed out of place in the North Carolina
setting, but somehow it didn't detract from the game for me.  Of course,
everything was so bizarre anyway that I guess anything could fit in :)  I
agree with the people who complained about the ending monologue:  having
some previously-unseen (well, almost unseen) character show up at the end
and explain everything is about the worst way you can tie up a plot.  Still,
I can't really think of any other way it could have worked.  Maybe just
leave everything unexplained?

And is it just me, or were the main characters Walt Whitman and William
Blake?  If so, what the heck is that supposed to mean???




From tilford@its.caltech.edu Tue Feb 15 09:23:43 CET 2000
Article: 69792 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!uio.no!logbridge.uoregon.edu!uchinews!nntp-server.caltech.edu!tilford
From: tilford@ralph.caltech.edu (Mark J. Tilford)
Newsgroups: rec.arts.int-fiction
Subject: Re: [DEMI-REVIEW] Shrapnel, with SPOILERS
Date: 15 Feb 2000 03:07:11 GMT
Organization: California Institute of Technology, Pasadena
Lines: 52
Message-ID: <slrn8ahh6o.l46.tilford@ralph.caltech.edu>
References: <88a608$619$1@nntp4.atl.mindspring.net>
Reply-To: tilford@its.caltech.edu
NNTP-Posting-Host: avery-38.caltech.edu
User-Agent: slrn/0.9.5.4 (UNIX)
Xref: news.lth.se rec.arts.int-fiction:69792

On Mon, 14 Feb 2000 17:35:20 -0700, Emily Short <emshort@mindspring.com> wrote:
>Spoiler space
>.
>.
>.
>.
>.
>.
>.
>.
>.
>.
>.
>.
>.
>.
>.
>.
>.
>.
>.
>.

snip

>Of course, that may have been the point.  It's a very short game, and most
>of the impact comes from the way it takes your expectations and slams them,
>headfirst and repeatedly, against a brick wall.  
>
>ES


Well, if you look at the last few lines:
v qbag npghnyyl guvax guvf vf n tbbq tnzr vgf svsgl qvssrerag vqrnf
penzzrq gbtrgure abar bs gurz vzcyrzragrq irel jryy gur cebwrpg fbegn
yrncg sebz zl tenfc naq rkcybqrq fbzrbar zvtug svaq vg vagrerfgvat


and rot13 them, you get:

i dont actually think this is a good game its fifty different ideas
crammed together none of them implemented very well the project sorta
leapt from my grasp and exploded someone might find it interesting



So I think the author agrees with you.

-- 
-----------------------
Mark   Jeffrey  Tilford
tilford@its.caltech.edu


From reply@adamcadre.ac Wed Feb 16 14:10:29 CET 2000
Article: 69838 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newsfeed.direct.ca!portc05.blue.aol.com!remarQ-easT!remarQ.com!supernews.com!rQ66!corp.supernews.com!not-for-mail
From: Adam Cadre <ac@adamcadre.ac>
Newsgroups: rec.arts.int-fiction
Subject: Re: [DEMI-REVIEW] Shrapnel, with SPOILERS
Date: Wed, 16 Feb 2000 02:01:05 -0800
Organization: Rule #1 is, you do not talk about the Organization.
Lines: 41
Message-ID: <38AA7561.521C@adamcadre.ac>
References: <88a608$619$1@nntp4.atl.mindspring.net> <slrn8ahh6o.l46.tilford@ralph.caltech.edu>
Reply-To: reply@adamcadre.ac
X-Complaints-To: newsabuse@supernews.com
X-Mailer: Mozilla 3.01 (Win95; I)
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Xref: news.lth.se rec.arts.int-fiction:69838

Mark Tilford wrote:
> Well, if you look at the last few lines:
> v qbag npghnyyl guvax guvf vf n tbbq tnzr vgf svsgl qvssrerag vqrnf
> penzzrq gbtrgure abar bs gurz vzcyrzragrq irel jryy gur cebwrpg fbegn
> yrncg sebz zl tenfc naq rkcybqrq fbzrbar zvtug svaq vg vagrerfgvat
> 
> and rot13 them, you get:
> 
> i dont actually think this is a good game its fifty different ideas
> crammed together none of them implemented very well the project sorta
> leapt from my grasp and exploded someone might find it interesting

Well, that's not quite an accurate recap of the last few lines.  It's
not too far off, but you probably should have mentioned that you
edited a bit.  Not a big deal.

And lest anyone get the wrong idea -- this was most certainly *not*
meant as a gotcha ("ha ha, you liked this game and even I think it
sucks!")  It's like this: the finish line was in sight, I could tell
the game was not going to come close to what I'd envisioned, and I was
a bit dubious about releasing it.  My schedule didn't really permit me
to start from scratch and try again, so my choices were to either
release a game which didn't live up to my expectations for it, or
scrap it even though it did have some moments I was quite pleased with.
In the end, I figured it this way: some of my favorite songs have been
tracks that the artists didn't think were ready for prime time, ending
up as B-sides to singles or on movie soundtracks or outtakes
compilations.  I'm tremendously glad that these songs were made
available, despite the artists' misgivings.  So I figured, what the
heck -- if one person enjoys the game, that makes it worth releasing.
And so I'm tremendously pleased and grateful that so many people seem
to have liked it, even if my own feelings toward the game are marked
more by frustration than pride.

I probably should have just generated a random string of characters,
but I guess I have a weakness for easter eggs.  If there's a 1.02 I'll
probably change it.
 
  -----
 Adam Cadre, Sammamish, WA
 http://adamcadre.ac


From erkyrath@eblong.com Thu Feb 17 09:28:01 CET 2000
Article: 69849 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!news-peer-europe.sprintlink.net!news.sprintlink.net!logbridge.uoregon.edu!newsfeed.berkeley.edu!nntp.primenet.com!nntp.gctr.net!news.mindspring.net!newsfeed.mindspring.net!firehose.mindspring.com!not-for-mail
From: Andrew Plotkin <erkyrath@eblong.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: Science Fiction timeline vs IF (back on topic)
Date: 16 Feb 2000 17:37:53 GMT
Organization: MindSpring Enterprises
Lines: 146
Sender: Andrew Plotkin <erkyrath@netcom11.netcom.com>
Message-ID: <88en9h$2f7$1@nntp5.atl.mindspring.net>
References: <87md1u$du9$1@nnrp1.deja.com> <87mn3d$21t$3@nntp2.atl.mindspring.net> <389f7800_3@dilbert.ic.sunysb.edu> <87o0qs$852$1@nntp4.atl.mindspring.net> <zmAq4.6753$lK6.160795@iad-read.news.verio.net>
NNTP-Posting-Host: c7.b7.09.6f
User-Agent: tin/pre-1.4-19990517 ("Psychonaut") (UNIX) (SunOS/4.1.4 (sun4m))
Xref: news.lth.se rec.arts.int-fiction:69849

Philip Goetz <pgoetz@i-a-i.com> wrote:
>> > Andrew Plotkin <erkyrath@eblong.com> wrote:
>> >
>> > : The canon is under construction. This is the only sensible answer.
>> > : When the Golden Age is over, people can start arguing about the canon.
>> >
>> > Gee, I hope we don't slip into dark ages any time soon.
>>
>> I was rather thinking of the timeline of science-fiction publishing, not
>> European history.
>>
>> So you should watch out for a New Wave instead. Or was there something
>> before that? I'm not really an expert.
> 
> The timeline of science fiction went something like this, with a +/-
> of at most 10 years on the details:

Thanks! This is just what I wanted to mull over.
 
I'm trimming a bit now...

> 1865-1890: Science fiction not idenfied as a genre; no conventions,
> some literary SF but also much boy's adventure fiction with robots
> (tho not yet called that).
> 
> 1890-1920: Peak of respectability for science fiction.  Writers such as
> Jules Verne, HG Wells, Olaf Stapledon.  Young Jack Williamson
> travels to New Mexico by covered wagon & begins writing.
> 
> Around 1920: Relegation of SF to the genre ghetto.  At about this time, HG
> Wells
> was the most popular author on earth, and writing good literary science
> fiction.  He got into a famous, long argument (in magazine letters) with
> Henry James over the proper mode of fiction. [...]
> 
> 1920s-1930s: The all-time low point of science fiction from a literary
> perspective; also known as "the golden age".  Buck Rogers was written
> in the 1920s and typifies this era's pulp adventure science fiction.
> Hugo Gernsback is publishing the only decent science fiction
> stories in _Astounding_.  (Tho note Aldous Huxley published
> some outstanding science fiction during this time.)

Now, I can't agree with that. Doc Smith originally published in this era.
It was not a low point; it was... some sort of a *fast* point. 

And it's exactly what I'm thinking of when I call the *current* IF
generation a Golden Age. (It's not an exact analogy, so bear with me.) The
good Doc didn't write memorable books by careful craftsmanship; he threw
out mind-blowing ideas so fast that if you blinked, you'd miss the FTL
planets whipping past. (Those were *projectile weapons*, by the way.
Duck!)

That was the pulp era. It was, as you note, the heydey of science fiction
as "literature of ideas".

I think we're currently in a phase where ideas are popping up just exactly
that fast. Now, we're certainly paying a lot of attention to craft and
good writing as well. (That's why it's not an exact analogy.) And the
ideas aren't *story* ideas, as they were in early SF. They're ideas of
technique, and scope, and what IF can do. 

All those groundbreaking games from the other thread -- that's the "pulp"
of this golden age. Games that inspire one to say, okay, it had some flaws
-- but *I never imagined that IF could do that*. And this has not yet
started to slow down. (See _Shrapnel_.)

> 1940s: John Campbell dominated the 1940s.  He had
> specific ideas of what a science fiction story should be like (for instance:
> aliens must never defeat earth men), and because he controlled the
> market, he shaped science fiction.  He worked very hard
> with his authors, trying to refine their schlock into better
> fiction, and trying to train them as authors. [...]

In a sense, we're doing this for ourselves, in parallel with the pulp.
Because we've *got* the refined, high-quality body of written fiction to
look back on. We don't have to re-invent that, only adapt it.

> 1950s: Heinlein, Asimov, Clarke.  Science fiction goes
> bureaucratic: rogue lone-wolf heros of the golden age
> replaced by foundations, starfleets, & other more
> regimented organizations.
> 
> 1960s: New Wave, primarily British.  Strange styles, strange
> story structures, opening of taboo subjects, mixing of
> science & fantasy, emphasis on the psychological instead
> of just the technological.  "Led" by Michael Moorcock
> as editor of New Worlds magazine, IIRC, altho
> strangely Moorcock's own fiction is not very New Wave.
> William Burroughs, Thomas Disch, JG Ballard,
> Samuel Delaney considered "New Wave" authors.

And Roger Zelazny, Harlan Ellison, "James Tiptree", George Alex Effinger,
etc. (And Piers Anthony, for about three weeks. :-)

This has not happened to IF yet, and the analogy will be even less exact
when it does. (We've already seen "emphasis on the psychological". A New
Wave of IF would be... re-exploration of the techniques developed in the
Golden Age, taking them for granted, and using them to convey something
entirely new. I don't venture to predict what *that* will be. But I look
forward to it... and I note that such a movement can't happen until the
Golden Age *ends*.)

> 1970s: Feminist science fiction arrives.  Star Wars & D&D
> revitalizes industry, at least in terms of volumes published.

Ork! Ack! You mean "Star Trek and imitation Tolkien". 

Star Wars novels were a minor footnote in the 70's. (_Splinter of the
Mind's Eye_, plus a handful of Han Solo novels.) It was the Trek novels
that took off. And fantasy became a commercial genre with Terry Brooks
and, oh, folks like David Eddings. People specifically trying to do what
Tolkien did. D&D had nothing to do with it; gaming tie-ins were much
later.

Now, in terms of IF, that could mean almost anything. Maybe someone will
write the Breakout IF Work, the one that gets mainstream attention. That
could happen right now or in twenty years -- but I tend to think that
popular culture is too noisy for that to happen, ever again, in any
medium. There are too many media-hyped properties out there. It ain't the
Sixties, and even a genius like Tolkien -- or like Gene Roddenberry, with
original Trek -- can only make a blip in the noise now.

> 1980s: Cyberpunk.  Star Wars effect begins leading to higher
> percentage of books being derivative works & media tie-ins.
> 
> 1990s: Biotech & nanotech science fiction. 

These categories seem much too limited to me. Subject matter isn't the
important trend.

The 80's were rather a holding pattern in SF and fantasy. Many great
books, some new trends, slowly increasing quality, but fundamentally more
of the 70's.

The 90's -- I'm tempted to call this the Borders Era. *Huge* growth in
number of titles published. Reams of Star Trek, Star Wars, and other
tie-ins; but that expansion is *matched* by growth in original fiction,
which is still a majority. SF becomes a mainstream genre.

Could that happen to IF? Yes. When? Sometime between now and 2050, I'm
betting. 

--Z

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the
borogoves..."


From erkyrath@eblong.com Thu Feb 17 09:30:12 CET 2000
Article: 69858 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gctr.net!news.mindspring.net!newsfeed.mindspring.net!firehose.mindspring.com!not-for-mail
From: Andrew Plotkin <erkyrath@eblong.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: Science Fiction timeline vs IF (back on topic)
Date: 16 Feb 2000 21:10:17 GMT
Organization: MindSpring Enterprises
Lines: 55
Sender: Andrew Plotkin <erkyrath@netcom7.netcom.com>
Message-ID: <88f3np$e7b$1@nntp8.atl.mindspring.net>
References: <87md1u$du9$1@nnrp1.deja.com> <87mn3d$21t$3@nntp2.atl.mindspring.net> <389f7800_3@dilbert.ic.sunysb.edu> <87o0qs$852$1@nntp4.atl.mindspring.net> <zmAq4.6753$lK6.160795@iad-read.news.verio.net> <88en9h$2f7$1@nntp5.atl.mindspring.net> <38ab06f5_2@dilbert.ic.sunysb.edu>
NNTP-Posting-Host: c7.b7.09.6b
User-Agent: tin/pre-1.4-19990517 ("Psychonaut") (UNIX) (SunOS/4.1.4 (sun4m))
Xref: news.lth.se rec.arts.int-fiction:69858

David Samuel Myers <dmyers@sparky.ic.sunysb.edu> wrote:
> Andrew Plotkin <erkyrath@eblong.com> wrote:
> 
> : All those groundbreaking games from the other thread -- that's the "pulp"
> : of this golden age. Games that inspire one to say, okay, it had some flaws
> : -- but *I never imagined that IF could do that*. And this has not yet
> : started to slow down. (See _Shrapnel_.)
> 
> Although, I wonder if some of the effect comes from what I've built up
> from playing a lot of games. I mean, you wouldn't feel the same thing
> resonating from giving a newbie Shrapnel, or Aisle as their first game.
> It'd still be good, be there's no reference point.
> 
> I imagine bringing aliens to the earth and trying to explain culture. If
> you showed them a few movies, and they had absolutely no reference point,
> would any of it make sense? It would *really* depend what you picked...

Thirties SF didn't stand, ahem, in a vacuum either. In fact, it was mostly
pretty formulaic -- "everyone knows what a raygun is". 
 
> I guess the original poster had asked about 'canonization', and my thought
> is that we have yet to reach the peak of IF that has the universality that
> we could 'show it to the aliens'.

I don't think *any* art form has that property. Certainly literature (all
genres) has been moving farther away from it, ever since newfangled
stylistic tricks like "metaphor" were invented. :-)

> I've seen a few works that do this

Examples? My standards obviously aren't matching up.

> : In a sense, we're doing this for ourselves, in parallel with the pulp.
> : Because we've *got* the refined, high-quality body of written fiction to
> : look back on. We don't have to re-invent that, only adapt it.
> 
> Amen. Example- LA Confidential is a great movie. It's a genre movie. It's
> based on earlier films that are similar in a lot of places (e.g.
> Chinatown). A new take on an old idea *is* the embodiment of most art. A
> truly *new* idea, well... that only comes along once in a lifetime or so.

I'm not even talking about new ideas here -- merely the idea that writing
can *be* good. That's what Campbell did for the SF market.
 
> : Could that happen to IF? Yes. When? Sometime between now and 2050, I'm
> : betting. 
> 
> And hopefully sooner. I'll be 73 in 2050.

On the other hand, Jack Williamson is 91. :-)

--Z

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the
borogoves..."


From wolf@one.net Fri Feb 18 09:23:40 CET 2000
Article: 69917 of rec.arts.int-fiction
From: wolf@one.net
Newsgroups: rec.arts.int-fiction
Subject: Re: Why not Python? (was Re: Why not write IF in C ?)
Date: Thu, 17 Feb 2000 19:26:43 -0500
Message-ID: <jh3pas8gesdrrr3acrrmrv8qi6e8vd8fos@4ax.com>
References: <fvVo4.5802$al3.76732@newsc.telia.net> <DrXo4.29520$45.1790241@news2.rdc1.on.home.com> <Rg%o4.5855$al3.77461@newsc.telia.net> <38a87bc8.7589120@news.netlink.co.nz> <38AB5308.8A829142@cosc.canterbury.ac.nz> <38ABEEE6.353C@cs.york.ac.uk>
X-Newsreader: Forte Agent 1.7/32.534
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
NNTP-Posting-Host: 216.23.29.203
X-Trace: 17 Feb 2000 19:29:52 -0500, 216.23.29.203
Organization: OneNet Communications News Hub
Lines: 43
Path: news.lth.se!feed2.news.luth.se!luth.se!erix.ericsson.se!uab.ericsson.se!newsfeed1.telenordia.se!news.algonet.se!algonet!news.maxwell.syr.edu!hermes.visi.com!news-out.visi.com!uunet!ffx.uu.net!news2.one.net!news1.one.net!216.23.29.203
Xref: news.lth.se rec.arts.int-fiction:69917


Hi Iain:

>Yes, Python would be a pretty good choice -- although it might be tricky
>to implement UNDO neatly. Any new system worth its salt ought to have
>efficient multiple UNDO, I reckon; otherwise you might as well use T3 or
>Glulx.
>
>Someone said they were working on a Python IF library a while back. I
>forget who it was, sorry. Any news on how that's coming along?

I'm currently working on 0.5 alpha, the version that finally
implements save/restore. I'm currently fighting a bug in the Python
shelve routine but it looks as though the folks at comp.lang.python
may have some answers to that soon.

There is no undo in PAWS, because A) I never thought to put one in,
and B) I find the idea of undo sort of "cheating" (just my opinion.
:))

Other than that (and a couple of small syntax errors) 0.4 alpha is
nearly feature complete, it even includes 2 manuals (Word 2000 format,
I think Word 97 can read them). I can also supply HTML or RTF
documents if anyone's interested.

PAWS comes with a Universe, a library somewhere between adv.t and
Worldclass.t in features. The whole engine/library's about 10k lines
of code, plus an incomplete sample game of about 3k lines.

The whole package is aimed at new game authors who are a bit code-shy,
so it's about 70% comments! :)

If you want to download a copy it's located at:

http://w3.one.net/~wolf/PAWS.htm


Respectfully,

Wolf

"The world is my home, it's just that some rooms are draftier than
others". -- Wolf


From jwkenned@bellatlantic.net Fri Feb 18 17:51:30 CET 2000
Article: 69941 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newspump.monmouth.com!newspeer.monmouth.com!hermes.visi.com!news-out.visi.com!cam-news-hub1.bbnplanet.com!washdc3-snf1!news.gtei.net!cyclone1.gnilink.net!typhoon1.gnilink.net.POSTED!not-for-mail
Message-ID: <38AD698F.4A6906F2@bellatlantic.net>
From: "John W. Kennedy" <jwkenned@bellatlantic.net>
Reply-To: jwkenned@bellatlantic.net
X-Mailer: Mozilla 4.7 [en] (Win95; U)
X-Accept-Language: en
MIME-Version: 1.0
Newsgroups: rec.arts.int-fiction
Subject: Re: Science Fiction timeline vs IF (back on topic)
References: <87md1u$du9$1@nnrp1.deja.com> <87mn3d$21t$3@nntp2.atl.mindspring.net> <389f7800_3@dilbert.ic.sunysb.edu> <87o0qs$852$1@nntp4.atl.mindspring.net> <zmAq4.6753$lK6.160795@iad-read.news.verio.net> <88en9h$2f7$1@nntp5.atl.mindspring.net> <0YTq4.7047$lK6.169444@iad-read.news.verio.net> <cY0r4.1855$Mn3.9898@newsfeed.slurp.net>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Lines: 45
Date: Fri, 18 Feb 2000 16:17:17 GMT
NNTP-Posting-Host: 151.198.119.86
X-Trace: typhoon1.gnilink.net 950890637 151.198.119.86 (Fri, 18 Feb 2000 11:17:17 EST)
NNTP-Posting-Date: Fri, 18 Feb 2000 11:17:17 EST
Xref: news.lth.se rec.arts.int-fiction:69941

"R. Alan Monroe" wrote:
> Why did Tolkien hit big then, when it was written
> around WWII? 

In the first place, it wasn't printed until 1954-56.  It made something
of an intellectual splash -- W. H. Auden was one of the original
reviewers --, but it was never published in paperback (it was the belief
of some at the time that this was Tolkien's own decision -- I don't know
for sure).  Then, in 1965, Ace discovered that due to a wholly evil and
damnable provision in the then American copyright law, Tolkien had no
rights in the United States.  Ace came out with paperbacks, somewhat
rushed -- the appendices were simply photoset from the hardcovers.  (To
do them justice, they apparently set royalty payments aside, even though
the law didn't require them to.)  That got the attention of Tolkien and
Houghton-Mifflin, his American publisher, and they went to Ballantine
(not a house known for SF at the time, hard as that is to believe today)
and arranged for a revised edition that would be US-copyrightable (that
edition was also rushed; the first printings have some doozys!). 
Relatively minor changes were made throughout the text, new maps more
suitable for paperback-size volumes were drawn, some appendices were
considerably expanded, and an index appeared for the first time.  A
third edition (first paperback) was prepared for "The Hobbit", too.  In
the meanwhile, the Ace editions were taking off, especially among
college students, and the Ballantine editions did, too, as soon as they
became available and the story got out.  The whole thing became a cause
celebre in literary circles, and Ace announced that they would
voluntarily stop selling their edition when the first printing sold
out.  The Ballantine editions went on to become some of the best sellers
of all time (staying on the top of the New York Times list for over a
year, if I recall aright), and the scandal was one of the factors that
led to the US finally coming to terms with international copyright in
the 70's.

A further revised new hardcover came from Houghton Mifflin in 1967, and
eventually the revised texts made it back to Britain.  At this point,
things become rather chaotic; there is a preface to the newest
one-volume edition that summarizes it all.

-- 
-John W. Kennedy
-rri0189@ibm.net
Compact is becoming contract
Man only earns and pays.  -- Charles Williams




From mol@bartlet.df.lth.se Sun Feb 20 15:35:17 CET 2000
Article: 69971 of rec.arts.int-fiction
Path: news.lth.se!not-for-mail
From: mol@bartlet.df.lth.se (Magnus Olsson)
Newsgroups: rec.arts.int-fiction
Subject: Implementing SAVE and UNDO (was: Why not Python? (was Re: Why not write IF in C ?))
Date: 20 Feb 2000 13:07:59 +0100
Organization: Chronically disorganized
Lines: 84
Message-ID: <88olev$tvd$1@bartlet.df.lth.se>
References: <fvVo4.5802$al3.76732@newsc.telia.net> <38ABEEE6.353C@cs.york.ac.uk> <88j6c4$vn1$1@bartlet.df.lth.se> <38AD8672.5E65@cs.york.ac.uk>
NNTP-Posting-Host: bartlet.df.lth.se
NNTP-Posting-User: mol
Xref: news.lth.se rec.arts.int-fiction:69971

In article <38AD8672.5E65@cs.york.ac.uk>,
Iain Merrick  <im@cs.york.ac.uk> wrote:
>Magnus Olsson wrote:
>> Why would it be more difficult to implement undo in Python than in
>> a different language?

(...)

>Well, it is a VM issue. T3 and Glulx both have built-in support for
>UNDO; most other VMs don't, including (I assume) the Python one. Native
>machine code doesn't have UNDO support either, although it might be
>possible with hairy VM tricks on some operating systems. (VM as in
>Virtual Memory that time. Cluttered namespace, sigh.)
>
>If your VM has specific support for object-orientation but not UNDO,
>things could get rather fiddly. You'd have to explicitly copy the entire
>game state every turn, or wrap all your OO calls up in little routines
>which track which objects have changed and so on.

One thing that strikes me is that you're going to have basically the
same problems with save/restore as with undo. So if you've implemented
save/restore, couldn't you just make an auto-save (to a RAM buffer if
you don't want a lot of disk writes) after each move, and let the undo
command just do a restore from that buffer?

But this, of course, raises the question of how to implement
save/restore.

If your run-time (VM or memory management system in a native-code
model) supports dumping the whole game state to disk, then the
problem's basically been solved for you.

But what if you're not that lucky?

In a non-OO system, you can "centralize" the game state into a small
number of data structures. My own game "Dunjin" has, let's see, one
bug "travel table" with the list of exits for each room, one location
table with the location of every object, and one array of flags, one
array of timers, and that's about it - saving and restoring simply
means writing or reading those tables to disk. The disadvantage is
that the code is pretty unreadable; instead of Inform's

if (living_room.n_to == bedroom) {
    move apple to bedroom;
    give player hungry;
}

you get the Pascal code

if exits[23, 1] = 24 then begin
    location[45] := 24;
    flags[15] := true;
end;

(well, Dunjin is actually a _little_ more OO in that it's really
"rooms[23].exits[1]" and so on, but there's still an awful lot of
numeric constants).

In an OO program, however, game state is spread out over lots and lots
of objects.

One way of implementing save would be to give each object a save
method, which writes all state information for that object to a file,
register all objects in some central registry, and let the save method
call each object's save method. In a language such as C++, this is a
lot of work, since you'll have to implement the save methods for
each object by hand. (You can do what we have done at work and write
a supporting system that reduces this chore to a few macro definitions
for each class, but it's still a lot of work). It's much simpler in
an OO language with a proper metaclass and type information system.

In C++, you could also rewrite the new and delete operators so that
all your game objects end up in a memory buffer that can be saved
and restored - then you get something similar to the Z-code VM's
way of handling this.

But what I'd like to know is: How have you people out there who
are writing IF in C, C++, Basic, Python, whatever, solved these
problems?


-- 
Magnus Olsson (mol@df.lth.se, zebulon@pobox.com)
------    http://www.pobox.com/~zebulon   ------


From buzzard@world.std.com Mon Feb 21 14:21:03 CET 2000
Article: 69985 of rec.arts.int-fiction
Newsgroups: rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newspump.monmouth.com!newspeer.monmouth.com!uunet!ffx.uu.net!world!buzzard
From: buzzard@world.std.com (Sean T Barrett)
Subject: Strings with function calls vs. closures (LONG) (was: Text Morphing)
Message-ID: <Fq99y6.7y5@world.std.com>
Date: Mon, 21 Feb 2000 01:10:53 GMT
References: <85nno2$bsf$1@infosun2.rus.uni-stuttgart.de> <jdemaeqgre.fsf@login1.phy.duke.edu> <Fq33zC.C8r@world.std.com> <eftfqLXe$GA.253@cpmsnbbsa05>
Organization: The World Public Access UNIX, Brookline, MA
Lines: 317
Xref: news.lth.se rec.arts.int-fiction:69985

Kevin Forchione <Lysseus@email.msn.com> wrote:
>"Sean T Barrett" <buzzard@world.std.com> wrote in message
>news:Fq33zC.C8r@world.std.com...
>[snip my description of need for closures in executable strings]
>
>Um. Do you mind putting that into english, professor?

Ok. Let's use C++ syntax here, for clarity, with function
calls inside the strings notated by << >>.

  class UglyFoo
  {
     string my_sdesc;
     string short_desc() { return my_sdesc; }
     string cap_definite_short() { return "The "+short_desc(); }

     string long_desc() { return "<<cap_definite_short>> is pretty ugly."; }
  };

  UglyFoo bar;

  ... some other code somewhere in a library ..
  {
     ...
     bar.my_sdesc = "bar";
     ...
     desc = bar.long_desc();
     print desc;
  }

Ok, in english, the above code does the following: the short desc function
just returns the my_sdesc string. (It's a function so it can be overriden
by descendent classes.) cap_definite_short(), at call time, evaluates
short_desc, and concatenates the strings, yielding (in this case), "The bar".

Now, if we want strings that *don't* immediately evaluate their embedded
functions (which, for example, glulx supports), then after calling
bar.long_desc() above, desc should contain "<<cap_definite_short>> is pretty
ugly.", not "The bar is ugly".

Now, if we print desc, we want to evaluate the function 'cap_definite_short'
at print time. But cap_definite_short is a method invocation--it needs to
be called on some particular object.  What object?  At the time we 'built'
the string (in the long_desc) function, there was a particular context (a
hidden 'this' pointer that we could have used).

Suppose I have two UglyFoos, bar and baz.  Now I run:

    both_desc = bar.desc() + " " + baz.desc();

If the functions aren't immediately computed, then I end up with the
string "<<cap_definite_short>> is pretty ugly. <<cap_definite_short>> is
pretty ugly.". At this point, there's no way you're going to compute them
correctly.

Ok, now think about this: if we have a class, but not an object, we
have a piece of code, but we can't run it, because we don't really
have a valid 'this' pointer; we don't have an object context to run it
in.  The strings above have the same problem; divorced of their implicit
'this' pointer, there's no more context for them.

The closure-style solution is to 'instantiate' the string, in the same
way the class is instantiated as an object; we need a little block of
data that says 'here's the string, and here's the particular context
it was created in that provides context for calling functions'.  This
is exactly what closures are, but with functions instead of strings;
I'll explain in a bit. Let me just note that even with that, concatenation
is still going to be problematic; you actually still need to keep track
of the differing contexts for the children.

Ok, now why in the world do I *want* to defer function evaluation in strings.
Well, that post you're replying to was just to point out that while glulx
supported it, I'm not sure that it's that useful without closure-style
behavior, since you'll run into the above sorts of problems. But the reason
I was first thinking about this relates to something I posted about before,
namely the event-propogation in the mud I worked on, where events generated
text differently depending on how far they had propogated, and on who was
observing them. Let's just think about the latter, although this is obviously
more useful for muds (which have multiple viewers). But consider a
Suspended-style game where events which occur in a room with multiple
robots needs to get reported by each of them.

Here's the traditional single-player way of doing it, assuming functions
print strings rather than returning them:

   ... verb processing code ...
   if (all_conditions_are_met) {
      object.moveto(container);
      print "You put ";
      object.definite();
      print " in ";
      container.definite();
      print ".";
   }

Now, suppose NPCs use the same verb code as the player; we can't just blindly
say 'You', but need to print the name of the actor, or 'You':

   ... verb processing code ...
   if (all_conditions_are_met) {
      object.moveto(container);
      actor.Name();
      actor.VerbConjugate(" put ", " puts ");
      object.definite();
      print " in ";
      container.definite();
      print ".";
   }

Ok, now just to shorten it up, let's assume these return strings instead
of printing them (or that this is a shorthand notation for the above):

   ... verb processing code ...
   if (all_conditions_are_met) {
      object.moveto(container);
      print actor.Name(), actor.VerbConjugate(" put ", " puts "),
            object.definite(), " in ", container.definite(), ".";
   }

Ok, now we want to introduce multiple other viewpoints. The first problem
is that we need to print more than once. We can explicitly iterate over
everyone who can see the event, but writing out that iteration might be
complex, so putting it in every place that needs to print an event would
be gross; so it may be easier to simply move this print out to its own
function:

   print_put_in_container(actor, object, container, viewer)
   {
      print actor.Name(viewer), actor.VerbConjugate(viewer, " put ", " puts "),
            object.definite(viewer), " in ", container.definite(viewer), ".";
   }

Since a viewer might be the object being put in the container, or the
container itself, the above allow for appropriate 'you' substitutions.
It also allows Suspended-style robots to have different names for the
same object.

Now, to use that given a function that calls a function with all the
viewers in a given area, we'd do something like this:

   ... verb processing code ...
   if (all_conditions_are_met) {
      object.moveto(container);
      print_to_all_who_can_see(container, print_put_in_container);
   }

Well, except that doesn't quite work, since we need to pass in the
parameters to print_put_in_container. If the language is decent,
you can probably do something like this:

   ... verb processing code ...
   if (all_conditions_are_met) {
      object.moveto(container);
      list x = (actor, object, container);
      print_to_all_who_can_see(container, print_put_in_container, x);
   }

Here, conventionally, the 'print_to_all_who_can_see' always appends
the viewer to the end of the list before calling the function.  (To
actually do this in C++, we'd have to change print_put_in_container
to take a list of parameters in an array, and change the print function
to reference the array, rather than take an arbitrary number of
parameters.

Unfortunately, I've moved the details of the print away from the
location it's used, and added a lot of extra work to pass around
the needed parameters. It would be nice if the compiler could just
do this for us.  If we had  the idealized function execution in
strings, I could just replace that whole mess with:

   ... verb processing code ...
   if (all_conditions_are_met) {
      object.moveto(container);
      print_to_all_who_can_see(container,
        "<<actor.Name(viewer)>> <<actor.verbConjugate(viewer, "put", "puts")>>"
        " <<object.definite(viewer)>> in <<container.definite(viewer)>>.");
            
   }

But it's hard to see how any language is going to be able to bind 'viewer'
correctly in the above sort of context.

On the other hand, languages that explicitly support closures allow you
to make this explicit; you can on-the-fly create a "new" function that
takes one argument (the viewer), and has the other parameters automatically
bound at execution time. (The parameter doesn't have to be named 'viewer';
the code will just require a function that takes one parameter):

   ... verb processing code ...
   if (all_conditions_are_met) {
     object.moveto(container);
     func my_print(viewer) =
     {
       print actor.Name(viewer),actor.verbConjugate(viewer, " put ", " puts "),
            object.definite(viewer), " in ", container.definite(viewer), ".";
     };
     print_to_all_who_can_see(container, my_print);
   }

Note that I wouldn't even have to give my_print it's own name; I could
now just write, ok, let me shorten the darn names so this is vaguely
readable:

   ... verb processing code ...
   if (all_conditions_are_met) {
     obj.moveto(cont);
     print_to_all(cont,
        func(v) {
            print act.Name(v), act.conj(v, " put ", " puts "),
                   obj.def(v), " in ", cont.def(v), ".";
        }
     );
   }

I'm not saying in any way that that's *pretty*, but it's a heck of
a lot prettier than the alternatives.

Unfortunately, very few languages support closures, because they're
hard to support performance-wise. Closures should be first-class
data items, so, for example, I should be able to store my_print into
a global variable, and then return from this verb code. At that
point, if object and container were local variables, they'd have
been on the stack and been popped, but my_print would still refer
to them (it's not supposed to have its own copy of the variables,
for various reasons). Thus, the function variable frames can't
be stack allocated, but need to come from a general memory heap.

On the other hand, this sort of performance overhead is perfectly
acceptable for the interpreter performance we get from IF VMs anyway,
so I think it would be interesting to try to add them.

The MUD language I was using didn't support closures either. We
used a system which create dynamic lists on the fly, sort of its
own mini-interpreted language (interpreted by interpreted code,
yuck!); for example, here's a cut & paste of the code we used for
putting an object in a container:

    o = new($visClass, list(
          list($where, $def, player, " put", $conjug, player, " ",
             $you, player, list($def, dobj), list($indef, dobj),
             " in ", $you, player, list($def, iobj), list($indef, iobj), "."),
          list($actMove, player, dobj, iobj)));
    generateDescripton(o, player);

This system was hardcoded with particular parameters; opcodes like
'def' and 'conjug' paid attention to the viewer; things like 'where'
related to the propogation of the even across multiple rooms.

Ok, if anyone tries to read this in detail, here's what's going on.
The top level list contains two things: a list of how to human-print
it, and a list of how NPCs should interpret it (the 'actMove' list).
The human-print list uses the opcode 'where' to print where it's
happening if seen outside the original room (or in or out of a
container); $def will eventually print the definite-article-ified name
of the following object (in this case the player, that is the actor) as
seen by the viewer; $conjug adds an "s" potentially; $you determines if
the viewer is the specified object (in this case the actor), and
chooses one of the following lists to print; if the viewer is the actor,
it prints the definite version of the object, if not, it prints the
indefinite-article-ified version of the object. Similarly for the
destination.

So if I had a pet rat named Bob, and I put him in a barrel while John
is in the room with me and Fred is to the south, it would print:

me: You put Bob in the barrel.
John: Satoria puts Bob in a barrel.
Bob: Satoria puts you in a barrel.
Fred: Far to the north Satoria puts something in something.

Or if the game keeps track of relationships, *the exact same code* could print:

me: You put your pet rat Bob in the barrel.
John: Satoria puts a disgusting rat in a barrel.
Bob: Your owner puts you in your favorite barrel.
Fred: Far to the north Satoria puts something in something.

Please note, by the way, that, as I've said many times, I think this
level of simulation is probably more complexity than it's worth for
IF, especially as the task of 'writing text' gets turned into 'writing
grammar descriptions of text'. However, I think that (a) closures would
have other applicability, and (b) I'm suspicious of the utility of
glulx's strings with deferred-til-print-time function calls, because it
would take a hideous amount of work on the part of a compiler to use them
for anything more complex than the Z-machines global string substitutions
(which glulx already has better ways of doing).

SeanB
PS:
As I mentioned elsewhere, there were a number of ways to move multiple
objects out of a container (e.g. "fill from", "empty into"). Each of
these shared a common core code that decided where each object in
the container went, and then generate a "descripton" for it; however,
since it was common core code, it wanted different to allow different
descriptions depending on the caller, yet it needed to substitute
the object and target location in the description provided by a caller.
The code uses a hack--the caller passes in a description list as above,
but with several dummy values, and the common code searches for the
dummy values and substitutes them before generating the descripton.
With closures, the clients could have just defined a function that
takes three parameters--obj, target, and viewer; then the core code
could define a new function of one parameter, which is just that other
function, but now with obj & target bound:

   MoveOut(container, descfunc(obj,target,viewer))
   {
      objectloop(x in container)
      {
         ... compute y as destination for x ...
         func my_func(viewer) = { return descfunc(x,y,viewer); }
         generateDescripton(container, my_func);
      }
   }

I hope this is suggestive of the extensive utility of closures,
even if this is all still examples nobody would want to do in
single-person IF.


From reply@adamcadre.ac Wed Feb 23 09:39:15 CET 2000
Article: 70035 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newspump.monmouth.com!newspeer.monmouth.com!newsfeed.berkeley.edu!remarQ73!remarQ.com!supernews.com!rQ66!corp.supernews.com!not-for-mail
From: Adam Cadre <ac@adamcadre.ac>
Newsgroups: rec.arts.int-fiction
Subject: Re: [Inform] [Shrapnel] Changing User Input
Date: Tue, 22 Feb 2000 22:41:36 -0800
Organization: Rule #1 is, you do not talk about the Organization.
Lines: 23
Message-ID: <38B38120.4EA@adamcadre.ac>
References: <88uvv4$jlv$1@nnrp1.deja.com>
Reply-To: reply@adamcadre.ac
X-Complaints-To: newsabuse@supernews.com
X-Mailer: Mozilla 3.01 (Win95; I)
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Xref: news.lth.se rec.arts.int-fiction:70035

Irene Callaci wrote:
> How can a game's author interrupt the user's input and substitute his
> or her own input, letter by letter, as Adam did in Shrapnel?

Well, I did it in a total brute force manner, like so:

print "Would you like to RESTART, RESTORE a saved game, or QUIT?^> ";
Pause(); print "r";
Pause(); print "e";
Pause(); print "s";
Pause(); print "t";
Pause(); print "a";
Pause(); print "r";
Pause(); print "t";
Pause(); @erase_window -1;

[ Pause i;
   @read_char 1 i;
];

  -----
 Adam Cadre, Sammamish, WA
 http://adamcadre.ac


From erkyrath@eblong.com Wed Feb 23 13:05:57 CET 2000
Article: 70026 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newspump.monmouth.com!newspeer.monmouth.com!news.maxwell.syr.edu!news.mindspring.net!newsfeed.mindspring.net!firehose.mindspring.com!not-for-mail
From: Andrew Plotkin <erkyrath@eblong.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: [Inform] short_name (Was Re: Inform- printing object names)
Date: 23 Feb 2000 03:52:10 GMT
Organization: MindSpring Enterprises
Lines: 33
Sender: Andrew Plotkin <erkyrath@netcom19.netcom.com>
Message-ID: <88vlha$pss$1@nntp4.atl.mindspring.net>
References: <88etpm$5s$1@cinnamon.nnrp.netline.net.uk> <sam780ai2pd53@corp.supernews.com> <88f7bc$ugh$1@nntp5.atl.mindspring.net> <sb3a4iper2a172@corp.supernews.com> <88v95q$ov7@edrn.newsguy.com>
NNTP-Posting-Host: c7.b7.09.77
User-Agent: tin/pre-1.4-19990517 ("Psychonaut") (UNIX) (SunOS/4.1.4 (sun4m))
Xref: news.lth.se rec.arts.int-fiction:70026

Daryl McCullough <daryl@cogentex.com> wrote:
> I think that what the DM says about "short_name" is misleading:
> 
>     "The short name of an object is normally the text given in
>     double-quotes at the head of its definition...A more
>     flexible way to specify an object's short name is with
>     the short_name property."
>
> I misinterpreted this to mean that short_name is by default
> equal to the text given in double-quotes at the head of an
> object definition.

People frequently get confused on that point, but really, the text doesn't
say anything like that... :) 

The problem is that it really is talking about three things: 1) the short
name of the object; 2) the text given in double-quotes; 3) the short_name
property. The manual is consistent in using those three terms, but it's
not clear enough that they really are three separate ideas.

> This is not the case. Instead, short_name
> returns 0 if no short_name property has been given.
> 
> To me, that's unnecessarily redundant. Why not let the
> name given in double-quotes *be* the short_name?

Because short_name is a property defined in the library, and the compiler
has no idea there is such a thing.

--Z

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the
borogoves..."


From nitfol@my-deja.com Fri Feb 25 13:15:24 CET 2000
Article: 70108 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newspump.monmouth.com!newspeer.monmouth.com!news.maxwell.syr.edu!nntp2.deja.com!nnrp1.deja.com!not-for-mail
From: Evin Robertson <nitfol@my-deja.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: Implementing SAVE and UNDO (was: Why not Python? (was Re: Why not write IF in C ?))
Date: Thu, 24 Feb 2000 06:07:04 GMT
Organization: Deja.com - Before you buy.
Lines: 29
Message-ID: <892hq7$48a$1@nnrp1.deja.com>
References: <fvVo4.5802$al3.76732@newsc.telia.net> <38ABEEE6.353C@cs.york.ac.uk> <88j6c4$vn1$1@bartlet.df.lth.se> <38AD8672.5E65@cs.york.ac.uk> <88olev$tvd$1@bartlet.df.lth.se> <g4s8bssvcjq8u8v57cn9mc33ls44em3n13@4ax.com>
NNTP-Posting-Host: 208.7.216.140
X-Article-Creation-Date: Thu Feb 24 06:07:04 2000 GMT
X-Http-User-Agent: Lynx/2.8.2rel.1 libwww-FM/2.14
X-Http-Proxy: 1.0 bx6.deja.com:80 (Squid/1.1.22) for client 208.7.216.140
X-MyDeja-Info: XMYDJUIDnitfol
Xref: news.lth.se rec.arts.int-fiction:70108

In article <g4s8bssvcjq8u8v57cn9mc33ls44em3n13@4ax.com>,
  wolf@one.net wrote:
> Save/Restore is actually a lot different from Undo. In a save/restore
> you're saving the entire game state, in effect the values of all
> variables. In an undo you're saving the "state delta" of a limited
> number of moves. Undo therefore would almost certainly not use the
> same techniques as save/restore.

In Frotz, 'undo' slots are implemented simply by making a duplicate of
all volatile memory.  Not very space efficient, but fast.

Quetzal is a save game format for z-machine games.  In old versions of
nitfol (my z-machine interpreter), I was actually using the Quetzal
format for the undo slots, so the process of saving/restoring was
*identical* to the undo operation.  Yay code reuse.  The quetzal
format can either keep a duplicate of volatile memory or a simple diff
between the current state and the initial game state.

Unfortunately, Quetzal 1.4 requires that the save operation actually
be inside a @save (or @save_undo which is fairly equivalent) opcode,
so I couldn't implement undo for version 3 games (which don't call
@save_undo).  So I tossed Quetzal for undo except for the stack format
which was decent enough.  Now nitfol does a per-turn-diff of volatile
memory to make each undo slot really small, so it can have virtually
unlimited undo/redo depth.


Sent via Deja.com http://www.deja.com/
Before you buy.


From meta@pobox.com Sat Mar  4 10:23:08 CET 2000
Article: 70330 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!uio.no!news-FFM2.ecrc.net!feed1.news.rcn.net!rcn!meta
From: meta@pobox.com (mathew)
Newsgroups: rec.arts.int-fiction
Subject: Re: (1st post) IF and Critical Theory
Date: Fri, 3 Mar 2000 19:29:34 -0500
Organization: Evil Geniuses For A Better Tomorrow
Lines: 33
Message-ID: <1e6xn7p.1dn7xn7txjbmeN%meta@pobox.com>
References: <87md1u$du9$1@nnrp1.deja.com> <R7Bo4.3991$lK6.84897@iad-read.news.verio.net> <38A33FF9.67A3C591@worldinter.net> <LJYo4.4518$lK6.99085@iad-read.news.verio.net> <38A4724C.4FF5E2EA@worldinter.net> <slrn8bg4nf.d7.flick@CC860922-A.home.com> <89esb5$si2$1@news.jump.net> <sbof339ajp161@corp.supernews.com> <89hkib$1l0$1@nntp8.atl.mindspring.net> <sbto3p79ee6117@corp.supernews.com> <89olec$oaj@poseidon.rz.uni-duesseldorf.de> <89oo99$vk3$1@nntp5.atl.mindspring.net> <Z3Uv4.8$F7.378@ptah.visi.com> <YgUv4.104992$45.5581394@news2.rdc1.on.home.com>
X-Trace: YMUfFTI7WK2tinRBaHbAsomo0F/HyF9XYaNuR30goOk=
X-Complaints-To: abuse@rcn.com
NNTP-Posting-Date: 4 Mar 2000 00:29:06 GMT
User-Agent:  MacSOUP/2.4.2 (unregistered for 127 days)
Xref: news.lth.se rec.arts.int-fiction:70330

Joe Mason <jcmason@uwaterloo.ca> wrote:
> In fact, there were quite a few TRS-80 games I remember seeing advertised that
> looked WAY COOL at the time.  Armoured Patrol.  That series of RPG's with the
> distinctive name that I can't remember now (I think the the designer was named
> 'Masters' or 'Masterson' or something - it was emblazoned in big type on all
> the ads).  Asylum, Asylum II, and Lucifer's Realm.

I had Asylum at the time, on my TRS-80.  It was a lot less cool than it
sounded, because it basically consisted of a long string of arbitrary
puzzles.  For example, the first guard you'd meet, you'd be captured by;
the second, you'd have to avoid; the third, you could punch to knock
out, with no explanation for why you couldn't do that to the first two;
and so on.

I recently fired up a copy of a TRS-80 emulator, to see if years of
playing IF might make me more tolerant of Asylum's foibles, or whether
maybe there were clues I'd been too young and foolish to recognize at
the time.  I'm sorry to report that it was just as bad as I remembered.

Still, I had some fun playing Radio Shack's "Adventure"... Seeing the
words "You see a knife floating in mid air" in green induced a sudden
rush of memories.

Of the four pieces of IF I've ever started writing, the only one I
completed was on the TRS-80.  (I lost it long ago.)


mathew
-- 
Number of known defects in Windows 2000 at release: 63,000
PGP key 0xF250F56B / indoors jupiter tunnel positive eating 
trombonist trauma norwegian highchair jamaica ringbolt universe 
prefer document banjo dinosaur uproot embezzle vapor hamilton


From jcmason@uwaterloo.ca Tue Mar  7 12:28:22 CET 2000
Article: 70398 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newspump.monmouth.com!newspeer.monmouth.com!news.maxwell.syr.edu!newshub2.home.com!news.home.com!news2.rdc1.on.home.com.POSTED!not-for-mail
From: jcmason@uwaterloo.ca (Joe Mason)
Newsgroups: rec.arts.int-fiction,rec.games.int-fiction
Subject: Re: Doctor Who (was Re: [announce] dino-comp!)
References: <38BB7EEB.77D1@adamcadre.ac> <89h6vr$7td$1@nnrp1.deja.com> <89habb$ai0$1@nnrp1.deja.com> <#fhsq5xg$GA.276@cpmsnbbsa03> <89j59g$6qm$1@pegasus.csx.cam.ac.uk> <38c15276_1@news1.vip.uk.com> <Ddgw4.109512$45.5747962@news2.rdc1.on.home.com> <050320001941250630%johnhill@onefuse.net>
User-Agent: slrn/0.9.5.4 (UNIX)
Lines: 44
Message-ID: <PGPw4.118387$45.6006586@news2.rdc1.on.home.com>
Date: Mon, 06 Mar 2000 14:56:47 GMT
NNTP-Posting-Host: 24.114.210.122
X-Complaints-To: abuse@home.net
X-Trace: news2.rdc1.on.home.com 952354607 24.114.210.122 (Mon, 06 Mar 2000 06:56:47 PST)
NNTP-Posting-Date: Mon, 06 Mar 2000 06:56:47 PST
Organization: @Home Network Canada
Xref: news.lth.se rec.arts.int-fiction:70398 rec.games.int-fiction:50216

John Hill <johnhill@onefuse.net> wrote:
>Sylvester McCoy was, um.
>Oh, it's been a while. What's the word?
>Killed off.
>Written out.
>Mangled.
>Eviscerated.
>Vivisected.
>Regenerated.
>Regenerated in the most entertaining way, out of all the Doctors.
>I'll always be fond of him for that.

Speaking of which:

  I Am Doctor Who
  (When I'm Sixty-Four)

If I get crushed by sixteen ton weights
I get right back up
If I end up murdered by a ninja horde
I'm only dead until I get bored
Death is a bitch, and then you're alive
That's my point of view
I am quite brilliant and quite resilient
Cuz I'm Doctor Who

(slowly)
I think this is great
No matter what my fate
I regenerate

Driving my TARDIS through time and space
All dimensions, too
An intergalactic roller coaster ride
My companions there at my side
Fighting the Daleks time and again
That is what I do
I am a Time Lord (no, not a crime lord)
I am Doctor Who

(From FASS 1996: FASStic Surgery.  FASS is a University of Waterloo student
"theatre" company - and I use the word theatre advisedly.)

Joe


From reply@adamcadre.ac Tue Mar  7 16:41:59 CET 2000
Article: 70431 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gctr.net!newsfeed.berkeley.edu!remarQ70!supernews.com!rQ66!corp.supernews.com!not-for-mail
From: Adam Cadre <ac@adamcadre.ac>
Newsgroups: rec.arts.int-fiction
Subject: Re: [Inform] Superbrief
Date: Tue, 07 Mar 2000 07:19:35 -0800
Organization: Rule #1 is, you do not talk about the Organization.
Lines: 15
Message-ID: <38C51E07.BC@adamcadre.ac>
References: <38c51845.48113586@news.vt.edu> <8a3682$io$1@nntp9.atl.mindspring.net>
Reply-To: reply@adamcadre.ac
X-Complaints-To: newsabuse@supernews.com
X-Mailer: Mozilla 3.01 (Win95; I)
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Xref: news.lth.se rec.arts.int-fiction:70431

Brian Uri wrote:
>       Out of curiousity, how often is SUPERBRIEF ever used?

Andrew Plotkin replied:
> I removed the command in _Hunter_. Nobody complained.

Not only has no one complained (or indeed even noticed) that
superbrief has been removed from my last three games (I think it's
three, anyway), but I've even taken to rigging games to start in
verbose mode, removing both superbrief *and* brief, and again, no
one's complained or even asked me about it.

  -----
 Adam Cadre, Sammamish, WA
 http://adamcadre.ac


From odd1out@openface.ca Mon Mar 13 16:55:54 CET 2000
Article: 70569 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!uio.no!arclight.uoregon.edu!logbridge.uoregon.edu!news.maxwell.syr.edu!nntp2.deja.com!nnrp1.deja.com!not-for-mail
From: Miseri <odd1out@openface.ca>
Newsgroups: rec.arts.int-fiction
Subject: Re: Puzzle Question
Date: Mon, 13 Mar 2000 12:59:23 GMT
Organization: Deja.com - Before you buy.
Lines: 99
Message-ID: <8aion9$mqp$1@nnrp1.deja.com>
References: <20000313005213.21980.00001222@ng-cc1.aol.com>
NNTP-Posting-Host: 216.46.7.3
X-Article-Creation-Date: Mon Mar 13 12:59:23 2000 GMT
X-Http-User-Agent: Mozilla/2.02 (Win16; I)
X-Http-Proxy: 1.0 x36.deja.com:80 (Squid/1.1.22) for client 216.46.7.3
X-MyDeja-Info: XMYDJUIDmisericordius
Xref: news.lth.se rec.arts.int-fiction:70569

In article <20000313005213.21980.00001222@ng-cc1.aol.com>,
  yesuslave@aol.com (YesuSlave) wrote:
> This may be a rather odd question, but does anyone know of any puzzle
used in
> IF that utilized mirrors?  I would appreciate knowing this for a new
game that
> I am designing.
>

Zork 3, Beyond Zork, Curses, Symetry, King's Quest 3, The Black
Cauldron, Conquests of Camelot and King's Quest 6.

There's a wide variety of puzzles there, though I suspect that it would
be possible to come up with a new way of using a mirror.  Good luck.



[ SPOILERS ]












[ SPOILER SPACE ]











[ ENOUGH SCROLL? ]










[ OKAY ]








Zork 3 used a box with two mirrored sides to get past a pair of twin
giants. The idea was that they'd see themselves in the mirror, think
they were looking at each other, and therefore that nothing was sneaking
by in between them.

Beyond Zork used a series of mirrors to reflect a beam of sunlight into
the dark recesses of a cave system.

Curses used a mirror to enter a mirror-image of the same room, so as to
more easily solve another puzzle.  A similar idea was used in Trinity,
though here there wasn't a mirror specifically.

There is another mirror in Curses which provides a hint as to which
objects in your possession are magical. I never really noticed that
hint, though I've been told about it.

The main puzzle in Symetry (sic) involved destroying the reflection in
the mirror by stabbing yourself.

Going on to graphic IF:

King's Quest 3 used a mirror to scare off Medusa.  The Black Cauldron
also used a mirror in an alternate solution to a puzzle, in exactly the
same way.

The Black Cauldron mirror could also be used as a bribe.  In Conquests
of Camelot, a mirror is also used as a bribe to obtain another object
>from  a vain woman.

In King's Quest 6, a mirror was used to reveal the truth about the
individual looking into it. In one puzzle, the idea was to unmask an
imposter; in another puzzle on an alternate storyline, the idea was to
remind someone of his tragic past and thus soften his heart.


Sent via Deja.com http://www.deja.com/
Before you buy.


From obrian@ucsu.Colorado.EDU Wed Mar 15 16:23:44 CET 2000
Article: 70630 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!skynet.be!newsfeed.stanford.edu!newsfeed.berkeley.edu!news.colorado.edu!ucsu.Colorado.EDU!obrian
From: Paul O'Brian <obrian@ucsu.Colorado.EDU>
Newsgroups: rec.arts.int-fiction,rec.games.int-fiction
Subject: [Announce] SPAG 20 is here!
Date: Wed, 15 Mar 2000 07:52:27 -0700
Organization: University of Colorado, Boulder
Lines: 47
Message-ID: <Pine.GSO.3.96.1000315074724.21028A-100000@ucsu.Colorado.EDU>
NNTP-Posting-Host: ucsu.colorado.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: peabody.colorado.edu 953131949 11320 128.138.129.83 (15 Mar 2000 14:52:29 GMT)
X-Complaints-To: abuse@colorado.edu
NNTP-Posting-Date: 15 Mar 2000 14:52:29 GMT
Xref: news.lth.se rec.arts.int-fiction:70630 rec.games.int-fiction:50395

SPAG's 20th issue has been sent to subscribers today! The issue contains
reviews of the following games:

Christminster
Common Ground
Deadline
Enemies
I-0: Jailbait on the Interstate
Inheritance
Inhumane
Intruder
Lost New York
9:05
Not Just A Game
Not Just An Ordinary Ballerina
Perilous Magic
Shrapnel
A Simple Theft
Skyranch

SPECIFICS
=========
Bliss
9:05

"Specifics?" I hear you asking. "What does that mean?"

Read the issue, and all will be revealed. If you're not a subscriber (an
unfortunate condition that I advise you to remedy as soon as possible),
you can retrieve the issue from the incoming/if-archive directory on
ftp.gmd.de. Eventually, it will migrate to its permanent home at:

ftp://ftp.gmd.de/if-archive/magazines/SPAG/SPAG20

The issue should also be posted sometime today on the SPAG web site:

http://www.sparkynet.com/spag

I hope you enjoy SPAG 20, and thank you for helping to keep text
adventures alive. 

-- 
Paul O'Brian   obrian@colorado.edu   http://ucsu.colorado.edu/~obrian
> GET SPAG ISSUE 20 FROM HTTP://WWW.SPARKYNET.COM/SPAG. EXAMINE IT.
This lovingly produced zine features news, reviews, and more, all focusing
on interactive fiction! It's nice and thick, too. 



From dns361@merle.acns.nwu.edu Thu Mar 16 13:16:16 CET 2000
Article: 70655 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newspump.monmouth.com!newspeer.monmouth.com!news.maxwell.syr.edu!newsfeed.acns.nwu.edu!news.acns.nwu.edu!merle.acns.nwu.edu!dns361
From: Second April <dns361@merle.acns.nwu.edu>
Newsgroups: rec.arts.int-fiction
Subject: Re: [Theory] The Meta-Puzzle of Interactive Fiction
Date: Wed, 15 Mar 2000 18:21:15 -0600
Organization: Northwestern University, Evanston, IL, US
Lines: 60
Message-ID: <Pine.HPP.3.93.1000315180732.27921A-100000@merle.acns.nwu.edu>
References: <20000315072930.22021.00001708@ng-cd1.aol.com> <20000315152530.15537.00004994@ng-de1.aol.com> <8ap0fq$ahm$1@nnrp1.deja.com>
NNTP-Posting-Host: merle.acns.nwu.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
In-Reply-To: <8ap0fq$ahm$1@nnrp1.deja.com>
Xref: news.lth.se rec.arts.int-fiction:70655

On Wed, 15 Mar 2000, J.D. Berry wrote:

> In article <20000315152530.15537.00004994@ng-de1.aol.com>,
> thesolarecho@aol.com (The Solar Echo) wrote:
> 
> > Interactive Fiction is barely classified. Matching an I-F game to a
> > players likes and dislikes is difficult, either involving random
> > downloads and trial and error, or reviews written by people who may
> > or may not share your I-F personality type.
> 
> I found this part of Doe's oeuvre (if you will ;-) the most
> intriguing.
> 
> >
> > Wouldn't it be nice if there was a site where games were classified
> > according to their I-F structure? Anyone visiting the site could take
> > a test to determine their I-F personality type, and linked to games
> > that fit.
> 
> The problem is that there aren't enough ratings in the first place, let
> alone a break down by personality types.

And it's not clear that personality types dictate enjoyment all that much
anyway.

If you ask me for a short list of IF that I enjoyed most, I'd probably
mention Babel, Sunset Over Savannah, Varicella, Little Blue Men, Change in
the Weather, Worlds Apart, Spellbreaker, and Trinity. Oh, and Losing Your
Grip.

So what category am I in? Sunset and Worlds Apart could probably be called
"emotive," if that means anything, but it's hard to see how Varicella or
Spellbreaker or Little Blue Men could qualify. Change in the Weather was
highly visual, but I don't think you could say that of Little Blue Men or
Trinity--and if "enjoying words" is in opposition to visual, than I'm in
the "linguistic" category because it's the quality of the writing in
Varicella and Trinity that really appealed to me. Do I require movement to
process information? There's movement in all of the above, but varying
amounts of it, and I liked Enlightenment too. And I'll venture to say that
I liked Grip--and others too--because it rewarded analysis and thought,
which isn't really related to information processing at all.

I don't mean to bash Doe, really. There are probably lessons here for
potential authors, along the lines of "use all the senses." But
personality and information-processing types only dictate a narrow range
of reactions, namely to unusual works of IF that tend to favor one type of
processing approach over another. Photopia may be one example, but I'm
hard pressed to think of another.

Duncan Stevens
dns361@merle.acns.nwu.edu

But buy me a singer to sing one song--
Song about nothing--song about sheep--
Over and over, all day long;
Patch me again my thread-bare sleep.

--Edna St. Vincent Millay




From erkyrath@eblong.com Wed Mar 22 22:20:57 CET 2000
Article: 70916 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gctr.net!europa.netcrusader.net!207.172.3.37!feed1.news.rcn.net!rcn!news.mindspring.net!firehose.mindspring.com!not-for-mail
From: Andrew Plotkin <erkyrath@eblong.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: [Glulx] while I'm adding stuff...
Date: 22 Mar 2000 04:56:49 GMT
Organization: MindSpring Enterprises
Lines: 63
Sender: Andrew Plotkin <erkyrath@netcom19.netcom.com>
Message-ID: <8b9jqh$von$2@nntp9.atl.mindspring.net>
References: <8b8p2i$a54$1@slb7.atl.mindspring.net> <8b9bok$mma$1@joe.rice.edu>
NNTP-Posting-Host: c7.b7.09.77
User-Agent: tin/pre-1.4-19990517 ("Psychonaut") (UNIX) (SunOS/4.1.4 (sun4m))
Xref: news.lth.se rec.arts.int-fiction:70916

Lucian Paul Smith <lpsmith@rice.edu> wrote:
> Andrew Plotkin (erkyrath@eblong.com) wrote:
> 
> : Basically, I'm going to add a @setiosys opcode, which determines how
> : @streamchar, @streamstr, and @streamnum output is handled. The three
> : supported values will be:
> 
> : 0: No output. (The default, entirely useless except as a base case.)
> 
> Er...

Awwwk!
 
> Why have this be the default?  It seems to me you're setting yourself up
> for a bajillion posts to the ng, "Why don't I get any output?"  "Well, you
> need to set foo to 1."  Or, worse yet, people trying the system, getting
> nothing, and throwing it away.

Anyone using the standard Inform library will never see this stuff.

> If it's something only a library writer needs worry about, OK I guess, but
> I still think you're needlessly hassling your library writers.

Right now I'm the library writer. :-) It's one line of boilerplate code,
in the middle of a small chunk of boilerplate that already exists (testing
for Glk, opening the first window, setting the current Glk stream.)

> Of course, I'm also confused as to why have an 'entirely useless' mode in
> there in the first place.

Before a system can do something, it has to be able to do nothing.

Seriously -- I like *simple* base cases. When I'm implementing something,
I always get something trivial but complete, and then add functionality.

Anyway, what's the alternative? I can only think of two:

1) The default output is "cheap" instead of "null" -- the output comes
out, but maybe just to standard-out, with no formatting
capabilities. Well, MacOS and PalmOS have no standard-out; the data would
just be lost *anyway*. And the interpreter source code would have to worry
about linking the ANSI I/O functions on some platforms but not
others. This is what Glk is supposed to *cure*.

2) The interpreter picks its favorite output system, and starts up with
that one set. Yes, that makes life easier as long as all interpreters and
all games believe in Glk. When it doesn't -- games start to break, and
guess what, it's the games that don't test and set the system. In other
words, the ones lacking that line of boilerplate code.

Given a particular category of user error, the better-designed system is
the one that *always* fails on that error, rather than the one that
*might* fail -- or, even worse, start failing at some point in the
future.

(One might well point out that an even better-designed system wouldn't
fail at all. In this case, that means mandating that every interpreter
support Glk as an output system. Do I want to do that? Heck no.)

--Z

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the
borogoves..."


From erkyrath@eblong.com Wed Mar 22 22:22:54 CET 2000
Article: 70925 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gctr.net!news.mindspring.net!newsfeed.mindspring.net!firehose.mindspring.com!not-for-mail
From: Andrew Plotkin <erkyrath@eblong.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: [Glulx] while I'm adding stuff...
Date: 22 Mar 2000 17:03:17 GMT
Organization: MindSpring Enterprises
Lines: 14
Sender: Andrew Plotkin <erkyrath@netcom10.netcom.com>
Message-ID: <8baucl$b3k$1@nntp9.atl.mindspring.net>
References: <8b8p2i$a54$1@slb7.atl.mindspring.net> <8b9bok$mma$1@joe.rice.edu> <8b9jqh$von$2@nntp9.atl.mindspring.net> <Rc6C4.20$BN.182099456@news.frii.net>
NNTP-Posting-Host: c7.b7.09.6e
User-Agent: tin/pre-1.4-19990517 ("Psychonaut") (UNIX) (SunOS/4.1.4 (sun4m))
Xref: news.lth.se rec.arts.int-fiction:70925

J. Holder <jholder@io.frii.com> wrote:
> Andrew Plotkin <erkyrath@eblong.com> scribed:
>> Before a system can do something, it has to be able to do nothing.
> 
> This sounds like it is straight from the Tao-Te Ching... (grin)

You think you're kidding, dontcha.
 
(I'm not a Taoist, but I try to behave as if I were. :)

--Z

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the
borogoves..."


From erkyrath@eblong.com Thu Mar 23 09:47:36 CET 2000
Article: 70933 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!logbridge.uoregon.edu!feed1.news.rcn.net!rcn!news.mindspring.net!newsfeed.mindspring.net!firehose.mindspring.com!not-for-mail
From: Andrew Plotkin <erkyrath@eblong.com>
Newsgroups: rec.arts.int-fiction,rec.games.int-fiction
Subject: Re: [Announce] LASH
Date: 22 Mar 2000 21:42:59 GMT
Organization: MindSpring Enterprises
Lines: 32
Sender: Andrew Plotkin <erkyrath@netcom12.netcom.com>
Message-ID: <8bbep3$dhg$1@slb6.atl.mindspring.net>
References: <8bbe85$5la$1@news.igs.net>
NNTP-Posting-Host: c7.b7.09.70
User-Agent: tin/pre-1.4-19990517 ("Psychonaut") (UNIX) (SunOS/4.1.4 (sun4m))
Xref: news.lth.se rec.arts.int-fiction:70933 rec.games.int-fiction:50612

In rec.arts.int-fiction Suzanne Britton <tril@host.ott.igs.net> wrote:
> Eh? How is that? No spelling errors, grammar errors, $$$ MAKE MONEY FAST $$$,
> or "then READ IT AGAIN!!!" in sight. And spammers don't usually put a
> nice killfile-able [Announce] in their subject headers.

Some of them do.
 
> And how does one discern "general structure" after reading the first line?

Gestalt eye-impression. It doesn't look like a Usenet posting, it looks
like a press release.

He's right; I've seen lots of Usenet crap that was formatted *exactly* 
like that. 

I recognized the author's name first, the advertisement-format second, and
the date (2062) third. If the order had been slightly different, I might
have ignored the whole thing.

> Methinks someone has grown cranky from an overdose of spam.

Well, sure, but with *reason*.

(One reason spam is bad is that it reduces the number of things I can say
that won't be ignored. I don't know if I've ever sent email with the
subject line "The info you asked for" -- but I certainly never will in
the future.)

--Z

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the
borogoves..."


From dns361@merle.acns.nwu.edu Tue Mar 28 17:35:47 CEST 2000
Article: 71072 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gctr.net!news.maxwell.syr.edu!newsfeed.acns.nwu.edu!news.acns.nwu.edu!merle.acns.nwu.edu!dns361
From: Second April <dns361@merle.acns.nwu.edu>
Newsgroups: rec.arts.int-fiction
Subject: Re: Reviews
Date: Sun, 26 Mar 2000 17:57:25 -0600
Organization: Northwestern University, Evanston, IL, US
Lines: 48
Message-ID: <Pine.HPP.3.93.1000326173838.19086A-100000@merle.acns.nwu.edu>
References: <20000317022159.03526.00002661@ng-cs1.aol.com> <20000317111445.02490.00002762@ng-ca1.aol.com> <8atp6e$org$1@nnrp1.deja.com> <8au22g$c5c$2@slb6.atl.mindspring.net> <8au7gs$3vj$1@nnrp1.deja.com> <38D6BC91.1D2AFDC5@america.net>
NNTP-Posting-Host: merle.acns.nwu.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
In-Reply-To: <38D6BC91.1D2AFDC5@america.net>
Xref: news.lth.se rec.arts.int-fiction:71072

I know, this thread's dead, but I was away and I'm just reading it now.

> dcornelson@my-deja.com wrote:
> 
> > Whereas in IF, technical issues are related to grammar usage, NPC
> > communication, puzzle definition ... and these can easily be left out of
> > a review with nothing being lost as far a game player is concerned.

What?

Um, game players _do_ care about these things, and a review that neglected
to mention them--particularly if they're particularly good or particularly
bad--would be a pretty inadequate review. Even in your "general" category,
if the point is to inform other players about the relative merits of a
game so that they can decide whether to try something, technical issues
are highly relevant.

The writers' community that cares about things like puzzle definition
cares about them because they affect playing experience, presumably.

> > Remember - a non-writing game player doesn't know the difference between
> > good NPC development and bad. They'll be more inclined to differentiate
> > plot devices and storylines than technical details such as these.

Do I detect a hint of snobbery here?

I've experimented with Inform some--I've started but not finished some
projects--so I don't know whether that makes me a "non-writing game
player." Whether I am or not, though, I haven't gained whatever
understanding of NPC development I have from trying to write in Inform;
I've gained it from playing and seeing examples of good and bad NPCs. I
don't see any reason why someone who's never even tried to write a thing
wouldn't understand NPC development.

What, exactly, are the things that game writers would want to discuss but
which those ignorant unwashed players wouldn't understand? 

Duncan Stevens
dns361@merle.acns.nwu.edu

But buy me a singer to sing one song--
Song about nothing--song about sheep--
Over and over, all day long;
Patch me again my thread-bare sleep.

--Edna St. Vincent Millay




From edromia@my-deja.com Tue Mar 28 17:36:31 CEST 2000
Article: 71092 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!logbridge.uoregon.edu!news.maxwell.syr.edu!nntp2.deja.com!nnrp1.deja.com!not-for-mail
From: edromia@my-deja.com
Newsgroups: rec.arts.int-fiction
Subject: Re: Reviews
Date: Mon, 27 Mar 2000 18:23:20 GMT
Organization: Deja.com - Before you buy.
Lines: 40
Message-ID: <8bo8tg$gup$1@nnrp1.deja.com>
References: <20000317022159.03526.00002661@ng-cs1.aol.com> <20000317111445.02490.00002762@ng-ca1.aol.com> <8atp6e$org$1@nnrp1.deja.com> <8au22g$c5c$2@slb6.atl.mindspring.net> <8au7gs$3vj$1@nnrp1.deja.com> <38D6BC91.1D2AFDC5@america.net> <Pine.HPP.3.93.1000326173838.19086A-100000@merle.acns.nwu.edu> <8bmvad$1fr@journal.concentric.net>
NNTP-Posting-Host: 12.17.12.66
X-Article-Creation-Date: Mon Mar 27 18:23:20 2000 GMT
X-Http-User-Agent: Mozilla/4.0 (compatible; MSIE 5.0; Windows 95; DigExt)
X-Http-Proxy: 1.1 x31.deja.com:80 (Squid/1.1.22) for client 12.17.12.66
X-MyDeja-Info: XMYDJUIDedromia
Xref: news.lth.se rec.arts.int-fiction:71092

In article <8bmvad$1fr@journal.concentric.net>,
"David Cornelson" <dcornelson@placet.com> wrote:

> The difference in my mind is...
>
> "The story unfolds quickly once you land on the planet and you soon
> hook up with a robot named Floyd. Floyd is way cool...."

The thing is, this doesn't tell me anything useful. It provides no
information about the story except that it unfolds quickly (too
quickly? just right? what?), and that you think Floyd is way cool. If I
don't know what your criteria for way cool is or how you arrived at
that judgment, I don't have any way of guessing whether I might feel
the same way.

> "The scenery was relatively mundane and the Floyd character had
> humorous responses to many things that happen throughout, but after
> awhile..."

On the other hand, this tells me something concrete. First: you think
the scenery is mundane. Now, I am well aware that you and I may have
differing opinions about what constitutes "mundane", but at least I now
know that at least one person from the IF community found the
descriptions less than inspiring, so I'll be paying attention to that
when/if I play the game. The Floyd character has "humorous responses" --
 so now I know the game is funny, I like funny -- to "many things" --
okay, so there's a lot of detail, a lot of thought went into the
programing, that's another good mark -- "but after a while..." -- hmm,
seems the humor doesn't stretch very far, at least in this one
reviewer's opinion. All that specific detail is giving me a much
clearer picture of what you thought of the game, and, insofar as I am
reading this review to see if downloading the game will be worth my
while, it's about 10 times as helpful. All in about the same number of
sentences.

-M.


Sent via Deja.com http://www.deja.com/
Before you buy.


From dns361@merle.acns.nwu.edu Tue Mar 28 17:37:36 CEST 2000
Article: 71074 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gctr.net!newsfeed.berkeley.edu!newsfeed.acns.nwu.edu!news.acns.nwu.edu!merle.acns.nwu.edu!dns361
From: Second April <dns361@merle.acns.nwu.edu>
Newsgroups: rec.arts.int-fiction
Subject: Technical/General Reviews
Date: Sun, 26 Mar 2000 18:48:55 -0600
Organization: Northwestern University, Evanston, IL, US
Lines: 53
Message-ID: <Pine.HPP.3.93.1000326182657.27103A-100000@merle.acns.nwu.edu>
NNTP-Posting-Host: merle.acns.nwu.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Xref: news.lth.se rec.arts.int-fiction:71074

Again, sorry I'm late.

Frankly, what's been described as a "technical review" sounds more like a
bug or beta-test report, and it seems like bad form to post those to a
public forum at all, generally. It's hard to tell, though, because I don't
think I've ever seen such a review--every review I've ever seen has
focused on the _playing experience_, and has addressed technical issues to
the extent they affect that experience. (That's, like, the point here,
yes? Folks do write IF so that other folks can play it? I'd always kinda
assumed that.)

The difference between, say, Zarf's reviews--which address "technical
issues" like interface and NPC development--and some hypothetical review
that consisted of "well, the plot involved dragons and wizards, and the
puzzles were hard" isn't anything qualitative, it's just thoroughness. The
former takes the trouble to explain what the playing experience is like,
getting into very specific details about what shapes that experience, and
the latter doesn't bother. I'm not saying there's no place for the latter
(which, really, is pretty similar to a classification system), though I
don't think I'd bother to visit a site that either produced "general"
reviews or a classification system, simply because the presence or absence
of a given plot element has no effect I can discern on my enjoyment of a
given game. (Again, when I look at IF I enjoy, I'm hard-pressed to come up
with any common elements other than a high level of competence. There may
be some clustering of IF tastes, but it doesn't seem to hold up for me.)
But when I decide whether to try something, I'd rather read a Zarfian
review than a "general" review.

I've written a bunch of reviews for SPAG, and I don't think many of them
amount to "this game sucked and here's why". I usually try to leave the
reader with an impression of where the game's strong or weak; the point is
to help players who might actually enjoy the game in question discern that
they might enjoy it (and to steer those who wouldn't enjoy it away), and
my intuition is that you need to convey more than the bare plot details
for the reader to figure that out.

If the point is that there's too much review-writing going on and too
little direct author feedback, well, I also do some of the latter, though
admittedly not as much. My sense is that there isn't a lot of either, and
reviews do give authors _some_ feedback, though not as much as a straight
bug report would, obviously. 

Duncan Stevens
dns361@merle.acns.nwu.edu

But buy me a singer to sing one song--
Song about nothing--song about sheep--
Over and over, all day long;
Patch me again my thread-bare sleep.

--Edna St. Vincent Millay




From dns361@merle.acns.nwu.edu Tue Mar 28 17:44:22 CEST 2000
Article: 71073 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gctr.net!newsfeed.berkeley.edu!newsfeed.acns.nwu.edu!news.acns.nwu.edu!merle.acns.nwu.edu!dns361
From: Second April <dns361@merle.acns.nwu.edu>
Newsgroups: rec.arts.int-fiction
Subject: Re: Technical/General Reviews
Date: Sun, 26 Mar 2000 19:06:15 -0600
Organization: Northwestern University, Evanston, IL, US
Lines: 42
Message-ID: <Pine.HPP.3.93.1000326184953.982A-100000@merle.acns.nwu.edu>
References: <Pine.HPP.3.93.1000326182657.27103A-100000@merle.acns.nwu.edu>
NNTP-Posting-Host: merle.acns.nwu.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
In-Reply-To: <Pine.HPP.3.93.1000326182657.27103A-100000@merle.acns.nwu.edu>
Xref: news.lth.se rec.arts.int-fiction:71073

On Sun, 26 Mar 2000, Second April wrote:

> If the point is that there's too much review-writing going on and too
> little direct author feedback, well, I also do some of the latter, though
> admittedly not as much. My sense is that there isn't a lot of either, and
> reviews do give authors _some_ feedback, though not as much as a straight
> bug report would, obviously. 

Whoops--cut that short by accident.

I don't think it can justifiably be argued that there's too much
review-writing going on, so much that people should stop writing reviews
and start, I dunno, doing other things. If someone wants to create a
classification system, and others find it useful, cool. But reviews and
classification are hardly mutually exclusive, and there's no reason why
energy that goes into the latter has to come out of the former.

Is the real point that reviews can be mean, and classification isn't mean
at all? (There are hints to that effect.) If so, the answer is better,
non-mean reviews, not no reviews. And again, it's pretty rare that people
write out-and-out vicious reviews. (The comp-review-fest every year is an 
exception, of course--many of those reviews don't spend much time trying
to ferret out good things about the games in question--but even those are 
less harsh now than they've been in the past.) For my part, my current
policy is that I don't write a review if the game in question doesn't have
significant redeeming features. 

In the end, I still think that a good review is the best way to signal to
the rest of the IF community that something's worth playing--and the more
detailed and thoughtful the review, to my mind, the better.

Duncan Stevens
dns361@merle.acns.nwu.edu

But buy me a singer to sing one song--
Song about nothing--song about sheep--
Over and over, all day long;
Patch me again my thread-bare sleep.

--Edna St. Vincent Millay




From dns361@merle.acns.nwu.edu Tue Mar 28 17:45:38 CEST 2000
Article: 71083 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!feed2.onemain.com!feed1.onemain.com!newsswitch.lcs.mit.edu!uchinews!news1.wiu.edu!newsfeed.acns.nwu.edu!news.acns.nwu.edu!merle.acns.nwu.edu!dns361
From: Second April <dns361@merle.acns.nwu.edu>
Newsgroups: rec.arts.int-fiction
Subject: Re: Technical/General Reviews
Date: Mon, 27 Mar 2000 07:07:58 -0600
Organization: Northwestern University, Evanston, IL, US
Lines: 67
Message-ID: <Pine.HPP.3.93.1000327064540.3598A-100000@merle.acns.nwu.edu>
References: <Pine.HPP.3.93.1000326182657.27103A-100000@merle.acns.nwu.edu> <8bn02o$22s@journal.concentric.net>
NNTP-Posting-Host: merle.acns.nwu.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
In-Reply-To: <8bn02o$22s@journal.concentric.net>
Xref: news.lth.se rec.arts.int-fiction:71083

On 27 Mar 2000, David Cornelson wrote:

> No. Zarf's reviews are a balance of the general and technical, very well
> done I might add. But I'm of the opinion that not everyone is as talented as
> Zarf at writing these sorts of reviews. I'd also argue that the absence of
> technical information in a graphical game would be inadequate (which was the
> review in question 'Zork Grand Inquistor', but removing the technical
> details, or subtly hiding them within witty banter, from an IF work is not
> the end of the world.
> 
> I just think that, as members of this community, we begin at some point to
> abbreviate our communication and that to an outsider, things become
> incomprehensible. A reviewer should be damned sure not to make any
> assumptions about the reader.

Whoa. I thought I'd read the whole thread, but this is new on me--and it
seems like this is an entirely different issue. A review can criticize
technical details of the work without being inaccessible to an "outsider."

> If you assume all of the review readers truly understand what you mean by
> NPC, PC, Treasure Hunt, Puzzleless, and other common items found in our
> threads these days, you are doing a disservice to our community. We should
> always point the reviews outward, not inward.
> 
> Pointed inward, it becomes a technical review. Not necessarily a bug report,
> but possibly filled with inside jokes and R*IF phrasology that an outsider
> would have a terrible time deciphering.
> 
> Pointed outward, you hide your technical comments within by teaching,
> humouring, telling how you _felt_ while playing the game.

Again, what?

There's a place for reviews that describe the reviewer's emotional state;
games that try to evoke emotional reactions should be described as such.
But (a) not all games fit this category (what emotional reactions do
Bear's Night Out or Spider and Web trigger?), and (b) the focus should
always be on how the game sought to achieve the emotional reaction. That
Reviewer X was moved/scared/angry when playing Game Y frankly doesn't say
much to me unless I know Reviewer X really well, and I want to hear more
about the reasons Reviewer X felt that way than about the emotions
themselves.

Honestly, I don't think the average review is filled with inside jokes.
NPC and PC are the main terms I can think of that aren't entirely
accessible to the outsider; "treasure hunt" and "puzzleless" mean what
they say. "Soup cans" is the primary inside-joke term that gets used in
reviews, but even that doesn't come up very much. Perhaps SPAG could have
a glossary somewhere on its page of terms that might be unfamiliar to the
outsider; I'm not sure it'd be very long, but it couldn't hurt. More to
the point, a review can discuss technical details in inappropriately
explicit terms--"the game didn't recognize this verb and couldn't
distinguish these objects when they're in the room together and didn't
provide for that logical solution of this puzzle"--and still be entirely
comprehensible to the r*if outsider. 

Duncan Stevens
dns361@merle.acns.nwu.edu

But buy me a singer to sing one song--
Song about nothing--song about sheep--
Over and over, all day long;
Patch me again my thread-bare sleep.

--Edna St. Vincent Millay




From dns361@merle.acns.nwu.edu Fri Mar 31 10:17:44 CEST 2000
Article: 71166 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!feed2.onemain.com!feed1.onemain.com!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!howland.erols.net!vixen.cso.uiuc.edu!newsfeed.acns.nwu.edu!news.acns.nwu.edu!merle.acns.nwu.edu!dns361
From: Second April <dns361@merle.acns.nwu.edu>
Newsgroups: rec.arts.int-fiction
Subject: Re: Reviews
Date: Thu, 30 Mar 2000 23:06:43 -0600
Organization: Northwestern University, Evanston, IL, US
Lines: 56
Message-ID: <Pine.HPP.3.93.1000330230112.14040A-100000@merle.acns.nwu.edu>
References: <20000317022159.03526.00002661@ng-cs1.aol.com> <20000317111445.02490.00002762@ng-ca1.aol.com> <8atp6e$org$1@nnrp1.deja.com> <8au22g$c5c$2@slb6.atl.mindspring.net> <8au7gs$3vj$1@nnrp1.deja.com> <38D6BC91.1D2AFDC5@america.net> <Pine.HPP.3.93.1000326173838.19086A-100000@merle.acns.nwu.edu> <8bmvad$1fr@journal.concentric.net> <jdg0tc32n8.fsf@login2.phy.duke.edu> <38e12e3d.10290149@news.erols.com>
NNTP-Posting-Host: merle.acns.nwu.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
In-Reply-To: <38e12e3d.10290149@news.erols.com>
Xref: news.lth.se rec.arts.int-fiction:71166

On Tue, 28 Mar 2000, TenthStone wrote:

>     The story would have been better served if the author had been
>     less verbose in his descriptions.  The huge chunks of text that
>     Ms. X throws all the time at the player show a depth of conceptual
>     detail that in this reviewer's opinion cannot -- and should not --
>     be well expressed in text without bogging down the story's pacing
>     and hurting the suspense effect that the author is trying for.
> 
> and
> 
>     One of the problems with this game is that it's just not very
>     involving.  I could tell that Ms. X knows what she's trying to
>     do.  The game is clearly supposed to be a suspense, and sometimes
>     I really got into it.  But other times, like in the bar, I just
>     couldn't feel what she was feeling and the game got really slow.
>     That just absolutely killed the suspense.
>     
> The first would be really helpful to the author -- well, to any
> author -- who now has specific pieces of advice she can take to
> heart should she decide to attempt another suspense.  Yet, for a
> player's purposes it's not that great because it's far more detailed
> than he really needs.
> 
> The second would be really helpful to a player, who can easily
> evaluate the strengths of weaknesses of the game and then decide
> whether he wants to play it.  To an author, though, it's just a bunch
> of uselessly vague generalities.

I disagree--it seems like a bunch of uselessly vague generalities to a
player as well. It doesn't tell a player anything that _you_ found it "not
very involving" or that _you_ "couldn't get into it" if the player doesn't
know you. With the former, on the other hand, the player knows what to
expect--lots and lots of detail--and the player can decide: hmmm, am I the
sort of person that that sort of thing bugs so much that I shouldn't
download the game? Or will it only be a minor annoyance?

> In general, a player needs an analysis focused on how the game itself
> is, while an author needs an analysis focused on how the game might
> be improved.

Sure. But "how the game itself is" doesn't mean "how the game makes me
personally feel," because that doesn't necessarily say anything to anyone
else.

Duncan Stevens
dns361@merle.acns.nwu.edu

But buy me a singer to sing one song--
Song about nothing--song about sheep--
Over and over, all day long;
Patch me again my thread-bare sleep.

--Edna St. Vincent Millay




From mkkuhner@eskimo.com Fri Mar 31 10:21:52 CEST 2000
Article: 71163 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gctr.net!triton.skycache.com!news.eskimo.com!eskimo.com!mkkuhner
From: mkkuhner@eskimo.com (Mary K. Kuhner)
Newsgroups: rec.arts.int-fiction
Subject: Re: Reviews
Date: 31 Mar 2000 05:13:34 GMT
Organization: Eskimo North  http://www.eskimo.com/  (800) 246-6874
Lines: 32
Message-ID: <8c1c5u$jko$1@eskinews.eskimo.com>
References: <20000317022159.03526.00002661@ng-cs1.aol.com> <8bmvad$1fr@journal.concentric.net> <jdg0tc32n8.fsf@login2.phy.duke.edu> <38e12e3d.10290149@news.erols.com>
NNTP-Posting-Host: eskimo.com
X-Trace: eskinews.eskimo.com 954479614 20120 204.122.16.13 (31 Mar 2000 05:13:34 GMT)
X-Complaints-To: abuse@eskimo.com
NNTP-Posting-Date: 31 Mar 2000 05:13:34 GMT
Xref: news.lth.se rec.arts.int-fiction:71163

TenthStone <tenthstone@hotmail.com> wrote:

>    The story would have been better served if the author had been
>    less verbose in his descriptions.  The huge chunks of text that
>    Ms. X throws all the time at the player show a depth of conceptual
>    detail [...]

>    One of the problems with this game is that it's just not very
>    involving.  I could tell that Ms. X knows what she's trying to
>    do.  The game is clearly supposed to be a suspense [...]

Dissenting opinion:  even as a player I would *much* rather have
the more technical review.  The problem is that, except for a
reviewer I know very well, "I liked it" or "I didn't like it"
and even "I found it suspenseful" or "I didn't find it suspensful"
are almost useless to me.  I don't know if I'd have the same
reaction.  Saying "huge chunks of text" tells me something about
whether *I* might like the game, independent of whether the
reviewer did.  I know, for example, that I am more tolerant of
big chunks of text, and less tolerant of hard puzzles, than most
reviewers.  So I might like this game even if the reviewer didn't.

I routinely decide to buy books based on negative reviews, and
decide not to buy them based on positive reviews, because I can
see from the specifics in the review that my tastes are different
>from  the reviewer's.  But I can't do this with a review that
boils down to "I liked it" or "I didn't like it"!  

Detailed reviews don't have to spoil the game's surprises, and
I really prefer them to vague ones.

Mary Kuhner mkkuhner@eskimo.com


From jonadab@bright.net Fri Mar 31 10:23:07 CEST 2000
Article: 71165 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!feed2.onemain.com!feed1.onemain.com!europa.netcrusader.net!208.184.7.66!triton.skycache.com!cletus.bright.net!not-for-mail
From: jonadab@bright.net (Jonadab the Unsightly One)
Newsgroups: rec.arts.int-fiction
Subject: Re: Reviews
Organization: There is no organisation.
Message-ID: <38e442e2.50655099@news.bright.net>
References: <20000317022159.03526.00002661@ng-cs1.aol.com> <8bmvad$1fr@journal.concentric.net> <jdg0tc32n8.fsf@login2.phy.duke.edu> <38e12e3d.10290149@news.erols.com> <8c1c5u$jko$1@eskinews.eskimo.com>
X-Newsreader: Forte Free Agent 1.11/32.235
Lines: 30
Date: Fri, 31 Mar 2000 06:25:17 GMT
NNTP-Posting-Host: 209.143.57.32
X-Complaints-To: abuse@bright.net
X-Trace: cletus.bright.net 954483566 209.143.57.32 (Fri, 31 Mar 2000 01:19:26 EST)
NNTP-Posting-Date: Fri, 31 Mar 2000 01:19:26 EST
Xref: news.lth.se rec.arts.int-fiction:71165

mkkuhner@eskimo.com (Mary K. Kuhner) wrote:

> Dissenting opinion:  even as a player I would *much* rather have
> the more technical review.  
[Much scissification.]
> I routinely decide to buy books based on negative reviews, and
> decide not to buy them based on positive reviews, because I can
> see from the specifics in the review that my tastes are different
> from the reviewer's.  
[Again.]
> Detailed reviews don't have to spoil the game's surprises, and
> I really prefer them to vague ones.

I wholeheartedly concur.  Those of us with atypical tastes
find reviews like "It was really funny" or "the characters
were good" to be drivel.  That tells me nothing.  Tell me
that there were a lot of one-liners and allusions to popular
culture (so I can avoid it like cast iron pants) or tell
me that the vocabulary was expansive and several of the
characters multifaceted, dynamic, and tragic (so I can
get a second opinion and maybe read it).  You can tell 
me you liked it (or not) too, but I won't care about that.
Tell me _why_ I should like it (or not) or don't bother.


--

If your IP address starts with 202, you can't
send me mail.  Sorry.  I was getting too much
spam from that IP block.


From erkyrath@eblong.com Sun Apr  9 17:11:34 CEST 2000
Article: 71290 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gctr.net!newspeer1.nac.net!netnews.com!feed1.news.rcn.net!rcn!news.mindspring.net!firehose.mindspring.com!not-for-mail
From: Andrew Plotkin <erkyrath@eblong.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: [Glk/Glulx] Switching, or not
Date: 6 Apr 2000 03:40:58 GMT
Organization: MindSpring Enterprises
Lines: 89
Sender: Andrew Plotkin <erkyrath@netcom15.netcom.com>
Message-ID: <8ch10a$ssj$2@nntp9.atl.mindspring.net>
References: <38EB68A6.3359@cs.york.ac.uk> <8cg1tv$ovk$1@news7.svr.pol.co.uk>
NNTP-Posting-Host: c7.b7.09.73
User-Agent: tin/pre-1.4-19990517 ("Psychonaut") (UNIX) (SunOS/4.1.4 (sun4m))
Xref: news.lth.se rec.arts.int-fiction:71290

Jon Ingold <jon@ingold.fsnet.co.uk> wrote:
>> There's been some discussion on ifMUD about why more people aren't
>> shifting from the Z-machine to Glulx and Glk. It seems that one major
>> reason is that people just don't like the way Glk handles text
>> formatting and colours -- it's just not as convenient as the Z-machine
>> or HTML-TADS.
> 
> Well, I speak for a consensus of one here; but I've been meaning to get a
> Glk [ Glulx? ] compiler and interpreter and have a go and plugging the code
> for Mulldoon through it, to take advantage of the larger size. And the main
> thing putting me off is just that a the moment it's all a little un-user
> friendly.

You're not the only one who has said this. I will try to use your
questions as the basis for an updated "Guide for Inform
Authors" document... you know when. (I was hoping to do it tonight, but
it's 11:30 already...)

> I wasn't around on the group when this things was announced, and
> the only link I have is outdated.

http://www.eblong.com/zarf/glulx/

I try to upload the same material to gmd.de, to keep the programming/glulx
and programming/glk directories up to date. I usually fail.

For the short term, here are the short answers:

> 1) Which program is the compiler, which is the interpreter?

The compiler is still Inform. Obviously, you need my hacked-up version,
which I call (for lack of a better term) Glulx Inform. It behaves exactly
the same as Graham's Inform, except for the kind of file it spits out. 

(I really need to merge the two versions and hand the result over to
Graham. Yet another priority.)

The interpreter is called Glulxe (for "Glulx Execute".)

Thus:

Z-machine     ::  Glulx
Inform        ::  Glulx Inform
Frotz/ZIP/etc ::  Glulxe

(Glk, on this table, matches up to "A couple of chapters of the Z-machine
specification and about half the opcodes.")

> 2) I know there's a Gl* friendly library around

On web site.

> but my code is all hacked
> up - so what changes would I need to make manually to the parserm files etc
> to allow it to compile?

Your choices are (a) merge all of my changes into your library, or
(b) merge all of your changes into my library. I would recommend the
latter, since you understand your own changes.

(The two sets changes are probably going to be entirely non-overlapping.
With the exception of the DrawStatusLine routine, which is your next
question:)

> 3) I've heard assembly language codes have changed. What are new codes for
> standard effects, like font on/off and drawing the status line?

These all map to Glk calls, not opcodes. I recommend you do it the way
Inform authors have always done it: look at the DrawStatusLine() in the
bi-platform library. Copy what it does. You'll see Glk calls with comments
like "window_set_cursor", which sets the cursor position, and so on.

> ..you know, all the lazy programmer questions. I haven't looked - is there a
> _readable_ document on the subject anywhere in the archive?

The web site has a link for "The Game Author's Guide to Glulx
Inform". That should cover what you need to know if you're already
familiar with Z-machine Inform. Anything not covered is the same, so you
don't have to worry about it.

(Unless, of course, it's not covered because I forgot it. Heh.)

(Ignore the table-format documentation at the end; I have to move that
to a separate "Technical Reference" file.)

--Z

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the
borogoves..."


From im@cs.york.ac.uk Sun Apr  9 21:28:18 CEST 2000
Article: 71271 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newsfeeds.belnet.be!news.belnet.be!colt.net!newspeer.clara.net!news.clara.net!remarQ-uK!supernews.com!remarQ.com!easynet-tele!easynet.net!server5.netnews.ja.net!news.york.ac.uk!not-for-mail
From: Iain Merrick <im@cs.york.ac.uk>
Newsgroups: rec.arts.int-fiction
Subject: [Glk] Rough proposal for text style extensions
Date: Wed, 05 Apr 2000 17:24:06 +0100
Organization: University of York
Lines: 158
Sender: im104@york.ac.uk
Message-ID: <38EB68A6.3359@cs.york.ac.uk>
NNTP-Posting-Host: indy027.cs.york.ac.uk
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: pump1.york.ac.uk 954951846 18491 144.32.40.91 (5 Apr 2000 16:24:06 GMT)
X-Complaints-To: abuse@york.ac.uk
NNTP-Posting-Date: 5 Apr 2000 16:24:06 GMT
X-Mailer: Mozilla 3.04 [en] (X11; U; IRIX 5.3 IP22)
Xref: news.lth.se rec.arts.int-fiction:71271

There's been some discussion on ifMUD about why more people aren't
shifting from the Z-machine to Glulx and Glk. It seems that one major
reason is that people just don't like the way Glk handles text
formatting and colours -- it's just not as convenient as the Z-machine
or HTML-TADS.

I think an improved Glk with a more flexible text-formatting model would
be popular with Glulx game authors. It would also be useful for
Glk-based Z-machine interpreters, since they'd find it easier to support
the Z-machine display model.

On the other hand, there are Good Reasons for the current model: it
makes things much easier for Glk library implementors. I think the
solution is an optional extension to Glk which offers finer control over
text formatting.


The sort of thing we want to do
-------------------------------

Well, I'm an HTML-TADS fan, so here's an HTML example:

    <H3>The <i>Slanty</i> Room</H3>
    
    Egads! <i>Every single thing</i> in this room
    is skewed at a weird angle, apart from the
    beautiful <font color=red>red</font> carpet.

Here we have a header (in the <H3> tag), which contains some text in
italics (in the <i> tag). The room description is in a normal font,
apart from a section in italics and one word which is coloured red.

Obviously that's a pretty ugly room description, but I think it
illustrates the kind of thing we want to do. It uses both paragraph
styles ('header' and 'body') and character styles ('italics', 'red' and
'normal'): this is pretty intuitive, and it's how sensible word
processors do things.

Unfortunately, you can't do this in Glk as it currently stands. Glk
doesn't distinguish between paragraph and character styles: there's just
a fixed set of styles, which can't be combined with each other. Grrr.


How to make Glk do what we want
-------------------------------

Here's the basic idea: use the existing style mechanism for paragraph
styles, and add an optional extension for controlling character styles.
If the Glk library doesn't support the extension, you'll just get
paragraph styles; the text won't look as pretty, but it should still be
comprehensible.

Here's a rough proposal for how the extension might work:

- There are N slots available for character styles. N might be a fixed
number, or it might depend on the library, in which case the spec would
guarantee a minimum number.

- Each slot would initially be empty, with no style hints. The game
would call some function to set or clear various style hints in each
slot.

- Alongside the glk_set_style function, there would be function to set
the character style. The character style's hints would override those of
the base style.

- Glk libraries can use or ignore character style hints as they see fit,
as in the current style hint model. Note that some hints don't make much
sense as character styles, such as paragraph indentation and
justification hints. 

(As an aside, I think a style hint should be added for choosing between
serif and sans-serif fonts.)


Combining styles
----------------

It would be nice to be able to combine character styles, so that we
could use, say, 'bold' and 'italics' at the same time to get bold
italics. However, this would also make things rather fiddly:

- We would need to apply and unapply each style individually. How would
these interact? What if we unapply them in a different order?

- Each new style combination might require the library to load a new
font, which may have different font metrics... which could give the
library writer a real headache.

On balance, I think it's reasonable to specify that character styles are
mutually exclusive. If you need bold italics, you can create a 'bold
italics' style. To unapply a style, just switch to style 'normal'.


Colour
------

Colour text would still a bit fiddly with the system described above.
Perhaps colour should be treated as a special case, since it has some
special properties:

- Game authors are more likely to want to combine colours with styles
than to combine different styles. If you want red text, for instance,
it'd be horribly clunky to have to create styles 'normal red', 'bold
red', 'italic red', 'bold italic red'...

- Combinations of colours and styles should be easier for the library to
handle than other combinations, since changing the colour will never
change the font metrics.

So perhaps there should be _another_ optional extension for handling
colour? Again, there would be a fixed-size set of slots, each of which
is initially empty but can be assigned with foreground and/or background
colours.


Putting it all together
-----------------------

With both the character style and text colour extensions in place, the
library would have to do the following while laying out or printing
text:

- Look up the base style, and apply any hints attached to it.
- Look up the character style, and apply its hints.
- Look up the foreground and background colours and apply those.

The current Glk spec has 11 base styles. We could get away with, oh, 4
character style slots and 8 colour slots, though more would be better. 8
character slots and 16 colour slots would allow complete Z-machine
support.

That should be fairly easy to handle on most operating systems. In the
worst case, if the OS requires every combination of styles to be
installed individually, the library would have to keep track of a (P * Q
* R) array of styles, where P, Q and R are the number of base style,
character style and colour style slots available. It's unlikely that
every possible combination would be used, so the library could start off
with an empty array, or a hash table, and install the fonts on demand.


Summary
-------

The extensions outlined above would offer Glulx game authors a very
flexible superset of the Z-machine's text formatting model. This would
also make life a lot easier for Glk-based Z-code interpreters. With a
little bit of effort, both games and terps could degrade gracefully if
one or other of the extensions isn't supported by the local Glk library.

Of course, it's easy enough for me to pull this stuff out of my hat,
since I don't have to maintain either the Glk spec or a Glk library. So:
comments, anyone? Would this do what I want it to do, and is it
feasible?

-- 
Iain Merrick
im@cs.york.ac.uk


From erkyrath@eblong.com Sun Apr  9 21:28:33 CEST 2000
Article: 71272 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gctr.net!cpk-news-hub1.bbnplanet.com!news.gtei.net!firehose.mindspring.com!not-for-mail
From: Andrew Plotkin <erkyrath@eblong.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: [Glk] Rough proposal for text style extensions
Date: 5 Apr 2000 18:14:30 GMT
Organization: MindSpring Enterprises
Lines: 49
Sender: Andrew Plotkin <erkyrath@netcom15.netcom.com>
Message-ID: <8cfvq6$mi$1@slb7.atl.mindspring.net>
References: <38EB68A6.3359@cs.york.ac.uk>
NNTP-Posting-Host: c7.b7.09.73
User-Agent: tin/pre-1.4-19990517 ("Psychonaut") (UNIX) (SunOS/4.1.4 (sun4m))
Xref: news.lth.se rec.arts.int-fiction:71272

This is not a reply to your entire post. I'll try to reply to the content
of your proposal later tonight, or, um, if I'm not lucky, this weekend
after taxes (sigh).

However, I wanna ask about this bit:

Iain Merrick <im@cs.york.ac.uk> wrote:
> There's been some discussion on ifMUD about why more people aren't
> shifting from the Z-machine to Glulx and Glk. It seems that one major
> reason is that people just don't like the way Glk handles text
> formatting and colours -- it's just not as convenient as the Z-machine
> or HTML-TADS.

I haven't been on the MUD much in the past couple of weeks. Is this the
stated view of Inform authors who are seriously considering switching from
the Z-machine to Glulx? Or are people theorizing?

The way the Z-machine handles colors is... not happy. Adam Cadre is the
one who has worked most on this, and neither Varicella nor Photopia seems
to work really portably. (Certainly Zip Infinity (on Mac) doesn't interact
correctly with them.) The rest of the Z-machine style system is "you got
your bold and your italic and your reverse and your fixed-width, and you
can probably combine them, but no guarantees." I intended Glk to work at
least *that* well, and if it doesn't, I want to know about it. 

(Okay, I left out "reverse". If that's the sticking point, I *definitely*
want to know about it.)

I have been assuming that Glulx has two markets: people for whom the
Z-machine's core is too limited, and people for whom the Z-machine's
display system is too limited.

The former is mostly people writing big games. (Although other capacities,
such as file-handling or filtering, may be important.) The number of such
people switching to Glulx is going to remain small for some time -- simply
because not many people *do* write big games. And when one does, it takes
a year or more. The *first* draft of the compiler came out only eight
months ago.

The latter group seems to be small also, but then there aren't many
HTML-TADS games either (and no Z6 games). I know that TADS is currently
both more flexible and easier to use than Glk/Glulx. I think libraries can
handle the "easier to use" part. As for flexibility... see my next
post. Whenever it appears. :(

--Z

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the
borogoves..."


From erkyrath@eblong.com Sun Apr  9 21:30:51 CEST 2000
Article: 71287 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!news-peer-europe.sprintlink.net!news.sprintlink.net!howland.erols.net!newsfeed.mindspring.net.MISMATCH!news.mindspring.net!newsfeed.mindspring.net!firehose.mindspring.com!not-for-mail
From: Andrew Plotkin <erkyrath@eblong.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: [Glk] Rough proposal for text style extensions
Date: 6 Apr 2000 03:24:43 GMT
Organization: MindSpring Enterprises
Lines: 71
Sender: Andrew Plotkin <erkyrath@netcom15.netcom.com>
Message-ID: <8ch01r$ssj$1@nntp9.atl.mindspring.net>
References: <38EB68A6.3359@cs.york.ac.uk>
NNTP-Posting-Host: c7.b7.09.73
User-Agent: tin/pre-1.4-19990517 ("Psychonaut") (UNIX) (SunOS/4.1.4 (sun4m))
Xref: news.lth.se rec.arts.int-fiction:71287

Iain Merrick <im@cs.york.ac.uk> wrote:
> I think an improved Glk with a more flexible text-formatting model would
> be popular with Glulx game authors. It would also be useful for
> Glk-based Z-machine interpreters, since they'd find it easier to support
> the Z-machine display model.
> 
> On the other hand, there are Good Reasons for the current model: it
> makes things much easier for Glk library implementors. I think the
> solution is an optional extension to Glk which offers finer control over
> text formatting.
> 
> The sort of thing we want to do

That "we" is the tricky part, of course. :-)

> [...]
> It uses both paragraph
> styles ('header' and 'body') and character styles ('italics', 'red' and
> 'normal'): this is pretty intuitive, and it's how sensible word
> processors do things.
> 
> Unfortunately, you can't do this in Glk as it currently stands. Glk
> doesn't distinguish between paragraph and character styles: there's just
> a fixed set of styles, which can't be combined with each other.

Gurk. Okay, here's my problem. 

You're correct that Glk doesn't distinguish between paragraph and
character styles. It was (yet another) compromise with simplicity. I
noted that the formatting that distinguishes paragraph styles
(justification, indentation) can be faked to work correctly if you only
test it at the beginning of the paragraph in question. I implemented
this, it worked, so I concluded it was possible.

(This is a favored technique. :-)

*However*, I think you're conflating that distinction with a different
one: semantic markup versus formatting markup. "Header" and "body" are
semantic styles; "italic" and "red" are formatting styles.

Since the only use for styles in Glk is to -- eventually -- determine
formatting, it really *doesn't* make sense to mix formatting and
semantic styles. "Header" has, ultimately, some meaning: "bigger and
bold and centered", say. To mix that with "red", you need some sort of
mixing rules. It becomes no different from the case of mixing "red" and
"italic". (Because, of course, "header" may be "blue and Zapf Chancery",
or something like that.)

Style mixing rules is one of the places I Didn't Want To Go, for the
reasons you note.

(Recall that hyperlinks, which *are* a genuinely formatting-unrelated
semantic markup, wound up *not* being styles. Basically for that reason,
now that I think about it.)

Anyway, without some clarification on the paragraph/character vs
semantic/formatting distinction, I can't read much out of your proposal.
I mean, I'd be reading something *into* it, and not necessarily what you
meant.

Although, as an aside, 

> (As an aside, I think a style hint should be added for choosing between
> serif and sans-serif fonts.)

Not a bad idea.

--Z

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the
borogoves..."


From im@cs.york.ac.uk Sun Apr  9 21:33:03 CEST 2000
Article: 71301 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newsfeed.online.be!newspeer.clara.net!news.clara.net!news-hub.cableinet.net!easynet-tele!easynet.net!server5.netnews.ja.net!news.york.ac.uk!not-for-mail
From: Iain Merrick <im@cs.york.ac.uk>
Newsgroups: rec.arts.int-fiction
Subject: Re: [Glk] Rough proposal for text style extensions
Date: Thu, 06 Apr 2000 19:01:04 +0100
Organization: University of York
Lines: 152
Sender: im104@york.ac.uk
Message-ID: <38ECD0E0.5656@cs.york.ac.uk>
References: <38EB68A6.3359@cs.york.ac.uk> <8ch01r$ssj$1@nntp9.atl.mindspring.net>
NNTP-Posting-Host: indy027.cs.york.ac.uk
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: pump1.york.ac.uk 955044063 17038 144.32.40.91 (6 Apr 2000 18:01:03 GMT)
X-Complaints-To: abuse@york.ac.uk
NNTP-Posting-Date: 6 Apr 2000 18:01:03 GMT
X-Mailer: Mozilla 3.04 [en] (X11; U; IRIX 5.3 IP22)
Xref: news.lth.se rec.arts.int-fiction:71301

Andrew Plotkin wrote:

> Iain Merrick wrote:
>
> > I think an improved Glk with a more flexible text-formatting model would
> > be popular with Glulx game authors. It would also be useful for
> > Glk-based Z-machine interpreters, since they'd find it easier to support
> > the Z-machine display model.
> >
> > On the other hand, there are Good Reasons for the current model: it
> > makes things much easier for Glk library implementors. I think the
> > solution is an optional extension to Glk which offers finer control over
> > text formatting.
> >
> > The sort of thing we want to do
> 
> That "we" is the tricky part, of course. :-)

Yes, well...

As a more concrete example, say you want to display a quotation which
includes some italics. You'd probably use the blockquote style for the
paragraph, switching to emphasized style for the italics.

The problem is that the emphasized style is almost certainly set up to
fit in with the normal body style. If the blockquote style uses a
smaller font, say, the emphasised words will look horribly out of place.

I dunno about 'we', but that's definitely happened to me. I can't see
any solution to this problem, short of extending Glk. (Or setting all
MacGlk's styles so that they're very similar, I suppose -- but how
_dull_!)

[...]
> You're correct that Glk doesn't distinguish between paragraph and
> character styles. It was (yet another) compromise with simplicity. I
> noted that the formatting that distinguishes paragraph styles
> (justification, indentation) can be faked to work correctly if you only
> test it at the beginning of the paragraph in question. I implemented
> this, it worked, so I concluded it was possible.
> 
> (This is a favored technique. :-)
> 
> *However*, I think you're conflating that distinction with a different
> one: semantic markup versus formatting markup. "Header" and "body" are
> semantic styles; "italic" and "red" are formatting styles.
>
> Since the only use for styles in Glk is to -- eventually -- determine
> formatting, it really *doesn't* make sense to mix formatting and
> semantic styles. "Header" has, ultimately, some meaning: "bigger and
> bold and centered", say. To mix that with "red", you need some sort of
> mixing rules. It becomes no different from the case of mixing "red" and
> "italic". (Because, of course, "header" may be "blue and Zapf Chancery",
> or something like that.)

Perhaps it's a matter of degree. Mixing 'header' with 'flush right,
21pt' is very ugly, I agree. But mixing 'header' and 'red' seems useful
and natural to me, _even if_ the 'header' style includes a specific
colour. 'Make it red' is perfectly unambiguous.

> Style mixing rules is one of the places I Didn't Want To Go, for the
> reasons you note.

Right. But I think it's possible to mix styles in a simple, well-defined
manner, which is what I was trying to describe in my original proposal.

There would be a small, fixed set of 'style layers': I'm suggesting
paragraph style, character style and colour. Switching the style within
a layer is simple. And there's a fixed precedence, so that combining the
current style in each layer is unambiguous.

Let's say I switch to the following three styles:

Paragraph:  header    (hints: large, bold, sans-serif, centred)
Character:  hyperlink (hints: blue, underlined)
Colour:     red       (hints: red)

I want a red hyperlink within a header, and that's exactly what I get.
The character hints override the paragraph hints, and the colour hints
override the character hints.

This scheme can be more or less backwards compatible with the existing
model. The 'paragraph styles' correspond to the current semantic styles,
and would be initialised with the user's preferred hints. The character
and colour styles would be initialised with no hints.

As before, the library has the option of ignoring hints. If the library
doesn't support the character or colour style layers, that's the same as
ignoring all the hints in those layers.

The library should ignore paragraph-formatting hints in the character
layer, and everything except colour hints in the colour layer.

The only wart I see in this scheme is that you can't model HTML's <em>
tag, which can be nested inside anything and toggles emphasis (usually
italics) on and off. That would require the hints in different layers to
be combined in some way, rather than simply overriding each other.

> (Recall that hyperlinks, which *are* a genuinely formatting-unrelated
> semantic markup, wound up *not* being styles. Basically for that reason,
> now that I think about it.)

Well, the spec says this:

  The library will attempt to display links in some
  distinctive way (and it will do this whether or not
  hyperlink input has actually been requested for the
  window). Naturally, blue underlined text is most likely.

That's a bit icky; it seems like it's working round the limitations of
the current formatting model. If you have a hyperlink in the middle of a
paragraph in the 'header' style, for instance, the library would
presumably use the same font size and typeface, just turn it blue and
underline it.

Obviously, it's impossible to do that manually. If you added a
'hyperlink' style, that would have to replace _all_ the characteristics
of the current font; it would probably be similar to the basic body
style, and look out of place in headers.

So we get the library to do the magic style-mixing stuff for us. But
that way we have _no_ control over how hyperlinks are displayed. There
are plenty of situations where you might want to make text clickable
without it looking like a web-style hyperlink (since that strongly
implies web-style behaviour).

I think this would all be a lot neater if the formatting model were
powerful enough to display text in a hypertext style manually, rather
than relying on magic in the library.

> Anyway, without some clarification on the paragraph/character vs
> semantic/formatting distinction, I can't read much out of your proposal.
> I mean, I'd be reading something *into* it, and not necessarily what you
> meant.

I probably am confusing semantic formatting and visual formatting to
some extent, but I think they're pretty confused already. I don't think
you can draw a strict line between the two. Does 'hyperlink' mean
'clickable text that takes you somewhere else' or 'underlined and blue'?

I guess my scheme basically uses visual formatting, with two twists:

- the library isn't obliged to display things exactly as I ask;

- by convention, the 'paragraph styles' will be pre-initialised with
style hints which are useful for semantic formatting.

Is that any clearer?

-- 
Iain Merrick
im@cs.york.ac.uk


From russotto@wanda.vf.pond.com Mon Apr 10 17:57:03 CEST 2000
Article: 71337 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newspump.monmouth.com!newspeer.monmouth.com!cpk-news-hub1.bbnplanet.com!news.gtei.net!news.new-york.net!newspeer1.nac.net!yellow.newsread.com!netaxs.com!newsread.com!POSTED.monger.newsread.com!not-for-mail
Newsgroups: rec.arts.int-fiction
Subject: Re: grammar & parsing
References: <Pine.A41.3.96a.1000404195723.78524A-100000@vergil01.u.washington.edu> <7urseskc1budn4va2fsaqr802vjal1og8g@4ax.com> <BHuH4.136$%L6.9376@monger.newsread.com> <9gvsescva5fq77g9nb5f2ulavepugiun0n@4ax.com>
Organization: Ghotinet
From: russotto@wanda.vf.pond.com (Matthew T. Russotto)
Lines: 18
Message-ID: <cVKH4.315$%L6.24603@monger.newsread.com>
Date: Sat, 08 Apr 2000 18:30:32 GMT
NNTP-Posting-Host: 198.69.82.2
X-Complaints-To: Abuse Role <abuse@pond.com>, We Care <abuse@newsread.com>
X-Trace: monger.newsread.com 955218632 198.69.82.2 (Sat, 08 Apr 2000 14:30:32 EDT)
NNTP-Posting-Date: Sat, 08 Apr 2000 14:30:32 EDT
Xref: news.lth.se rec.arts.int-fiction:71337

In article <9gvsescva5fq77g9nb5f2ulavepugiun0n@4ax.com>,
Xenos  <nobody@nowhere.com> wrote:
}Why do you say that?  An LALR parser is very powerful, and can be
}built to accept context-free grammers and beyond.  They are definitely
}more powerful than the DNF based parsers built with Yacc.  An LALR
}paser can definely handle the complexity of the grammer accepted by
}Zork, et. al.

Yes -- my point was the other way around, that the grammar accepted by
Zork 0 is very simple and the limitations would seem to indicate a
more limited parsing technique.  It's possible they wrote a powerful
parser and hobbled it with a weak grammar, but I find it unlikely.

I thought YACC handled LALR(1) grammars.
-- 
Matthew T. Russotto                                russotto@pond.com
"Extremism in defense of liberty is no vice, and moderation in pursuit
of justice is no virtue." 


From erkyrath@eblong.com Mon Apr 10 17:57:15 CEST 2000
Article: 71338 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gctr.net!cpk-news-hub1.bbnplanet.com!news.gtei.net!firehose.mindspring.com!not-for-mail
From: Andrew Plotkin <erkyrath@eblong.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: grammar & parsing
Date: 8 Apr 2000 18:45:42 GMT
Organization: MindSpring Enterprises
Lines: 35
Sender: Andrew Plotkin <erkyrath@netcom12.netcom.com>
Message-ID: <8cnuom$spa$1@nntp9.atl.mindspring.net>
References: <Pine.A41.3.96a.1000404195723.78524A-100000@vergil01.u.washington.edu> <7urseskc1budn4va2fsaqr802vjal1og8g@4ax.com> <BHuH4.136$%L6.9376@monger.newsread.com> <9gvsescva5fq77g9nb5f2ulavepugiun0n@4ax.com> <cVKH4.315$%L6.24603@monger.newsread.com>
NNTP-Posting-Host: c7.b7.09.70
User-Agent: tin/pre-1.4-19990517 ("Psychonaut") (UNIX) (SunOS/4.1.4 (sun4m))
Xref: news.lth.se rec.arts.int-fiction:71338

Matthew T. Russotto <russotto@wanda.vf.pond.com> wrote:
> In article <9gvsescva5fq77g9nb5f2ulavepugiun0n@4ax.com>,
> Xenos  <nobody@nowhere.com> wrote:
> }Why do you say that?  An LALR parser is very powerful, and can be
> }built to accept context-free grammers and beyond.  They are definitely
> }more powerful than the DNF based parsers built with Yacc.  An LALR
> }paser can definely handle the complexity of the grammer accepted by
> }Zork, et. al.
> 
> Yes -- my point was the other way around, that the grammar accepted by
> Zork 0 is very simple and the limitations would seem to indicate a
> more limited parsing technique.  It's possible they wrote a powerful
> parser and hobbled it with a weak grammar, but I find it unlikely.

I agree.

> I thought YACC handled LALR(1) grammars.

Man page says: "yacc converts a context-free grammar into a set of tables
for a simple automaton which executes an LR(1) parsing algorithm."

The whole parser-theory family of grammars is terrific for parsing
computer languages, and terrible for natural language. (Even
pseudo-natural language, such as IF command syntax.)

Computer language grammars are recursive (arbitrarily nested parentheses,
statements, etc) and totally unambiguous. IF syntax is neither. Probably
someone has coded a parser that can accept "GET ALL ROCKS EXCEPT ALL THE
BLUE ROCKS EXCEPT THE SMALL BLUE ROCK", but I bet nobody has ever
*entered* such a command in the course of playing a game.

--Z

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the
borogoves..."


From russotto@wanda.vf.pond.com Mon Apr 10 18:06:55 CEST 2000
Article: 71360 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newsfeeds.belnet.be!news.belnet.be!newsfeed00.sul.t-online.de!t-online.de!ptdnetP!newsgate.ptd.net!newsfeed.fast.net!yellow.newsread.com!netaxs.com!newsread.com!POSTED.monger.newsread.com!not-for-mail
Newsgroups: rec.arts.int-fiction
Subject: Re: grammar & parsing
References: <Pine.A41.3.96a.1000404195723.78524A-100000@vergil01.u.washington.edu> <9gvsescva5fq77g9nb5f2ulavepugiun0n@4ax.com> <cVKH4.315$%L6.24603@monger.newsread.com> <olavessnd7jgaqqoleldfqih26rdoief6f@4ax.com>
Organization: Ghotinet
From: russotto@wanda.vf.pond.com (Matthew T. Russotto)
Lines: 15
Message-ID: <QqRH4.423$%L6.31296@monger.newsread.com>
Date: Sun, 09 Apr 2000 01:56:00 GMT
NNTP-Posting-Host: 198.69.82.2
X-Complaints-To: Abuse Role <abuse@pond.com>, We Care <abuse@newsread.com>
X-Trace: monger.newsread.com 955245360 198.69.82.2 (Sat, 08 Apr 2000 21:56:00 EDT)
NNTP-Posting-Date: Sat, 08 Apr 2000 21:56:00 EDT
Xref: news.lth.se rec.arts.int-fiction:71360

In article <olavessnd7jgaqqoleldfqih26rdoief6f@4ax.com>,
Xenos  <nobody@nowhere.com> wrote:
}I never played zork zero, so I couldn't say but I believe it was
}suppose to be a 'sampler'.  It came later than Zork, which could
}handle complex sentences.

No, it was Zork Zero (and Arthur and Shogun) that the "LALR" flummery
was written about.  It wasn't a sampler but a prequel.  They claim it
"used an ATN algorithm with a LALR grammar and one-token lookahead".
I'm not sure what ATN stands for, but the grammar is far more
restricted than LALR(1).
-- 
Matthew T. Russotto                                russotto@pond.com
"Extremism in defense of liberty is no vice, and moderation in pursuit
of justice is no virtue." 


From nobody@nowhere.com Mon Apr 10 18:08:10 CEST 2000
Article: 71375 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gctr.net!newsfeed.cwix.com!cyclone.nyroc.rr.com!news.nyroc.rr.com!news.rr.com!typhoon.nyroc.rr.com.POSTED!not-for-mail
From: Xenos <nobody@nowhere.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: grammar & parsing
Organization: Hades
Message-ID: <c291fsgg517069lt1fs320sf7v97ap0hbf@4ax.com>
References: <Pine.A41.3.96a.1000404195723.78524A-100000@vergil01.u.washington.edu> <9gvsescva5fq77g9nb5f2ulavepugiun0n@4ax.com> <cVKH4.315$%L6.24603@monger.newsread.com> <olavessnd7jgaqqoleldfqih26rdoief6f@4ax.com> <QqRH4.423$%L6.31296@monger.newsread.com>
X-Newsreader: Forte Agent 1.8/32.548
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Lines: 26
Date: Sun, 09 Apr 2000 15:37:10 GMT
NNTP-Posting-Host: 24.95.128.63
X-Complaints-To: abuse@stny.rr.com
X-Trace: typhoon.nyroc.rr.com 955294630 24.95.128.63 (Sun, 09 Apr 2000 11:37:10 EDT)
NNTP-Posting-Date: Sun, 09 Apr 2000 11:37:10 EDT
Xref: news.lth.se rec.arts.int-fiction:71375

On Sun, 09 Apr 2000 01:56:00 GMT, russotto@wanda.vf.pond.com (Matthew
T. Russotto) wrote:

>In article <olavessnd7jgaqqoleldfqih26rdoief6f@4ax.com>,
>Xenos  <nobody@nowhere.com> wrote:
>}I never played zork zero, so I couldn't say but I believe it was
>}suppose to be a 'sampler'.  It came later than Zork, which could
>}handle complex sentences.
>
>No, it was Zork Zero (and Arthur and Shogun) that the "LALR" flummery
>was written about.  It wasn't a sampler but a prequel.  They claim it
>"used an ATN algorithm with a LALR grammar and one-token lookahead".
>I'm not sure what ATN stands for, but the grammar is far more
>restricted than LALR(1).


Interesting...   ATN is a statistical scoring algorithm using weighted
measured.  

I found the article by Stu Galley of Infocom where he mentions using
ATN & an LALR grammer for Zoro Zero
(http://www.bf.rmit.edu.au/~fayep/Zork/parser.html).  He implied that
the parser used for this game was better than the one used for the
earier games.  As I said, I never played it, so I can't said.  Are you
saying that it wasn't?



From sgranade@login2.phy.duke.edu Mon Apr 24 16:20:50 CEST 2000
Article: 71628 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gctr.net!newsfeed.berkeley.edu!newsgate.duke.edu!usenet
From: Stephen Granade <sgranade@login2.phy.duke.edu>
Newsgroups: rec.arts.int-fiction
Subject: The Player Will Get It Wrong (LONG)
Date: 20 Apr 2000 21:30:14 -0400
Organization: Duke University, Durham, NC, USA
Lines: 178
Message-ID: <jdbt3444wp.fsf@login2.phy.duke.edu>
NNTP-Posting-Host: login2.phy.duke.edu
X-Newsreader: Gnus v5.7/Emacs 20.4
Xref: news.lth.se rec.arts.int-fiction:71628

Some day, if I am independently wealthy, I will have an artists'
colony for game designers. It will be located on a beautiful island
which will bear no resemblance to the one in Myst. In a particular
building on this beautiful island will be a room where we will meet
once a week to talk about our current projects. Over the door to that
room will be a sign: THE PLAYER WILL GET IT WRONG.

I'm about to take a long rambly talk through the garden of game design
and other related metaphors. Along the way I will be visiting some of
my games, especially "Common Ground." If you haven't played "Common
Ground," for goodness' sake, go play it. It takes, what, thirty
minutes? If you have played it, or aren't afraid of spoilers, feel
free to read on.

When you decide to design interactive fiction, no one hands you a
manual. Few people have written about designing IF, and the subject is
so complex that no one article or treatise can cover it all. Instead,
you learn by osmosis, by watching what other people do. You learn to
scribble down your thoughts, or push little glass beads around to help
you keep track of what you're doing, or begin programming with no idea
of how your game will end, or any of a million other actions which are
unique to you.

And in the meantime no one tells you that you can write your game but
you can't play it. Yes, I know. It's a truism. But you don't believe
it, not really. Who knows your game better than you? Surely players
will notice all the nifty things you put in your game.

Trust me, they won't. Players can't tell where you sweated and
toiled. They don't know that you spent three weeks coding a river that
would sweep any object dropped in it downstream. They won't drop
anything in the river, or if they do, they won't be that
impressed. Instead, they'll focus on something else entirely.

It happened with _Losing Your Grip_, and it surprised the hell out of
me. Here I was, all pleased with myself because I was putting in
multiple paths. This will be interesting, I thought. People will
discover that some sections of the game come in two flavors, and
they'll talk about it.

Instead, what is Grip known for? Head kicking. An action which took
all of five minutes to dream up, code, and re-write has come to
symbolize my game.

(Aside #1: Admit it, how many of you kicked the head instead of trying
to save it? You can do both. Last I checked the head kickers were
beating out the head savers by nearly a ten-to-one margin. Clearly I
have tapped into some primal human instinct. Perhaps our ancestors
were hunted by heads buried in mud, and only by kicking those heads
could those ancestors save themselves.)

Or take "Common Ground." It grew out of my interest in stories told
>from  multiple viewpoints. Aha, I thought, there aren't that many games
in which you see the same things through different eyes; I think I'll
write one.

(Aside #2: This wasn't meant as a gimmick, by the way. Had I meant it
as a gimmick, I'd have spent a lot less time on the game, that's for
damn sure. I had this story, see, and it came to me that I could tell
it by having players play several different roles.)

As I was programming the game, I had visions of players running
around, taking sledgehammers to my game world. Once they figured out
that their earlier actions were being replayed in later scenes, I just
knew players would try to make this replay fail. Because of my
expectations, I spent a lot of time trying to thwart or accomodate
this behavior.

I suspect my view of players comes in part from my long association
with Mike Kinyon. Mike's tools for making games break down range from
jackhammers to ice picks. Now that I've worked with him for many
years, I instictively expect all players to prod at the corners of my
game world until something goes *sproing*.

My first inkling that players weren't going to do this came in an
early beta report from Mike. He had noticed that his actions were
being played back to him, but said that he felt obligated to keep the
story going. He had a hard time making himself go against the flow of
the story, the flow he'd already established.

Huh, I thought. That's interesting. And I went on my merry way,
programming in more responses to actions that might break the replay.

When I released _Common Ground_, I discovered that most people sided
with Mike, whether consciously or unconsciously. A number of people
told me that it had never occurred to them to see if their actions
were really being replayed in the later-yet-simultaneous scenes.

In a way, that's good. It means that people were getting caught up in
the story, were viewing _Common Ground_ as something other than a game
to be poked and prodded. It's possible that some people saw the
storyline as a puzzle of sorts: see if you can keep the story from
veering off its original track. If this is the case, I suspect it
happened on a subconscious level. Players knew how the story turned
out last time, so unconsciously worked to make it turn out that way
again.

(Aside #3: Personally, though, I blame _Jigsaw_. It played on the
whole "history must be left as is" theme, thus scarring a whole
generation of IF players for life. You should try wrecking history
some time. Sure, horrible things might happen, but then, so might good
things.)

But the point is -- no, wait, I've mislaid my point. Ah, right. The
point is, the disjoint between author and player can be troubling. You
write a game. You release it. Magically, the community comes to a
consensus about your game...and it's not what you were
expecting. Everyone's missed the things you thought were neat and have
instead focused on things that, to you, are very minor.

You sit there, wondering where you went wrong. You're a player, right?
So why didn't you realize this would happen? Why didn't you have a
better idea of how people will view your game? Worst of all, you have
this sneaking suspicion that you're the only one this happens
to. Those other authors don't run into this, do they?

They do. At least, the ones I've talked to do. (I suspect the rest are
keeping quiet because, like you, they think they're the only ones who
feel this way.)

Here's the thing, though: this disjoint can be a good thing. Remember
my beginning truism? Since you can't play your game, you'll have to
get other people to play it, then tell you about it. The only way
you'll really learn about your game is to hear other people talking
about it. That's why I'm so keen on reviews and newsgroup discussions
-- they let me learn things about my game that I'd never have found
out otherwise.

A quick example. As I wrote "Arrival," I found myself growing rather
fond of the game. I would chuckle at parts of it, especially Zigurt
and Floban's rants. Uh-oh, I thought. Sure, I think this is funny, but
will others?

I released it in the competition under a pseudonym, then sat
back. Time passed. Eventually the competition was over, and people
posted reviews.

Lo and behold, Michael Straight had the following to say about
"Arrival":

    Finally, I can't think of any work of IF that has made me laugh so
    much. I guess this is much more subjective, but I thought the
    antics of the aliens, especially their comments about the atlas
    and their attempts to open the pill bottle, were hilarious. And
    there were tons of little jokes everywhere.  The response when you
    try to take the alien's pills still makes me laugh.  I feel like
    after watching a really funny movie and you keep saying to your
    friends, "Remember this?  Remember that?  Bwahahah!"

I felt like dancing. Someone got it. *Someone got it.* No matter how
many people found "Arrival" boring or unfunny, at least one person was
tuned to my frequency. And I wouldn't have known that if not for the
competition reviews.

(Aside #4: There were a lot of nice reviews of "Arrival" which
mentioned the humor. I didn't forget them, I swear. Michael's was the
first one I saw. There were also some not-nice reviews. Hey, I can't
win them all.)

So how can you plan for this disjoint? You don't. The best you can do
is know that it's going to happen. Be prepared to feel a little
off-kilter when player feedback starts rolling in, and be glad. The
disjoint will tell you more about your game than any amount of staring
at the source code.

As it's happening, pay attention. Ask yourself why players clued into
what they did. See what you can learn from it, and try to use that
knowledge in your next game.

And be sure to add as wide a range of actions as possible to your
game. You never know what the next KICK HEAD will be.

Stephen

-- 
  Stephen Granade                | Interested in adventure games?
  sgranade@phy.duke.edu          | Visit About.com's IF Page
  Duke University, Physics Dept  |   http://interactfiction.about.com


From mmusante@Sun.COM Mon Apr 24 16:21:07 CEST 2000
Article: 71629 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!zapata.tvd.be!news.tvd.be!newsfeed.icl.net!diablo.theplanet.net!newspeer.clara.net!news.clara.net!easynet-melon!easynet.net!btnet-feed2!btnet!carbon.eu.sun.com!new-usenet.uk.sun.com!eastnews1.east.sun.com!radagast!mmusante
From: mmusante@Sun.COM (Mark Musante - Sun Microsystems)
Newsgroups: rec.arts.int-fiction
Subject: Re: The Player Will Get It Wrong (LONG)
Date: 21 Apr 2000 12:53:32 GMT
Organization: Sun Microsystems Inc. - BDC
Lines: 23
Message-ID: <8dpj0c$noo$1@eastnews1.east.sun.com>
References: <jdbt3444wp.fsf@login2.phy.duke.edu>
NNTP-Posting-Host: radagast.east.sun.com
X-Newsreader: TIN [version 1.2 PL2]
Xref: news.lth.se rec.arts.int-fiction:71629

Stephen Granade (sgranade@login2.phy.duke.edu) wrote:
> (Aside #1: Admit it, how many of you kicked the head instead of trying
> to save it? You can do both. Last I checked the head kickers were
> beating out the head savers by nearly a ten-to-one margin. Clearly I
> have tapped into some primal human instinct. Perhaps our ancestors
> were hunted by heads buried in mud, and only by kicking those heads
> could those ancestors save themselves.)

To be honest, I did try to save it before resorting to violence.

I remember spending several turns trying to pull out or dig up the
head in some way.  The kicking was more a frustration-venting
action.  "There's the head," I said to myself, "at foot level.
And there's my foot at, um... well, at it's own level."  So I
conducted an experiment in inelastic collisions, completely
expecting to see the response 'I don't know the word "kick".'

I blinked with surprise when the game actually knew what I wanted
to do.  And then I restarted in case I had just performed an action
which put me in an unwinnable state.


  -=- Mark -=-


From dns361@merle.acns.nwu.edu Mon Apr 24 16:21:39 CEST 2000
Article: 71632 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!news.algonet.se!algonet!news.maxwell.syr.edu!newsfeed.acns.nwu.edu!news.acns.nwu.edu!merle.acns.nwu.edu!dns361
From: Second April <dns361@merle.acns.nwu.edu>
Newsgroups: rec.arts.int-fiction
Subject: Re: The Player Will Get It Wrong (LONG)
Date: Fri, 21 Apr 2000 09:13:01 -0500
Organization: Northwestern University, Evanston, IL, US
Lines: 48
Message-ID: <Pine.HPP.3.93.1000421090539.399A-100000@merle.acns.nwu.edu>
References: <jdbt3444wp.fsf@login2.phy.duke.edu>
NNTP-Posting-Host: merle.acns.nwu.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
In-Reply-To: <jdbt3444wp.fsf@login2.phy.duke.edu>
Xref: news.lth.se rec.arts.int-fiction:71632

On 20 Apr 2000, Stephen Granade wrote:

> (Aside #1: Admit it, how many of you kicked the head instead of trying
> to save it? You can do both. Last I checked the head kickers were
> beating out the head savers by nearly a ten-to-one margin. Clearly I
> have tapped into some primal human instinct. Perhaps our ancestors
> were hunted by heads buried in mud, and only by kicking those heads
> could those ancestors save themselves.)

I seem to recall that I tried to save it, and only discovered the kicking
option when it was mentioned here. It may be that the kicking was in
reaction to what the head is saying--"you're blaming me for something I
don't understand or remember? well, take that!"--but I think my reaction
was just to walk away.

> Or take "Common Ground." It grew out of my interest in stories told
> from multiple viewpoints. Aha, I thought, there aren't that many games
> in which you see the same things through different eyes; I think I'll
> write one.
> 
> As I was programming the game, I had visions of players running
> around, taking sledgehammers to my game world. Once they figured out
> that their earlier actions were being replayed in later scenes, I just
> knew players would try to make this replay fail. Because of my
> expectations, I spent a lot of time trying to thwart or accomodate
> this behavior.

Huh. I noticed, and commented on it in my review, but I didn't spend a lot
of time trying to make the recording device fail, mostly because I was
more interested in the characters. (Really. I spent a _lot_ of time
UNDOing so that I could have the characters say or do something different,
in order to get different reactions.) I guess it felt uncharitable to me
to try to "break" something as difficult as a recording device--I mean, I
noted that the game was recording what I'd done earlier, noted that it did
it pretty well though it missed some of the complexities, gave it full
technical marks, and went back to the story.

Duncan Stevens
dns361@merle.acns.nwu.edu

But buy me a singer to sing one song--
Song about nothing--song about sheep--
Over and over, all day long;
Patch me again my thread-bare sleep.

--Edna St. Vincent Millay




From s7m6@unb.ca Mon Apr 24 16:23:08 CEST 2000
Article: 71633 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!sunqbc.risq.qc.ca!torn!sodalite.nbnet.nb.ca!newsfeed.unb.ca!not-for-mail
From: Brad O'Donnell <s7m6@unb.ca>
Newsgroups: rec.arts.int-fiction
Subject: Re: The Player Will Get It Wrong (LONG)
Date: Fri, 21 Apr 2000 11:59:28 -0300
Organization: Kill the president
Lines: 91
Message-ID: <39006CD0.57FE@unb.ca>
References: <jdbt3444wp.fsf@login2.phy.duke.edu>
NNTP-Posting-Host: io.sun.csd.unb.ca
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: malakbel.unb.ca 956329168 1735 131.202.9.15 (21 Apr 2000 14:59:28 GMT)
X-Complaints-To: usenet@malakbel.unb.ca
NNTP-Posting-Date: 21 Apr 2000 14:59:28 GMT
X-Mailer: Mozilla 3.04 (X11; I; SunOS 5.7 sun4u)
Xref: news.lth.se rec.arts.int-fiction:71633

[Mild Spoilers for Aisle, The City, Losing Your Grip, I-0 ]

Stephen Granade wrote:



> It happened with _Losing Your Grip_, and it surprised the hell out of
> me. Here I was, all pleased with myself because I was putting in
> multiple paths. This will be interesting, I thought. People will
> discover that some sections of the game come in two flavors, and
> they'll talk about it.
> 
> Instead, what is Grip known for? Head kicking. An action which took
> all of five minutes to dream up, code, and re-write has come to
> symbolize my game.

 The very first thing I did in LYG was kick the head. It was
 startling and enjoyable that the game allowed me. I was thrilled.
 
 Then I couldn't get through the First Fit. I couldn't figure out
 what to do, and the thrill of this beautiful head-kicking game 
 was more or less over. I didn't ask for hints because I was very
 anti-puzzle at the time; my patience for playing games with 
 walkthrough-in-hand is exhausted by the Competition.

> Or take "Common Ground." It grew out of my interest in stories told
> from multiple viewpoints. Aha, I thought, there aren't that many games
> in which you see the same things through different eyes; I think I'll
> write one.
<snip>
> As I was programming the game, I had visions of players running
> around, taking sledgehammers to my game world. Once they figured out
> that their earlier actions were being replayed in later scenes, I just
> knew players would try to make this replay fail. Because of my
> expectations, I spent a lot of time trying to thwart or accomodate
> this behavior.
<snip>

 I think one reason that players might not have tried to break the
 replay is because they're traditionally fairly easy to break. I
 never broke the replay in The City, for instance, but from what I
 hear it's not to hard to muck up.

 Given that replay-systems are easy to break, if my first attempts
 at breaking the system don't work, I'll be suitably impressed that
 I won't try any more.

 (But that brings up a twisty little side-note: How do I know,
 intrinsically, that such systems are easy to break? Because, like
 most players, I am also an author, and I have some idea of what
 it might take to build such a system. If I were a "pure" player,
 maybe I would act differently; but "pure" authors (authors who
 don't play) seem to outnumber "pure" players (players who don't
 write) by quite a wide margin. Most of us are in the hybrid 
 author/player category.)

> But the point is -- no, wait, I've mislaid my point. Ah, right. The
> point is, the disjoint between author and player can be troubling. You
> write a game. You release it. Magically, the community comes to a
> consensus about your game...and it's not what you were
> expecting. Everyone's missed the things you thought were neat and have
> instead focused on things that, to you, are very minor.
> 
> You sit there, wondering where you went wrong. You're a player, right?
> So why didn't you realize this would happen? Why didn't you have a
> better idea of how people will view your game?
<snip>


  Sometimes, when writing a game, a smashing idea comes into your
  head at 11:30 PM. Then you spend until 2:00 AM coding it; and then
  you're hooked: you've got to finish this bit of buffoonery. So
  you spend all your coding time of the next three days finishing it
  off. When the beta-test results come in, you spend two (or ten) more
  programmer-days fixing bugs related to this code. And voila, five
  days sucked away by an 11:30 idea. But at the root of it is the
  idea that supports all this code, an idea that came to you in 
  god-knows-what kind of mental state. Players will have to chance
  upon that same state at that spot in the game, or all that code
  goes unnoticed. (Good beta-testers, however, induce all mental
  states at once, so that's why they notice :) The author values it,
  and the player doesn't.


  I don't know who said it first, but it's taped up over my
  computer, printed in two-inch-high letters: "If the user 
  doesn't know about a feature, it might as well not exist."
  I think it applies to IF as well.

--
	Brad O'Donnell


From buzzard@world.std.com Mon Apr 24 16:41:53 CEST 2000
Article: 71641 of rec.arts.int-fiction
Newsgroups: rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newspump.monmouth.com!newspeer.monmouth.com!cpk-news-hub1.bbnplanet.com!news.gtei.net!portc03.blue.aol.com!portc.blue.aol.com!uunet!ffx.uu.net!world!buzzard
From: buzzard@world.std.com (Sean T Barrett)
Subject: Re: The Player Will Get It Wrong (LONG)
Message-ID: <FtDxJC.GDx@world.std.com>
Date: Fri, 21 Apr 2000 21:11:36 GMT
References: <jdbt3444wp.fsf@login2.phy.duke.edu>
Organization: The World Public Access UNIX, Brookline, MA
Lines: 105
Xref: news.lth.se rec.arts.int-fiction:71641

I hope I understand correctly that what Stephen Granade was getting
at was the idea that 'what the author thinks is important is not
what the player will think is important.'

This can be on many levels--theme, plot, actions,
backstory.

But let me apply (abuse?) this subject line as follows:

I cannot strongly enough stress what I think is the
most important dimension that the player will get
wrong: the gameplay.

Your game ("you"="some generic author") is itself merely
a phase space that your players instantiate in inordinate
variations, but that you are lucky to see several of
explored in beta test.

The commercial gameworld is littered with poorly-thought
through game designs in which implicit linearities are
unconsciously relied on, but not coded.  Designers assume
that you'll go to Junktown in Fallout before you go to the
Hub, but they don't enforce it, so it's trivial to have
bizarre conversations and even plot bugs.  Games assume
the player will encounter character A before encountering
character B because character A is near the entrance to
the area and character B is at the far end of it.  A work
of IF has a room description that assumes that you first
entered it from a particular direction because that's the
only "reasonable" way for a first-time explorer to come from.

And most of the time, they're right.  Most players do
these things in the right order.  Rarely, a player misses
out on Junktown entirely.  Once in a while, a player enters
a section of the game and uses a left-wall-following maze
algorithm to explore it, finding character B before A.
Once in a while a player gets totally lost in a work of
IF and ends up coming into a room from an unexpected
direction.

The problem is it only takes one of these things happening
once for a player to step outside the expected space of
gameplay of the game.  Even though each one might be
very unlikely, with enough ways to screw things up, a
significant number of players may well have an experience
that is far from the carefully calculated effect you
had intended.

My best and favorite example of this is BioForge, a commercial
"adventure" game of the same kind as 'Alone in the Dark'.
Odds are that very few of you have this game, and I certainly
wouldn't recommend buying it just to see this.  The interesting
lesson you can learn is to install it, then go into the
direectory and browse the scripts.  The scripts are there in
plain readable english (perhaps packed in larger files? I forget,
it was many years ago).  But the best part is to read through
some of these scripts, which are full of comments of the form
"and then the player will do X, so we do blah:" followed by
some code, and then "so of course the player will now do Y,
so we etc."  The best part of this is the tower sequence where
you have to shoot down the plane before it lands.  The interaction
with the character there *never* went like the sequence described
in the script for me.  So much for yet another attempt at
duplicating Hollywood in games.

Unfortunately, the world of commercial game design does not
offer many lessons to the hobbyist IF author who think of
herself as a game designer; I really need to get off my ass
and post a response to Doe's Iffy theory along these lines,
but there is basically close to zero discussion within the
commercial game development community about what good game
design is and how you can do it.  Dig up a "game developer's
magazine"--it's full of information about the technical aspects
of programming and of creating art content, and sometimes
about the business/managerial side of game development, and
*sometimes* (if you're lucky) information about the flow and
process of game design (things like "write a design document")--
but essentially devoid of useful information to learn how
to better design games.  And this is largely true of the
industry's conference (Game Developers Conference, nee
Computer Game Developers Conference)--exacerbated by the
conference being run for profit and therefore having increasing
amounts of content aimed at wannabees and biz folks, but that's
a separate and totally irrelevant rant.

Anyway, I personally bitch about this because I've played
so many highly-respected IF games and gotten stuck on them--not
necessarily on hard parts of them, but just stuff like: what
the heck am I supposed to be doing in the first fit of LYG,
once I'm wandering around with the thing I got to name?  How
the heck am I supposed to remember the existence of a crucial
thing very near the beginning of Spider&Web when I come back
there in the endgame, since it's not mentioned in the room
description?

These are parts of the phase space that are perhaps a little
hard to anticipate, but don't seem *that* hard to avoid.
Expect *some* players to miss the one detail somewhere--so
make sure you put in two.  Don't put crucial information on
a one-shot daemon.  Presumably there are some other reasonable
rules, although if the only way to come up with them is in
hindsight from seeing them break for someone, then, well, woe
to us poor authors.

SeanB


From jwkenned@bellatlantic.net Mon Apr 24 20:18:12 CEST 2000
Article: 71709 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!feed2.onemain.com!feed1.onemain.com!europa.netcrusader.net!199.45.45.8!cyclone1.gnilink.net!typhoon1.gnilink.net.POSTED!not-for-mail
Message-ID: <390464F1.404D77DC@bellatlantic.net>
From: "John W. Kennedy" <jwkenned@bellatlantic.net>
Reply-To: jwkenned@bellatlantic.net
X-Mailer: Mozilla 4.72 [en] (Win95; U)
X-Accept-Language: en
MIME-Version: 1.0
Newsgroups: rec.arts.int-fiction
Subject: Re: [inform] italics in inform?
References: <Ft1p6M.38s@world.std.com> <Ft9rz1.3F0@world.std.com> <8dkm02$bph$1@slb3.atl.mindspring.net> <8dlfmq$o9v$1@nnrp1.deja.com>  <FtAMAI.Byr@world.std.com> <8dm8ce$ots$1@love.loyola.edu> <3900c740.6148618@news.bright.net> <39012C8D.D3F841F0@spam.com>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Lines: 29
Date: Mon, 24 Apr 2000 16:02:41 GMT
NNTP-Posting-Host: 151.198.119.17
X-Trace: typhoon1.gnilink.net 956592161 151.198.119.17 (Mon, 24 Apr 2000 12:02:41 EDT)
NNTP-Posting-Date: Mon, 24 Apr 2000 12:02:41 EDT
Xref: news.lth.se rec.arts.int-fiction:71709

no@spam.com wrote:
> I haven't seen this in a game yet, but something I've never liked is
> blinking text.  How horrible!  Does anybody actually think this is a
> good idea in *any* context (say, on web pages)?  (Unless it's used to
> say, announce a tornado.)

_Small_ error messages (like just "ERROR") in form-filling applications,
especially those that are likely to be used "heads down".  Flagging the
error field in similar circumstances (e.g., blinking the word "ZIP"
because the ZIP code is blank).  Generally, any time you are trying to
communicate the message, "Hey!  Operator!  Look here!  Right here! 
Now!  It's important!" -- and it really _is_ important.

Heck, I still miss the good old days (pre-1970 or so) when dumb
terminals could lock the keyboard to grab the user's attention -- not
just stop taking data, but actually jam the physical keys so they
wouldn't press until a "reset" button was hit.  (Now, everyone here may
think that sounds dumb, but, trust me, if you've got some clerk
transcribing page after page of invoices or something, it's a really
terrific way to get his attention when he slips up or you're trying to
broadcast a system shutdown!)

-- 
-John W. Kennedy
-rri0189@ibm.net
Compact is becoming contract
Man only earns and pays.  -- Charles Williams




From lex@cc.gatech.edu Mon Apr 24 20:27:55 CEST 2000
Article: 71637 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!news-peer-europe.sprintlink.net!news.sprintlink.net!howland.erols.net!portc.blue.aol.com.MISMATCH!portc03.blue.aol.com!portc.blue.aol.com!cpk-news-hub1.bbnplanet.com!news.gtei.net!news.mindspring.net!cc.gatech.edu!GT-News!not-for-mail
From: lex@cc.gatech.edu
Newsgroups: rec.arts.int-fiction
Subject: Re: [IF Art Show 2000] Exhibit Ready
Date: 21 Apr 2000 15:08:33 -0400
Organization: Georgia Institute of Technology, Atlanta GA, USA
Lines: 66
Message-ID: <m366tb46ha.fsf@chaos.resnet.gatech.edu>
References: <8co2qu$5qn$1@nntp.ece.cmu.edu> <20000408160116.29115.00000384@ng-cc1.aol.com> <N_MH4.152991$Hq3.3716806@news2.rdc1.on.home.com> <8coi7v$ftp$1@leopard.it.wsu.edu>
NNTP-Posting-Host: r50h68.res.gatech.edu
X-Trace: news-int.gatech.edu 956344114 19444 128.61.50.68 (21 Apr 2000 19:08:34 GMT)
X-Complaints-To: usenet@news.gatech.edu
NNTP-Posting-Date: 21 Apr 2000 19:08:34 GMT
X-Newsreader: Gnus v5.7/Emacs 20.4
Xref: news.lth.se rec.arts.int-fiction:71637

"Gabe McKean" <gmckean@wsu.edu> writes:

> Umm, it may be just me, but I don't see the problem here.  Hyperlinks are
> indeed hyperlinks, but they're also part of the overall website, and thus if
> the designer of said website thinks the design would be best served by a
> certain style of hyperlinks, what's wrong with that?  The links on the IFart
> show are all underlined, and I don't see any non-linked underlined text
> there, so at least it's self-consistent.
> 
> Anyway, that's just my two cents.


Well, I think in this page overall is geered towards appearance rather
than easy navigation.  If you want to make hyperlinks look different,
then at least make them look like hyperlinks still.

I hate to pick on a particular page, but these mistakes are so
prevelant, I'll use it as an example.  The page is actually quite nice
looking, and it is practical once you know where all the links are.
However, it's hard on new visitors.  In particular:

        1. The fine print at the bottom of a page is usually the
           *last* thing that a reader reads.  Yet on this page, the
           links on the bottom of this page seem to be top-level links
           for the web site.  This took me a while to figure out.

        2. The site overview is hard to find.  Is this site about
           artwork related to IF?  ANSI art that people have embedded
           in IF programs?  No on both counts, but those were my first
           two guesses.  It took me several minutes to find the
           "Concept Behind IF Art" link in the middle of the fine
           print at the bottom.  The overview of a site should be the
           easiest thing to find, and it was difficult here.

        3. The "lobby", "west wing", and "annex" metaphor is
           confusing.  What are the criteria for putting things in
           different wings?  Why should I go to the West instead of to
           the Annex?  The metaphor here is strong, but it doesn't
           seem to serve a purpose.  The pages could just as well have
           been titled things like "Overview" and "1999 Gallery".

        4. To add a technical nit, the menu in the middle of the page
           doesn't seem to work unless you have JavaScript turned on.
           Like it or not, many people either don't have JavaScript,
           don't turn it on, or have a version of Javascript
           incompatible with what the designer expected.  Making
           JavaScript the primary means of navigation thus cuts out a
           lot of viewers.  (To make it worse, this particular menu is
           quite ugly and even makes the page *look* worse!)


To summarize, web site design is more than the graphic design of a
single page.  While graphic design is usually concerned with
transmitting one page of information, a web site usually has multiple
pages that must be arranged in some natural way.  It is important on a
web site to have a logical structure of the pages, to inform the
reader of that structure, and to make navigating that structure easy.
Many web site designers spend a lot of energy on making their sites
pleasing to the eye, but then spend little time on these fundamentals
of information providing.  And yet, what use is a web site that looks
good, if visitors can't find the actual information?



-Lex



From dcornelson@placet.com Mon Apr 24 20:30:55 CEST 2000
Article: 71690 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gctr.net!europa.netcrusader.net!199.60.229.5!newsfeed.direct.ca!newsfeed.concentric.net!global-news-master
From: "David Cornelson" <dcornelson@placet.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: [Repost] The Player Will Get It Wrong
Date: 24 Apr 2000 01:11:19 EDT
Organization: Concentric Internet Services
Lines: 35
Message-ID: <8e0l1n$ecc@journal.concentric.net>
References: <jdd7ngwsf3.fsf@login2.phy.duke.edu>
NNTP-Posting-Host: 64.1.132.131
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.00.2919.6700
X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700
Xref: news.lth.se rec.arts.int-fiction:71690

"Stephen Granade" <sgranade@login2.phy.duke.edu> wrote in message
news:jdd7ngwsf3.fsf@login2.phy.duke.edu...
> room will be a sign: THE PLAYER WILL GET IT WRONG.

I believe it was Paul O'Brian or CEF that wrote a review of Cattus Atrox
that exactly described my intentions at every point in the game. Everything
that I had toiled over trying to describe and the way the game played out,
the reviewer hit it on the head.

The problem? The reviewer hated all of my intentions. Everything that I
thought was cool, awesome, funny, whatever it was that I liked and had
purposefully put into the game, the reviewer hated.

I read this review and thought, "That's exactly what I was trying to do!!!"

Then I read further and was dismayed at the reviewers response to it all.

I felt that every reason listed for hating the game was the reason it was a
good game.

So I guess Stephen is right. The player _will_ get it wrong.

Of course the bit that _did_ catch on in Atrox, "Eeaagh, LIONS!!!" [click],
well - I had no idea. That was just a filler response for the phone. Who
knew that would be funny?

Conclusions? Hmm. None really. I agree with Stephen. What's the secret to
making everyone play the game as you intended it? Hah! If I knew that I'd
have a bunch of xyzzies hanging around my neck.

Maybe try Cadre. He might know.

Jarb




From mberlyn@cascadepublishing.com Wed May 10 10:07:08 CEST 2000
Article: 72016 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!fu-berlin.de!novia!pln-w!spln!extra.newsguy.com!newsp.newsguy.com!enews2
From: Michael Berlyn <mberlyn@cascadepublishing.com>
Newsgroups: rec.arts.int-fiction,rec.games.int-fiction
Subject: Re: On behalf of Mike Berlyn... (LONG ANSWER)
Date: Tue, 09 May 2000 08:22:35 -0700
Organization: http://extra.newsguy.com
Lines: 118
Message-ID: <39182D3B.CE46CF0C@cascadepublishing.com>
References: <8evfdu$2g2$1@rohrpostix.uta4you.at> <3914242E.8C88C674@cascadepublishing.com> <8f8e2d$a2e$1@nnrp1.deja.com>
NNTP-Posting-Host: p-006.newsdawg.com
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Mailer: Mozilla 4.5 [en] (Win95; I)
X-Accept-Language: en
Xref: news.lth.se rec.arts.int-fiction:72016 rec.games.int-fiction:51487

Steve Evans wrote:

> Firstly, I must say that the demise of CMP is very sad, but I was
> heartened by Mike's comment that the much anticipated "Chameleon" will
> still be released. 

Thanks. I am working at it.

> Given the amount of interest in IF there should still
> be a place for a commercial IF enterprise, and I hope that sometime soon
> the time will be right for a new venture.

I am not giving up. I am closing CMP. CMP was a Hydra: print books,
eBooks, and IF. Next time, it'll be just IF. And there will be a next
time.
 
> Secondly, on the subject of Dr Dumont's Wild PARTI, I read some time ago
> in Hans Perrson's Adventureland pages that this game was originally
> intended for Infocom.
> 
> About it, Hans says:
> 
> "This was originally written for Infocom but when they were
> taken over by Activision, all outside projects were cancelled, and
> although the alpha version had been delivered, they returned the
> rights to the game to the authors."
> 
> I had no reason to question this until I recently read (somewhat
> belatedly) Stephen Granade's 1999 interview with Mike which suggested
> that Confetti/Chameleon was the cancelled Infocom game, with Dr Dumont
> being a later work always intended for First Row Software.
> 
> Mike, to save me having sleepless nights over this, can you shed some
> light on the situation regarding the history of "Dr Dumont"?

Sure, Steve. Here's the story as well as my synapses can remember:

I left Infocom so Muffy and I could start a company called "Brainwave
Creations." This company was supposed to create ideas and designs for
games -- design only. At the time (the mid 1980s), there were more
coders than designers, and we figured we could get out of the coding
business. Be in the architecture business rather than the construction
business.

Broderbund agreed to put us on retainer so I could quit Infocom, and
flew me out to Karlofornia to meet with the Synapse people. Everything
was fine, but when the first check was to appear and did not, I called
and found out that they had fired their VP of Product Development and
the new VP was not at all interested in a design firm. Sigh. So we put
on our creative hats, came up with a frightening concept, and went out
to sell it...

We had an idea for a game, Confetti, which we pitched and sold to
Infocom. It was such a different approach, they signed it on the spot
with just a proposal, came out to meet with us, etc. They were very
excited/shocked about the whole thing. It was a networked story,
character driven, with no puzzles. We started work on it and quickly
realized we were in well over our heads. It was impossible for Muff and
I to wrap our minds around the whole project, and any attempt to
organize it failed. It was like trying to hold a gallon of water in our
bare hands. We had charts covering the walls, story line charts,
character charts, spread sheets, etc., but no matter how we looked at
it, we eventually ended up with a glazed look, staring off into space,
wondering how the hell we could ever get this done. Well, we gave up and
eventually offered to return the money to Infocom, which they
magnanimously refused, and told them that we couldn't figure out how to
design it, never mind code it.

Through the entire Brainwave time period, I was also working on a
ZIL-like language I called IVY whose source code resembled ZIL. I was
planning on using it to write adventures for Broderbund and others, so
by the time we gave up on Confetti, IVY was mostly done.

A few days later, Muff was reading about the search for particle X, and
the thought of making a search for particle X in metaphor seemed like a
cool idea. Particle physics was a big thing at the time. So we planned
out how it might work. We called the project "Rager," with was an
acronym for the device used (the isolation tank linked to the particle
accelerator) to put the character in the sub-atomic world (later renamed
P.A.R.T.I.). 

We were approached by Origin Systems, and the Rager concept was pretty
well developed by that time. They signed a three game deal with us for
text adventures, and I started work coding Rager. About two months into
the project, Activision bought Infocom, and Origin figured it would be
nuts to go into the adventure game market when Infocom had failed. (BTW,
Infocom's failure had nothing to do with adventures and everything to do
with their business product, Tombst... er... Cornerstone.)

So, I finished coding Rager, thinking we could sell it somewhere.

When the dust settled at Infocom, we approached them with Rager, now a
playable game. We offered it to make up for blowing the Confetti deal,
and they were thrilled with the idea. They played it, liked it, and
asked me to recode it in ZIL so they could use their interpreter for it.
So I recoded it in ZIL and, the day of delivery, Activision, who had
bought Infocom, canceled all outside projects. Sigh.

A few weeks later I got a call from First Row Software. I should never
have answered the phone. They needed a product. We needed the money. We
already had Rager coded in IVY. Since there were so many Marx Bros.
references in the game, we renamed it Dr. Dumont's Wild PARTI due to
Margaret Dumont, Groucho's "straight man" in so many of their movies.

We didn't know it at the time, but First Row was a tax shelter for some
wealthy people in Phillie, and they had no intentions of marketing the
product. The company went under a few weeks after Dr. D shipped.

Oh, and BTW, Confetti is Chameleon. Rager is Dumont. And my brain hurts.
:)

Best,
-- Mike
mailto: mberlyn@cascadepublishing.com

"I want to die peacefully in my sleep, like Grandpa. Not screaming in
terror, like his passengers." 
-- Jack Handey


From mollems@mindspring.com Wed May 24 12:34:22 CEST 2000
Article: 72422 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!news-peer-europe.sprintlink.net!news.sprintlink.net!cpk-news-hub1.bbnplanet.com!news.gtei.net!firehose.mindspring.com!not-for-mail
From: "M. Sean Molley" <mollems@mindspring.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: [CMP] Once and Futures
Date: Mon, 22 May 2000 21:03:05 -0400
Organization: MindSpring Enterprises
Lines: 42
Message-ID: <8gckrj$7pb$1@slb3.atl.mindspring.net>
References: <39295A9E.F9CF73E9@cascadepublishing.com> <8F3C85020knight37gamespotmail@209.30.0.14>
NNTP-Posting-Host: d1.56.8d.e3
X-Server-Date: 23 May 2000 00:54:11 GMT
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.00.2919.6600
X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6600
Xref: news.lth.se rec.arts.int-fiction:72422

Greetings...

Knight37 wrote:

> Let me, a disinterested observer, note that Once and Future is a very
> nice item to have in any IF collector's collection.

<shameless plug>

Let me, as a somewhat-less-than-disinterested observer and former beta
tester, agree wholeheartedly with the above sentiment.  I don't know what
Mike will let the extra copies go for, but the "props" were as good as
anything that ever came with an Infocom game (well, except for the Trinity
sundial) and gosh darn it, after all those years of newsgroup hype, I think
you owe it to yourself to pick up a copy.

Plus it's a damn fine game (honestly!), and while I admire and respect those
who have released their formerly commercial works as freeware once it became
evident that (almost) nobody would buy them, I think it is a real shame that
the vast majority of folks who are still out there playing and enjoying IF
will never get to see the quality of Kevin's work.

</shameless plug>

And please do note, despite my exalted status as a former beta tester of
Once and Future and charter member of the Adam J. Thornton Death Threat
Protection Program, I have absolutely no financial interest whatsoever in
Once and Future (which I can't stop thinking of as Avalon, but that's beside
the point).

So buy one of those extra copies if you didn't the first time round.  It's a
pity to have them sitting in a warehouse collecting dust.

Re-lurking before all those who (deservedly) want to kill me are able to get
a trace onto my home computer's electromagnetic signature,

Sean
----
M. Sean Molley (the Mage formerly known as Molley) / mollems@mindspring.com





From icallaci@my-deja.com Fri Jun 16 09:59:28 CEST 2000
Article: 73150 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newspump.monmouth.com!newspeer.monmouth.com!newsfeed.enteract.com!news.maxwell.syr.edu!nntp2.deja.com!nnrp1.deja.com!not-for-mail
From: icallaci@my-deja.com
Newsgroups: rec.arts.int-fiction
Subject: Re: [Inform] Very Odd Error Message
Date: Thu, 15 Jun 2000 15:23:41 GMT
Organization: Deja.com - Before you buy.
Lines: 65
Message-ID: <8iasd6$uu5$1@nnrp1.deja.com>
References: <sk60uf9ih51145@corp.supernews.com> <1ec2jjv.vw1ic1lgqreoN%news@davidglasser.net> <39444eb0.8191016@news.bright.net> <slrn8k9p7o.7l.cerutti@fiad06.norwich.edu> <394623e7.2616559@news.bright.net> <RLE15.2814$7o1.100242@news2.rdc1.on.home.com> <slrn8keuf6.7d.cerutti@fiad06.norwich.edu>
NNTP-Posting-Host: 134.71.40.52
X-Article-Creation-Date: Thu Jun 15 15:23:41 2000 GMT
X-Http-User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows 98)
X-Http-Proxy: 1.1 x63.deja.com:80 (Squid/1.1.22) for client 134.71.40.52
X-MyDeja-Info: XMYDJUIDicallaci
Xref: news.lth.se rec.arts.int-fiction:73150

In article <slrn8keuf6.7d.cerutti@fiad06.norwich.edu>,
  cerutti@together.net wrote:

> >  > give all to wizard
> >  gold key: "I have no use for mundane things," says the Wizard.
> >  silver key: "I have no use for mundane things," says the Wizard.
> >  dagger: "I have no use for mundane things," says the Wizard.
> >  torch: "I have no use for mundane things," says the Wizard.
> >
> >(Unless Neil was talking about something different.)
>
> That was what I had in mind. Now, if you could, a la Irene's
> money code, cause everything to be passed to the NPC in a big
> list instead of one at a time, it might be interesting.
>
>   >give all to wizard
>   "What do I look like -- a sack object?"

Heh. If you noticed, I only did this with money, and even then it
was a major royal pain. I had to account for four different possible
states: 1) the NPC would take the coins but not the bills, 2) the
NPC would take the bills but not the coins, 3) the NPC would take
neither the coins nor the bills, 4) the NPC would take both the
coins and the bills.

The other really nasty thing about this is to abort the NPC's
response immediately, so that you don't get a whole string of
identical responses. Here's how I did it:
-----
Object	FakeLocation ""
with	short_name [;
		real_location.short_name();
		rtrue;
	],
	each_turn [;
		if (player in Ford)
		{	move Ford to real_location;
			move player to Ford;
		}
		else move player to real_location;
		location = real_location;
	];

[ MovePlayerTemp;
	real_location = location;
	if (player in Ford)
	{	move Ford to FakeLocation;
		move player to Ford;
	}
	else move player to FakeLocation;
	location = FakeLocation;
];

Then, when I needed to abort an NPC's response:

if (noun ofclass Money && multiflag) MovePlayerTemp();
-----
I cringe to think what it would take to extend this to different
classes of objects.

irene


Sent via Deja.com http://www.deja.com/
Before you buy.


From im@cs.york.ac.uk Tue Jul  4 11:09:26 CEST 2000
Article: 73751 of rec.arts.int-fiction
Path: news.lth.se!newsfeed.sunet.se!news01.sunet.se!newsfeed1.telenordia.se!news.algonet.se!algonet!newsfeed.icl.net!newsfeed.icl.net!nntp.news.xara.net!xara.net!gxn.net!server6.netnews.ja.net!news.york.ac.uk!not-for-mail
From: Iain Merrick <im@cs.york.ac.uk>
Newsgroups: rec.arts.int-fiction
Subject: Re: [Glulx] Initial thoughts, and problems
Date: Mon, 03 Jul 2000 16:47:27 +0100
Organization: University of York
Lines: 62
Sender: im104@york.ac.uk
Message-ID: <3960B58F.167E@cs.york.ac.uk>
References: <8jq94i$ep3$1@news5.svr.pol.co.uk>
NNTP-Posting-Host: indy027.cs.york.ac.uk
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Trace: pump1.york.ac.uk 962639245 6560 144.32.40.91 (3 Jul 2000 15:47:25 GMT)
X-Complaints-To: abuse@york.ac.uk
NNTP-Posting-Date: 3 Jul 2000 15:47:25 GMT
X-Mailer: Mozilla 3.04 [en] (X11; U; IRIX 5.3 IP22)
Xref: news.lth.se rec.arts.int-fiction:73751

Jon Ingold wrote:

> Right - I finally got around to downloading all the Glulx stuff, setting it
> all up on my machine, and running through the Mulldoon code replacing "style
> bold" with various bits of code I found in the bi-platform library. Then I
> ran the compiler, to be told:
> 
> Fatal error: One of the memory blocks has exceeded 640K.
> 
> Bear in mind, this is code that did - just - compile under z-machine limits!
> So - any ideas? What can I tweak, fiddle, redistribute to solve this? --
> could this be due to using Abbreviations, which I suppose I no longer need?

There's no hard limit on anything in Glulx until you start getting into
gigabyte terrain. This is either an artificial limit or just a bug.

Many of the data structures will be a bit 'fatter' in Glulx than in the
Z-machine, so if Inform is using the Z-machine limits for some reason,
it's quite likely that compiling for Glulx would push you over the
limit. You could try playing around with the memory settings to see if
that makes a difference.

[...]
> * I tried running sensory jam to get a feel for things, but the interpreter
> seems unable to find the blorb file. Anything cunning I need to do?

This depends on the Glk library you're using. I think somebody had
trouble loading sound resources in Windows until he changed the
extensions from '.aiff' to '.aif', so maybe you could try fiddling
around with those.

You could also try playing the game with loose resources, rather than
bundled up into a single Blorb file.

[...]
> * Actually converting things to Glulx isn't as hard as I thought it would
> be. The only irritation is the lack of constants, which would be helpful -
> so one could code
> 
> "glk(SETWINDOW, gg_mainwin);" as opposed to the slightly unmemorable
> "glk($002F, gg_mainwin);"

You can fix this with John Cater's infglk, which should be in either the
Glulx or Glk directory on GMD. It defines wrappers for all the Glk
functions, so you can write:

  glk_set_window (gg_mainwin);

And so on. Very handy.

> But otherwise, all pretty straightforward. Even recoding DrawStatusLine only
> took about two minutes reading before I felt capable of producing all the
> effects I wanted.
>
> In fact, most of the time was spent just converting the game from library
> 6/2 to library 6/10!

Excellent. Well done!

-- 
Iain Merrick
im@cs.york.ac.uk


From erkyrath@eblong.com Tue Jul  4 11:09:53 CEST 2000
Article: 73752 of rec.arts.int-fiction
Path: news.lth.se!newsfeed.sunet.se!news01.sunet.se!news-peer-europe.sprintlink.net!news.sprintlink.net!cpk-news-hub1.bbnplanet.com!news.gtei.net!firehose.mindspring.com!not-for-mail
From: Andrew Plotkin <erkyrath@eblong.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: [Glulx] Initial thoughts, and problems
Date: 3 Jul 2000 16:10:00 GMT
Organization: MindSpring Enterprises
Lines: 51
Sender: Andrew Plotkin <erkyrath@netcom4.netcom.com>
Message-ID: <8jqdso$csn$6@slb7.atl.mindspring.net>
References: <8jq94i$ep3$1@news5.svr.pol.co.uk>
NNTP-Posting-Host: c7.b7.09.68
User-Agent: tin/pre-1.4-19990517 ("Psychonaut") (UNIX) (SunOS/4.1.4 (sun4m))
Xref: news.lth.se rec.arts.int-fiction:73752

Jon Ingold <jon@ingold.fsnet.co.uk> wrote:
> Right - I finally got around to downloading all the Glulx stuff, setting it
> all up on my machine, and running through the Mulldoon code replacing "style
> bold" with various bits of code I found in the bi-platform library. Then I
> ran the compiler, to be told:
> 
> Fatal error: One of the memory blocks has exceeded 640K.
> 
> Bear in mind, this is code that did - just - compile under z-machine limits!
> So - any ideas? What can I tweak, fiddle, redistribute to solve this? --

This is a problem with the *compiler* trying to allocate memory. Probably
one of the blocks for storing game code or game text has gotten larger
than 640K. (I haven't tested any extremely large games.)

Now, this is more an annoyance than a real problem, because the only
reason for a 640K chunk limit is compatibility with really old DOS
systems. I *think*. So if you go into header.h and change

#define ALLOC_CHUNK_SIZE 8192

to

#define ALLOC_CHUNK_SIZE 16384

the problem will disappear.

> could this be due to using Abbreviations, which I suppose I no longer need?

Almost certainly not. Um, it's worth deleting them, I guess, though. Just
to see if it helps.
 
> * Although I've not been able to compile a complete, correct game file, one
> was produced, which when ran crashed pretty quickly. That wasn't a
> surprise - what was a surprise was the appearance of the initial screen:
> 
> ^^^^^^^^^                 THE MULLDOON LEGACY
> 
> ... that is, the line of code print "^^^^^^^^^^^"; *actually printed*
> ^^^^^^^^^^.

No surprise.  If one of the memory blocks related to game text failed to
allocate, the whole text compression process would get skipped. That
includes translating "^" characters.

As to your other questions, see Iain's post.

--Z

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the
borogoves..."


From reply@adamcadre.ac Tue Jul  4 23:25:07 CEST 2000
Article: 73783 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newsfeeds.belnet.be!news.belnet.be!newsfeedZ.netscum.dQ!netscum.int!cpk-news-hub1.bbnplanet.com!news.gtei.net!portc01.blue.aol.com!cyclone2.usenetserver.com!news-out.usenetserver.com!traffic.uncensored-news.com!sn-xit-02!supernews.com!sn-inject-01!corp.supernews.com!not-for-mail
From: Adam Cadre <ac@adamcadre.ac>
Newsgroups: rec.arts.int-fiction
Subject: Re: how long does it take (was IF Competition)
Date: Tue, 04 Jul 2000 12:59:19 -0700
Organization: no. Company: no. Network: no. AC: yes.
Lines: 14
Message-ID: <39624217.2C28@adamcadre.ac>
References: <8jp73o$t12$2@nntp9.atl.mindspring.net> <20000703122358.01159.00000138@ng-fm1.aol.com>
Reply-To: reply@adamcadre.ac
X-Complaints-To: newsabuse@supernews.com
X-Mailer: Mozilla 3.01 (Win95; I)
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Xref: news.lth.se rec.arts.int-fiction:73783

Kathleen Fischer wrote:
> Which leads me to wonder... what's the average length of time people
> spend creating a comp game?

Data point: Photopia took six weeks.  (By which I mean I spent most of
the day working on it every day for six weeks.)

By comparison, I-0 took six weeks (including the time to learn
Inform), Varicella took eight months, 9:05 took four days, and
Shrapnel took about five weeks.

  -----
 Adam Cadre, Sammamish, WA
 http://adamcadre.ac


From erkyrath@eblong.com Wed Jul  5 11:29:01 CEST 2000
Article: 73780 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gblx.net!howland.erols.net!newsfeed.mindspring.net.MISMATCH!news.mindspring.net!firehose.mindspring.com!not-for-mail
From: Andrew Plotkin <erkyrath@eblong.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: [Glulx] Initial thoughts, and problems
Date: 4 Jul 2000 18:00:49 GMT
Organization: MindSpring Enterprises
Lines: 26
Sender: Andrew Plotkin <erkyrath@netcom2.netcom.com>
Message-ID: <8jt8oh$2nc$1@slb3.atl.mindspring.net>
References: <8jq94i$ep3$1@news5.svr.pol.co.uk> <8jsevs$2m9$1@newsg1.svr.pol.co.uk>
NNTP-Posting-Host: c7.b7.09.66
User-Agent: tin/pre-1.4-19990517 ("Psychonaut") (UNIX) (SunOS/4.1.4 (sun4m))
Xref: news.lth.se rec.arts.int-fiction:73780

Jon Ingold <jon@ingold.fsnet.co.uk> wrote:
> Couple of thoughts arising from conversion:
> 
> - the box statement seems pretty poorly implemented in Glulx. Admittedly,
> most authors probably won't use it in G-code, as there's so much else one
> can do instead; but it would be nice if it approximated the original a
> little more; even if that just means centring the text some how.

That's the player's choice, not the author's. I know on the Mac I have the
"block quote" style set up as indented and italic, because that's how I
like it. If I changed that preference to centered, the quotes would be
centered.

> - The Glulx for Inform Uses document really ought to mention the changes in
> the format of the parse buffer:- it took me quite a lot of guesswork to fix
> my BeforeParsing routine.

That's in the "Glulx Technical Refernce" document. (These were originally
combined in one file, but authors said they mostly didn't care about the
technical stuff, and it was causing heavy-duty eyes-glazing over. So I
separated them out.)

--Z

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the
borogoves..."


From erkyrath@eblong.com Wed Jul  5 11:29:22 CEST 2000
Article: 73782 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!news-peer-europe.sprintlink.net!news.sprintlink.net!cpk-news-hub1.bbnplanet.com!news.gtei.net!firehose.mindspring.com!not-for-mail
From: Andrew Plotkin <erkyrath@eblong.com>
Newsgroups: rec.arts.int-fiction
Subject: [Glulx] another library update
Date: 4 Jul 2000 19:59:40 GMT
Organization: MindSpring Enterprises
Lines: 27
Sender: Andrew Plotkin <erkyrath@netcom2.netcom.com>
Message-ID: <8jtfnc$ikd$1@slb6.atl.mindspring.net>
NNTP-Posting-Host: c7.b7.09.66
User-Agent: tin/pre-1.4-19990517 ("Psychonaut") (UNIX) (SunOS/4.1.4 (sun4m))
Xref: news.lth.se rec.arts.int-fiction:73782

I've rejiggered the bi-platform Inform library some more.

I've added a new library entry point (InitGlkWindow) and extended one of
the old ones (HandleGlkEvent), to make it easier to write Inform games
with more complicated interfaces. (Adding windows, using sound channels,
handling mouse and timer events, and so on.)

As usual with entry points, you can completely ignore them if you want
to. If you're writing a .z5-style game with just a story window and a
status window, you won't need to implement these functions.

The Game Author's Guide to Glulx has full documentation. See
http://www.eblong.com/zarf/glulx/inform-guide.txt

I've also added Evin Robertson's contributed code, which will allow a
debugging Glulx interpreter to do word completion, automapping, and other
such tricks. Of course there *is* no debugging Glulx interpreter yet, but
there's no reason not to start now. :-) Add a line

Constant NITFOL_HOOKS;

...to a game to compile this code in.

--Z

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the
borogoves..."


From reply@adamcadre.ac Sun Jul 16 20:54:27 MEST 2000
Article: 73959 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gblx.net!news.maxwell.syr.edu!feeder.qis.net!sn-xit-01!supernews.com!sn-inject-01!corp.supernews.com!not-for-mail
From: Adam Cadre <ac@adamcadre.ac>
Newsgroups: rec.arts.int-fiction
Subject: [announce] Gull, a guide to Glulx Inform
Date: Tue, 11 Jul 2000 18:12:45 -0700
Organization: no. Company: no. Network: no. AC: yes.
Lines: 18
Message-ID: <396BC60D.59B@adamcadre.ac>
Reply-To: reply@adamcadre.ac
X-Complaints-To: newsabuse@supernews.com
X-Mailer: Mozilla 3.01 (Win95; I)
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Xref: news.lth.se rec.arts.int-fiction:73959

Gull is a package designed to enable people to familiarize themselves
with Glulx Inform. What is Glulx Inform, you ask? Part of the purpose
of Gull is to explain that. In fact, the whole first section is intended
to provide a thorough enough background that even people entirely new
to programming interactive fiction can understand Glulx Inform and how
it fits into the scheme of things. The second section is a manual for
Glulx Inform designed for people who already know Z-machine Inform --
meaning that Gull doesn't come close to supplanting the regular Inform
Designer's Manual, which is required reading before beginning section
two. Finally, Gull includes a number of sample games illustrating
various aspects of Glulx Inform, which you can play and whose sample
code you can peruse.

http://adamcadre.ac/gull/gull.html

  -----
 Adam Cadre, Sammamish, WA
 http://adamcadre.ac


From jonadab@bright.net Sun Jul 23 15:19:54 MEST 2000
Article: 74093 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!fu-berlin.de!cpk-news-hub1.bbnplanet.com!news.gtei.net!portc01.blue.aol.com!newsfeed.skycache.com.MISMATCH!triton.skycache.com!205.212.123.11!cletus.bright.net!not-for-mail
From: jonadab@bright.net (Jonadab the Unsightly One)
Newsgroups: rec.arts.int-fiction
Subject: Re: [Inform] Causing multiple new turns
Organization: There is no organisation.
Message-ID: <3974fc67.11981106@news.bright.net>
References: <H_Oc5.3638$o71.210673@bgtnsc04-news.ops.worldnet.att.net>
X-Newsreader: Forte Free Agent 1.11/32.235
Lines: 59
Date: Wed, 19 Jul 2000 01:22:43 GMT
NNTP-Posting-Host: 209.143.57.234
X-Complaints-To: abuse@bright.net
X-Trace: cletus.bright.net 963969483 209.143.57.234 (Tue, 18 Jul 2000 21:18:03 EDT)
NNTP-Posting-Date: Tue, 18 Jul 2000 21:18:03 EDT
Xref: news.lth.se rec.arts.int-fiction:74093

"William Bane" <wfbane@worldnet.att.net> wrote:

> For example, how would one implement something like:
> > wait for 4 turns
> Time passes...
> Time passes...
> Time passes...
> Time passes...

I've implemented that...

[Digs around.]

It was back in the days of Inform 5 and Library 5/11,
so get yourself a salt shaker...

FWIW, here it is anyway, but all the caveats of 
taking Inform 5 code to Inform 6 apply...

[ MultiWaitSub n i;
     n = special_number;
     for (i=1:i<=n:i++)
       {  if (i==1)
            { print "You wait...^";
             }
            else
            { print "Still you wait...^";
             }
          GamePreRoutine(); ! So you hear loud objects each time.
          Time();
        }
     ];

Extend "wait" first
     * number "times"         -> MultiWait
     * number "turns"         -> MultiWait
     * number "minutes"       -> MultiWait;

Waitasec, I ported that...
by writing this:

#IFDEF LIB62;
[ Time;
     EndTurnSequence();
     ];
#ENDIF;

That was intended to work with Library 6/2, but 
I never really got to test it, as some of the
rest of my 18K lines of code didn't ever really
get beyond the "whatamess" stage of porting,
and I eventually decided to recode the whole
wad from scratch -- a project I have yet to
start, but plan to do eventually.


--

Forward all spam to uce@ftc.gov


From obrian@ucsu.Colorado.EDU Sun Jul 23 15:24:44 MEST 2000
Article: 74199 of rec.arts.int-fiction
Path: news.lth.se!newsfeed.sunet.se!news01.sunet.se!erinews.ericsson.se!uab.ericsson.se!newsfeed1.telenordia.se!algonet!uni-erlangen.de!newsfeed.germany.net!news.vas-net.net!128.32.206.60.MISMATCH!news-hog.berkeley.edu!ucberkeley!news.colorado.edu!ucsu.Colorado.EDU!obrian
From: Paul O'Brian <obrian@ucsu.Colorado.EDU>
Newsgroups: rec.arts.int-fiction
Subject: [Announce] Essay: Interactive Fiction and Reader-Response Criticism
Date: Sat, 22 Jul 2000 11:41:42 -0600
Organization: University of Colorado, Boulder
Lines: 28
Message-ID: <Pine.GSO.3.96.1000722114012.14906A-100000@ucsu.Colorado.EDU>
NNTP-Posting-Host: ucsu.colorado.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: peabody.colorado.edu 964287707 2205 128.138.129.83 (22 Jul 2000 17:41:47 GMT)
X-Complaints-To: abuse@colorado.edu
NNTP-Posting-Date: 22 Jul 2000 17:41:47 GMT
Xref: news.lth.se rec.arts.int-fiction:74199

In the spring of 1993, I was in the midst of a Master's Degree program
in English Literature at CU-Boulder, taking a class in Literary Theory.
At the same time, I had just rediscovered IF via the LTOI packages. For
my final project in that class, I wrote a paper called Interactive
Fiction and Reader-Response Criticism. 

That paper was missing for quite some time, since it was written on a
legacy word processor and I had lost the file anyway. However, I found
the hard copy in my recent move and, eager to test out the OCR
capabilities of my just-purchased scanner, scanned it in, cleaned it up,
and put it on my web page in text form. Naturally, it's not the paper I
would write today, having done much more thinking and acquired much more
knowledge about IF since the time I wrote it. (Most embarrassingly, I
make some factual errors in describing the history of IF.) In addition,
it *is* an OCRed document, so although I've tried to be pretty diligent
about removing weird stuff, there may still be some translation errors
here and there. Finally, keep in mind that I hadn't discovered anything
about the Internet IF renaissance yet, so the discussion focuses
exclusively on Infocom games.

All those caveats aside, it still might be interesting to some of you
out there. It's available at http://ucsu.Colorado.EDU/~obrian/ifrrc.txt.

-- 
Paul O'Brian   obrian@colorado.edu   http://ucsu.colorado.edu/~obrian
The pulse-pounding, electrifying, edge-of-your-seat event you've been waiting
for is here! Yes, SPAG #21 is out!   http://www.sparkynet.com/spag



From russotto@wanda.vf.pond.com Fri Aug  4 13:31:01 MEST 2000
Article: 74560 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newsfeeds.belnet.be!news.belnet.be!xfer13.netnews.com!xfe11.netnews.com!netnews.com!news.voicenet.com!yellow.newsread.com!netaxs.com!newsread.com!POSTED.monger.newsread.com!not-for-mail
Newsgroups: rec.arts.int-fiction
Subject: Zork parser (Was Re: character change (with t a d s tag))
References: <8luv0d$ggq$1@nnrp1.deja.com> <wj4h5.4515$sl.502449@cletus.bright.net> <VEnh5.30953$7a5.882871@typhoon.nyroc.rr.com> <mK0i5.586$yq6.38477@cletus.bright.net>
Organization: Ghotinet
From: russotto@wanda.vf.pond.com (Matthew T. Russotto)
Lines: 32
Message-ID: <hcgi5.14276$I76.769037@monger.newsread.com>
Date: Thu, 03 Aug 2000 15:28:13 GMT
NNTP-Posting-Host: 198.69.82.2
X-Complaints-To: Abuse Role <abuse@pond.com>, We Care <abuse@newsread.com>
X-Trace: monger.newsread.com 965316493 198.69.82.2 (Thu, 03 Aug 2000 11:28:13 EDT)
NNTP-Posting-Date: Thu, 03 Aug 2000 11:28:13 EDT
Xref: news.lth.se rec.arts.int-fiction:74560

In article <mK0i5.586$yq6.38477@cletus.bright.net>,
Mr. Sabre <phoenix@neobright.nyet> wrote:
}Bert Byfield wrote in message ...
}>TADS is a programming language. That means you can do *anything you
}>want*.  ;-)
}
}
}I see...
}
}So, that's why in one of the original Zork games, I'm not sure which, when
}you get to the bit about the robot and the blasting cake, if you tell the
}robot to take the cake then eat/throw it, you get a bunch of confusing
}messages, the main one being "**** The robot has died ****"? Is the parser
}switching the robot to player control, so you can tell it what to do more
}easily?

The original Infocom parsers (not, of course, written in TADS :-) )
maintain two objects representing "player" and "actor".  Most actions act
(unsurprisingly) on the "actor".  Normally the player and the actor
are the same, and are the player object (called "cretin" in the very
early games), but when you give a command like

> robot, eat the cake

the parser switches the actor over to the robot object.  This allows
lots of code used for handling player commands to be re-used for
handling commands to NPC.  Unfortunately, it also allows for bugs like
the one you mention.
-- 
Matthew T. Russotto                                russotto@pond.com
"Extremism in defense of liberty is no vice, and moderation in pursuit
of justice is no virtue." 


From erkyrath@eblong.com Fri Aug  4 14:15:39 MEST 2000
Article: 74440 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!uio.no!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!cpk-news-hub1.bbnplanet.com!news.gtei.net!firehose.mindspring.com!not-for-mail
From: Andrew Plotkin <erkyrath@eblong.com>
Newsgroups: rec.arts.int-fiction
Subject: Re: Windows Glk and Glulxe updated
Date: 31 Jul 2000 16:19:24 GMT
Organization: MindSpring Enterprises
Lines: 43
Sender: Andrew Plotkin <erkyrath@netcom4.netcom.com>
Message-ID: <8m48uc$7k2$1@slb1.atl.mindspring.net>
References: <8luu6m$q1u$1@neptunium.btinternet.com> <3985651d.3490691@news.bright.net> <965046959.773393@lilzftp.liwest.at> <39859b33.1566380977@news.worldonline.nl>
NNTP-Posting-Host: c7.b7.09.68
User-Agent: tin/pre-1.4-19990517 ("Psychonaut") (UNIX) (SunOS/4.1.4 (sun4m))
Xref: news.lth.se rec.arts.int-fiction:74440

Richard Bos <rlb@fdhoekstra.nl> wrote:
> "Gunther Schmidl" <gschmidl@xxx.gmx.at> wrote:
> 
>> > Shouldn't the user be able to turn on an option to have his
>> > settings override the stylehints?
>> 
>> NO! NO! NO! NO! NO! NO! NO! NO! NO!
> 
> Yes. Absolutely yes.
> 
>> This is exactly the reason why I'm loathe to use Glulx. I want AUTHOR
>> control, not PLAYER control. I *write* the game. *I* have the fucking right
>> to decide what it looks like. I have the right to force my artistic vision
>> on the player. You can't change the typeset and layout of books either.
> 
> So if your preferred colours give me a headache, I should still not be
> able to change them? You'd better have a good reason for that to
> convince me to play such a game.
> [...]
> And, of course, you just _can't_ enforce colours, fonts, and all that
> jazz when the game runs on a hand-held.

This is the real answer, of course. This approach is not a "new
feature" in Glk; it's a recognition of the way things *already are*, in
the Z-machine (and TADS for that matter). There *are* monochrome Z-machine
interpreters -- and not just on PDAs. There always have been. No author
can forbid me to use one. Hell, if I really cared I'd hack an interpreter
to suit my desires.

The idea of stylehints is to make finer control *available*, so that the
player doesn't have to choose between interpreter A (which accepts both
game colors and fonts, say) and interpreter B (which accepts
neither). 

That sort of monolithic choice is what we have in the Z-machine world, and
*it* puts the choices in the hands of the *interpreter supporters* -- or
people capable of hacking interpreter source code. That's no good for the
author *or* the player.

--Z

"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the
borogoves..."


From mjroberts_NOmjSPAM@yahoo.com.invalid Fri Aug  4 16:21:47 MEST 2000
Article: 74575 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!nntp.primenet.com!nntp.gblx.net!newsfeed.direct.ca!look.ca!cyclone.bc.net!newsfeed.stanford.edu!sn-xit-01!supernews.com!sn-inject-01!WReNclone!WReNphoon3.POSTED!WReN!not-for-mail
X-Originating-Host: 205.227.43.13
Organization: http://www.remarq.com: The World's Usenet/Discussions Start Here
Subject: Re: Inform and character sets
Lines: 69
From: mjr_ <mjroberts_NOmjSPAM@yahoo.com.invalid>
Newsgroups: rec.arts.int-fiction
Message-ID: <049e13e8.017f1c62@usw-ex0103-018.remarq.com>
References: <8mbsbd$nki$1@nnrp1.deja.com> <8mc070$ao3$2@nntp9.atl.mindspring.net> <39899C50.52BF@cs.york.ac.uk> <8mct3c$ilp$1@nnrp1.deja.com>
Bytes: 3024
X-Wren-Trace: eAEkDA0UUxlSTB8bC0MFGgcBLiQdBEkYC0MNDQVVShFbSRNSWA9AXENRVg==
Date: Thu, 03 Aug 2000 16:46:01 -0700
NNTP-Posting-Host: 10.0.2.18
X-Complaints-To: wrenabuse@remarq.com
X-Trace: WReNphoon3 965347259 10.0.2.18 (Thu, 03 Aug 2000 17:00:59 PDT)
NNTP-Posting-Date: Thu, 03 Aug 2000 17:00:59 PDT
Xref: news.lth.se rec.arts.int-fiction:74575

Carl Muckenhoupt <carl@wurb.com> wrote:
>Iain Merrick <im@cs.york.ac.uk> wrote:
>> (Not being Kevin Forchione, I won't bother pointing out that
>> TADS supports Unicode.)
>
>Obviously not Glk-TADS, though.

Actually, it does.  How can this be, when glk itself doesn't
support unicode?  Let me explain...

First off, I should clarify that Unicode support is a TADS 3
feature - TADS 2 supports any Latin-X character set, but only
one in a given game, whereas TADS 3 uses exclusively Unicode.

TADS 3 has an architectural boundary between the VM and the I/O
layer.  Internally, everything is in Unicode: a compiled game
file on disk has all of its strings stored in Unicode, and all
string manipulation in memory is done in Unicode (which is cool
because it means that things like upper/lower case conversions
work correctly for every character from every alphabet).  When
text is written to the display, however, the I/O layer converts
>from Unicode to the local character set; likewise, the I/O layer
converts characters read from the keyboard or from external text
files to Unicode.

The "virtual OS" layer, which is responsible for the actual
device operations (such as showing text on the display or
reading it from the keyboard), sees whatever local character set
it wants - it tells the I/O layer what character set to use in
all OS-level calls, and the I/O layer maps accordingly.  In glk-
tads, glk is part of (actually, most of) the OS layer; so if glk
wants Latin-1, glk gets Latin-1, and is never bothered with
Unicode characters.  If in the future glk is upgraded for
unicode, it would tell the I/O layer to send it unicode (in
whatever representation - another thing the I/O layer can do is
map to the various different unicode encodings, such as UTF-8 or
UTF-16).

So, even though glk itself doesn't support unicode, glk-tads 3
does, in the same way that all tads 3 implementations do:
everything is done with unicode internally, and text is
converted to and from the local character set on input and
output.

>And anyway, Inform still seems like the language of choice for
>languages other than English.

I hope I'm not prosthyletizing too much, but I think tads 3 will
prove exceedingly flexible for building non-english libraries.
The ability to build the entire grammar declaratively is hugely
beneficial, and unicode makes all of the traditional nasty
character set issues practically disappear.  I am also making an
effort to build the library in such a way that the english parts
are thoroughly isolated for easy replacement.

Of course, until I get the english version of the library done,
tads 3 isn't even very useful for building english games, let
alone games in other languages; so I'd best get back to it
rather than making all of these outrageous claims...

--Mike



-----------------------------------------------------------

Got questions?  Get answers over the phone at Keen.com.
Up to 100 minutes free!
http://www.keen.com



From sgranade@login2.phy.duke.edu Fri Aug 18 14:48:42 CEST 2000
Article: 74894 of rec.arts.int-fiction
Path: news.lth.se!newsfeed.sunet.se!news01.sunet.se!erinews.ericsson.se!erix.ericsson.se!uab.ericsson.se!newsfeed1.telenordia.se!algonet!newspeer.highwayone.net!colt.net!news.maxwell.syr.edu!logbridge.uoregon.edu!newsgate.duke.edu!usenet
From: Stephen Granade <sgranade@login2.phy.duke.edu>
Newsgroups: rec.arts.int-fiction
Subject: Re: [TADS] Debug Commands
Date: 16 Aug 2000 09:15:40 -0400
Organization: Duke University, Durham, NC, USA
Lines: 146
Message-ID: <jditt1qrcz.fsf@login2.phy.duke.edu>
References: <i1aaOSnwkoJabueAfPdV7GJP10Zr@4ax.com>
NNTP-Posting-Host: login2.phy.duke.edu
X-Newsreader: Gnus v5.7/Emacs 20.7
Xref: news.lth.se rec.arts.int-fiction:74894

Aaron Winborn <awinborn@bellsouth.net> writes:

> 1) Are there any nifty debug commands available for TADS, such as
> something to teleport into rooms or bring objects to parserGetMe()?
> 
> 2) Is there a flag defining DEBUG I can use that would flag any
> aforementioned functions? I've already written some commands under
> debug.t, and it would be useful to write something like
> 
> #ifdef DEBUG
> #include "debug.t"
> 
> you get the idea.

The flag __DEBUG is defined if you have compiled your game with
debugging information included. More on this in a moment.

> 2b) I can't find documentation about using C-style coding with TADS,
> but have found some references to this in the ng. Where is this,
> and/or how can I implement that style?

You turn on C-style coding by including the statement

#pragma C+

at the top of each of your code files. Once you do that, all you need
to is pretend you're coding in C: ":=" becomes "=", "=" becomes "==",
etc. I recommend switching to C-style coding.

The suite of debugging verbs I use (written in C style) are as
follows:

#ifdef __DEBUG

// Gimme that object!
gimmeVerb: sysverb
  verb = 'gimme'
  sdesc = "gimme"
  doAction = 'Gimme'
  validDo(actor, obj, seqno) = {
    if (obj.noGimme) return nil;
    return true;
  }
  validDoList(actor, prep, dobj) = nil
;

// Where'd I leave that object?
whereVerb: sysverb
  verb = 'where' 'whereis'
  sdesc = "where"
  doAction = 'Where'
  validDo(actor, obj, seqno) = {
    if (obj.noWhere) return nil;
    return true;
  }
  validDoList(actor, prep, dobj) = nil
;

// Teleport to an object
bamfVerb : sysverb
  verb = 'bamf'
  sdesc = "bamf"
  doAction = 'Bamf'
  validDo(actor, obj, seqno) = {
    if (obj == nil || obj.noBamf)
      return nil;
    return true;
  }
  validDoList(actor, prep, dobj) = nil;
;

modify thing
  verDoGimme(actor) = {
    if (isclass(self, floatingItem))
      "Not a good idea--<<self.thedesc>> is a floating item.  ";
  }
  doGimme(actor) = {
    self.moveInto(actor);
    "Poof! \^<<self.thedesc>> appears.";
  }
  verDoBamf(actor) = {
    if (self.location == nil and (!isclass(self, room)))
      "\^<<self.thedesc>> is nowhere--you can't go there!  ";
    else if (isclass(self, floatingItem))
      "\^<<self.thedesc>> is a floating item, so you can't bamf to it.  ";
  }
  doBamf( actor ) = {
    local loc;

    loc = self;
    while (loc and (!isclass(loc, room)))
      loc = loc.location;
    if (loc) {
      "Bamf!\b";
      parserGetMe().travelTo(loc);
    }
    else "Bamf failed.  ";
  }
  verDoWhere(actor) = {}
  doWhere(actor) = {
    "\^<<self.thedesc>> is ";
    if (self.location == nil)
      "nowhere. ";
    else
      "in <<self.location.sdesc>>.  ";
  }
;

modify fixeditem
  doGimme(actor) = {
    self.moveInto(actor.location);
    "Poof! \^<<self.thedesc>> appears.";
    if (!self.isactor) self.isListed = true;
  }
;

#endif

> 3) I'm writing a game in HTML TADS (from Windows) that uses some
> minimal HTML (such as <BLOCKQUOTE>, but I want the game to be highly
> portable. I'm not familiar with the other TADS interpreters, however,
> (though I'll soon get around to downloading some to find out myself)
> -- how good are the others at handling minor tags such as that and
> <BR> (which I find myself using, since \b inserts a blank line and
> sometimes I only want a CR)?

You can use \n instead of \b to get a CR, if you like, but the <BR>
tag works just as well. Any recent text-mode TADS interpreters will
translate <BR> and <b> just fine.

> 4) If there will be some compatibility issues, is there a system
> function that will tell me if the running interpreter will correctly
> handle my tags so I can substitute appropriately? (Maybe by
> implementing my own pseudo-tags)

Hie thee hence to
ftp://ftp.gmd.de/if-archive/programming/tads/examples/checks.t. The
checks.t module will find out if the interpreter the game is running
under supports HTML, graphics, sound, etc.

Stephen

-- 
  Stephen Granade                | Interested in adventure games?
  sgranade@phy.duke.edu          | Visit About Interactive Fiction
  Duke University, Physics Dept  |   http://interactfiction.about.com


From awinborn@bellsouth.net Fri Aug 18 14:53:38 CEST 2000
Article: 74915 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newsfeeds.belnet.be!news.belnet.be!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.atl.bellsouth.net.MISMATCH!newsfeed.atl!news4.mco.POSTED!not-for-mail
From: Aaron Winborn <awinborn@bellsouth.net>
Newsgroups: rec.arts.int-fiction
Subject: Re: [TADS] Debug Commands
Message-ID: <bgqbObush2PM9i6LAmZ7rh6lZMJZ@4ax.com>
References: <i1aaOSnwkoJabueAfPdV7GJP10Zr@4ax.com> <jditt1qrcz.fsf@login2.phy.duke.edu>
X-Newsreader: Forte Agent 1.6/32.525
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Lines: 22
Date: Wed, 16 Aug 2000 18:02:11 -0400
NNTP-Posting-Host: 208.61.132.187
X-Trace: news4.mco 966464226 208.61.132.187 (Wed, 16 Aug 2000 18:17:06 EDT)
NNTP-Posting-Date: Wed, 16 Aug 2000 18:17:06 EDT
Xref: news.lth.se rec.arts.int-fiction:74915

Thanks for the help, Stephen! All of it was useful. I've still been
going through the libraries at the ftp site, and hadn't yet x'd your
checks.t module. It turns out that was just what I was looking for
with regards to the HTML checking.

For the debug verbs, I couldn't get them to work at first. Realized it
was because of the modified scope checking from using sense.t. For
anyone else using that module, I modified Stephen Granade's three
debugging verbs in the last post (gimme, bamf, and whereis) to include
the property

	dorequires = &access_topic

which makes the scope of a verb global when using sense.t. I think
this is how Kevin Forchione intended it, anyway. Also, for those new
to programming with TADS who decide to use those verbs as an authoring
tool, I found it useful to name a few key rooms with noun = 'room1' or
noun='room2' or something (because I often have decoration objects
with the same names as the rooms, confusing the issue).

- Aaron Winborn



From obrian@ucsu.colorado.edu Tue Aug 22 11:55:17 CEST 2000
Article: 75057 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newsfeeds.belnet.be!news.belnet.be!feed2.onemain.com!feed1.onemain.com!feeder.via.net!news-hog.berkeley.edu!ucberkeley!news.colorado.edu!ucsu.colorado.edu!obrian
From: Paul O'Brian <obrian@ucsu.colorado.edu>
Newsgroups: rec.arts.int-fiction
Subject: Winning and Losing (was Re: history)
Date: Mon, 21 Aug 2000 21:58:44 -0600
Organization: University of Colorado, Boulder
Lines: 70
Message-ID: <Pine.GSO.3.96.1000821212740.7331B-100000@ucsu.colorado.edu>
References: <39A1B622.90C3F610@ix.netcom.com> <20000821215648.28812.00000056@ng-cp1.aol.com>
NNTP-Posting-Host: ucsu.colorado.edu
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Trace: peabody.colorado.edu 966916726 5399 128.138.129.83 (22 Aug 2000 03:58:46 GMT)
X-Complaints-To: abuse@colorado.edu
NNTP-Posting-Date: 22 Aug 2000 03:58:46 GMT
In-Reply-To: <20000821215648.28812.00000056@ng-cp1.aol.com>
Xref: news.lth.se rec.arts.int-fiction:75057

On 22 Aug 2000, BrenBarn wrote:

> I envision games where the various outcomes are not specifically designed
> to make the player feel like he has "won" or "lost", but rather to convey a
> meaning or message from the author.  For example (albeit a strange and
> arbitrary example), a given ending might be designed to plant in the player's
> brain the notion that Communism is evil.

This seems to me to be a much worse idea than the win/loss dichotomy. I'd
rather feel that I have two choices (winning or losing) than feel I have
one choice (to be preached at by the author by any given ending.) To put
it another way, I'd rather play a game than read a purely didactic tract.

Of course, I'm aware that some players felt LASH did the very thing I'm
decrying above. What I was shooting for (setting aside, for the moment,
the difference between what I shoot for and what I hit) in LASH, though,
was a situation where the player could make any one of several choices at
either level of the game, choices at the inner level affecting the outcome
of choices at the outer level, resulting in an array of available endings.
What ending a player reaches depends on how that player portrays the
character of the robot controller in a particular session, and those
endings are not simply wins or losses. Some of them fit better than others
into the modern conceptions of good or evil, and some of them (I hope)
differ in ways that are not so easy to assign such value judgments. 
Granted, the situation in LASH doesn't exactly lend itself to unbiased
interpretations. But I don't see it falling into either of the two
categories you describe -- it is neither a clear win/loss division nor is
it an attempt on my part to deliver a particular message with each ending.
My own feeling about the various endings in LASH is that while some of
them are clearly superior to others, each has its own pros and cons.

Interestingly, my experience with player feedback in the case of LASH was
that many players really want to know what the *right* ending is. Messages
on rgif made presumptions about the goal of the game, even going so far as
to say that LASH offers three metrics of success and that the most
"winning" ending was the one that ranked the highest on all three ladders
(even though some measures couldn't be maximized without others being
drastically reduced.) I genuinely didn't expect that response to develop,
though in retrospect I can certainly see why it did. I certainly didn't
intend it -- though I'm of the school of thought that suggests it doesn't
matter one iota what the author of a work *intends* (and indeed, that
information isn't ever purely available, even to the author), only what
experience that work produces in conjunction with a particlar reader. But
that's a discussion for anther post.

Anyway, you may find, even with your theoretical "all-didacticism" game,
that players are so conditioned to look for the winning ending, they will
construct one with whatever materials you give them, even if the notions 
of winning and losing are completely absent from your mind when you design
the game. I think this is part and parcel of IF's history as computer
games. The culture of IF, at the moment, is such that even authors
who want to create a work of interactive literature with sophisticated,
ambiguous multiple endings have little alternative but to refer to their
work as a game and its consumers as players. "Solving" and "winning" are
the dominant paradigms in many players' approaches to IF, and if your work
wants to defy those paradigms, it had better be *damn* good, much better
than a work that stays within them. 

Something's not completely worked out, or a little askew, or something, in
that last bunch of statements I made, but I don't have time at the moment
to figure it out. Any help anyone can offer would be appreciated -- I'm
sort of thinking out loud here.

-- 
Paul O'Brian   obrian@colorado.edu   http://ucsu.colorado.edu/~obrian
SPAG is starving! Show your compassion by feeding it your interactive
fiction reviews -- deadline for issue #22 is September 10, 2000.





From lpsmith@rice.edu Tue Aug 22 11:57:06 CEST 2000
Article: 75028 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newspump.monmouth.com!newspeer.monmouth.com!feeder.via.net!logbridge.uoregon.edu!news.rice.edu!newsfeed.rice.edu!rice!ural.owlnet.rice.edu!lpsmith
From: lpsmith@rice.edu (Lucian Paul Smith)
Newsgroups: rec.arts.int-fiction
Subject: Re: history
Date: 21 Aug 2000 15:52:24 GMT
Organization: Rice University, Houston TX
Lines: 52
Message-ID: <8nrj7o$nmo$1@joe.rice.edu>
References: <8njijk$32t$1@nntp9.atl.mindspring.net> <Nvkn5.164719$Gh.2843723@news20.bellglobal.com> <8nl88l$q8u$2@cnn.Princeton.EDU> <8nmpb3$k7k$2@slb7.atl.mindspring.net>
NNTP-Posting-Host: ural.owlnet.rice.edu
X-Trace: joe.rice.edu 966873144 24280 128.42.49.105 (21 Aug 2000 15:52:24 GMT)
X-Complaints-To: abuse@rice.edu
NNTP-Posting-Date: 21 Aug 2000 15:52:24 GMT
X-Newsreader: TIN [version 1.2 PL2]
Xref: news.lth.se rec.arts.int-fiction:75028

Andrew Plotkin (erkyrath@eblong.com) wrote:
: Adam J. Thornton <adam@princeton.edu> wrote:
: > 
: > Commercial text adventures essentially died with Infocom, and I'd argue
: > that Cornerstone killed Infocom.

: I doubt Infocom would have lasted much longer as a producer of text
: games. Nobody else did, and they weren't developing relational databases.

: As far as I can tell, the "culprit" -- and I use sneer quotes advisedly --
: was ongoing expansion of the computer game industry. And the expansion in
: the number of people *buying* games -- people who were not (mostly)  
: hyperliterate geeks and tech-heads, as (most) computer owners were in the
: mid-80's.

: A game that sold well to the old Infocom audience was considered a flop.
: No company wanted to make flops. End of story.

Well, that's the question, isn't it?  Would Infocom have consented to make
'flops' according to industry standards at the time?

The thing about text adventures is that they're *cheap*.  Extremely cheap,
as our little group has so amply demonstrated.  Graphical IF has been in
trouble the past few years because they're expensive to make, and the
returns aren't all that great.

This is all sheer speculation, of course, but I think it's a not
unreasonable scenario to imagine that had Infocom not tried to develop
Cornerstone, they could have continued to make text adventures cheaply and
make money off of them.  Sure, they might never had developed a
blockbuster.  They would have been catering to a niche market.  But had
they been able to keep their core audience, they could have continued to
make money.  I have three data points to back up this speculation:  The
sales figures for 'Masterpieces', the continued existence and sales of
games like 'Solitaire', and the 'Deer Hunter' phenomenon.

One problem plagued them--accessibility.  Brian Moriarty explained this to
me when I got to meet him.  You couldn't set a person down in front of an
Infocom game without prior IF experience and say, "Here, play
this."  Invariably, they'd type things like, >HELLO.  or >WHAT DO I DO
NOW? or >TRY THE DOOR. or >CHECK TO SEE IF THE DOOR IS LOCKED. or any of a
thousand thousand variations thereof.  We haven't really worked too hard
on this, choosing instead to say, "Well, natural language parsing is nigh
impossible, so here, read this tract and come back when you
understand."  I think Infocom would have (continued to) attack this
problem, which would help their market even more.

But, of course, we'll never know.

-Lucian

(sniff)


From lpsmith@rice.edu Tue Aug 22 11:59:46 CEST 2000
Article: 75041 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newsfeeds.belnet.be!news.belnet.be!newsfeed.direct.ca!look.ca!logbridge.uoregon.edu!news.rice.edu!newsfeed.rice.edu!rice!ural.owlnet.rice.edu!lpsmith
From: lpsmith@rice.edu (Lucian Paul Smith)
Newsgroups: rec.arts.int-fiction
Subject: Feedback (was Re: history)
Date: 21 Aug 2000 23:09:45 GMT
Organization: Rice University, Houston TX
Lines: 62
Message-ID: <8nscrp$g0d$1@joe.rice.edu>
References: <8nrj7o$nmo$1@joe.rice.edu> <20000821172735.19728.00000122@ng-fd1.aol.com>
NNTP-Posting-Host: ural.owlnet.rice.edu
X-Trace: joe.rice.edu 966899385 16397 128.42.49.105 (21 Aug 2000 23:09:45 GMT)
X-Complaints-To: abuse@rice.edu
NNTP-Posting-Date: 21 Aug 2000 23:09:45 GMT
X-Newsreader: TIN [version 1.2 PL2]
Xref: news.lth.se rec.arts.int-fiction:75041

BrenBarn (brenbarn@aol.comRemove) wrote:
: >One problem plagued them--accessibility.  Brian Moriarty explained this to
: >me when I got to meet him.  You couldn't set a person down in front of an
: >Infocom game without prior IF experience and say, "Here, play
: >this."  Invariably, they'd type things like, >HELLO.  or >WHAT DO I DO
: >NOW? or >TRY THE DOOR. or >CHECK TO SEE IF THE DOOR IS LOCKED. or any of a
: >thousand thousand variations thereof.
:      I think this is the main reason why we see such cruddy games coming out
: these days, with cruddy "one click fits all" interfaces that never do what you
: want or "big red button" interfaces where all you really have to do is shoot. 
: People want to be able to jump straight into a game and play it, without having
: to learn any commands.  It's the same philosophy that has led to
: "plug-and-play" sound cards that detect the wrong IRQ and render your computer
: mute.

Not to pick on you, but this is exactly the attitude I was talking
about.  Frankly, it's elitist.  Just because the opposite tack can be done
badly doesn't mean that it's not worth doing.  Plug and play interfaces
are an absolute godsend to millions of people, when they work.  And they
work a lot of the time.

There is indeed a method of solving the problem of complexity by recasting
the problem itself so it's not complex--hence one-click interfaces.  There
is a place for these, especially when designing for them in the first
place.  The sonnet and symphony--heck, the haiku and limerick--have rigid
strictures that impose limits on what an author can do within them, but
that didn't stop many people from coming up with wonderful examples of
each.

But I'm not convinced the only solution to translating user input into IF
commands is the modern parser.  We just haven't really attacked the
problem, because of the attitude we posess.  It's a shame, because we're
the ones with the technical expertise to actually do something about it.

For example--here's an idea I came up with when writing my above
post.  What would happen if you took the Inform library, and re-wrote the
debugging messages in plain English?  And what if you set up a new window
(say, in glk or some such) with a friendly interface that would contain
all this information, explaining to the user what their commands were
doing and how they were being interpreted by the computer?  Essentially,
I'm saying:  Drastically increase the *feedback* the user gets when
playing the game.  Teach them how to play by showing them what all their
commands were doing.

This comes from a drastically different context, but read
http://iisd.ca/pcdf/meadows/feedback.html and you'll see where I'm coming
from.

This isn't necessarily the only solution, either.  I remember someone's
comment that perhaps the parser watch for several errors in a row near the
beginning of the game, and cut in, saying "You seem to be new at
IF.  Here's some information you might find useful..."  With some
tweaking, this could be a great idea.  It's several years old and still
vaporware.

If a company like Infocom were working on this stuff, an idea like that
would have been siezed upon, and experimented with.  This isn't
necessarily better or worse than the current state of IF--a company
perhaps wouldn't feel as free to experiment as we have--just different, is
all.

-Lucian


From okblacke@my-deja.com Tue Aug 22 12:04:57 CEST 2000
Article: 75054 of rec.arts.int-fiction
Path: news.lth.se!feed2.news.luth.se!luth.se!newsfeeds.belnet.be!news.belnet.be!feed2.onemain.com!feed1.onemain.com!nntp-out.monmouth.com!newspeer.monmouth.com!nntp2.deja.com!nnrp1.deja.com!not-for-mail
From: okblacke@my-deja.com
Newsgroups: rec.arts.int-fiction
Subject: Re: history
Date: Tue, 22 Aug 2000 00:25:53 GMT
Organization: Deja.com - Before you buy.
Lines: 44
Message-ID: <8nsha0$p84$1@nnrp1.deja.com>
References: <8njijk$32t$1@nntp9.atl.mindspring.net> <Nvkn5.164719$Gh.2843723@news20.bellglobal.com> <8nl88l$q8u$2@cnn.Princeton.EDU> <8nmpb3$k7k$2@slb7.atl.mindspring.net> <8nrj7o$nmo$1@joe.rice.edu>
NNTP-Posting-Host: 63.195.210.114
X-Article-Creation-Date: Tue Aug 22 00:25:53 2000 GMT
X-Http-User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)
X-Http-Proxy: 1.1 x67.deja.com:80 (Squid/1.1.22) for client 63.195.210.114
X-MyDeja-Info: XMYDJUIDokblacke
Xref: news.lth.se rec.arts.int-fiction:75054

In article <8nrj7o$nmo$1@joe.rice.edu>,
  lpsmith@rice.edu (Lucian Paul Smith) wrote:
>
> This is all sheer speculation, of course, but I think it's a not
> unreasonable scenario to imagine that had Infocom not tried to develop
> Cornerstone, they could have continued to make text adventures
cheaply and
> make money off of them.  Sure, they might never had developed a
> blockbuster.  They would have been catering to a niche market.  But
had
> they been able to keep their core audience, they could have continued
to
> make money.  I have three data points to back up this speculation:
The
> sales figures for 'Masterpieces', the continued existence and sales of
> games like 'Solitaire', and the 'Deer Hunter' phenomenon.

Hmmm. I don't think so. It isn't simply a matter of "Well, it cost $Y
to make, and X number of people bought it for $Z, and as long as X
times Z is greater than Y, they could've kept going."

The sales model for software has changed pretty drastically since
the '80s. In the early '80s, anybody with a floppy and a zip-loc(TM)
bag could call themselves a game publisher and sell stuff. By the time
the name of Infocom was buried, shelf-space was an issue. The stretch
between 1990 and 1995 would've been difficult to survive, as text-only
games would've been difficult to place.

The Web might've helped. But might've hurt, also. (The "core audience"
would have included people who had their attention diverted to Web-
based time-wasting.) TADS and Inform probably would've really wreaked
havoc.

Not to say that clever marketing might not have found a way, but
Infocom's staff would have had to continue to work just as hard for an
ever-decreasing return. How long would the best and the brightest have
persisted under those conditions?

--
[ok]


Sent via Deja.com http://www.deja.com/
Before you buy.


