HDTenEightyP/NetNews huggingface dataset:
From: protonen@daimi.aau.dk (Lars J|dal)
Subject: Re: TADS: reachable list problems
Organization: DAIMI: Computer Science Department, Aarhus University, Denmark
Date: Fri, 20 Nov 92 08:58:36 GMT

amead@s.psych.uiuc.edu (Alan Mead) writes:

>I'm implementing an office; it has a chair, desk and file cabinet.  The
>desk has a drawer and I'm having trouble.

[first problem deleted, because I have no good ideas about it]

>Second problem: I have a files fixeditem located in the file cabinet,
>but (1) the cabinet ldesc lists the contents of the cabinet, even when
>closed, and (2) doesn't count the files object ("The file cabinet is
>closed.  It is empty.").

For (1): Is the cabinet implemented as an 'openable' rather than a
'container'?
For (2): This is a bug in ADV.T, introduced by TADS 1.2 as a result of
the possibility of having transparent containers. The 'ldesc' of a
'container' (which 'openable' is a child of) is


    ldesc =
    {
	if ( self.contentsVisible and itemcnt( self.contents ) <> 0 )
	{
	    "In "; self.thedesc; " %you% see%s% "; listcont( self ); ". ";
	}
	else
	{
	    "There's nothing in "; self.thedesc; ". ";
	}
    }


You see the problem? If the contents is not visible the message "There's
nothing in ..." is given. Change the 'ldesc' (of 'container' in ADV.T) to


    ldesc =
    {
	if ( self.contentsVisible )
	{
	    if ( itemcnt( self.contents ) <> 0 )
	    {
		"In "; self.thedesc; " %you% see%s% ";
		listcont( self ); ". ";
	    }
	    else
	    {
		"There's nothing in "; self.thedesc; ". ";
	    }
	}
	/* If the contents is not visible, no (extra) description
	   is given.
	 */
    }


Now the player is only told "There is nothing in ..." when the contents
can be seen (e.g. an 'openable' is open). If contents is not visible
the responsibility of giving a message is left for the child (like the
"The ... is closed." in 'openable').

This problem is probably solved in TADS 2.0 as it has been reported
to the author.

Alternatively, you can define your own 'ldesc' as in the fine example
described in another follow-up.

+--------------------------------------------------------------------------+
| Lars J|dal                  | Q: What's the difference between a quantum |
| email: protonen@daimi.aau.dk|    mechanic and an auto mechanic?          |
|                             | A: A quantum mechanic can get his car into |
| University of Aarhus        |    the garage without opening the door.    |
| Denmark                     |                    -- David Kra            |
+--------------------------------------------------------------------------+
Newsgroups: rec.games.int-fiction
From: forhan@rchland.vnet.ibm.com (Carl Forhan)
Subject: Old Adventure Games for TI-99/4A 
Date: Mon, 23 Nov 1992 22:03:29 GMT
Disclaimer: This posting represents the poster's views, not necessarily those of IBM
Organization: IBM Rochester


-- 
We bought the whole series of Adventure games several years ago for our TI-99/4A
(back when life was simple *sigh*) but as my little brothers still use it
periodically I don't think they would be willing to part with them.  I don't have
full info, but the company we purchased them from was Triton (Industries,
maybe?).  I believe they had a 1-800 phone number so you might want to do some
digging and see if you can come up with anything.  Sorry, but that's all I can
remember!


Carl Forhan
Newsgroups: rec.games.int-fiction
From: Russell L. Bryan <rbryan@Mail.trincoll.edu>
Subject: Re: TADS fragment & moaning
X-Xxmessage-Id: <A72BE6636A023165@downes1-101.dynamic.trincoll.edu>
X-Xxdate: Sun, 15 Nov 92 16:34:59 GMT
Organization: Starving Writers of America (sole member)
X-Useragent: Nuntius v1.1.1d12
Date: Sun, 15 Nov 1992 16:32:22 GMT

In article <1992Nov15.150116.23785@kth.se> Tommy Nordgren,
f85-tno@nada.kth.se writes:
>	For an example, try implementing the following commands, based on
>infocoms Enchanter.
>	Frotz cup.
>	Cast the frotz spell on the cup.
>	Enchant the cup with the frotz spell. 

