The GROW System and ZOSC (1979-1980)   3 comments

To counter the sterile and passive nature of many CAI [Computer Assisted Instruction] presentations, GROW incorporates several basic motivational techniques and allows for creative flexibility. This includes having the student participate in an active role, having ‘knowledge’ be mutable and controversial, and having evaluations be carried out by other individuals rather than by machines. With GROW, the computer need not play the role of teacher but can instead be viewed only as a tool for learning and for reference.

Silicon Gulch Gazette, Volume 5 Number 1, 1981

The GROW system isn’t in any of the typical game catalogs, and its intended use isn’t even just adventures —

— specifically, for an educational computer network known as CHAOS II (“a multi-user, multi-tasking 8080-based system developed at Clairemont High School in San Diego, California”), it was made as a node-based system for creating lessons. Here’s a sample from the Creative Computing article above:

WELCOME TO GROW
LEARN ADD
DO YOU WANT A DIFFICULT LESSON?
NO
SUPPOSE WE ADD 13 AND -12
WHAT DO WE GET?
+1
RIGHT. SUPPOSE WE ADD -13 AND 12. WHAT DO WE GET?
+1
NO
-1
RIGHT

If one were making the lesson above, you might start with the initial node of

DO YOU WANT A DIFFICULT LESSON?

and typing EXTEND and adding the keywords YES and NO. At the moment the only node that exists is the “difficult lesson” one.

The user can then type NO and find themselves at an empty node. From the article:

…if the node has never before been entered, then the user must instead provide an initial description for the node, which GROW records permanently…

In other words, the user fills the node with whatever the intended response is for NO, which in this case is

SUPPOSE WE ADD 13 AND -12

and then the user can add various numbers as keywords, like 1, -1, and 15. (I’m unclear from the documentation I have if there’s a “default” that the software goes to if someone tries a command that isn’t part of the system — saying I DON’T UNDERSTAND would be terribly awkward if the user types an actual number.)

Through this method of filling in nodes, the user can develop a lesson while being “inside” the topology of the lesson. The most similar game we’ve seen to this so far is The Public Caves, where people can add their own named rooms to an already existing geography and then add graffiti to the rooms.

While this makes for somewhat limited parser capabilities, it’s possible to imagine creating an adventure in much the same way; make a starting room description, then come up with possible actions, and if an action is tried that hasn’t been anticipated yet, have the user develop a response for what happens.

This is exactly what the GROW system tries to do. There’s BASIC source code in the article for an “Extensible Adventure” system.

There’s also ports, as noted in the blurb above, for Apple II and North Star Horizon computers. I’ve never found the North Star software anywhere on the internet, but there is an Apple II disk up on the Internet Archive. It has a demo for the general system, and includes an adventure game called ZOSC.

To be clear in what follows, the parser is entirely keyword based. That means movements and actions are focused on looking for particular words and phrases. Typing HELP gave me

NORTH, SOUTH, EAST, WEST, BACKWARDS, READ, TAKE, EXIT, UP, DOWN

and hinted that there are objects that can be taken and used, but I was unable to take an inventory.

Unfortunately, the idea of a grid breaks down quite quickly. You can go NORTH and end up near a Sears but then to get near the Sears you type SEARS.

I worked out, after some pain, that LEAVE sometimes backtracks from an area, but otherwise navigation seemed to be location-based, and not in a clear way where I knew where I was going. (And LEAVE doesn’t always work — entering the garden center area of Sears, for instance, I found the magic command was GO BACK.)

At the Sears above I was able to get by using the command PET LION.

THE LION HAS MOVED OUT OF YOUR WAY. IN FRONT OF YOU IS AN ELEVATOR, WITH BUTTONS TO GO UP AND DOWN.

Going up I was able to by a banana squisher.

YOU ARE GREETED BY A SALESPERSON. HE ASKS IF YOU ARE INTERESTED IN BUYING A BRIGHT PURPLE BANANA SQUISHER.
:BUY SQUISHER
YOU NOW HAVE A BRIGHT PURPLE BANANA SQUISHER. WHERE ARE THE BANANAS?

After, I immediately got stuck again. This time getting out involved just typing DOWN.

Going down I found some tunnels where compass directions magically started working again, and seemed to be a maze.

I’m honestly unclear if there’s any sort of goal — I wandered around a bit more and at least some of the descriptions are fun.

This might make a good “normal” game but it really needs

a.) much clearer and more consistent navigation

b.) the ability to re-display the current location, since once the screen is filled with HUH?s and I DON’T UNDERSTANDs I start to lose track of what’s going on

c.) some sort of inventory command, maybe, although I’m not sure how important inventory is really

I also found the nodes to be essentially stateless, which is why I think (c.) might be unnecessary. For example, after getting past the stuffed lion, if you go back to the same location the lion jumps down again and you have to pet it again. That’s not terrible illogical in that spot in particular, but it does indicate the relative weakness of the GROW system in general as an adventure game maker.

I did eventually run into an undescribed node:

TO YOUR RIGHT IS A LARGE BRICK BUILDING. TO YOUR LEFT IS A MAILBOX AND A WINDOWLESS CONCRETE BUILDING.
:GO LEFT
DESCRIBE CONCRETE

and the game prompted me to write a room description. I assume I could then (if I understood the commands a little better) create a link to prior rooms so I could leave, but as it was the game was in a softlock.

So I’m fine saying this was just intended as a demo and leave it at that. I do find the concept of essentially writing a game from the inside intriguing, so I wanted to cover GROW, but also,

a.) there’s a 1981 game coming up next that will pick up the node-based idea and make a real game.

and

b.) while only taking a minor part, GROW happens to form a link in a chain that will lead to one of the big milestones in adventure game history, but you’ll have to wait until 1982 to hear about that one.

Posted May 6, 2021 by Jason Dyer in Interactive Fiction

Tagged with

3 responses to “The GROW System and ZOSC (1979-1980)

Subscribe to comments with RSS.

  1. Pingback: Max’s Adventure (1981) | Renga in Blue

  2. I thought Levinsky’s Grow article and the idea of extending an adventure game while paying was an amazing idea when the article first appeared. Over the following years I created my own enhanced versions that allowed objects to be created, scoring systems and a more general parser while retaining the grow command and ability to add to the game as it’s being played.

    Though I went on to other things, I think one of the main attractions people had for multiplayer games such as lpmud and moo was again the mixing of a game that could be built up with code from within while being played. It’s nice to see an article on where it all began.

    A few years ago I created a translation of the original Grow program to bwBASIC for the Raspberry Pi at

    https://www.raspberrypi.org/forums/viewtopic.php?p=1075771#p1075771

    Thanks for pointing out ZOSC. That’s something I didn’t know about.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: