Discussions about interactive fiction

Archive for May, 2011

new CliFrotz for Palm OS for testing

Hi list –

I’ve been hacking on the source code to CliFrotz (PalmOS) over the
last several weeks, and have what could probably be described as a
late alpha/early beta version for testing. If anyone is interested in
checking it out, please contact me privately.

My changes include:
– Glulx support (ulx, blorb) via Git and a highly modified CheapGlk
(currently limited to text and not particularly friendly toward
vertically split windows, but working, supporting multiple windows,
color and styles, and relatively zippy [for Palm])
– Categories
– More slots for verbs and words
– Notes
– Various stability improvements (although I may have added some new
problems back in ;) – hence the testing)

After this has been banged on for a while, I’ll clean up the source
and find some way to make it available (the original author, Fangorn,
appears to be doing other stuff these days).

Hardware requirements:
– PalmOS handheld with SD Card slot (+ card) & hi-resolution screen
– There may be other memory requirements that I don’t know about yet,
but it’s been tested and working for some time now on a Treo and a T|


posted by admin in Uncategorized and have Comments (4)

Inform 7: Trouble with Marked For Listing

When the code below is run, the dirty magazine still shows up
in Larry’s possessions. Why? I thought marked for listed and not
for listing will exclude the items so marked. Or am I misinterpreting
what the
documentation (3.27. Review of Chapter 3: Things) which is doesn’t
give much help here.

Hardware Convention is a room.

Larry  is a man in Hardware.

Larry carries a hammer, nails, a saw,  and  a dirty magazine.

the dirty magazine is not marked for listing.

instead of examining Larry,
say "Larry is a dirty old man who is carrying [list of things carried
by Larry].".


> x Larry.

Leisure Suit Larry is a dirty old man who is carrying a hammer,nails,
a saw, and a dirty magazine.

posted by admin in Uncategorized and have Comments (9)

I7: A radio

I’ve a plan for my current game to allow the player to have a radio,
which could be tuned to any of two or three stations.  I’ve created the
radio as a device, and created a value for it called ‘current station’,
which I’ve defined as a text because that seems a little more natural to
me than simply a number.
The stations are "news" ajd "weather".  
I’m not sure if it’s worth creating a separate kind of value for that,
but I’ll consider it.  
I’ve also defined a tuning action thus:
Tuning it to is an action applying to one visible thing and one topic.
Understand "tune [something] to [text]" as tuning it to.  
Report tuning it to: say "You can’t tune that to anything."

Now, this is only half the story as I need to deal with the stations.  I
thought of creating tables for each one, with messages that would show up
when the radio was set to that station.  I’d want every turn rules or
the like to print a message from the current station table, and then
blank out the row for that so it won’t repeat.  I would like the
messages to go in a specific order, and so the table approach might not
be the way to handle things after all.  I don’t really know.
What I’m looking for here is some advice on this in general terms.  This
is my first real serious I7 project, and thus I want to learn as much as
I can, and I view the group as about as good a place as any to do that.
So, any tips and the like would be appreciated.  
Yes, I know it is rather ambitious for a relative I7 newbie to tackle
something which he doesn’t fully understand, but I figure that you don’t
learn by only dealing in the things you know.
Thanks much in advance,

posted by admin in Uncategorized and have Comments (8)

(i7) verb with no noun

i already had a look at doc chapter 17.24 but it didnt help me in the
way i needed.

i have this code:

"hittites" by noz

the garage is a room. the table is in the garage. the punchbag is on
the table. the player is carrying the baby.

when i run it i get this:

You can see a table (on which is a punchbag) here.


(the baby)
Violence isn’t the answer to this one.

what is governing the fact that inform decides the "hit" (attack)
should apply to the baby and not the punchbag or the table? how do i
affect this. i.e. in this room (and this room only), i want
"hit" (attack) to default to the punchbag. in other rooms i want
"hit" (attack) to behave as it does now (ie defaulting to something
instead of saying "you must supply a noun").

posted by admin in Uncategorized and have Comments (8)

[OT] TRON game quote

I just though this was funny …

I have been playing a game called TRON 2.0 (sequel to the movie), where you
are "digitized" into a world inside a computer. At one point you stow away
on a transport, and a voice in the background makes announcements along the
way. One time she says:

"In the event of sudden archive decompression, a subnet mask will rez into
your overhead memory. If you are accompanying any subprograms, please
install your own mask before assisting them."

Very cute !

David Fisher

posted by admin in Uncategorized and have No Comments

howto create an advanced "NPC/PC" conversation with TADS3

After having been absent from IF for almoust ten years now i want to come
back and check what’s up nowadays. I have choosen TADS3 for my experiments
and very quickly stumbled over the possibility to create sophisticated conversations
between NPC and PC.

At the moment i try hard to create an NPC who knows secrets about all rooms
in my game. When the PC meets the NPC, the NPC shall start a free conversation
in a truly interactive fassion. I want to achieve that the PC can enter virtually
anything and the NPC still reacting in a convenient way. So instead of the system
telling me about what the NPC can’t understand i want the NPC itself respond to my
entry (or even ignore it and give me some hints)