Although I haven't tried the above myself, I do know of one person who
attempted to write an Enchanter-like magic interface.  He found it
exceptionally difficult.  In particular, the command "gnusto frotz"
(inscribe something into your spell book) was inaccessible because it
required a word to be referred to as both a verb and a noun, which is
not, as far as I know, acceptable to TADS, even after modifying ADV.T.

-- Russ
From: dmb@xbar.ai.mit.edu (David Baggett)
Newsgroups: rec.games.int-fiction
Subject: Re: A new idea for items in TADS
Date: 20 Nov 1992 15:38:34 GMT
Organization: MIT Artificial Intelligence Laboratory
NNTP-Posting-Host: xbar.ai.mit.edu

In article <1992Nov19.122724.4099@wkuvx1.bitnet> mollems@wkuvx1.bitnet (Molley the Mage) writes:
>Currently, under TADS, an ITEM lying on the ground like that is simply
>given the text "You see a Spamm (tm) Kee here."  This isn't the fault
>of TADS, of course, since it's not the compiler's job to write text
>for us.  However, I've been tinkering with ADV.T, and have worked out
>a way to give ITEMS a "heredesc" which is only valid until the item
>has been taken.

Great idea!  I've been thinking about this myself, because the change
you propose really would make the games more interesting.  Also,
remember that in Adventure (the original!) there were *only* heredesc's
and sdesc's.  If you dropped an item the game would put it back in its
"place;" e.g.,

>drop cage
>drop pyramid
>look

	You are in the Hall of the Mountain King.  Passages lead
	off in all directions.

	Lying off to one side is a discarded wicker cage.

	There is a platinum pyramid here, 8 inches on a side!

This lets you put exclamations after all the treasures easily.  It would
be funny to see

	There is an axe, a wicker cage, a platinum pyramid, and
	a jeweled trident here.

(Ho-hum, just some treasures.)

Perhaps collectively we could come up with a standard extension to the
item class that would do what you've described.  (Shouldn't be too
hard, but there may be some little issues we haven't though of.)

Dave Baggett
--
dmb@ai.mit.edu           MIT Artificial Intelligence Laboratory                  
ADVENTIONS: interactive fiction (text adventures) for the 90's!
dmb@ai.mit.edu *** Compu$erve: 76440,2671 *** GEnie: ADVENTIONS
Newsgroups: rec.games.int-fiction
From: Russell L. Bryan <rbryan@Mail.trincoll.edu>
Subject: Re: Where can I get a fuse in DSD?
X-Xxmessage-Id: <A730862FBC013165@downes1-101.dynamic.trincoll.edu>
X-Xxdate: Wed, 18 Nov 92 04:45:51 GMT
Organization: Starving Writers of America (sole member)
X-Useragent: Nuntius v1.1.1d12
Date: Thu, 19 Nov 1992 04:43:05 GMT

In article <1992Nov18.160655.22125@athena.mit.edu> Vladimir V Zelevinsky,
zelevin@athena.mit.edu writes:
>The second problem (maybe connected with the first one) is, how can
>I open the drawer in the desk in one of the bedrooms - or is it just
>a red herring?

Where do you usually lose keys?  Or the remote control?  Or your wallet? 
Or spare change?
From: f85-tno@nada.kth.se (Tommy Nordgren)
Newsgroups: rec.games.int-fiction
Subject: Re: TADS fragment & moaning
Date: 15 Nov 92 15:01:16 GMT
Organization: Royal Institute of Technology, Stockholm, Sweden

