Doing away with SAVE and RESTORE

8 views
Skip to first unread message

Marnix Klooster

unread,
May 9, 1995, 3:00:00 AM5/9/95
to

Hi all,

Personally, I don't like to use the SAVE and RESTORE commands that are
standard in IF. The biggest problem, I find, is that one SAVEs a
_snapshot_ of the game. Upon RESTORE, there is no way of knowing the
history of this particular snapshot. When the plot is nonlinear, I
often have a number of saved games in which I have done different
things in different orders. And when I try again three weeks later, I
have no idea which saved game to use.

Of course, the problem could be my way of playing/reading IF, or in my
way of naming saved games. [BTW, how do _you_ deal with saved games?]
But apart from that, isn't it possible to do without SAVE and RESTORE?

For the sake of argument, let's take the view that an IF story is a
tree of (short) text fragments, where the branches represent player
commands. To 'read' such a story, first read the root node, then
select a subtree corresponding to some command (e.g. 'GO WEST'), and
'read' the subtree (which is a story). Reading ends when we arrive at
a leaf, i.e. a node that has no subtrees. (Note: This tree doesn't
have to exist explicitly, of course. It is more likely that it is
computed as the reader advances.)

Reading of an IF story is often done using a computer program, an IF
reader. All IF readers I know of (including the TADS and Infocom
interpreters) store the history of a 'reading session' in essentially
the same way. They keep a sequence of all stories that have been
seen, from the initial story to the current story (or maybe the last N
stories seen). When one performs a SAVE, all that is saved is this
sequence. The UNDO command (when provided) removes the last story
from the sequence, returning us to the previous story.

To explore a number of different stories using current IF readers, it
is necessary to make judicious use of the SAVE/RESTORE and UNDO
commands. To 'replay' a story, or parts of it, requires the juggling
of saved games and/or tediously re-doing things you did before. Thus,
I claim, replayability is seriously hampered by current IF readers.

But there's an alternative: Use an IF reader that keeps the _entire_
tree of stories seen. With such a reader, you could easily switch
between alternate continuations and try out different strategies.
When the user stops reading, the tree of all stories seen is
saved, and this is restored when the user starts reading again.

To make a long story short: We have good nonlinear IF, now we need
good nonlinear IF readers to be able to explore the 'story space'.

Any comments?

A Dieu,

<><
Marnix
--
Marnix Klooster
kloo...@dutiba.twi.tudelft.nl

ken...@kennedy.bridgewater.ne.hcc.com

unread,
May 9, 1995, 3:00:00 AM5/9/95
to
In <D8BCq...@news.tudelft.nl>, kloo...@dutiag.twi.tudelft.nl (Marnix Klooster) writes:
>Reading of an IF story is often done using a computer program, an IF
>reader. All IF readers I know of (including the TADS and Infocom
>interpreters) store the history of a 'reading session' in essentially
>the same way. They keep a sequence of all stories that have been
>seen, from the initial story to the current story (or maybe the last N
>stories seen). When one performs a SAVE, all that is saved is this
>sequence. The UNDO command (when provided) removes the last story
>from the sequence, returning us to the previous story.

This is simply not true of Infocom, in which only the current state is
preserved. UNDO is implemented by the crude technique of doing a SAVE into
RAM after every move.

The situation within more complex games is also more involved than you think.
In most, including authentic versions of the original Adventure, other people,
robots, and various things like that contain their own logical programming,
sometimes with as much freedom to act as the player. (In Galactic
Civilizations -- I realize it is not really IF, but it's an interesting case
-- your opponents are real artificial intelligences who are playing by the
same rules you are.)

This does not mean that a persistent-tree technique such as you wish is
impossible. With modern OO techniques, it can be done quite easily. However,
in order to avoid repeating actions, it is necessary to splice the tree, and
that may not be feasible in the general case. I'm not really sure that the
approach would, in the long run, gain anything.

Since I play Infocom games on OS/2, using my port of ZIP, I can name save
files whatever I want (up to 254 characters), and I can get a list of them at
any time. This helps.