TO express what i mean, i’ll give a short sample conversation:

NPC:  Hello, i am sarah. I can tell you about this game. Just ask me your question.
PC: Hello, Sarah. I am new to this game. Maybe you can tell me some interesting basics ?
(sarah doesn’t understand anything about what PC just wrote)
NPC: hmm. All i can tell you about is which rooms are available in this game and what you can find in them.
(now in order to give some hints to the PC:)
NPC: Do you want to know about different ‘items’ you can find here, or how to get to a specific ‘room’?
PC: Tell me about items
(from the fact that PC has entered "items" sarah responds:)
NPC: You can find weapons, food and i have even seen some maps lying around
PC: so for what do i need food ?
(from "need food" she concludes)
NPC: You can find all sorts of food here. You will need it in order to feed some beast lurking around here ;-)

Whenever "Sarah does not understand", she shall offer some hints about how to ask further instead of returning:
"i don’t understand the word "blahbla". How can i achieve that ? Are there easy to understand samples around ?

Furthermore when my game starts growing, sarah would get more and more knowledge. I believe i would
dump this knowledge into topics and whenever the PC writes a word which fits to a topic, sarah shall
be able to switch to that topic. Is my understanding over all correct ?

Can i create a conversation like the famous "eliza" which mimiced a psychologist several tens of years
ago in and simply reflected words back from the PC ? I have seen something for tads2, which doesn’t seem
compatible with TADS3.

Any pointers how to proceed would help me a lot.

thanks for your attention,

posted by admin in Uncategorized and have Comments (14)

Compiling glulxe for Linux ?

I was just trying to get a working, modern version lf glulxe running
and tried compiling Glulxe v0.4.1 against gtkglk-0.3 (which are the
latest versions available) but keep getting compilation errors
(missing unicode-functions etc).

Can anyone tell me how to build it? The only existing binary I found
was pretty old, and for X / 32-bit linux.

posted by admin in Uncategorized and have Comments (3)

IF Collaborators' Site

I seem to neglect my duty as the IFCollab maintainer, since it’s now a page
on the IFWiki that can be updated by anyway. But, I think it deserves
another mention after so long.

The page is here:

It’s a list of those willing to collaborate to create Interactive Fiction.
There, you can browse the current members and contact someone with similar
interests (or with talents/ideas that fit with what you want to do). You can
add yourself to the list (just double-check the formatting — every once in
a while I go in and fix the formatting on updated or new entries), or you
can email me to be added (see the page for a list of topics for your

If you are already listed and no longer wish to be, please let me know. If
you need me to change and update your profile information, let me know (this
should be done periodically anyway, just so you don’t appear dormant).

I’m also interested in any success stories that have come from the IFCollab
list. Have any of you joined forces by using the list? Any collaborative
efforts come out of it?


—- Mike.

posted by admin in Uncategorized and have No Comments

Westfield Chandler Publishing Status

Calling Chicago Dave:

Time for an update on WCP.

posted by admin in Uncategorized and have Comments (3)

TADS 3: setKnowsAbout

I’ve stumbled on a situation where the T3 library seems to be a little foo
faithful about mimesis. This is partly a suggestion for a library change,
but it’s partly a technical question too, which is why I’m posting it here.

Let’s start with an example. The butler (NPC) has some essential
information. This is the desired conversation:

>ask butler about giant bat

"Ah, the giant bat," the butler murmurs. "He’s harmless, really — he’s a
fruit bat. Just smear a bit of jam on a piece of bread and give it to him.
Then you’ll have no trouble slipping past him into the vault of sparkling

So far, so good. But let’s say the player has started a new game, bumps into
the butler, and suddenly has a brainstorm to ask the same question. Unless
I’ve slipped a cog somewhere, this will be the result:

>ask butler about giant bat

The butler yawns politely and continues polishing the silver.

The DefaultAskTellTopic will print, because the player hasn’t yet
encountered the bat. (In fact, the player may have encountered the bat,
because knowsAbout only gets set when she _examines_ the bat … but that’s
a detail we can ignore for now.) What’s wrong with this is that it gives the
player a completely misleading response. What one wants is something more
along these lines:

>ask butler about giant bat

If there’s a giant bat in this story, you haven’t yet encountered it.

I’m pretty sure I can figure out how to code this up modifying handleTopic.
But I’d suggest that it would make a very desirable change for the library.

There’s one thing I don’t know how to code, however. What if the object in
question is plural? This is the output I want:

>ask butler about giant bats

If there are any giant bats in this story, you haven’t yet encountered them.

I’m pretty sure I haven’t seen a text substitution macro that will replace
"a" with "any". So my question is, how would I use the text substitution
macros to do that? Also, is this modification necessary, or am I smoking
crack again?

A more philosophical question is, shouldn’t the library give you this same
response if you type nonsense?

>ask butler about gniat atb

If there’s a gniat atb in this story, you haven’t yet encountered it.

That would be consistent, and would at least avoid giving inappropriate
clues, but I would have no idea how to set it up, nor am I sure that it’s
really necessary….

–Jim Aikin

posted by admin in Uncategorized and have Comments (10)