In article <BxMp21.2GH@news.cso.uiuc.edu>, amead@s.psych.uiuc.edu (Alan Mead) writes:
|> I disagree with David Librik about the usefullness of reading ADV.T .
|> Or maybe we just disagree on the meaning of "getting started".  IMHO,
|> the objects & etc defined in ADV.T are as important to the TADS as the
|> stdio & etc are to the C language.  I think they should be documented in
|> the manual as well or better than the (simple) built-in functions like
|> cvtstr() or askio().
|> 
|> I *do* think you should read DITCH.T as it has a lot of neat tricks (I
|> often think some features are there just to demonstrate them).  In
|> fact, if you are at the stage where you are implementing "special
|> effects" then I don't think you are "getting started" anymore.
|> 
|> Also, just because the ADV.T source is there, I woudn't advise anyone
|> to alter it except as a last resort.  You will have to edit the game to
|> make it compatible with future versions of ADV.T (even running the
|> slight risk that your changes will be incompatible with some future
|> expansion of ADV.T).  Remember that means you have to edit *each* game
|> you want to upgrade (and the typical procedure is to either upgrade
|> sources or throw them away (ie, delcare that you will never alter that
|> game) and *not* to keep multiple versions of TADS sitting around).
|> 
|> Further, I think you can do most things by defining new classes in your own
|> source file.  For example, one feature I like is the EXITS command that
|> will list all available exits.  I implemented it entirely in my source
|> file as follows (this is from memory):
	(some code deleted)

	It is absolotely necessary to modify ADV.T, or creating an alternative
object library from scratch, at least for some games. At least you must provide
reasoneable verification and action routines in the root level object, if you
want complex sentences to be handled reasonably by the parser. 
	For an example, try implementing the following commands, based on
infocoms Enchanter.
	Frotz cup.
	Cast the frotz spell on the cup.
	Enchant the cup with the frotz spell. 

	There will probably only be necesseray to add a few new lines in your 
file to make it compatible with later versions.

	Tommy Nordgren, Royal Institute of Technology.
From: c60c-2gf@web-2f.berkeley.edu
Newsgroups: rec.games.int-fiction
Subject: A few general questions
Date: 19 Nov 92 21:55:49 GMT
Organization: University of California, Berkeley


Some of these questions might be answered in a FAQ, so...

First of all, is there a FAQ and where might if find it?

I have heard about zmachine a little bit and was wondering where I could
find the latest version.  Also, are any of the infocom data files released
publically? (okay, wishful thinking :-) )

My friend has an infocom game for his commodore AND has a modem, but
unfortunately he doesn't have a term program.  I would like to try out
zmachine with his game, but I know of no one else who has a commodore
with a terminal program.  If anyone out there has one, maybe we could
work something out (e.g. I send you a disk etc.) so I could get a copy of
it.  Thanks.

Lastly, what sort of public interactive games are floating on the net?  Is
TADS (I read a few posts) a new project?  I have a copy of Dungeon (pre-Zork
if I understand correctly) and I just got it compiled and running.

It's been quite a long time since I sat down with a good infocom game, and
I would really be interested in discovering/rediscovering some!

-David Simpson
Newsgroups: rec.games.int-fiction
From: blum@medici.ils.nwu.edu (Dan Blum)
Subject: Re: Infocom Books
Reply-To: blum@ils.nwu.edu
Organization: The Institute for the Learning Sciences
X-Newsreader: TIN [version 1.1 PL6]
Date: Tue, 17 Nov 1992 07:07:51 GMT

They must have released Zork I well before 1983 - I seem to remember
buying Enchanter around that time.  I've never read any of the
quest-style books, but I'd like to note that some years later Infocom
licensed actual fiction based on their games.  The only one I read was
_Planetfall_, by Arthur Byron Cover, and I didn't think it was
particularly funny - it really strained for effect.  The game was much
funnier, IMHO.  There was a _Stationfall_ book, too (I think), some
_Zork_ books, and possibly a few others.


--
_____________________________________________________________________
Dan Blum           Institute for the Learning Sciences   Room 327
blum@ils.nwu.edu   1890 Maple Ave., Evanston, IL 60201   708-467-2306

 He thought he saw an Argument
 that proved he was the Pope;
 he looked again and found it was
 a Bar of Mottled Soap.
"A fact so dread,"
 he faintly said,
"extinguishes all hope!"
____________________________________________________________________
Xref: sparky rec.games.int-fiction:897 rec.arts.int-fiction:898
From: dmb@case.ai.mit.edu (David Baggett)
Newsgroups: rec.games.int-fiction,rec.arts.int-fiction
Subject: Re: TADS efficeincy (eg Abe)
Date: 17 Nov 1992 22:26:16 GMT
Organization: MIT Artificial Intelligence Laboratory
NNTP-Posting-Host: case.ai.mit.edu