Erik Max Francis

unread,
May 9, 1995, 3:00:00 AM5/9/95
to
ken...@kennedy.bridgewater.ne.hcc.com writes:

> In Galactic
> Civilizations -- I realize it is not really IF, but it's an interesting case
> -- your opponents are real artificial intelligences who are playing by the
> same rules you are.

I've never heard of this. Could you give us some more information
about it?


Erik Max Francis, &tSftDotIotE ...!uuwest!alcyone!max m...@alcyone.darkside.com
San Jose, CA ... GIGO, Psi, Universe ... ICBM: 37 20 07 N 121 53 38 W _
H.3`S,3,P,3$S,#$Q,C`Q,3,P,3$S,#$Q,3`Q,3,P,C$Q,#(Q.#`-"C`- ftmfbs kmmfa mc2 / \
Omnia quia sunt, lumina sunt. ("All things that are, are lights.") -><- \_/
"We all may have come on different ships, but we're in the same boat now."

Gareth Rees

unread,
May 12, 1995, 3:00:00 AM5/12/95
to
Marnix Klooster <kloo...@dutiag.twi.tudelft.nl> wrote:
> We have good nonlinear IF, now we need good nonlinear IF readers to be
> able to explore the 'story space'.

Most adventure games don't have branching stories in the way you
suggest; almost all of the games that I've played are `commutative' in
the sense that many pairs of plot elements may be visited in either
order. Most adventure games ruthlessly close off plot branches as they
appear, either (i) by ending the game instantly or (ii) by presenting
the player with an obstacle that forces him or her back onto the main
path, or (iii) by silently (and often unintentionally) allowing the game
to get into a state from which it can no longer be completed.

So in most cases there isn't really any nonlinear structure to explore!
People use the `save' and `restore' commands to explore "branches"
caused by (iii) above, but I don't many people would argue that this
kind of non-linear structure is interesting (and I think most IF writers
go to some lengths to prevent it happening).

Now if there *were* interesting adventure games with multiply-branching
plots, then I might agree with you.

--
Gareth Rees

Jeff Taylor

unread,
May 14, 1995, 3:00:00 AM5/14/95
to
In article <D8BCq...@news.tudelft.nl>, kloo...@dutiag.twi.tudelft.nl (Marnix Klooster) says:
>
>
>Hi all,

>For the sake of argument, let's take the view that an IF story is a
>tree of (short) text fragments, where the branches represent player
>commands. To 'read' such a story, first read the root node, then
[snip]

>Any comments?
>
>A Dieu,
>
> <><
>Marnix
>--
>Marnix Klooster
>kloo...@dutiba.twi.tudelft.nl

IF stories are not trees, they are directed graphs (they have loops).
It is possible to reach the same state by different paths. The state
(which includes a limited number of moves to undo) is saved, not the
path. It is too much to save the path which can span days.

Jeff T
el...@wheel.dcn.davis.ca.us

ken...@kennedy.bridgewater.ne.hcc.com

unread,
May 15, 1995, 3:00:00 AM5/15/95
to
In <y04u5c...@alcyone.darkside.com>, m...@alcyone.darkside.com (Erik Max Francis) writes:
>ken...@kennedy.bridgewater.ne.hcc.com writes:
>
>> In Galactic
>> Civilizations -- I realize it is not really IF, but it's an interesting case
>> -- your opponents are real artificial intelligences who are playing by the
>> same rules you are.
>
>I've never heard of this. Could you give us some more information
>about it?

Galactic Civilizations is an SF game in which you take command of the humans
of a interstellar colony ship lost in a wormhole. You must find and colonize
a world, and then, over the ensuing centuries, expand into more, while trying
to outrace several alien cultures that are expanding into the same area. It
is chiefly a game of resource allocation, with elements of diplomacy and war.
It is only available for OS/2 -- the PC operating system for grown-ups.


Reply all
Reply to author
Forward
0 new messages