In article <BxuAGw.ILt@news.cso.uiuc.edu> amead@s.psych.uiuc.edu (Alan Mead) writes:
>I was just looking at Dave Baggett's code for the actor Robert Abernathy
>and I it started me thinking.  Does anyone know how efficient the various
>TADS structures are?  For instance, in Abe's code there is a long section
>that moves him around according to 'loc' like this:
>
>if ( self.loc = 1 ) 
>  self.moveInto( room1 );
>if ( self.loc = 2 ) 
>  self.moveInto( room2 );
>...
>
>And not to criticize and while I haven't run into Abe, I thought
>that must take quite a few cycles to evaluate.  I would use an 'else'
>before each of the second and subsequent 'if's .

I was wondering if anyone would notice that.  :-)  The reason there
aren't any else's is that in TADS 1.0 the limit on the number of
"elses" you could have was set too low to handle this code.  There was
a limit on the number of branches in a single construct.  That's been
upped a lot (or perhaps been gotten rid of entirely.)

I didn't notice any slowdown on the 8Mhz Atari I was developing the
code on.  (Needless to say, it runs quite quickly on the 486-33 I
develop TADS games on now.)

>And BTW, has anyone written code so grungy that the game ran noticably
>slowly?

Mike says that complex preinit functions (e.g., ones that cycle through
all the objects in the game) can slowdown compilation considerably
under 2.0, and our experience with Unnkulia Zero and Legend bears this
out.  This shouldn't affect 1.X compiles, though, because the 1.X
compiler doesn't do any swapping.

>  places := [ room1 room2 room3 room4 ... room28 ];
>
>  if ( ( self.loc < 1 ) or ( self.loc > length( places ) ) ) then
>    self.loc := 1;
>
>  self.moveInto( places[self.loc] );

This is a much cleaner way to do it.  There's no reason I did it the
way I did (as opposed to using a list like you do) other than
inexperience with the language, and perhaps just hurrying to get the
stuff coded without giving much thought to how much typing it would
eventually ential.

Dave Baggett
--
dmb@ai.mit.edu           MIT Artificial Intelligence Laboratory                  
ADVENTIONS: interactive fiction (text adventures) for the 90's!
dmb@ai.mit.edu *** Compu$erve: 76440,2671 *** GEnie: ADVENTIONS
Newsgroups: rec.games.int-fiction
From: boebert@sctc.com (Earl Boebert)
Subject: The Prisoner (Apple ][)
Organization: SCTC
Date: Wed, 18 Nov 1992 23:08:25 GMT

Did anybody ever port either the lo-res or high-res versions of this
to any other machines?  And does anybody out there have any info
on the author or history of this game?

Earl
Newsgroups: rec.games.int-fiction
Subject: Re: Old Apple II Interactive Fiction
From: t9114145@phillip.edu.au
Date: 24 Nov 92 08:45:10 EST
Organization: RMIT (Bundoora Campus)

In article <1epsebINNb57@aludra.usc.edu>, tehyang@aludra.usc.edu (Teh Kao Yang) writes:
> I'm wondering how many people out here remember these old Apple 2 classics(?)
> that I used to play. Of course none of them are really comparable to the
> Infocom games but I enjoyed them nonetheless. I think all these games are
> pre-King's Quest I (before 1985?). 
> 
> Sherwood Forest

Excellent game! I really liked the fluttering eyes - was it Friar Tuck that
stood there blinking at you?

> 
> I can't believe these are the only ones I can remember now... there were so
> many, but I can't remember their names. There was a really good one where you
> are sent to hell to defeat Hitler. One where you can change into different

I remember the nice picture of Adolf Eichemann, waving a long handled
cigarette holder guarding the gate to hell. Great stuff. I really wish
that I had an Apple II at the time, my only access was at the local library.

> superheros. There was the Scott Adams(?) superhero series. There was a classic
> game that was based on the "Nine Little Indians" story. Can anyone remember
> these or any others? Or do people generally consider these graphical adventure
> games as worthless? 

Not really adventures, but two other favorites were Bilestoad (big guys
fighting with axes) and Randam (a bit like robotron). No-one seems to know
these games when I mention them. Don't forget Choplifter.

> 
> -Teh Kao
-- 

Adam Eberbach    Computer Science student, RMIT.   t9114145@phillip.edu.au
               "We don' need no stinkin' signatures!"
From: toma@sail.LABS.TEK.COM (Tom Almy)
Newsgroups: rec.games.int-fiction
Subject: Re: TADS efficeincy (eg Abe)
Date: 20 Nov 92 18:02:11 GMT
Reply-To: toma@sail.labs.tek.com
Organization: Tektronix, Inc., Beaverton,  OR.

In article <librik.722242725@cory.Berkeley.EDU> librik@cory.Berkeley.EDU (David Librik) writes:

>But what IS slow
>in TADS is resolving nouns: in a game with a bunch of different doors
>scattered throughout it -- each with a full name like "north door", "jail
>cell door", etc., but all accepting "door" as a synonym -- there is a really
>perceptible one- or two-second pause when you type "examine door" -- even

Well it looks like this newsgroup is almost exclusively TADS, but I'd like
to make a comment that might apply anyway (I use ADL).

With ADL, this is also the only slow operation. I have lots of different
doors, keys, and buttons. Refering to any of these without the adjective
is really slow. In ADL, when a non-specific noun is used (like "door" in 
this case), the interpreter invokes an interpreted routine DWIM (Do What I
Mean) for each possible object (north door, jail door, cellar door...). The
default for that routine is to check if the object is either visible in the
room or is being carried. Since objects can be nested this makes for an
incredible amount of testing (is the jail door in the bag on the table?).

The only solution I could figure (which might work with TADS, if TADS 
follows the same paradigm) is to have a special object attribute, call it
"ISADOOR". If ISADOOR is TRUE for an object, the DWIM returns TRUE only if
the object's location is the same as the actor's location. This is far
more efficient since the Door cannot be contained anywhere, nor can it be
on the actor. The same thing can be done for push buttons. Now if I only
had a solution for the keys!

-- 
Tom Almy
toma@sail.labs.tek.com
Standard Disclaimers Apply
Newsgroups: rec.games.int-fiction
From: amead@s.psych.uiuc.edu (Alan Mead)
Subject: TADS efficeincy (eg Abe)
Organization: UIUC Department of Psychology
Date: Tue, 17 Nov 1992 02:48:31 GMT

I was just looking at Dave Baggett's code for the actor Robert Abernathy
and I it started me thinking.  Does anyone know how efficient the various
TADS structures are?  For instance, in Abe's code there is a long section
that moves him around according to 'loc' like this:

if ( self.loc = 1 ) 
  self.moveInto( room1 );
if ( self.loc = 2 ) 
  self.moveInto( room2 );
...

And not to criticize and while I haven't run into Abe, I thought
that must take quite a few cycles to evaluate.  I would use an 'else'
before each of the second and subsequent 'if's .  And I thought the C
'switch' structure was particularly efficient in that regard and was
wondering if TADS 2.0 will have it?

Anyway, the way *I* do the above is like below.  Does anyone know if
it is more or less efficient in terms of time or space requirements?
From a carpel tunnell POV, I think it would be more compact and easier
to modify.

And BTW, has anyone written code so grungy that the game ran noticably
slowly?  Dave has previously suggested building better actors that have
goals and can interact.  I imagine that *could* involve some fairly CPU 
intensive operations.

{ 
  local places;

  places := [ room1 room2 room3 room4 ... room28 ];

  if ( ( self.loc < 1 ) or ( self.loc > length( places ) ) ) then
    self.loc := 1;

  self.moveInto( places[self.loc] );
}

-alan mead
Organization: The Leader Desslok School of Diplomacy
Date: Mon, 23 Nov 1992 18:35:28 EST
From: Mark 'Mark' Sachs <MBS110@psuvm.psu.edu>
Newsgroups: rec.games.int-fiction
Subject: So! Now that TADS 2.0 is out...

...when will we see Unnkulia 1/2, Unnkulia Zero, and The Legend Lives? :-)

 "But Dr. Radium, was that necessary?" "Rez, _everything_ I do is necessary."
[Your blood pressure just went up.]        Mark Sachs IS: mbs110@psuvm.psu.edu
DISCLAIMER: If PSU knew I had opinions they'd probably try to charge me for it.
Newsgroups: rec.games.int-fiction
From: jjh37997@uxa.cso.uiuc.edu (James J. Herlburt)
Subject: Re: TADS ???
Organization: University of Illinois at Urbana
Date: Thu, 19 Nov 1992 00:59:58 GMT

bshields@tartarus.uwa.edu.au (Bill Shields) writes:

>Ok, I've read what I can here but where can I get a hold
>of this 'TADS 2.0'???  If some kind soul could mail me
>some info I would be most grateful.

>Thanxks in advance
>Billy Shields
>bshields@tartarus.uwa.edu.au

Could you also post how much it costs. I was told it was a twenty dollar
upgrade for TADS 1.? users but what about us who have been waiting for 2.0?


Newsgroups: rec.games.int-fiction
From: nina@Turing.ORG (Nina Karp)
Subject: Re: The Prisoner (Apple ][)
Organization: The Turing Project, Charlottesville Virginia.
Date: Thu, 19 Nov 1992 21:46:23 GMT

This was undeniabley one of the creepiest games I have ever played.  To this
day, I'm not sure if I won it or not.

In any case, I've kept the little blue book that went with it, just for reading
matter...

How did *you* solve it?

Nina.
From: trombley-sarah@yale.edu (Sarah Trombley)
Newsgroups: rec.games.int-fiction
Subject: Re: Silly Deep Space Drifter Question
Date: 22 Nov 1992 14:29:45 -0500
Organization: Yale University Science & Engineering UNIX(tm), New Haven, CT 06520-2158
Distribution: world
NNTP-Posting-Host: minerva.cis.yale.edu

In article <1eomu7INNrqh@MINERVA.CIS.YALE.EDU> trombley-sarah@yale.edu (Sarah Trombley) writes:
>
>	As the subject line indicates, I'm poking through Deep Space
>Drifter and I have an exceedingly silly question.  How does one manipulate
>the keypad on the console in the computer room?  I've tried every sort of
>combination of "touch," "push," "enter," "button," "keypad," "number,"
>etc. that I can think of, but I'm having no luck...
>
>
>-- 
>Sarah Trombley                                       trombley-sarah@yale.edu
>"I try to know what I need to know.  I make sure to know what I want to know."
>							



Never mind.  I got it.  (Although I would never 'type' on a keypad.  Bad
diction. :()
-- 
Sarah Trombley                                       trombley-sarah@yale.edu
"I try to know what I need to know.  I make sure to know what I want to know."
From: dmb@case.ai.mit.edu (David Baggett)
Newsgroups: rec.games.int-fiction
Subject: Re: TADS: reachable list problems
Date: 19 Nov 92 21:42:12 GMT
Organization: MIT Artificial Intelligence Laboratory
NNTP-Posting-Host: case.ai.mit.edu

In article <Bxy5Hz.GD0@news.cso.uiuc.edu> amead@s.psych.uiuc.edu (Alan Mead) writes:
>One problem is I cannot get the reachable list to include the contents of
>of drawer.  I can put AN item into the list, but I cannot do something like:
>
>reachable = [ desk drawer cabinet ] + cabinet.contents + drawer.contents
>
>or
>
>reachable = { [desk drawer cabinet ] + cabinet.contents + drawer.contents; }

You want to instead say

reachable = {
	return [desk drawer cabinet ] + cabinet.contents + drawer.contents;
}

It has to be code (hence you need the curly braces, at least under
1.X), and since it's code it has to explicitly return a value.

>Second problem: I have a files fixeditem located in the file cabinet, but (1)
>the cabinet ldesc lists the contents of the cabinet, even when closed, and (2)
>doesn't count the files object ("The file cabinet is closed.  It is empty.").

Hmmm.  Don't know about that one.  You'd have to look at the code in
ADV.T to see what's going on.

Dave Baggett
--
dmb@ai.mit.edu           MIT Artificial Intelligence Laboratory                  
ADVENTIONS: interactive fiction (text adventures) for the 90's!
dmb@ai.mit.edu *** Compu$erve: 76440,2671 *** GEnie: ADVENTIONS
Newsgroups: rec.games.int-fiction