mirror of
https://github.com/historicalsource/starcross
synced 2024-06-17 07:31:03 +03:00
Final Revision
This commit is contained in:
parent
f9f770f8c7
commit
d4f87d5e34
604
actions.zil
604
actions.zil
File diff suppressed because it is too large
Load diff
|
@ -1,3 +1,7 @@
|
|||
"CLOCK for
|
||||
STARCROSS
|
||||
(c) Copyright 1981 Infocom, Inc. All Rights Reserved.
|
||||
"
|
||||
|
||||
<CONSTANT C-TABLELEN 180>
|
||||
|
||||
|
|
18
crufty.zil
18
crufty.zil
|
@ -1,17 +1,3 @@
|
|||
"CRUFTY2 for
|
||||
Zork: The Wizard of Frobozz
|
||||
The Great Underground Empire (Part 2)
|
||||
(c) Copyright 1981 Infocom, Inc. All Rights Reserved.
|
||||
"
|
||||
"(c) Copyright 1983 Infocom, Inc. All Rights Reserved."
|
||||
|
||||
|
||||
<ROUTINE THIS-IT? (OBJ TBL "AUX" SYNS)
|
||||
#DECL ((OBJ) OBJECT (TBL) TABLE (SYNS) <OR FALSE TABLE>)
|
||||
<AND <NOT <FSET? .OBJ ,INVISIBLE>>
|
||||
<OR <NOT ,P-NAM>
|
||||
<ZMEMQ ,P-NAM
|
||||
<SET SYNS <GETPT .OBJ ,P?SYNONYM>>
|
||||
<- </ <PTSIZE .SYNS> 2> 1>>>
|
||||
<OR <NOT ,P-ADJ>
|
||||
<AND <SET SYNS <GETPT .OBJ ,P?ADJECTIVE>>
|
||||
<ZMEMQB ,P-ADJ .SYNS <- <PTSIZE .SYNS> 1>>>>
|
||||
<OR <0? ,P-GWIMBIT> <FSET? .OBJ ,P-GWIMBIT>>>>
|
||||
|
|
160
dungeon.zil
160
dungeon.zil
|
@ -15,7 +15,7 @@
|
|||
(FLAGS RMUNGBIT INVISIBLE TOUCHBIT SURFACEBIT TRYTAKEBIT
|
||||
SEARCHBIT TRANSBIT WEARBIT)>
|
||||
|
||||
<OBJECT LOCAL-GLOBALS (IN GLOBAL-OBJECTS) (SYNONYM MGCKJK)>
|
||||
<OBJECT LOCAL-GLOBALS (IN GLOBAL-OBJECTS) (SYNONYM ZZMGCK)>
|
||||
;"Yes, this synonym for LOCAL-GLOBALS needs to exist... sigh"
|
||||
|
||||
<OBJECT ROOMS>
|
||||
|
@ -134,7 +134,7 @@ Constructed in 2178, Luna City Docks|
|
|||
<OBJECT ALARM
|
||||
(IN LOCAL-GLOBALS)
|
||||
(SYNONYM ALARM BELL)
|
||||
(DESC "mass-detector alarm")
|
||||
(DESC "alarm")
|
||||
(FLAGS NDESCBIT)
|
||||
(ACTION ALARM-FCN)>
|
||||
|
||||
|
@ -171,7 +171,7 @@ Constructed in 2178, Luna City Docks|
|
|||
(TEXT
|
||||
"The output shows major mass concentrations in the vicinity, each with
|
||||
a code designation and the appropriate R, Theta, and Phi to describe its
|
||||
location relative to your course.")>
|
||||
location relative to yours.")>
|
||||
|
||||
<OBJECT COURSE
|
||||
(IN GLOBAL-OBJECTS)
|
||||
|
@ -356,7 +356,7 @@ location relative to your course.")>
|
|||
|
||||
<OBJECT CONTROLS
|
||||
(IN LOCAL-GLOBALS)
|
||||
(SYNONYM CONTROL PANEL CONSOLE INSTRUMENTS)
|
||||
(SYNONYM CONTROL PANEL CONSOLE)
|
||||
(DESC "control")
|
||||
(FLAGS NDESCBIT)
|
||||
(ACTION CONTROLS-FCN)>
|
||||
|
@ -371,7 +371,7 @@ location relative to your course.")>
|
|||
|
||||
<ROOM SPACESHIP-QUARTERS
|
||||
(IN ROOMS)
|
||||
(LDESC "This cubicle is your rather spartan living quarters,
|
||||
(LDESC "This nook is your spartan living quarters,
|
||||
containing only a bunk and a bureau. The only exit is to starboard.")
|
||||
(DESC "Living Quarters")
|
||||
(EAST TO SPACESHIP-BRIDGE)
|
||||
|
@ -399,7 +399,7 @@ containing only a bunk and a bureau. The only exit is to starboard.")
|
|||
(IN SPACESHIP-STORES)
|
||||
(SYNONYM SPACES SUIT)
|
||||
(ADJECTIVE SPACE PRESSURE MY GOOD)
|
||||
(FDESC "Hanging on the rack is your space suit.")
|
||||
(FDESC "Hanging on a rack is your space suit.")
|
||||
(DESC "space suit")
|
||||
(FLAGS TAKEBIT TRYTAKEBIT)
|
||||
(SIZE 20)
|
||||
|
@ -481,11 +481,33 @@ containing only a bunk and a bureau. The only exit is to starboard.")
|
|||
<OBJECT COMPUTER
|
||||
(IN SPACESHIP-BRIDGE)
|
||||
(SYNONYM COMPUTER POWER)
|
||||
(ADJECTIVE NAVIGATIONAL)
|
||||
(ADJECTIVE NAVIGATIONAL FROBOZZCO)
|
||||
(DESC "computer")
|
||||
(FLAGS NDESCBIT VICBIT)
|
||||
(ACTION COMPUTER-FCN)>
|
||||
|
||||
<OBJECT INSTRUCTIONS
|
||||
(IN SPACESHIP-BRIDGE)
|
||||
(SYNONYM SHEET INSTRUCTIONS PAPER)
|
||||
(ADJECTIVE FADED)
|
||||
(FDESC
|
||||
"Taped to the wall is a slightly faded instruction sheet for the computer.")
|
||||
(DESC "instruction sheet")
|
||||
(FLAGS READBIT TAKEBIT)
|
||||
(TEXT
|
||||
|
||||
"|
|
||||
\"Your Frobozzco FB-69105 Computer|
|
||||
|
|
||||
For your safety, this voice-activated computer will not respond unless
|
||||
directly addressed by the operator. Prefix all commands with the word
|
||||
'computer,' as in 'Computer, Set course for Mars.' Navigational
|
||||
commands may also be given in terms of the R, theta, and phi of the
|
||||
destination, as in 'Computer, R is 100. Theta is 200. Phi is 300.'
|
||||
Following these instructions will ensure full satisfaction from your new
|
||||
Frobozzco Computer.\"|
|
||||
")>
|
||||
|
||||
<OBJECT TAPE-PLAYER
|
||||
(IN SPACESHIP-QUARTERS)
|
||||
(SYNONYM RECORDER PLAYER VCR LIBRARY)
|
||||
|
@ -514,7 +536,7 @@ containing only a bunk and a bureau. The only exit is to starboard.")
|
|||
<ROOM RED-LOCK
|
||||
(IN ROOMS)
|
||||
(DESC "Red Airlock")
|
||||
(FLAGS RLANDBIT ONBIT)
|
||||
(FLAGS RLANDBIT ONBIT SPACEBIT)
|
||||
(OUT TO RED-DOCK IF RED-OUTER IS OPEN)
|
||||
(DOWN TO RED-DOCK IF RED-OUTER IS OPEN)
|
||||
(UP TO RED-THREE IF RED-INNER IS OPEN)
|
||||
|
@ -544,10 +566,10 @@ containing only a bunk and a bureau. The only exit is to starboard.")
|
|||
(ADJECTIVE METAL SILVER)
|
||||
(DESC "metal relief")
|
||||
(LDESC
|
||||
"A round metal sculpture or relief covers part of the airlock door. You notice
|
||||
that it is made up of thousands of tiny hexagonal columns which extend various
|
||||
lengths from the surface, making a three-dimensional representation. You will
|
||||
have to examine it more closely to see the details.")
|
||||
"A round metal sculpture or relief covers part of the airlock door. It is
|
||||
made up of thousands of tiny hexagonal columns which extend various lengths
|
||||
from the surface, making a three-dimensional representation. You can examine
|
||||
it more closely to see the details.")
|
||||
(FLAGS OPENBIT CONTBIT SEARCHBIT)
|
||||
(ACTION RELIEF-FCN)>
|
||||
|
||||
|
@ -602,7 +624,7 @@ spaceship is aft of here. There is a hook by the airlock.")
|
|||
(IN ROOMS)
|
||||
(DESC "Bubbles")
|
||||
(LDESC
|
||||
"This is a series of large plastic bubbles connecting the blue airlock
|
||||
"This is a series of plastic bubbles connecting the blue airlock
|
||||
with a spherical spaceship docked aft of here. The bubbles are made of
|
||||
a thick material which is nonetheless transparent.")
|
||||
(NORTH TO BLUE-DOCK)
|
||||
|
@ -616,12 +638,11 @@ a thick material which is nonetheless transparent.")
|
|||
(IN ROOMS)
|
||||
(DESC "Spherical Ship")
|
||||
(LDESC
|
||||
"You are within a huge bubble that is somehow transparent from this
|
||||
side. The interior is crisscrossed with wire webbing, so that a
|
||||
sufficiently agile creature could move around using only the wires. Many
|
||||
objects are stuck in the wires in various out-of-reach places. The whole
|
||||
impression is of a rather untidy spiderweb. The connection to the
|
||||
artifact is at the forward end of the sphere.")
|
||||
"You are within a huge bubble, transparent from this side. The interior is
|
||||
crisscrossed with wire webbing, so that an agile creature could move around
|
||||
using only the wires. Objects are stuck in the wires in various out-of-reach
|
||||
places. The whole impression is of a rather untidy spiderweb. The connection
|
||||
to the artifact is at the forward end of the sphere.")
|
||||
(NORTH TO BUBBLE-ROOM)
|
||||
(OUT TO BUBBLE-ROOM)
|
||||
(ACTION SPHERE-SHIP-FCN)
|
||||
|
@ -634,11 +655,11 @@ artifact is at the forward end of the sphere.")
|
|||
(DESC "giant spider")
|
||||
(FLAGS VILLAIN OPENBIT CONTBIT VICBIT SEARCHBIT)
|
||||
(LDESC
|
||||
"Crouched in the center of the sphere, where all the wires converge, is a
|
||||
creature which resembles a giant spider. A closer look reveals that it is not
|
||||
"Crouched in the center of the sphere, where the wires converge, is a
|
||||
creature resembling a giant spider. A closer look reveals that it is not
|
||||
an insect, but rather a multi-legged, endoskeletal mammal. It has huge eyes
|
||||
and impressive grinding teeth. It grips the wires with many tiny fingers. As
|
||||
you watch it, it gazes back with almost hypnotic intensity.")
|
||||
and impressive grinding teeth. It grips the wires with many tiny fingers, and
|
||||
gazes at you with almost hypnotic intensity.")
|
||||
(ACTION SPIDER-FCN)>
|
||||
|
||||
<OBJECT YELLOW-KEY
|
||||
|
@ -727,11 +748,11 @@ tentacle housings have been destroyed. To starboard is the airlock dome.")
|
|||
(SYNONYM ALIEN REPTILE)
|
||||
(ADJECTIVE SCORCHED)
|
||||
(LDESC
|
||||
"Entangled in the wreckage is the scorched body of a creature which appears
|
||||
to have been a large reptile, almost a miniature allosaurus. It is clad in
|
||||
the remains of a space suit.")
|
||||
"Entangled in the wreckage is the scorched body of a creature resembling a
|
||||
large reptile, almost a miniature allosaurus, clad in the remains of a space
|
||||
suit.")
|
||||
(DESC "scorched alien")
|
||||
(FLAGS VILLAIN OPENBIT CONTBIT VICBIT SEARCHBIT)>
|
||||
(FLAGS VILLAIN OPENBIT CONTBIT SEARCHBIT)>
|
||||
|
||||
<OBJECT PINK-KEY
|
||||
(IN SCORCHED-ALIEN)
|
||||
|
@ -852,7 +873,7 @@ corridor at right angles. The plant boxes here are empty.")
|
|||
<ROOM RED-FIVE
|
||||
(IN ROOMS)
|
||||
(LDESC
|
||||
"This the end of the red hall where it T's with the aft-most ring corridor.
|
||||
"This is the end of the red hall where it T's with the aft-most ring corridor.
|
||||
The lighting is poor and the plant boxes here are empty and battered.")
|
||||
(DESC "Red Hall")
|
||||
(NORTH TO RED-FOUR)
|
||||
|
@ -899,8 +920,8 @@ port. The main corridor continues fore and aft.")
|
|||
(SYNONYM FRAGMENT PIECE)
|
||||
(ADJECTIVE SMOKED BLACK GLASS VISOR)
|
||||
(FDESC
|
||||
"A large fragment of black smoked glass from the visor of the alien chief's
|
||||
helmet lies on the floor.")
|
||||
"A large fragment of black smoked glass from the chief's
|
||||
helmet visor lies on the floor.")
|
||||
(DESC "black visor fragment")
|
||||
(FLAGS TAKEBIT TRANSBIT)
|
||||
(SIZE 2)>
|
||||
|
@ -934,7 +955,7 @@ in the light path.")
|
|||
(ADJECTIVE LASER LIGHT)
|
||||
(DESC "light beam")
|
||||
(ACTION LASER-BEAM-FCN)
|
||||
(FLAGS NDESCBIT VICBIT)>
|
||||
(FLAGS NDESCBIT VILLAIN)>
|
||||
|
||||
<OBJECT MODEL
|
||||
(IN OBSERVATORY)
|
||||
|
@ -1115,11 +1136,10 @@ starboard.")
|
|||
<ROOM VILLAGE
|
||||
(IN ROOMS)
|
||||
(LDESC
|
||||
"This section of the hall has been made into an encampment, with primitive
|
||||
huts of various sizes filling the passage. They are so close they almost form
|
||||
a single large structure with many small entrances and exits. Many aliens are
|
||||
milling about, of all sizes and colors of fur. The only way to continue down
|
||||
the corridor is through the warren.")
|
||||
"This section of the hall is filled with primitive huts of various sizes.
|
||||
They are so close they almost form a single large warren with many entrances.
|
||||
The only way to continue down the corridor is through this warren. Many aliens
|
||||
are milling about, of all sizes and colors of fur.")
|
||||
(DESC "Village Center")
|
||||
(EAST PER ENTER-WARREN)
|
||||
(WEST TO VILLAGE-NW-EDGE)
|
||||
|
@ -1135,10 +1155,10 @@ the corridor is through the warren.")
|
|||
<ROOM MAZE
|
||||
(IN ROOMS)
|
||||
(LDESC
|
||||
"This is an earth and reed burrow within the warren. There are many
|
||||
aliens here, going about their business. Some of the littler ones
|
||||
stare at you and make funny noises. There are passages all over the
|
||||
place, and a constant traffic in and out.")
|
||||
"This is an earth and reed burrow within the warren. There are many aliens
|
||||
here, going about their business. The younger ones stare at you and make
|
||||
funny noises. There are passages all over the place, and a constant traffic
|
||||
in and out.")
|
||||
(DESC "In the Warren")
|
||||
(UP TO MAZE)
|
||||
(DOWN TO MAZE)
|
||||
|
@ -1155,14 +1175,12 @@ place, and a constant traffic in and out.")
|
|||
<ROOM GREEN-THREE
|
||||
(IN ROOMS)
|
||||
(LDESC
|
||||
|
||||
"This burrow is deep within the warren and the aliens seem to avoid it.
|
||||
An exit to port leads back into the warren. The walls are covered with
|
||||
crude but vibrant paintings depicting a huge spider, a gigantic mouse,
|
||||
man-sized lizards, and in the center, in ochre pigment, a being in a
|
||||
space suit. A close look reveals that this room is the center of the
|
||||
green hall's junction with the ring corridor. In fact, a ladder leads
|
||||
down to the green airlock.")
|
||||
man-sized lizards, and in the center, a being in a space suit. You realize
|
||||
that this room is the center of the green hall's junction with the ring
|
||||
corridor. In fact, a ladder leads down to the green airlock.")
|
||||
(DESC "Center of the Warren")
|
||||
(IN TO MAZE)
|
||||
(WEST TO MAZE)
|
||||
|
@ -1215,9 +1233,9 @@ built of mud and wood which completely blocks the corridor.")
|
|||
|
||||
<OBJECT ALIENS
|
||||
(IN LOCAL-GLOBALS)
|
||||
(SYNONYM ALIENS ALIEN WEASEL HUNTER)
|
||||
(ADJECTIVE GREY)
|
||||
(DESC "weasel-like alien")
|
||||
(SYNONYM ALIENS ALIEN WEASEL)
|
||||
(ADJECTIVE GREY HUNTER TRIBESMAN)
|
||||
(DESC "alien tribesmen")
|
||||
(FLAGS VILLAIN VICBIT)
|
||||
(ACTION ALIENS-FCN)>
|
||||
|
||||
|
@ -1226,7 +1244,7 @@ built of mud and wood which completely blocks the corridor.")
|
|||
(SYNONYM PALISADE WALL)
|
||||
(ADJECTIVE MUD WOOD)
|
||||
(DESC "palisade")
|
||||
(FLAGS VICBIT CLIMBBIT)
|
||||
(FLAGS VILLAIN CLIMBBIT)
|
||||
(ACTION PALISADE-FCN)>
|
||||
|
||||
<ROOM VILLAGE-N-EDGE
|
||||
|
@ -1328,7 +1346,7 @@ area for dirt and discarded junk.")
|
|||
(SYNONYM MOUSE SWEEPER RECEPTACLE TRAY)
|
||||
(ADJECTIVE MAINTENANCE)
|
||||
(DESC "maintenance mouse")
|
||||
(FLAGS CONTBIT SURFACEBIT OPENBIT TRANSBIT SEARCHBIT)
|
||||
(FLAGS VEHBIT CONTBIT SURFACEBIT OPENBIT TRANSBIT SEARCHBIT)
|
||||
(DESCFCN MOUSE-FCN)
|
||||
(ACTION MOUSE-FCN)
|
||||
(CONTFCN MOUSE-CONT)
|
||||
|
@ -1451,7 +1469,7 @@ area for dirt and discarded junk.")
|
|||
(ADJECTIVE ENERGY)
|
||||
(DESC "beam of energy")
|
||||
(ACTION BEAM-FCN)
|
||||
(FLAGS NDESCBIT VICBIT)>
|
||||
(FLAGS NDESCBIT VILLAIN)>
|
||||
|
||||
<OBJECT BLUE-KEY
|
||||
(IN FORCE-FIELD-1)
|
||||
|
@ -1479,19 +1497,19 @@ damaged to port. The illumination dims to starboard.")
|
|||
(LDESC
|
||||
"This is the garage for Maintenance Mice. There are several stalls in
|
||||
which non-functional mice are rusting away. Other stalls are empty.
|
||||
There is a hole through which trash could be dumped, and a large bin nearby.
|
||||
There is a chute into which trash could be dumped, and a large bin nearby.
|
||||
A maintenance-mouse-sized door is in the forward wall.")
|
||||
(NORTH TO BLUE-RED-FOUR)
|
||||
(OUT TO BLUE-RED-FOUR)
|
||||
(FLAGS RLANDBIT ONBIT)
|
||||
(PSEUDO "HOLE" HOLE-PSEUDO "DOOR" DOOR-PSEUDO)>
|
||||
(PSEUDO "CHUTE" HOLE-PSEUDO "DOOR" DOOR-PSEUDO)>
|
||||
|
||||
<OBJECT TRASH-BIN
|
||||
(IN GARAGE)
|
||||
(SYNONYM BIN)
|
||||
(ADJECTIVE TRASH JUNK)
|
||||
(DESC "trash bin")
|
||||
(FLAGS RLANDBIT OPENBIT CONTBIT)
|
||||
(FLAGS RLANDBIT OPENBIT CONTBIT SEARCHBIT)
|
||||
(LDESC
|
||||
"There is a trash bin full of junk of all sorts here. Someone appears to have
|
||||
been dumping things for years (decades? centuries?) and never cleaning them
|
||||
|
@ -1516,15 +1534,13 @@ out.")
|
|||
(FLAGS RLANDBIT ONBIT)
|
||||
(LDESC
|
||||
"This was the control room of the ship which originally carried the
|
||||
now-primitive aliens to the artifact. They must have been at about the
|
||||
human level of technology, as the controls and style of the room are
|
||||
familiar. The control panel was obviously destroyed by a fire or explosion
|
||||
long ago, although the lights here still glow dimly.|
|
||||
now-primitive aliens to the artifact. The control panel was obviously
|
||||
destroyed by a fire or explosion long ago, although the lights here still
|
||||
glow dimly.|
|
||||
Outside you can see the surface of the artifact. Gazing longingly at that
|
||||
view are the empty eyesockets of a skeleton; the skeleton of one of the
|
||||
aliens. It is dressed in the shreds of a space suit and sitting in the
|
||||
control couch. Scattered around the couch are fresh offerings of fruit and
|
||||
vegetables.")
|
||||
view are the empty eyesockets of a skeleton, the skeleton of an alien weasel.
|
||||
It is dressed in the shreds of a space suit and sitting in the control couch.
|
||||
Scattered around the couch are fresh offerings of fruit and vegetables.")
|
||||
(SOUTH TO CARGO-ROOM)
|
||||
(GLOBAL COUCH WINDOW CONTROLS TOTEMS)>
|
||||
|
||||
|
@ -1634,7 +1650,7 @@ obviously underestimated their nastiness.")
|
|||
(DESC "chewed sign")
|
||||
(FLAGS NDESCBIT READBIT)
|
||||
(TEXT
|
||||
"The sign is a liquid crystal display, and even more oddly, is in English:|
|
||||
"The sign, a liquid crystal display, is oddly in English:|
|
||||
|
|
||||
\" Common Grues (Grue Vulgaris)|
|
||||
|
|
||||
|
@ -1643,7 +1659,7 @@ forgotten planet, is here exhibited for your pleasure in a typical family
|
|||
group. Note particularly the slavering fangs which reach such impressive
|
||||
size in the adults. Feeding the grues is not recommended.\"")>
|
||||
|
||||
<OBJECT GRUE ;"was GRUE"
|
||||
<OBJECT GRUE
|
||||
(IN GLOBAL-OBJECTS)
|
||||
(SYNONYM GRUE)
|
||||
(ADJECTIVE LURKING SINISTER HUNGRY SILENT)
|
||||
|
@ -1664,7 +1680,7 @@ size in the adults. Feeding the grues is not recommended.\"")>
|
|||
(SYNONYM NEST)
|
||||
(ADJECTIVE MUD)
|
||||
(DESC "nest")
|
||||
(FLAGS NDESCBIT OPENBIT CONTBIT VICBIT VILLAIN SEARCHBIT)
|
||||
(FLAGS NDESCBIT OPENBIT CONTBIT VILLAIN SEARCHBIT)
|
||||
(ACTION NEST-FCN)
|
||||
(CONTFCN NEST-CONT)
|
||||
(CAPACITY 1000)>
|
||||
|
@ -1673,7 +1689,7 @@ size in the adults. Feeding the grues is not recommended.\"")>
|
|||
(SYNONYM NEST)
|
||||
(ADJECTIVE SMASHED)
|
||||
(DESC "smashed nest")
|
||||
(FLAGS NDESCBIT OPENBIT CONTBIT VICBIT VILLAIN SEARCHBIT)
|
||||
(FLAGS NDESCBIT OPENBIT CONTBIT VILLAIN SEARCHBIT)
|
||||
(ACTION NEST-FCN)
|
||||
(CONTFCN SMASHED-NEST-CONT)
|
||||
(CAPACITY 1000)>
|
||||
|
@ -1790,7 +1806,7 @@ fully charged.")
|
|||
(IN ROOMS)
|
||||
(DESC "Weapons Deck")
|
||||
(LDESC
|
||||
"This was the armory of the artifact. A massive bulkhead melted and burned
|
||||
"This was the armory of the artifact. A massive bulkhead has been burned
|
||||
away, giving free access to the weaponry. Unfortunately, it appears that the
|
||||
vast stock of futuristic armaments has been mostly destroyed. Gigantic
|
||||
projectors are scorched and shattered, strange battle armor is reduced to
|
||||
|
@ -1830,11 +1846,11 @@ the hatch now, and the way is open.")
|
|||
(IN ROOMS)
|
||||
(DESC "Base of Tree")
|
||||
(LDESC
|
||||
"You are in a primeval forest, standing at the base of a giant tree.
|
||||
The trunk is thick, perhaps 40 meters in diameter, and the height is
|
||||
incredible. The forest is very thick, so you can't see exactly how tall
|
||||
it is, but extending all the way to the axis isn't out of the question.
|
||||
The bark is so rough that climbing would be no problem.")
|
||||
"You are in a primeval forest, near the base of a giant tree. The trunk is
|
||||
thick, perhaps 40 meters in diameter, and the height is incredible. The
|
||||
forest is dense, so you can't see exactly how tall it is, but extending all
|
||||
the way to the axis isn't out of the question. The bark is so rough that
|
||||
climbing would be no problem.")
|
||||
(UP PER UP-A-TREE-EXIT)
|
||||
(NORTH TO SCRUB-2)
|
||||
(EAST TO FOREST)
|
||||
|
|
68
emerg.zil
68
emerg.zil
|
@ -20,34 +20,32 @@ computer starts up." CR>
|
|||
<COND (<AND <IN? ,CARD ,SLOT> <NOT ,FRIED?>>
|
||||
<COND (,GOT-KEY?
|
||||
<TELL
|
||||
"The main display blinks once and then displays the word \"Ready\"." CR>)
|
||||
"The main display blinks and displays the word \"Ready\"." CR>)
|
||||
(ELSE
|
||||
<SETG GOT-KEY? T>
|
||||
<MOVE ,GOLD-KEY ,HERE>
|
||||
<FCLEAR ,ENUNCIATOR ,INVISIBLE>
|
||||
<TELL
|
||||
"The main display blinks twice, a bell rings, and out of the output
|
||||
hopper onto the floor is extruded a gold rod! A moment later, a
|
||||
previously unseen enunciator panel comes on." CR>
|
||||
"The main display blinks twice, a bell rings, and a gold rod falls from the
|
||||
output hopper onto the floor! A moment later, a previously unseen enunciator
|
||||
panel comes on." CR>
|
||||
<PERFORM ,V?EXAMINE ,ENUNCIATOR>
|
||||
<RTRUE>)>)
|
||||
(ELSE
|
||||
<TELL
|
||||
"On the main display lights blink insistently and the word \"Fault\"
|
||||
appears." CR>)>)>)
|
||||
"Lights blink on the main display and the word \"Fault\" appears." CR>)>)>)
|
||||
(<VERB? LAMP-OFF>
|
||||
<SETG SWITCH-ON? <>>
|
||||
<FSET ,ENUNCIATOR ,INVISIBLE>
|
||||
<TELL
|
||||
"The computer is off." CR>)>>
|
||||
<TELL "The computer is off." CR>)>>
|
||||
|
||||
<ROUTINE COMPUTER-ROOM-FCN (RARG)
|
||||
<COND (<==? .RARG ,M-LOOK>
|
||||
<TELL
|
||||
"This is the main computer room. The builders of this ship were obviously
|
||||
still wedded to large mainframes: this one stretches off in all directions
|
||||
and is thirty meters high. There is an overlarge switch at about eye-level
|
||||
and an access panel below it, which is ">
|
||||
still wedded to large mainframes: this one fills the room and is thirty
|
||||
meters high. There is an overlarge switch at about eye-level and an access
|
||||
panel below it, which is ">
|
||||
<COND (<FSET? ,PANEL ,OPENBIT>
|
||||
<TELL "open">)
|
||||
(ELSE <TELL "closed">)>
|
||||
|
@ -56,7 +54,7 @@ and an access panel below it, which is ">
|
|||
(ELSE <TELL "off." CR>)>
|
||||
|
||||
<COND (,FRIED? <TELL
|
||||
"There is a strong smell of burning components here." CR>)>
|
||||
"There is a strong smell of burning components." CR>)>
|
||||
<RTRUE>)>>
|
||||
|
||||
<OBJECT ENUNCIATOR
|
||||
|
@ -72,15 +70,15 @@ and an access panel below it, which is ">
|
|||
<COND (<VERB? EXAMINE>
|
||||
<COND (,SWITCH-ON?
|
||||
<TELL
|
||||
"On the left are three banks of four colored lights: red, yellow, green, and
|
||||
"The panel has three banks of four colored lights: red, yellow, green, and
|
||||
blue. The first is labelled with a symbol of the emission of rays: of the
|
||||
lights underneath, the red one is flashing and the yellow one is brightly
|
||||
lit. The second column is labelled with a stylized docking port and the third
|
||||
with an airlock. The only indications on these two banks are the yellow ones,
|
||||
the first of which is brightly lit and the other of which is flashing. On the
|
||||
right are six other lights, each bearing a stylized picture. The first four,
|
||||
all dark, represent navigation, engine, library, and defenses. A fifth,
|
||||
bearing the picture of a cage, is brightly lit. The sixth is "
|
||||
lit. The second bank is labelled with a stylized docking port and the third
|
||||
with an airlock. Of these two banks, the first yellow one is brightly lit and
|
||||
the other yellow one is flashing. The panel also contains six other lights,
|
||||
each bearing a stylized picture. The first four, all dark, represent
|
||||
navigation, engine, library, and defenses. A fifth, picturing a cage, is
|
||||
brightly lit. The sixth is "
|
||||
<GET ,AIR-FLASH ,AIR-COUNT> ". It" ,REPAIR-PANEL CR>)
|
||||
(ELSE <TELL "The panel is dark." CR>)>)>>
|
||||
|
||||
|
@ -108,10 +106,9 @@ wavy lines.">
|
|||
<ROUTINE REPAIR-ROOM-FCN (RARG)
|
||||
<COND (<==? .RARG ,M-LOOK>
|
||||
<TELL
|
||||
"This is a bright room taken up by two large pieces of machinery. On the
|
||||
leftmost one is a symbol depicting the emission of rays and beside it a
|
||||
yellow slot. The other machine" ,REPAIR-PANEL " Beside it are three diagrams;
|
||||
under each one is a
|
||||
"This room is taken up by two large pieces of machinery. The leftmost has a
|
||||
symbol depicting the emission of rays beside a yellow slot. The other
|
||||
machine" ,REPAIR-PANEL " Beside it are three diagrams; under each one is a
|
||||
red slot. The first diagram shows four single dots equally spaced around a
|
||||
six-dot cluster. The second shows two eight-dot clusters in close proximity.
|
||||
The third has three single dots equally spaced around a seven-dot cluster.
|
||||
|
@ -137,7 +134,7 @@ The only exit is up some stairs." CR>)>>
|
|||
(ELSE <WONT-FIT>)>)>>
|
||||
|
||||
<ROUTINE WONT-FIT ()
|
||||
<TELL "The " D ,PRSO " doesn't fit." CR>>
|
||||
<TELL "The " D ,PRSO " doesn't fit in the " D ,PRSI "." CR>>
|
||||
|
||||
<OBJECT RED-SLOT
|
||||
(IN REPAIR-ROOM)
|
||||
|
@ -160,7 +157,7 @@ The only exit is up some stairs." CR>)>>
|
|||
<REMOVE ,RED-KEY>
|
||||
<RIGHT-KEY>
|
||||
<TELL
|
||||
" You hear the subdued hum of some machinery coming to life." CR>
|
||||
" You hear a subdued hum of machinery coming to life." CR>
|
||||
<COND (<==? .NUM 2>
|
||||
<ENABLE <QUEUE I-FRESH-AIR 30>>
|
||||
<DISABLE <INT I-BAD-AIR>>)
|
||||
|
@ -201,11 +198,7 @@ The only exit is up some stairs." CR>)>>
|
|||
<COND (<NOT ,IN-ARTIFACT?>
|
||||
<ENABLE <QUEUE I-POISON-AIR 1>>)
|
||||
(,SUIT-ON?
|
||||
<JIGS-UP
|
||||
"Suddenly, you notice everything around you going dark, as though
|
||||
the artifact was shutting down. The lights are dimming everywhere,
|
||||
and a faint thrumming vibration stops; one you didn't even notice
|
||||
until it ceased.">)
|
||||
<JIGS-UP ,STUPID-AIRGONE-MESSAGE>)
|
||||
(T <JIGS-UP
|
||||
"You are overcome by noxious gases and slump to the floor, dead.">)>)
|
||||
(T
|
||||
|
@ -213,6 +206,11 @@ until it ceased.">)
|
|||
<DESCRIBE-AIR "The air here has become ">)>
|
||||
<QUEUE I-POISON-AIR 30>)>>
|
||||
|
||||
<GLOBAL STUPID-AIRGONE-MESSAGE
|
||||
"Suddenly, everything begins going dark, as though the artifact was
|
||||
shutting down. A thrumming vibration stops; one you didn't even notice
|
||||
until it ceased.">
|
||||
|
||||
<ROUTINE I-BAD-AIR ()
|
||||
<COND (<G? <SETG AIR-COUNT <+ ,AIR-COUNT 1>> 3>
|
||||
<SETG POISON-COUNT 4>
|
||||
|
@ -220,13 +218,9 @@ until it ceased.">)
|
|||
<ENABLE <QUEUE I-BAD-AIR 1>>)
|
||||
(<NOT ,SUIT-ON?>
|
||||
<JIGS-UP
|
||||
"You gasp for air, but there is none left, and slump to the ground, dead.">)
|
||||
"You gasp for air, but there is none left, and slump to the floor, dead.">)
|
||||
(T
|
||||
<JIGS-UP
|
||||
"Suddenly, you notice everything around you going dark, as though
|
||||
the artifact was shutting down. The lights are dimming everywhere,
|
||||
and a faint thrumming vibration stops; one you didn't even notice
|
||||
until it ceased.">)>)
|
||||
<JIGS-UP ,STUPID-AIRGONE-MESSAGE>)>)
|
||||
(T
|
||||
<COND (<AND <NOT ,SUIT-ON?> ,IN-ARTIFACT?>
|
||||
<DESCRIBE-AIR "You notice that the air has become ">)>
|
||||
|
@ -238,7 +232,7 @@ until it ceased.">)>)
|
|||
<COND (<==? ,POISON-COUNT 4>
|
||||
<COND (<==? ,AIR-COUNT 4>
|
||||
<JIGS-UP
|
||||
"You gasp for air, but there is none left, and slump to the ground, dead.">)
|
||||
"You gasp for air, but there is none left, and slump to the floor, dead.">)
|
||||
(T
|
||||
<JIGS-UP
|
||||
"You are overcome by noxious gases and slump to the floor, dead.">)>)
|
||||
|
|
1161
invisicluessc.mss
Normal file
1161
invisicluessc.mss
Normal file
File diff suppressed because it is too large
Load diff
40
macros.zil
40
macros.zil
|
@ -1,3 +1,8 @@
|
|||
"MACROS for
|
||||
STARCROSS
|
||||
(c) Copyright 1981 Infocom, Inc. All Rights Reserved.
|
||||
"
|
||||
|
||||
<SETG C-ENABLED? 0>
|
||||
<SETG C-ENABLED 1>
|
||||
<SETG C-DISABLED 0>
|
||||
|
@ -36,26 +41,49 @@
|
|||
<MAPRET
|
||||
<FORM PRINT
|
||||
<FORM GETP .O .E>>>)>)>)
|
||||
(<TYPE? .E STRING>
|
||||
(<TYPE? .E STRING ZSTRING>
|
||||
<MAPRET <FORM PRINTI .E>>)
|
||||
(<TYPE? .E FORM>
|
||||
<MAPRET <FORM PRINT .E>>)
|
||||
(ELSE <ERROR UNKNOWN-TYPE .E>)>>>>>
|
||||
|
||||
<DEFMAC VERB? ("TUPLE" ATMS "AUX" (O ()) (L ()))
|
||||
|
||||
<DEFMAC VERB? ("ARGS" ATMS)
|
||||
<MULTIFROB PRSA .ATMS>>
|
||||
|
||||
<DEFMAC PRSO? ("ARGS" ATMS)
|
||||
<MULTIFROB PRSO .ATMS>>
|
||||
|
||||
<DEFMAC PRSI? ("ARGS" ATMS)
|
||||
<MULTIFROB PRSI .ATMS>>
|
||||
|
||||
<DEFMAC ROOM? ("ARGS" ATMS)
|
||||
<MULTIFROB HERE .ATMS>>
|
||||
|
||||
<ZSTR-OFF>
|
||||
|
||||
<DEFINE MULTIFROB (X ATMS "AUX" (OO (OR)) (O .OO) (L ()) ATM)
|
||||
<REPEAT ()
|
||||
<COND (<EMPTY? .ATMS>
|
||||
<RETURN!- <COND (<LENGTH? .O 1> <NTH .O 1>)
|
||||
(ELSE <FORM OR !.O>)>>)>
|
||||
<RETURN!- <COND (<LENGTH? .OO 1> <ERROR .X>)
|
||||
(<LENGTH? .OO 2> <NTH .OO 2>)
|
||||
(ELSE <CHTYPE .OO FORM>)>>)>
|
||||
<REPEAT ()
|
||||
<COND (<EMPTY? .ATMS> <RETURN!->)>
|
||||
<SET ATM <NTH .ATMS 1>>
|
||||
<SET L
|
||||
(<FORM GVAL <PARSE <STRING "V?" <SPNAME .ATM>>>>
|
||||
(<COND (<TYPE? .ATM ATOM>
|
||||
<FORM GVAL
|
||||
<COND (<==? .X PRSA>
|
||||
<PARSE
|
||||
<STRING "V?"
|
||||
<SPNAME .ATM>>>)
|
||||
(ELSE .ATM)>>)
|
||||
(ELSE .ATM)>
|
||||
!.L)>
|
||||
<SET ATMS <REST .ATMS>>
|
||||
<COND (<==? <LENGTH .L> 3> <RETURN!->)>>
|
||||
<SET O (<FORM EQUAL? ',PRSA !.L> !.O)>
|
||||
<SET O <REST <PUTREST .O (<FORM EQUAL? <FORM GVAL .X> !.L>)>>>
|
||||
<SET L ()>>>
|
||||
|
||||
<DEFMAC RFATAL ()
|
||||
|
|
7
main.zil
7
main.zil
|
@ -25,6 +25,7 @@
|
|||
<CONSTANT M-OBJDESC 5>
|
||||
|
||||
<ROUTINE GO ()
|
||||
<PUTB ,P-LEXV 0 59>
|
||||
;"put interrupts on clock chain"
|
||||
;<QUEUE I-LAMP 200>
|
||||
<ENABLE <QUEUE I-NIGHT 128>>
|
||||
|
@ -126,8 +127,10 @@ be the break you've been waiting for.
|
|||
<COND (<==? .V ,M-FATAL> <SETG P-CONT <>>)>)
|
||||
(T
|
||||
<SETG P-CONT <>>)>
|
||||
<COND (,P-WON
|
||||
<COND (<VERB? TELL BRIEF SUPER-BRIEF VERBOSE SAVE SCORE> T)
|
||||
<COND (<NOT ,NOT-AGAIN> <RETURN .V>)
|
||||
(,P-WON
|
||||
<COND (<VERB? TELL BRIEF SUPER-BRIEF VERBOSE SAVE VERSION
|
||||
QUIT RESTART SCORE SCRIPT UNSCRIPT RESTORE> T)
|
||||
(T <SET V <CLOCKER>>)>)>>>
|
||||
|
||||
<GLOBAL L-PRSA <>>
|
||||
|
|
821
manual.rno
Normal file
821
manual.rno
Normal file
|
@ -0,0 +1,821 @@
|
|||
.fg 10
|
||||
.C;REVISED STARCROSS MANUAL
|
||||
.s 5
|
||||
.c;Version 3 (Final)
|
||||
.s
|
||||
.c;4/5/84
|
||||
.s
|
||||
.c;Comments to SEM
|
||||
|
||||
.pg
|
||||
.c;I. INTRODUCTION
|
||||
.S 2
|
||||
All it takes is one final command. Then the surge of power, the thrust,
|
||||
and thousands of miles of empty space go racing into the background.
|
||||
.s
|
||||
Rocketing through the Asteroid Belt, you still get the thrill of first
|
||||
flight, but with it comes the uneasiness of total solitude. The ship's
|
||||
computer has taken over the functions of navigation and routine
|
||||
maintenance. You watch the sophisticated mass detector as it unceasingly
|
||||
scans your vicinity for uncharted masses. To assuage the tedium of your
|
||||
long trip, you browse through the compact tape library - a compendium of
|
||||
the knowledge and culture of humanity. But the drone of the ship's
|
||||
systems gradually lulls you into a deep sleep.
|
||||
.s
|
||||
The year is 2186. Humanity has established colonies on the Moon, Mars,
|
||||
and several of the larger asteroids. Earth's sky is dotted with space
|
||||
habitats, and the spaceways always hum and zoom with activity. As
|
||||
always, there is the urgent need for energy to power this advanced
|
||||
civilization. Based on theories which began as early as the 1970's, it
|
||||
has been determined that quantum black holes can provide an
|
||||
inexhaustible source of power. These phenomena resulted from the Big
|
||||
Bang, and they are extremely rare; approximately one 5mm-diameter hole
|
||||
is found per year.
|
||||
.s
|
||||
Finding and harnessing a single black hole can make a person's fortune.
|
||||
It is a lonely business, fraught with the known and unknown hazards of the
|
||||
space frontier. You've equipped your ship, the mining vessel Starcross,
|
||||
with the best gear you could afford. You've got a good mass detector to
|
||||
spot the hole, and the right apparatus to bring it under control
|
||||
and haul it back to a containment tank at the base on Ceres. You've put
|
||||
everything into this venture, and though you've tried before, you somehow
|
||||
sense that this time will be different.
|
||||
.s
|
||||
As you sleep, you dream of the riches that would be yours if your search
|
||||
for a quantum black hole is successful. Little do you suspect that the
|
||||
alarm on your mass detector is about to jolt you out of your dream - but
|
||||
not to grapple with the long-sought black hole. Your quest has taken an
|
||||
unexpected turn, for you are destined to rendezvous with a gargantuan
|
||||
alien spaceship from the outer fringes of the galaxy.
|
||||
|
||||
.pg
|
||||
.c;II: RULES AND STRATEGIES
|
||||
.s 2
|
||||
Once you have boarded the alien craft, you will find yourself in an
|
||||
unknown environment full of dangerous creatures and diabolical puzzles.
|
||||
You had best equip yourself with a spacesuit and safety line (for
|
||||
conditions in space frequently include both weightlessness and vacuum) and
|
||||
stay out of dark areas (as unknown dangers may lurk there). You may be
|
||||
lucky enough to find, and clever enough to use, various tools and pieces
|
||||
of equipment. Labels and signs may offer clues along the way.
|
||||
.s
|
||||
As you explore the alien spaceship, it is a good idea to make a map of the
|
||||
geography. Such a map should include each of the locations you visit, the
|
||||
directions that connect it to adjoining locations, and any interesting
|
||||
objects there. (You may notice STARCROSS occasionally refer to a location
|
||||
in the game as a "room", even when your location is something other than
|
||||
a room.)
|
||||
.s
|
||||
In STARCROSS, time passes only in response to your input. You might
|
||||
imagine a giant clock that ticks once per move, and the story progresses
|
||||
only at each tick. Nothing happens in the story while you are thinking
|
||||
and planning your next move, so you can plot your moves slowly and
|
||||
carefully if you choose.
|
||||
.s
|
||||
Starcross keeps track of your score as a rough measure of your progress
|
||||
in unraveling the mysteries of the alien probe and in gaining mastery of
|
||||
the vessel itself. You will get points for acquiring certain objects,
|
||||
performing certain actions, and visiting certain locations. There is
|
||||
also a penalty for getting "killed".
|
||||
|
||||
.pg
|
||||
.c;III: COMMANDS FOR EXPLORING
|
||||
.s 2
|
||||
When you begin playing an interactive fiction game such as Starcross, you
|
||||
should first become familiar with your surroundings. Explore every location,
|
||||
reading each description carefully. Take note of interesting objects and
|
||||
all exits from the location. Don't forget to make a map.
|
||||
.s
|
||||
The best way to move from place to place is to type the direction you
|
||||
want to travel. Acceptable directions are FORE (or F), AFT, PORT (or P),
|
||||
STARBOARD (or SB), UP (or U), and DOWN (or D). ENTER and EXIT (also known
|
||||
as IN and OUT) may work in some places.
|
||||
.s
|
||||
When you enter a location for the first time, STARCROSS usually displays
|
||||
the name of the location and a description of it. STARCROSS will then
|
||||
mention any interesting objects in the location with which you might want
|
||||
to interact. When you return to a location, STARCROSS normally displays
|
||||
only the name of the location and the names of the objects in it.
|
||||
.s
|
||||
The VERBOSE command tells STARCROSS to show the full descriptions of locations
|
||||
and objects every time you see them, not just the first time. The BRIEF
|
||||
command tells the game to describe fully only newly encountered locations
|
||||
and objects. The game starts in this mode. The SUPERBRIEF command tells
|
||||
STARCROSS to show only the name of the location, even on your first visit
|
||||
there, and not even to mention which objects are present. You can still
|
||||
get full descriptions by typing LOOK. In SUPERBRIEF mode, a blank line
|
||||
will not appear between each of your moves. This mode is recommended
|
||||
only for those adventurers who already know their way around.
|
||||
|
||||
.pg
|
||||
.c;IV: CONCEPTS FOR EXPLORING
|
||||
.s 2
|
||||
The essence of interactive fiction is puzzle-solving. A locked door or a
|
||||
ferocious beast shouldn't loom as a permanent obstacle to a dauntless
|
||||
adventurer, but merely as a puzzle to be tackled. Solving the puzzles you
|
||||
encounter will frequently involve bringing a certain item with you,
|
||||
and then using it in the proper way. Some ways that objects behave may
|
||||
not be immediately obvious to you.
|
||||
.s
|
||||
Containers and Surfaces: Some objects, called containers, can hold other
|
||||
objects. Some can be opened or closed, such as a box. Others are always
|
||||
open, such as a bowl. Some containers are transparent, and the objects
|
||||
within can be seen even when the container is closed.
|
||||
.s
|
||||
Similarly, some objects have surfaces on which other objects can be
|
||||
placed, such as a table. Most containers and surfaces have a limited
|
||||
capacity, and all objects have sizes.
|
||||
.s
|
||||
Another note about containers: TAKE ALL will attempt to take only those
|
||||
objects which are on the ground in your current location. It will not
|
||||
attempt to take objects which are present but in containers or on surfaces.
|
||||
.s
|
||||
Characters: You can talk to some of the characters you meet in STARCROSS,
|
||||
or even order them around in a simple way. See the section titled "Talking
|
||||
to Starcross" for details. Characters will usually fight back when
|
||||
attacked, and may, in some cases, attack you unprovoked. However,
|
||||
communication and trade are always better than fighting. Remember that
|
||||
you are, in effect, an ambassador for the entire human race during this
|
||||
"first contact" with life from beyond our solar system.
|
||||
.s
|
||||
Vehicles: There may be objects in the story that you can board. Perhaps
|
||||
such an object is a vehicle that will transport you to regions that are
|
||||
inaccessible on foot. When you are in a vehicle, you usually can't reach
|
||||
things outside the vehicle. In addition, you'd have to stand up before
|
||||
you could walk around. Furniture, such as your bunk aboard the Starcross,
|
||||
also acts in this way.
|
||||
|
||||
.pg
|
||||
.c;V: LOADING STARCROSS
|
||||
.s 2
|
||||
Now that you know a little bit about what to expect when you venture
|
||||
into STARCROSS, it's time for you to load your diskette. To do
|
||||
so, follow the instructions on your Reference Card.
|
||||
.s
|
||||
Following the copyright notice and the release number of the game, you
|
||||
will see a description of the starting location.
|
||||
.s
|
||||
Whenever you see the prompt (>), STARCROSS is waiting for you to type in your
|
||||
instructions. When you have finished typing a command, press the RETURN
|
||||
(or ENTER) key. STARCROSS will respond to your command, and then the prompt
|
||||
(>) will reappear.
|
||||
.s
|
||||
Here are a couple of quick exercises to help you get accustomed to interacting
|
||||
with STARCROSS. First, load your game according to the instructions on your
|
||||
Reference Card. Then, try typing the following next to the prompt (>):
|
||||
GET OUT OF THE BUNK
|
||||
.s
|
||||
When you press the RETURN (or ENTER) key, STARCROSS will respond with:
|
||||
You are on your own feet again.
|
||||
The alarm on the mass detector is ringing stridently.
|
||||
.s
|
||||
Now try typing:
|
||||
TURN OFF THE ALARM
|
||||
.s
|
||||
After you press the RETURN (or ENTER) key, STARCROSS will respond:
|
||||
The alarm is on the bridge, not here.
|
||||
.s
|
||||
Note that there are often many different ways to word the same command. For
|
||||
example, to get out of the bunk, all of the following would work:
|
||||
STAND
|
||||
STAND UP
|
||||
GET OUT OF THE BUNK
|
||||
GET OFF THE BED
|
||||
|
||||
.pg
|
||||
.c;VI: TALKING TO STARCROSS
|
||||
.s 2
|
||||
When you play STARCROSS, you "talk" to it in plain English,
|
||||
typing your requests on your keyboard each time you see the prompt (>).
|
||||
When you have finished typing a command, press the RETURN (or ENTER) key
|
||||
and STARCROSS will process your request.
|
||||
.s
|
||||
STARCROSS usually acts as though your sentence begins with "I want to....",
|
||||
although you should not type those words explicitly. STARCROSS then displays
|
||||
a response that tells you whether what you want to do is possible in the
|
||||
current situation, and if it is, whether anything interesting happened
|
||||
as a result.
|
||||
.s
|
||||
All words that you type are distinguished by their first six letters,
|
||||
and all subsequent letters are ignored. Therefore, SPACESuit, SPACEShip, and
|
||||
SPACESickness would all be treated as the same word by STARCROSS.
|
||||
.s
|
||||
STARCROSS understands many different kinds of sentences. Here are some
|
||||
examples, some of which don't actually occur in STARCROSS:
|
||||
PICK UP THE SPACESUIT
|
||||
PUT ON THE SPACESUIT.
|
||||
TAKE IT OFF.
|
||||
DROP THE SPACESUIT.
|
||||
PICK UP SUIT THEN PUT IT ON.
|
||||
GO STARBOARD.
|
||||
WALK AFT.
|
||||
SB.
|
||||
GO COUNTERCLOCKWISE.
|
||||
FORE.
|
||||
DOWN.
|
||||
D.
|
||||
WALK AROUND THE AIRLOCK.
|
||||
OPEN THE DOOR.
|
||||
PUSH THE RED BUTTON.
|
||||
EXAMINE THE ALIEN STATUE.
|
||||
LOOK AT THE SCREEN.
|
||||
LOOK UNDER THE TABLE.
|
||||
LOOK INSIDE THE BROKEN CAGE.
|
||||
LOOK BEHIND THE PANEL.
|
||||
READ THE PLAQUE.
|
||||
TAKE PLAQUE.
|
||||
TAKE ALL PLAQUES EXCEPT THE TARNISHED PLAQUE.
|
||||
FIRE THE RAY GUN AT THE PLAQUE.
|
||||
DROP ALL.
|
||||
DROP ALL BUT RAY GUN.
|
||||
TAKE ALL FROM MONSTER.
|
||||
KILL THE MONSTER WITH THE RAY GUN.
|
||||
SHOOT THE RAY GUN AT THE MONSTER.
|
||||
BREAK GLASS WITH ROCK.
|
||||
.S
|
||||
You are allowed to use multiple objects with certain verbs. You must
|
||||
separate multiple objects of a verb by the word AND or by a comma. Some
|
||||
examples:
|
||||
TAKE ALL BUT THE RAY GUN AND THE TIME MACHINE.
|
||||
DROP THE AIR TANK, PLIERS, AND UNIVERSAL TOOL.
|
||||
PUT THE RADIOACTIVE INGOT AND THE FILMSTRIP IN THE JAR.
|
||||
GIVE WIRE, JAR, AND BATTER TO ROBOT.
|
||||
.S
|
||||
You can include several sentences in one input line if you separate them
|
||||
by the word THEN or by a period. You don't need to type a period at the
|
||||
end of an input line. For example, you could input all of the following at
|
||||
once, before pressing the RETURN (or ENTER) key.
|
||||
TAKE LASER. EXAMINE IT.P.SHOOT LOCK THEN OPEN DOOR.AFT
|
||||
.S
|
||||
There are only two kinds of questions that STARCROSS understands: WHAT and
|
||||
WHERE. Here are two examples that you can try in STARCROSS:
|
||||
WHERE IS THE CHIEF?
|
||||
WHAT IS A GRUE?
|
||||
.s
|
||||
You can talk to the other characters in the game, and even ask them to
|
||||
do something. (Some of them may even obey your requests.) The proper
|
||||
format for talking to a character is CHARACTER, DO THIS. Here are some
|
||||
examples:
|
||||
COMPUTER, LAND ON MARS
|
||||
COMPUTER, THETA IS 320. PHI IS 48.
|
||||
DOCTOR, WAIT HERE
|
||||
COMPUTER, SET COURSE FOR CERES THEN REPORT STATUS
|
||||
ROBOT, F.TAKE BATTERY.AFT.
|
||||
.S
|
||||
You can use quotes to answer a question or say something "out
|
||||
loud". For example:
|
||||
SAY "HELLO COMPUTER"
|
||||
ANSWER "A LASER"
|
||||
SHOUT "CLOSE THE DOOR"
|
||||
.s
|
||||
STARCROSS tries to be clever about what you really mean when you don't give
|
||||
enough information. If you say that you want to do something, but don't
|
||||
say what you want to do it to or with, STARCROSS will sometimes decide that
|
||||
there was only one possible object that you could have meant. When it
|
||||
does so, it will tell you. For example:
|
||||
.no fill
|
||||
.s
|
||||
.lm 15
|
||||
>TURN OFF
|
||||
(the force field)
|
||||
The shimmering curtain around you fades and vanishes.
|
||||
.s
|
||||
>KILL THE ALIEN
|
||||
(with the ray gun)
|
||||
The alien dodges the blast, and you end up putting a large hole
|
||||
in the wall.
|
||||
.s
|
||||
.fill
|
||||
.lm 10
|
||||
If your sentence is ambiguous, STARCROSS will ask what you really meant. You
|
||||
can answer most of these questions briefly by supplying the missing
|
||||
information, rather than re-typing the entire sentence. You only have one
|
||||
chance to supply the missing information; if you don't answer the question at
|
||||
the very next prompt, you will have to re-type the entire command. Some
|
||||
examples:
|
||||
.no fill
|
||||
.lm 15
|
||||
.s
|
||||
>TIE THE SAFETY LINE
|
||||
What do you want to tie the safety line to?
|
||||
>THE SPACESUIT
|
||||
The safety line is now tied to the spacesuit.
|
||||
.s
|
||||
>CLOSE THE PANEL
|
||||
Which panel do you mean, the green panel or the blue panel?
|
||||
>GREEN
|
||||
The green panel is now closed.
|
||||
.fill
|
||||
.lm 10
|
||||
.s
|
||||
STARCROSS uses many more words than it recognizes. For example, a
|
||||
description of a location might read "Through the viewport is a
|
||||
staggering panorama of stars and nebulae." However, if STARCROSS doesn't
|
||||
recognize the words STARS or NEBULAE in your input, you can assume that
|
||||
the stars and nebulae are not important to your completion of the game, and
|
||||
are included only to enhance your mental imagery of the location.
|
||||
STARCROSS recognizes nearly 600 words, almost every word that you
|
||||
are likely to use when conversing with STARCROSS. If you encounter a
|
||||
word that STARCROSS does not understand, you might try rephrasing or
|
||||
using some synonyms of the word. More likely, your action is not
|
||||
important in playing the game.
|
||||
.s
|
||||
Completely mystifying sentences will cause STARCROSS to complain in one way
|
||||
or another. After making the complaint, STARCROSS will ignore the rest of the
|
||||
input line. Unusual events, such as being attacked, will also cause STARCROSS
|
||||
to ignore the rest of the sentences you typed, since the event may have
|
||||
changed your situation drastically. For a complete list of these
|
||||
responses, see the section entitled "STARCROSS RESPONSES."
|
||||
|
||||
.pg
|
||||
.c;VII: TIPS FOR NOVICES
|
||||
.s 2
|
||||
It is extremely helpful to draw a map. The geography of the alien
|
||||
artifact is quite unusual, to say the least, and mapping it will make
|
||||
things much less confusing. Remember that there are 6 possible directions
|
||||
as well as ENTER (or IN) and EXIT (or OUT).
|
||||
.s
|
||||
Read everything carefully. There are clues in many of the descriptions
|
||||
of locations and objects, as well as in labels, books, signs, etc.
|
||||
.s
|
||||
Most objects in the game that you can pick up are important, as keys to
|
||||
reaching the goal of the game or as solutions to the puzzles you will
|
||||
encounter along the way.
|
||||
.s
|
||||
Unlike other "adventure games" that you may have played, there are many
|
||||
possible routes to the completion of STARCROSS. There is no "correct" order
|
||||
for solving the puzzles. Some puzzles have more than one solution,
|
||||
other puzzles don't need to be solved at all.
|
||||
.s
|
||||
It is often helpful to play STARCROSS with another person. Different people
|
||||
may find different puzzles easy, and can often complement each other.
|
||||
.s
|
||||
Don't be afraid to try something bold or strange -- you can always SAVE
|
||||
your state first if you want (see the next section). Trying the bizarre
|
||||
can be fun and will often give you a clue. Here's a nonsense example:
|
||||
.s
|
||||
.no fill
|
||||
.lm 15
|
||||
>PUT ON THE GREEN CALICO DRESS
|
||||
Donning the green dress fails to convince the munchkins
|
||||
that you are a witch.
|
||||
.fill
|
||||
.lm 10
|
||||
.s
|
||||
You have just learned that there is probably something you could wear
|
||||
that would convince the munchkins that you are a witch, and possibly even
|
||||
get them to give you their enchanted broom. Perhaps if you wore that
|
||||
blue dress you saw earlier in the game...
|
||||
.s
|
||||
Read through the sample game transcript in the next chapter to get a feel
|
||||
for how interactive fiction works.
|
||||
|
||||
.pg
|
||||
.c;VIII: SAMPLE GAME TRANSCRIPT
|
||||
.s
|
||||
The following transcript is not from STARCROSS, but does show many of the most
|
||||
common interactions that you will use while playing. It contains several
|
||||
simple puzzles and their solutions, and will give the novice player a
|
||||
good idea of how a game like STARCROSS works.
|
||||
.s
|
||||
.no fill
|
||||
.ts 14, 18, 22
|
||||
Engine Room
|
||||
This large, cylindrical area houses the controls for the fusion
|
||||
drive of the ship. The drive itself lies below the deck you're
|
||||
standing on. A hatchway, closed, leads down toward the drive.
|
||||
Open doorways lie to port and starboard, and a ladder leads up
|
||||
through an opening in the deck above.
|
||||
.s
|
||||
>PORT
|
||||
Storage
|
||||
This is a tiny space for storing tools and supplies. The food
|
||||
dispenser is set into the wall.
|
||||
There is a Frobizzmus Wrench here.
|
||||
.s
|
||||
>SB
|
||||
Engine Room
|
||||
.s
|
||||
>SB
|
||||
Cargo Hold
|
||||
This space is for storing the ship's cargo, which on this particular
|
||||
trip is a large crate containing radioactive isotopes.
|
||||
.s
|
||||
>P
|
||||
Engine Room
|
||||
From the deck above you hear Sven McGillicuddy, your navigator,
|
||||
calling down to you.
|
||||
.s
|
||||
>U
|
||||
Bridge
|
||||
This is the bridge of the Moonshine, a trading vessel commissioned
|
||||
nearly a decade ago. Through the viewport you can see the surface
|
||||
of Luna, Earth's moon, sliding by a hundred kilometers below. Beneath
|
||||
the viewport is the ship's navigation computer.
|
||||
Sven is sitting in the navigator's couch; the captain's couch is empty.
|
||||
Sven holds up a print-out from the communications port. "Message from
|
||||
Tycho Station."
|
||||
.s
|
||||
>TAKE THE PRINT-OUT. READ IT
|
||||
Taken.
|
||||
.s
|
||||
"Divert to Clavius Station. Cargo urgently needed there."
|
||||
.s
|
||||
>SVEN, SET COURSE TO CLAVIUS STATION
|
||||
"I can give you the co-ordinates, but you'll have to tell them to
|
||||
the computer yourself. You know that it's keyed only to your voice."
|
||||
.s
|
||||
>EXAMINE THE COMPUTER
|
||||
It is a typical navigational computer with standard features such as
|
||||
the ability to give it verbal commands. It was programmed by a friend
|
||||
of yours from California, who has since left the programming biz to
|
||||
buy an alfalfa farm.
|
||||
.s
|
||||
>SVEN, GIVE ME THE CO-ORDINATES
|
||||
The navigator fiddles with his instruments for a moment. "Co-ordinates
|
||||
for Clavius Station are: Longitude 15 West, Latitude 58 South."
|
||||
.s
|
||||
>COMPUTER, LONGITUDE IS 15 WEST
|
||||
Lights blink across the front of the computer. "Okay, man," says the
|
||||
computer. "I've got the longitute set. Wanna lay the latitude on me?"
|
||||
.s
|
||||
>COMPUTER, LATITUDE IS 58 SOUTH
|
||||
Lights blink across the front of the computer. "Okay, man," says the
|
||||
computer. "Course set. Great bunch of coordinates. Totally. Like,
|
||||
awaiting confirmation, you know?."
|
||||
.s
|
||||
>COMPUTER, CONFIRM
|
||||
"Okay. Better buckle up, man. Burn in, like, uh, around 30 seconds."
|
||||
.s
|
||||
>GET IN THE COUCH
|
||||
Which couch do you mean, the navigator's couch or the captain's couch?
|
||||
.s
|
||||
>CAPTAIN'S
|
||||
You are now lying in the couch.
|
||||
.s
|
||||
>FASEN HARNESS
|
||||
I don't know the word "fasen".
|
||||
.s
|
||||
>FASTEN HARNESS
|
||||
You are now belted securely into the couch.
|
||||
.s
|
||||
>WAIT
|
||||
Time passes...
|
||||
Suddenly you are pressed into the couch as the computer activates the
|
||||
ship's powerful thrusters. The burn lasts around 20 seconds, and then
|
||||
suddenly you are weightless again.
|
||||
.s
|
||||
>INVENTORY
|
||||
You are carrying:
|
||||
a print-out
|
||||
.s
|
||||
>GIVE PRINT-OUT TO SVEN
|
||||
You can't reach him from the couch.
|
||||
The computer speaks. "Hey, man...I hate to drop something like this on
|
||||
you, but it looks like the reactor has, like, it's gone out. Without the
|
||||
next burn we'll ram into Luna in, uh...Gag me! Just over 3 minutes!"
|
||||
.s
|
||||
>DOWN
|
||||
You'll have to stand up, first.
|
||||
.s
|
||||
>UNFASTEN HARNESS. STAND UP. D
|
||||
Unfastened.
|
||||
.s
|
||||
You are on your own feet again.
|
||||
.s
|
||||
Engine Room.
|
||||
A red light on the controls is blinking "Reactor Malfunction--Damaged
|
||||
Fuel Cylinder."
|
||||
.s
|
||||
>LOOK
|
||||
Engine Room
|
||||
This large, cylindrical area houses the controls for the fusion
|
||||
drive of the ship. The drive itself lies below the deck you're
|
||||
standing on. A hatchway, closed, leads down toward the drive.
|
||||
Open doorways lie to port and starboard, and a ladder leads up
|
||||
through an opening in the deck above.
|
||||
.s
|
||||
>DOWN
|
||||
The hatchway is closed.
|
||||
.s
|
||||
>OPEN IT
|
||||
It won't open by hand.
|
||||
.s
|
||||
>EXAMINE THE HATCH
|
||||
The hatchway is closed. You'll need a Frobizzmus Wrench to open it.
|
||||
.s
|
||||
>P
|
||||
Storage
|
||||
There is a Frobizzmus Wrench here.
|
||||
.s
|
||||
>TAKE
|
||||
(Frobizzmus Wrench)
|
||||
Taken.
|
||||
.s
|
||||
>SB
|
||||
Engine Room
|
||||
.s
|
||||
>OPEN THE HATCH WITH THE WRENCH
|
||||
The hatch opens. A steep gangway leads downward.
|
||||
.s
|
||||
>D
|
||||
Reactor Room
|
||||
This room houses the ship's powerful fusion drive. An access panel,
|
||||
labelled "Fuel Cylinder Housing", is closed.
|
||||
There is a spare fuel cylinder here.
|
||||
.s
|
||||
>OPEN THE PANEL
|
||||
Opening the panel reveals a damaged fuel cylinder.
|
||||
The computer's voice comes over a speaker in the ceiling. "Hate to
|
||||
bug you, man, but only a minute and a half until impact, and all
|
||||
the indicators are still red to the max."
|
||||
.s
|
||||
>TAKE DAMAGED CYLINDER. PUT SPARE CYLINDER IN PANEL
|
||||
Taken. There is now a space inside the panel for another cylinder.
|
||||
.s
|
||||
You're not holding the spare fuel cylinder.
|
||||
.s
|
||||
>TAKE SPARE CYLINDER THEN PUT IT IN THE PANEL
|
||||
Taken.
|
||||
.s
|
||||
The spare fuel cylinder is now mounted in the reactor.
|
||||
.s
|
||||
>CLOSE THE PANEL
|
||||
The panel is now closed.
|
||||
"Way to go, man! Everything looks cool, now. Final burn in 30 seconds!"
|
||||
.s
|
||||
>U.U.GET IN CAPTAIN'S COUCH.FASTEN HARNESS
|
||||
Engine Room
|
||||
.s
|
||||
Bridge
|
||||
.s
|
||||
You are now lying in the couch.
|
||||
.s
|
||||
You are now belted securely into the couch.
|
||||
The ships thrusters burn long and hard, pressing you deeply into the
|
||||
cushions of the couch. After what seems like an eternity, the great
|
||||
weight is suddenly lifted from you, leaving you lying comfortably in
|
||||
the one-sixth gravity of Luna.
|
||||
|
||||
.fill
|
||||
.pg
|
||||
.c;IX: SAVING, RESTORING, RESTARTING, AND QUITTING
|
||||
.s 2
|
||||
It will take you a good deal of time to play STARCROSS through to the end
|
||||
of the game. You will almost certainly not finish the game in a single
|
||||
session. STARCROSS allows you to continue playing at a later time without
|
||||
having to start over from the beginning, just as you can place a
|
||||
bookmark in a book you are reading. There is a command, called SAVE,
|
||||
that makes a "snapshot" of your position in the game. If you are a
|
||||
prudent player, you may want to SAVE your position before you embark
|
||||
upon (or after you complete) any particularly tricky or dangerous part
|
||||
of your journey. Having taken this snapshot, you can go back to that
|
||||
position whenever you want, even though you may have gotten lost or
|
||||
"killed" afterward.
|
||||
.s
|
||||
In order to SAVE your position, type SAVE at the prompt (>), and then
|
||||
press the RETURN (or ENTER) key. Then follow the instructions on you
|
||||
Reference Card for Saving and Restoring. ^&Note that many systems require a
|
||||
blank diskette, already initialized and formatted, for a SAVE. Using a
|
||||
disk with data on it may result in the loss of that data, depending on
|
||||
your system.\&
|
||||
.s
|
||||
When you want to continue playing from where you made a snapshot, follow
|
||||
the RESTORE procedure. You can RESTORE a snapshot at any time during play.
|
||||
To do so, type RESTORE at the prompt (>), and press the RETURN (or ENTER)
|
||||
key. Then follow the instructions on your Reference Card for Saving and
|
||||
Restoring. STARCROSS will now let you continue playing from your
|
||||
SAVEd position. You can type LOOK for a description of where you are.
|
||||
.s
|
||||
If you want to abandon your current position, but you want to continue
|
||||
playing, you can use the RESTART command. STARCROSS will tell you your
|
||||
current score and the number of moves you have taken. Then it will ask
|
||||
if you really want to start over from the beginning of the game. If you
|
||||
do, type Y and hit the RETURN (or ENTER) key.
|
||||
.s
|
||||
If you want to stop playing, type QUIT. STARCROSS will respond with your
|
||||
score and moves, and ask if you really want to leave the game. If you
|
||||
do, type Y and hit the RETURN (or ENTER) key.
|
||||
.s
|
||||
Remember, when you RESTART or QUIT, that if you ever want to return to
|
||||
your current position you must first do a SAVE.
|
||||
|
||||
.pg
|
||||
.c;X: STARCROSS COMMANDS
|
||||
.s 2
|
||||
To simplify your adventuring, there are a number of one-word commands
|
||||
that order STARCROSS to give you specific information. You can use these
|
||||
over and over as needed. Some of them may constitute a move, others will
|
||||
not. Type the command after the prompt (>) and hit the RETURN (or ENTER) key.
|
||||
.s
|
||||
AGAIN - STARCROSS will usually respond as if you had repeated your previous
|
||||
sentence. Among the cases where AGAIN will not work is the case where you
|
||||
were just talking to another character.
|
||||
.s
|
||||
BRIEF - This commands STARCROSS to describe fully only newly encountered
|
||||
locations and objects. STARCROSS will describe a location already visited by
|
||||
displaying only its name and any objects found there. This is the initial
|
||||
mode of STARCROSS.
|
||||
.s
|
||||
DIAGNOSE - STARCROSS will give you a medical report of your physical
|
||||
condition.
|
||||
.s
|
||||
INVENTORY - STARCROSS lists your current possessions. You can abbreviate
|
||||
INVENTORY to I.
|
||||
.s
|
||||
LOOK - This command will cause STARCROSS to describe your surroundings in full
|
||||
detail. You can abbreviate LOOK to L.
|
||||
.s
|
||||
QUIT - This command, which can be shortened to Q, gives you the option
|
||||
to quit playing. If you want to SAVE your position first, follow the
|
||||
instructions for doing so in the previous section.
|
||||
.s
|
||||
RESTART - This ends the game and starts it over from the beginning.
|
||||
.s
|
||||
RESTORE - This restores a game position made using the SAVE command. See the
|
||||
previous section for more details.
|
||||
.s
|
||||
SAVE - This makes a snapshot of your current game position onto your storage
|
||||
diskette. You can return to a SAVEd position in the future using the
|
||||
RESTORE command. See the previous section for details.
|
||||
.s
|
||||
SCORE - STARCROSS will show your current score and the number of moves you
|
||||
have made. SCORE will also display your rank, which is your rating as a
|
||||
STARCROSS player and is based on the number of points you have.
|
||||
.s
|
||||
SCRIPT - This command assumes that you have a printer. It commands the
|
||||
printer to begin printing a transcript of your game session. This option
|
||||
is not required for playing STARCROSS, and is only available on some systems;
|
||||
consult your Reference Card for details.
|
||||
.s
|
||||
SUPERBRIEF - This command tells STARCROSS to display only the name of a
|
||||
location you have entered, even if you have never been there before.
|
||||
When you are in SUPERBRIEF mode, STARCROSS will not mention which objects
|
||||
are present unless you type LOOK.
|
||||
.s
|
||||
UNSCRIPT - This commands your printer to stop printing.
|
||||
.s
|
||||
VERBOSE - This command tells STARCROSS to show you the full description of
|
||||
each location, and the objects in it, every time you enter it.
|
||||
.s
|
||||
VERSION - STARCROSS responds by showing you the Release number and the Serial
|
||||
number of your copy of the game. You should include this information if
|
||||
you ever report bugs in the game or problems with your disk.
|
||||
.s
|
||||
WAIT - This command causes time in the game to pass. Normally, between
|
||||
moves, no time is passing as far as STARCROSS is concerned. You could leave
|
||||
your computer, take a nap, and return to the game to find that nothing
|
||||
has changed. WAIT is used when you want to find out what will happen in
|
||||
the game if you do absolutely nothing while time passes. For example, if
|
||||
you encounter an alien being, you could WAIT and see what it will do.
|
||||
Or, if you are in a moving vehicle, you could WAIT to see where it will
|
||||
go.
|
||||
|
||||
.pg
|
||||
.c;XI: USEFUL VERBS
|
||||
.s 2
|
||||
The following list includes only some of the verbs that STARCROSS
|
||||
understands. Keep in mind that these verbs can be combined with a
|
||||
variety of prepositions. For example, LOOK can become LOOK INSIDE,
|
||||
LOOK BEHIND, LOOK UNDER, LOOK THROUGH, LOOK AT and so on.
|
||||
.s
|
||||
.ts 15, 30, 45, 60
|
||||
ATTACK FLY PICK STAND
|
||||
BOARD FOLLOW POINT STEP
|
||||
BREAK GIVE PULL SWIM
|
||||
CANCEL JUMP PUSH TAKE
|
||||
CLIMB KICK PUT TELL
|
||||
CLOSE KILL RAISE THROW
|
||||
CONFIRM KNOCK READ TIE
|
||||
DIG LAND REMOVE TOUCH
|
||||
DRINK LAUNCH SEARCH TURN
|
||||
DROP LEAVE SET UNLOCK
|
||||
EAT LOCK SHAKE UNTIE
|
||||
ENTER LOOK SHOOT WAKE
|
||||
EXAMINE LOWER SLIDE WALK
|
||||
EXIT MOVE SMELL WAVE
|
||||
FIND OPEN SMILE WEAR
|
||||
|
||||
.pg
|
||||
.c;XII: STARCROSS RESPONSES
|
||||
.s 2
|
||||
STARCROSS may occasionally have a few words for you when it wants you to
|
||||
clarify your instruction. Some of STARCROSS's responses are:
|
||||
.s
|
||||
I DON'T KNOW THE WORD "[your word]". The word you typed is not in the
|
||||
game's vocabulary. Sometimes a synonym or rephrasing will be understood.
|
||||
If not, STARCROSS probably doesn't know the idea you were trying to get
|
||||
across, and you can assume that it isn't necessary for completing the game.
|
||||
.s
|
||||
I CAN'T USE THE WORD "[your word]" HERE. STARCROSS knows the word you typed,
|
||||
but couldn't use it in that sense. Most commonly, this is because STARCROSS
|
||||
knows the word as a different part of speech. For example, if you said PRESS
|
||||
THE LOWER BUTTON, STARCROSS might recognize LOWER only as a verb, not as an
|
||||
adjective as it is used in your sentence.
|
||||
.s
|
||||
I CAN'T FIND A VERB IN THAT SENTENCE! Unless you are answering a
|
||||
question, each sentence must have a verb (or a command) in it somewhere.
|
||||
.s
|
||||
I THINK THAT SENTENCE WAS MISSING A NOUN. This usually
|
||||
indicates an incomplete sentence, such as PUT THE LAMP IN THE, where
|
||||
STARCROSS expected a noun and couldn't find one.
|
||||
.s
|
||||
I FOUND TOO MANY NOUNS IN THAT SENTENCE. An example is PUT THE SOUP IN
|
||||
THE BOWL WITH THE LADLE. A valid STARCROSS sentence has, at most, one
|
||||
direct object and one indirect object.
|
||||
.s
|
||||
I BEG YOUR PARDON? You did not type anything after the prompt (>) and
|
||||
before hitting the RETURN (or ENTER) key.
|
||||
.s
|
||||
IT IS TOO DARK HERE TO SEE. In the story, there was not enough light to see
|
||||
the objects you referred to.
|
||||
.s
|
||||
YOU CAN'T SEE ANY "[object]" HERE. The object you referred to was not
|
||||
present, or was not accessible to you (for example, it was present but
|
||||
inside a closed container).
|
||||
.s
|
||||
YOU CAN'T GO THAT WAY. There was no passage or exit in the direction
|
||||
you tried to move.
|
||||
.s
|
||||
I CAN'T USE MULTIPLE (IN)DIRECT OBJECTS WITH "[your verb]". You can use
|
||||
multiple objects (that is, nouns or noun phrases separated by
|
||||
AND or a comma) only with certain verbs. Among the more useful of these
|
||||
verbs are TAKE, DROP, PUT, and EXAMINE. This restriction also applies to
|
||||
the use of ALL, as in DROP ALL. An example of a verb that will not work
|
||||
with multiple objects is ATTACK; you couldn't say ATTACK ALL or ATTACK
|
||||
THE ROBOT AND THE ANDROID.
|
||||
.s
|
||||
I DON'T UNDERSTAND THAT SENTENCE. The sentence you typed was gibberish,
|
||||
such as GIVE ALIEN WITH LASER. Or, you may have typed a reasonable sentence
|
||||
but used a syntax that STARCROSS does not understand, such as SMELL UNDER
|
||||
THE BUNK. Try rephrasing the sentence.
|
||||
|
||||
.pg
|
||||
.c;XIII: SENTENCE SYNTAX
|
||||
.s 2
|
||||
A STARCROSS sentence must contain a verb or a command (such as AGAIN).
|
||||
.s
|
||||
You must separate multiple objects of the verb by the word AND
|
||||
or by a comma.
|
||||
.s
|
||||
You must separate several sentences typed to STARCROSS at one time by a
|
||||
period or by the word THEN. A period is not needed at the end of a line
|
||||
of input.
|
||||
.s
|
||||
You can ask only two kinds of questions, WHERE and WHAT.
|
||||
.s
|
||||
You can abbreviate compass directions to N, E, S, W, NE, NW, SE, SW. UP
|
||||
and DOWN may be shortened to U and D, respectively.
|
||||
.s
|
||||
Other abbreviations include L for LOOK and I for INVENTORY.
|
||||
|
||||
.pg
|
||||
.c;XIV: COMMAND SUMMARY
|
||||
.s 2
|
||||
You can enter the following commands when the prompt (>) has appeared
|
||||
on the screen. For an explanation of these commands, see the section
|
||||
entitled Starcross Commands.
|
||||
.s
|
||||
.TS 15, 40
|
||||
AGAIN SAVE
|
||||
BRIEF SCORE
|
||||
DIAGNOSE SCRIPT
|
||||
INVENTORY (or I) SUPERBRIEF
|
||||
LOOK (or L) UNSCRIPT
|
||||
QUIT (or Q) VERBOSE
|
||||
RESTART VERSION
|
||||
RESTORE WAIT
|
||||
|
||||
.pg
|
||||
.c;XV: WE'RE NEVER SATISFIED
|
||||
.s 2
|
||||
Here at Infocom, we take great pride in the quality of our games. Even
|
||||
after they're "out the door", we're constantly improving, honing and
|
||||
perfecting.
|
||||
.s
|
||||
Your input is important. No matter how much testing we do, it seems that
|
||||
there are some bugs that never crawl into view until thousands of you begin
|
||||
doing all those wild and crazy things to the game. If you find a bug, or if
|
||||
you have a suggestion for some additional sentence syntaxes and vocabulary
|
||||
words, or if you found a certain puzzle too hard or too easy, or if
|
||||
you'd just like to tell us what you thought of the game, drop us a note!
|
||||
We love every excuse to stop working and fool around for a while, and a
|
||||
letter from you is just such an excuse! Write to:
|
||||
.s
|
||||
.lm 15
|
||||
.no fill
|
||||
INFOCOM, INC.
|
||||
55 WHEELER STREET
|
||||
CAMBRIDGE, MA 02138
|
||||
.S
|
||||
Attn: GURTHARK
|
||||
.s
|
||||
.lm 10
|
||||
.fill
|
||||
You can call the Infocom Technical Support Team to report bugs and
|
||||
technical problems by dialing (617) 576-3190. Note that this is NOT a
|
||||
hint line. If you develop a problem with your diskette within 90 days
|
||||
after purchase, we will replace your diskette at no charge. Otherwise,
|
||||
there is a replacement fee of $5 (U.S. currency). Please return your
|
||||
registration card if you'd like to be on our mailing list and receive
|
||||
our customer newsletter, The New Zork Times.
|
68
parser.zil
68
parser.zil
|
@ -48,6 +48,14 @@
|
|||
<GLOBAL P-INBUF <ITABLE BYTE 100>>
|
||||
;"Parse-cont variable"
|
||||
|
||||
;"AGAIN globals"
|
||||
<GLOBAL A-LEXV <ITABLE BYTE 120>>
|
||||
<GLOBAL A-INBUF <ITABLE BYTE 100>>
|
||||
<GLOBAL A-PTR 0>
|
||||
<GLOBAL A-PTR2 0>;"need to save 2 pointers back"
|
||||
<GLOBAL NOT-AGAIN 2>;"values: <> if V-AGAIN is calling MAIN-LOOP
|
||||
1 if AGAIN was last verb; 2 otherwise"
|
||||
|
||||
<GLOBAL P-CONT <>>
|
||||
|
||||
<GLOBAL P-IT-OBJECT <>>
|
||||
|
@ -124,6 +132,13 @@
|
|||
|
||||
<GLOBAL QUOTE-FLAG <>>
|
||||
|
||||
|
||||
<ROUTINE TABLE-COPY (SRC DEST CNT)
|
||||
<SET CNT <* .CNT 2>>
|
||||
<REPEAT ()
|
||||
<COND (<DLESS? CNT 0> <RETURN>)
|
||||
(T <PUTB .DEST .CNT <GETB .SRC .CNT>>)>>>
|
||||
|
||||
" Grovel down the input finding the verb, prepositions, and noun clauses.
|
||||
If the input is <direction> or <walk> <direction>, fall out immediately
|
||||
setting PRSA to ,V?WALK and PRSO to <direction>. Otherwise, perform
|
||||
|
@ -154,6 +169,9 @@
|
|||
<SETG QUOTE-FLAG <>>
|
||||
<COND (<NOT <FSET? <LOC ,WINNER> ,VEHBIT>>
|
||||
<SETG HERE <LOC ,WINNER>>)>
|
||||
<COND (<==? ,NOT-AGAIN 2>
|
||||
<TABLE-COPY ,P-INBUF ,A-INBUF 50 ;100>
|
||||
<TABLE-COPY ,P-LEXV ,A-LEXV 60 ;120>)>
|
||||
<SET SCNT ,P-SPACE>
|
||||
<REPEAT ()
|
||||
<COND (<L? <SET SCNT <- .SCNT 1>> 0> <RETURN>)
|
||||
|
@ -165,7 +183,16 @@
|
|||
<SET LEN ,P-LEN>
|
||||
<SETG P-DIR <>>
|
||||
<SETG P-NCN 0>
|
||||
<SETG P-GETFLAGS 0>
|
||||
<SETG P-GETFLAGS 0>
|
||||
;"3/25/83: Next statement added."
|
||||
<PUT ,P-ITBL ,P-VERBN 0>
|
||||
<COND (<==? ,NOT-AGAIN 2>
|
||||
<SETG A-PTR ,A-PTR2>
|
||||
<COND (<NOT <==? .PTR ,P-LEXSTART>>
|
||||
<TABLE-COPY ,P-INBUF ,A-INBUF 50 ;100>
|
||||
<TABLE-COPY ,P-LEXV ,A-LEXV 60 ;120>)>)
|
||||
(<==? ,NOT-AGAIN 1> <SETG NOT-AGAIN 2>)>
|
||||
<SETG A-PTR2 .PTR>
|
||||
<REPEAT ()
|
||||
<COND (<L? <SETG P-LEN <- ,P-LEN 1>> 0>
|
||||
<SETG QUOTE-FLAG <>>
|
||||
|
@ -180,10 +207,10 @@
|
|||
<PUT ,P-ITBL ,P-VERB ,ACT?TELL>
|
||||
<PUT ,P-ITBL ,P-VERBN 0>
|
||||
<SET WORD ,W?QUOTE>)>
|
||||
<COND ;(<AND <EQUAL? .WORD ,W?.>
|
||||
<COND ;(<AND <EQUAL? .WORD ,W?PERIOD>
|
||||
<EQUAL? .LW ,W?MRS ,W?MR ,W?MS>>
|
||||
<SET LW 0>)
|
||||
(<OR <EQUAL? .WORD ,W?THEN ,W?.>
|
||||
(<OR <EQUAL? .WORD ,W?THEN ,W?PERIOD>
|
||||
<EQUAL? .WORD ,W?QUOTE>>
|
||||
<COND (<EQUAL? .WORD ,W?QUOTE>
|
||||
<COND (,QUOTE-FLAG
|
||||
|
@ -206,7 +233,7 @@
|
|||
,W?QUOTE>
|
||||
<==? .VERB ,ACT?WALK>
|
||||
<G? .LEN 2>>
|
||||
<AND <EQUAL? .NW ,W?.>
|
||||
<AND <EQUAL? .NW ,W?PERIOD>
|
||||
<EQUAL? .VERB ,ACT?WALK <>>
|
||||
<G? .LEN 1>>
|
||||
<AND ,QUOTE-FLAG
|
||||
|
@ -235,7 +262,6 @@
|
|||
<PUTB ,P-VTBL 3 <GETB ,P-LEXV <+ .NUM 1>>>)
|
||||
(<OR <SET VAL <WT? .WORD ,PS?PREPOSITION 0>>
|
||||
<AND <OR <EQUAL? .WORD ,W?ALL ,W?ONE ,W?A>
|
||||
<EQUAL? .WORD ,W?BOTH>
|
||||
<WT? .WORD ,PS?ADJECTIVE>
|
||||
<WT? .WORD ,PS?OBJECT>>
|
||||
<SET VAL 0>>>
|
||||
|
@ -246,12 +272,11 @@
|
|||
;<NOT <EQUAL? .VERB ,ACT?ACCUSE>>
|
||||
<0? .VAL>
|
||||
<NOT
|
||||
<EQUAL? .WORD ,W?ALL ,W?ONE ,W?A>>
|
||||
<NOT <EQUAL? .WORD ,W?BOTH>>>)
|
||||
<EQUAL? .WORD ,W?ALL ,W?ONE ,W?A>>>)
|
||||
(<AND <NOT <0? .VAL>>
|
||||
<OR <0? ,P-LEN>
|
||||
<EQUAL? <GET ,P-LEXV <+ .PTR 2>>
|
||||
,W?THEN ,W?.>>>
|
||||
,W?THEN ,W?PERIOD>>>
|
||||
<COND (<L? ,P-NCN 2>
|
||||
<PUT ,P-ITBL ,P-PREP1 .VAL>
|
||||
<PUT ,P-ITBL ,P-PREP1N .WORD>)>)
|
||||
|
@ -332,15 +357,15 @@
|
|||
<==? <GET ,P-ITBL ,P-VERB> ,ACT?ACCUSE>>
|
||||
<PUT ,P-LEXV .PTR ,W?WITH>
|
||||
<SET WORD ,W?WITH>)>
|
||||
<COND ;(<AND <EQUAL? .WORD ,W?.>
|
||||
<COND ;(<AND <EQUAL? .WORD ,W?PERIOD>
|
||||
<EQUAL? .LW ,W?MRS ,W?MR ,W?MS>>
|
||||
<SET LW 0>)
|
||||
(<EQUAL? .WORD ,W?AND ,W?COMMA> <SET ANDFLG T>)
|
||||
(<EQUAL? .WORD ,W?ALL ,W?BOTH ,W?ONE>
|
||||
(<EQUAL? .WORD ,W?ALL ,W?ONE>
|
||||
<COND (<==? .NW ,W?OF>
|
||||
<SETG P-LEN <- ,P-LEN 1>>
|
||||
<SET PTR <+ .PTR ,P-LEXELEN>>)>)
|
||||
(<OR <EQUAL? .WORD ,W?THEN ,W?.>
|
||||
(<OR <EQUAL? .WORD ,W?THEN ,W?PERIOD>
|
||||
<AND <WT? .WORD ,PS?PREPOSITION>
|
||||
<NOT .FIRST??>>>
|
||||
<SETG P-LEN <+ ,P-LEN 1>>
|
||||
|
@ -621,7 +646,7 @@
|
|||
(T
|
||||
<COND (.NOSP <SET NOSP <>>)
|
||||
(T <TELL " ">)>
|
||||
<COND (<==? <SET WRD <GET .BEG 0>> ,W?.> <SET NOSP T>)
|
||||
<COND (<==? <SET WRD <GET .BEG 0>> ,W?PERIOD> <SET NOSP T>)
|
||||
;(<==? .WRD ,W?MRS> <TELL "Mrs."> <SET PN T>)
|
||||
;(<==? .WRD ,W?MS> <TELL "Ms."> <SET PN T>)
|
||||
;(<==? .WRD ,W?MR> <TELL "Mr."> <SET PN T>)
|
||||
|
@ -795,7 +820,7 @@
|
|||
<COND (<==? .PTR .EPTR> <RETURN <GET-OBJECT <OR .BUT .TBL>>>)
|
||||
(T
|
||||
<SET NW <GET .PTR ,P-LEXELEN>>
|
||||
<COND (<EQUAL? .WORD ,W?ALL ,W?BOTH>
|
||||
<COND (<EQUAL? .WORD ,W?ALL>
|
||||
<SETG P-GETFLAGS ,P-ALL>
|
||||
<COND (<==? .NW ,W?OF>
|
||||
<SET PTR <REST .PTR ,P-WORDLEN>>)>)
|
||||
|
@ -1175,4 +1200,19 @@
|
|||
<COND (<OR ,P-MERGED
|
||||
<==? <GET <SET PTR <GET ,P-ITBL ,P-NC2>> 0> ,W?IT>>
|
||||
<TELL " " D ,PRSO>)
|
||||
(T <BUFFER-PRINT .PTR <GET ,P-ITBL ,P-NC2L> <>>)>>
|
||||
(T <BUFFER-PRINT .PTR <GET ,P-ITBL ,P-NC2L> <>>)>>
|
||||
|
||||
<ROUTINE THIS-IT? (OBJ TBL "AUX" SYNS)
|
||||
<COND (<FSET? .OBJ ,INVISIBLE> <RFALSE>)
|
||||
(<AND ,P-NAM
|
||||
<NOT <ZMEMQ ,P-NAM
|
||||
<SET SYNS <GETPT .OBJ ,P?SYNONYM>>
|
||||
<- </ <PTSIZE .SYNS> 2> 1>>>>
|
||||
<RFALSE>)
|
||||
(<AND ,P-ADJ
|
||||
<OR <NOT <SET SYNS <GETPT .OBJ ,P?ADJECTIVE>>>
|
||||
<NOT <ZMEMQB ,P-ADJ .SYNS <- <PTSIZE .SYNS> 1>>>>>
|
||||
<RFALSE>)
|
||||
(<AND <NOT <0? ,P-GWIMBIT>> <NOT <FSET? .OBJ ,P-GWIMBIT>>>
|
||||
<RFALSE>)>
|
||||
<RTRUE>>
|
189
starcross.txt
Normal file
189
starcross.txt
Normal file
|
@ -0,0 +1,189 @@
|
|||
THE SHIP FROM THE STARS
|
||||
Dave Lebling
|
||||
November, 1981
|
||||
|
||||
|
||||
-Synopsis-
|
||||
|
||||
Space-based tracking radars discover a small asteroid (or huge
|
||||
starship) hurtling into the solar system. Although they don't know it,
|
||||
the ship is an enormous gift and test sent by an advanced race to the
|
||||
primitive cultures of the galactic arm. The ship contains secrets which
|
||||
wish to be discovered, but only by a race advanced enough (and clever
|
||||
enough and lucky enough) to penetrate its mysteries.
|
||||
|
||||
The ultimate goal is to gain control of the ship's instruments and
|
||||
thereby bring it into orbit around the Sun, so that it can be studied
|
||||
and exploited. The radar tracking makes clear that there is only a
|
||||
limited amount of time available, as the orbit takes it through the
|
||||
solar system almost perpendicular to the plane of the ecliptic.
|
||||
|
||||
Further, control of the ship is vested in "magic" devices (keys, if you
|
||||
will) which collectively activate the main control panel. Each key is
|
||||
obtained by solving a problem.
|
||||
|
||||
Other attempts have been made to stop the ship: our system is not the
|
||||
first it has visited. Relics of those attempts, including adventurers
|
||||
or their descendants, remain aboard. On the other hand, they may know
|
||||
about how to obtain keys or even have some themselves.
|
||||
|
||||
The player is in the role of the "lucky" asteroid miner who is the only
|
||||
earth-based ship with an orbit close enough to the cylinder's path to
|
||||
have a chance to intercept it.
|
||||
|
||||
-Ship Layout-
|
||||
|
||||
The ship is an enormous cylinder (roughly -- it was obviously a hacked
|
||||
up asteroid). At one end are the engines, at the other the control
|
||||
room. Much of the interior is airspace. Around the rim are four
|
||||
docking ports, three of which are occupied when the Earth ship arrives!
|
||||
Main gangways run the length of the ship, main lifts near the docking
|
||||
ports run from the outside rim to the airspace. There are ring corridors
|
||||
leading around the ship as well. The engine end of the airspace supports a
|
||||
jungle environment which replenishes the air supply. The center of the
|
||||
jungle end sports the drive bubble (engine room), which is not visible
|
||||
from the ground because of the jungle. The center of the other end
|
||||
sports the control bubble. There is a fence midway to keep the jungle
|
||||
at its end.
|
||||
|
||||
-Docking Ports-
|
||||
|
||||
There are four of these. Two are already occupied by the ships of
|
||||
previous adventurers, and one was destroyed (almost) by the blast-off of
|
||||
a third. Each port has flexible grapples which catch incoming ships,
|
||||
deccelerate them and hold them. Nearby is a port with airlock which is
|
||||
opened by pushing the "earth" symbol in a stylized solar system. In the
|
||||
airlock is found the first key and a device which allows limited use of
|
||||
the ship's computer.
|
||||
|
||||
-Keys-
|
||||
|
||||
The keys are translucent crystals of various colors. To make the test
|
||||
fair, one is found in your airlock. Several others have already been
|
||||
found by previous adventurers, and some of these are same color as your
|
||||
airlock one (they crumble to dust when confronted with yours).
|
||||
|
||||
-Translator-
|
||||
|
||||
Ship has been listening to radio/TV broadcasts from Earth (that's how it
|
||||
decided to come here). Translator connects to central computer, which
|
||||
watches and observes all goings on. Doesn't work perfectly though, and
|
||||
it's not omniscient. Will answer some questions, but not all. The
|
||||
translator is somewhat fragile, and can get broken in a fight, for
|
||||
example.
|
||||
|
||||
-Jungle-
|
||||
|
||||
You can gain access to the drive bubble by climbing trees (bubble is
|
||||
invisible from floor). No trees at control bubble end. Drive bubble
|
||||
will open into weightless area, but you can't push off with enough
|
||||
impulse to get to control end. Jump plus assist from several blasts
|
||||
from the zap gun will be enough to get there (note that you thus can't
|
||||
overuse the zap gun, as it has limited charges. One of the keys
|
||||
opens the control bubble.
|
||||
|
||||
-Aliens-
|
||||
|
||||
There were three previous attempts to take over the ship:
|
||||
|
||||
1) The Immortal. A hugely long-lived alien, he still lives in his ship.
|
||||
He looks like an enormous spider (but he isn't -- remember the square-
|
||||
cube law). The intent is that he should look fierce and nasty, but not
|
||||
be. He knows a lot, may give you information and a key.
|
||||
Profoundly bored, he has been here a long time. You should give him
|
||||
your entertainment cassettes. He has a translator of his own.
|
||||
|
||||
2) The Savages. These are descendents of a larger expedition which
|
||||
contained both sexes. The chieftain wears the ancient ruins of a
|
||||
spacesuit, carries a key as a token. If you are in a spacesuit as well
|
||||
he will trade the key for your much more interesting spacesuit. You can
|
||||
also blow it and get him or his tribe to fight you. Zap gun may destroy
|
||||
key. He will also lead you into the ship in which his ancestors arrived,
|
||||
and there you can find another key! This ship is on the other side of
|
||||
a more-or-less unmappable maze; unmappable because the young of this
|
||||
species will steal anything you drop to aid in mapping.
|
||||
|
||||
3) The Departed. This alien tried to get away after finding at least
|
||||
one key. He didn't make it. The corpse is tethered to the ship.
|
||||
Perhaps he was waiting for another ship to take him off, or his companions
|
||||
abandoned him. He has a key.
|
||||
|
||||
-Teleportation Disks-
|
||||
|
||||
These flip to the other if something touches them. They are activated
|
||||
by pressure (e.g., dropping them) on one side (the red side). Whatever
|
||||
is within their range is transported. They are found hanging
|
||||
side-by-side on the wall near the Force Shield.
|
||||
|
||||
-Force Shield-
|
||||
|
||||
Has four settings, lowest of which reveals a key imbedded in the field.
|
||||
Place something on the shield at a middle setting, then put a T.D. on
|
||||
the floor beneath. Then set the shield to the highest setting, which
|
||||
leaves the object unsupported, and it drops onto the T.D., transporting
|
||||
it and the key to the other disk.
|
||||
|
||||
-Maintenance Mice-
|
||||
|
||||
These carry off any object left on the floor. Can be found in the
|
||||
Maintenance Center. They go in and out of holes in walls, so you can't
|
||||
follow them. You can use the Teleportation Disks to get into the
|
||||
maintenance center, though! Just leave one somewhere and a mouse will
|
||||
pick it up sooner or later.
|
||||
|
||||
-Zoo-
|
||||
|
||||
Most of the animals have died, escaped, or been released. A hive of
|
||||
rat-ants (name is self-explanatory) remains. They build nests out of
|
||||
junk, including a key they found somewhere. If you break the nest,
|
||||
they will rebuild it further away from you, but you can get the key
|
||||
before they reuse it.
|
||||
|
||||
-Computer Room-
|
||||
|
||||
A non-working computer is here, which you can reactivate by plugging
|
||||
a replacement board in; but be sure to power it off first or you fry
|
||||
the board. The computer will extrude a key if you do the right thing
|
||||
here.
|
||||
|
||||
-Observation Deck-
|
||||
|
||||
A clear key here produces a prism which you can see before you see the
|
||||
key itself.
|
||||
|
||||
-Weapons Deck-
|
||||
|
||||
You find a zap gun here, which has an enormous recoil to it (you can
|
||||
use it to propel you to the control room). It has only a certain number
|
||||
of charges, of course. It also has a key in its barrel which tints the
|
||||
blast its color. None of the other weapons works.
|
||||
|
||||
-Engine Room-
|
||||
|
||||
-Maintenance Center-
|
||||
|
||||
Maintenance mice return here, and they drop anything they've picked up
|
||||
that might not be real trash. There is a rather full bin of such stuff,
|
||||
since no one has checked it recently. If you root around long enough
|
||||
you will find a key, plus anything else you may have dropped that the mice
|
||||
recovered.
|
||||
|
||||
-Dropshaft-
|
||||
|
||||
Most dropshafts (air conditioning?) are covered with an invulnerable
|
||||
mesh. One is not. You must stop at each level going out you will
|
||||
splat.
|
||||
|
||||
-Control Bubble-
|
||||
|
||||
Something nasty lives in it. The normal exits are blocked.
|
||||
|
||||
-Control Panel-
|
||||
|
||||
This is very complicated. Basically it a control panel for illiterates,
|
||||
all symbolic. There is a key for each control without which the control
|
||||
won't activate. The labelling is not even there until the keys are
|
||||
inserted. There are View Select controls, Speed select controls, a
|
||||
Target Select board and viewer, and a Course Select board. There is
|
||||
also an execute key. You have to figure out how to direct the ship into
|
||||
a circular Earth orbit...
|
40
starcross.xzap
Normal file
40
starcross.xzap
Normal file
|
@ -0,0 +1,40 @@
|
|||
.INSERT "STARCROSSFREQ"
|
||||
|
||||
|
||||
.INSERT "STARCROSSDAT" ; DATA IS IN THIS FILE
|
||||
|
||||
|
||||
.INSERT "DUNGEON"
|
||||
|
||||
|
||||
.INSERT "SYNTAX"
|
||||
|
||||
|
||||
ENDLOD::
|
||||
|
||||
.INSERT "MACROS"
|
||||
|
||||
|
||||
.INSERT "CLOCK"
|
||||
|
||||
|
||||
.INSERT "MAIN"
|
||||
|
||||
|
||||
.INSERT "PARSER"
|
||||
|
||||
|
||||
.INSERT "CRUFTY"
|
||||
|
||||
|
||||
.INSERT "VERBS"
|
||||
|
||||
|
||||
.INSERT "ACTIONS"
|
||||
|
||||
|
||||
.INSERT "EMERG"
|
||||
|
||||
.INSERT "STARCROSSSTR"
|
||||
|
||||
.END
|
53
starcross.zil
Normal file
53
starcross.zil
Normal file
|
@ -0,0 +1,53 @@
|
|||
"SF for
|
||||
Zork SF Game
|
||||
(c) Copyright 1981 Infocom, Inc. All Rights Reserved.
|
||||
"
|
||||
|
||||
<SNAME "STARCROSS">
|
||||
|
||||
<BLOAT 70000 0 0 2700 0 0 0 0 0 256>
|
||||
|
||||
<SET REDEFINE T>
|
||||
|
||||
<GLOBAL BIGFIX 10000>
|
||||
|
||||
<OR <GASSIGNED? ZILCH>
|
||||
<SETG WBREAKS <STRING !\" !\= !,WBREAKS>>>
|
||||
|
||||
<OR <GASSIGNED? INSERT-CRUFTY>
|
||||
<DEFINE INSERT-CRUFTY (STR) <IFILE .STR T>>>
|
||||
|
||||
<DEFINE IFILE (STR "OPTIONAL" (FLOAD? <>) "AUX" (TIM <TIME>))
|
||||
<INSERT-FILE .STR .FLOAD?>>
|
||||
|
||||
<PRINC "Starcross: Interlogic Science Fiction
|
||||
">
|
||||
|
||||
<COND (<GASSIGNED? PREDGEN>
|
||||
<ID 0>)>
|
||||
|
||||
<IFILE "DUNGEON" T>
|
||||
|
||||
<PROPDEF SIZE 5>
|
||||
<PROPDEF CAPACITY 0>
|
||||
<PROPDEF VALUE 0>
|
||||
|
||||
<IFILE "SYNTAX" T>
|
||||
<ENDLOAD>
|
||||
<IFILE "MACROS" T>
|
||||
<IFILE "CLOCK" T>
|
||||
<IFILE "PARSER" T>
|
||||
<IFILE "MAIN" T>
|
||||
;<INSERT-CRUFTY "CRUFTY">
|
||||
<IFILE "VERBS" T>
|
||||
<IFILE "ACTIONS" T>
|
||||
<IFILE "EMERG" T>
|
||||
|
||||
<GC 0 T>
|
||||
|
||||
<DEFINE CNT (STR OBL)
|
||||
<PRINC .STR>
|
||||
<PRIN1 <MAPF ,+ ,LENGTH .OBL>>
|
||||
<CRLF>>
|
||||
|
||||
<IMAGE 7><IMAGE 7><IMAGE 7>
|
BIN
starcross.zip
Normal file
BIN
starcross.zip
Normal file
Binary file not shown.
200
starcrossfreq.xzap
Normal file
200
starcrossfreq.xzap
Normal file
|
@ -0,0 +1,200 @@
|
|||
.FSTR FSTR?1,"the " ;1784 892
|
||||
.FSTR FSTR?2,"The " ;1164 388
|
||||
.FSTR FSTR?3,"and " ;670 335
|
||||
.FSTR FSTR?4,", " ;603 603
|
||||
.FSTR FSTR?5,"You " ;585 195
|
||||
.FSTR FSTR?6,"is " ;474 474
|
||||
.FSTR FSTR?7,"you " ;442 221
|
||||
.FSTR FSTR?8,"There " ;440 88
|
||||
.FSTR FSTR?9,". " ;425 425
|
||||
.FSTR FSTR?10,"of " ;393 393
|
||||
.FSTR FSTR?11,"are " ;350 175
|
||||
.FSTR FSTR?12,"can't " ;290 58
|
||||
.FSTR FSTR?13,"with " ;276 92
|
||||
.FSTR FSTR?14,"This " ;260 65
|
||||
.FSTR FSTR?15,"to " ;254 254
|
||||
.FSTR FSTR?16,"which " ;244 61
|
||||
.FSTR FSTR?17,"your " ;237 79
|
||||
.FSTR FSTR?18,"have " ;222 74
|
||||
.FSTR FSTR?19,"that " ;207 69
|
||||
.FSTR FSTR?20,"corridor " ;189 27
|
||||
.FSTR FSTR?21,"from " ;177 59
|
||||
.FSTR FSTR?22,"into " ;174 58
|
||||
.FSTR FSTR?23,"in " ;168 168
|
||||
.FSTR FSTR?24,"maintenance " ;160 16
|
||||
.FSTR FSTR?25,"artifact" ;156 26
|
||||
.FSTR FSTR?26,"computer " ;147 21
|
||||
.FSTR FSTR?27,"for " ;146 73
|
||||
.FSTR FSTR?28,"space " ;144 36
|
||||
.FSTR FSTR?29,"nothing " ;138 23
|
||||
.FSTR FSTR?30,"here" ;136 68
|
||||
.FSTR FSTR?31,"but " ;132 66
|
||||
.FSTR FSTR?32,"It's " ;130 26
|
||||
.FSTR FSTR?33,"already " ;126 21
|
||||
.FSTR FSTR?34,"cylinder" ;120 20
|
||||
.FSTR FSTR?35,"large " ;116 29
|
||||
.FSTR FSTR?36,"through " ;114 19
|
||||
.FSTR FSTR?37,"around " ;110 22
|
||||
.FSTR FSTR?38,"crystal " ;108 18
|
||||
.FSTR FSTR?39,"artifact " ;105 15
|
||||
.FSTR FSTR?40,"small " ;104 26
|
||||
.FSTR FSTR?41,"something " ;104 13
|
||||
.FSTR FSTR?42,"this " ;102 34
|
||||
.FSTR FSTR?43,"don't " ;100 20
|
||||
.FSTR FSTR?44,"mouse " ;96 24
|
||||
.FSTR FSTR?45,"chief " ;96 24
|
||||
.FSTR FSTR?46,"about " ;96 24
|
||||
.FSTR FSTR?47,"surface " ;96 16
|
||||
.FSTR FSTR?48,"airlock " ;96 16
|
||||
.FSTR FSTR?49,"It " ;88 44
|
||||
.FSTR FSTR?50,"there " ;88 22
|
||||
.FSTR FSTR?51,"some " ;87 29
|
||||
.FSTR FSTR?52,"has " ;86 43
|
||||
.FSTR FSTR?53,"out " ;84 42
|
||||
.FSTR FSTR?54,"not " ;84 42
|
||||
.FSTR FSTR?55,"seems " ;84 21
|
||||
.FSTR FSTR?56,"controls " ;84 12
|
||||
.FSTR FSTR?57,"Unfortunately" ;84 7
|
||||
.FSTR FSTR?58,"here " ;81 27
|
||||
.FSTR FSTR?59,"almost " ;80 16
|
||||
.FSTR FSTR?60,"aliens " ;80 16
|
||||
.FSTR FSTR?61,"mass " ;78 26
|
||||
.FSTR FSTR?62,"blue " ;78 26
|
||||
.FSTR FSTR?63,"strange " ;78 13
|
||||
.FSTR FSTR?64,"outside " ;78 13
|
||||
.FSTR FSTR?65,"starboard" ;77 11
|
||||
.FSTR FSTR?66,"floating " ;77 11
|
||||
.FSTR FSTR?67,"at " ;76 76
|
||||
.FSTR FSTR?68,"would " ;76 19
|
||||
.FSTR FSTR?69,"bubble" ;76 19
|
||||
.FSTR FSTR?70,"it " ;75 75
|
||||
.FSTR FSTR?71,"been " ;75 25
|
||||
.FSTR FSTR?72,"yellow " ;75 15
|
||||
.FSTR FSTR?73,"airlock" ;75 15
|
||||
.FSTR FSTR?74,"as " ;72 72
|
||||
.FSTR FSTR?75,"one " ;72 36
|
||||
.FSTR FSTR?76,"end " ;72 36
|
||||
.FSTR FSTR?77,"area " ;72 24
|
||||
.FSTR FSTR?78,"other " ;72 18
|
||||
.FSTR FSTR?79,"metal " ;72 18
|
||||
.FSTR FSTR?80,"looks " ;72 18
|
||||
.FSTR FSTR?81,"They " ;72 18
|
||||
.FSTR FSTR?82,"wearing " ;72 12
|
||||
.FSTR FSTR?83,"appears " ;72 12
|
||||
.FSTR FSTR?84,"projector " ;72 9
|
||||
.FSTR FSTR?85,"on " ;71 71
|
||||
.FSTR FSTR?86,"safety " ;70 14
|
||||
.FSTR FSTR?87,"rotation " ;70 10
|
||||
.FSTR FSTR?88,"attached " ;70 10
|
||||
.FSTR FSTR?89,"like " ;69 23
|
||||
.FSTR FSTR?90,"then " ;66 22
|
||||
.FSTR FSTR?91,"corridor" ;66 11
|
||||
.FSTR FSTR?92,"control " ;66 11
|
||||
.FSTR FSTR?93,"rather " ;65 13
|
||||
.FSTR FSTR?94,"bubble " ;65 13
|
||||
.FSTR FSTR?95,"expressionless " ;65 5
|
||||
.FSTR FSTR?96,"I " ;64 64
|
||||
|
||||
|
||||
;word frequency table of 96 most common words
|
||||
|
||||
WORDS:: .TABLE
|
||||
FSTR?1
|
||||
FSTR?2
|
||||
FSTR?3
|
||||
FSTR?4
|
||||
FSTR?5
|
||||
FSTR?6
|
||||
FSTR?7
|
||||
FSTR?8
|
||||
FSTR?9
|
||||
FSTR?10
|
||||
FSTR?11
|
||||
FSTR?12
|
||||
FSTR?13
|
||||
FSTR?14
|
||||
FSTR?15
|
||||
FSTR?16
|
||||
FSTR?17
|
||||
FSTR?18
|
||||
FSTR?19
|
||||
FSTR?20
|
||||
FSTR?21
|
||||
FSTR?22
|
||||
FSTR?23
|
||||
FSTR?24
|
||||
FSTR?25
|
||||
FSTR?26
|
||||
FSTR?27
|
||||
FSTR?28
|
||||
FSTR?29
|
||||
FSTR?30
|
||||
FSTR?31
|
||||
FSTR?32
|
||||
FSTR?33
|
||||
FSTR?34
|
||||
FSTR?35
|
||||
FSTR?36
|
||||
FSTR?37
|
||||
FSTR?38
|
||||
FSTR?39
|
||||
FSTR?40
|
||||
FSTR?41
|
||||
FSTR?42
|
||||
FSTR?43
|
||||
FSTR?44
|
||||
FSTR?45
|
||||
FSTR?46
|
||||
FSTR?47
|
||||
FSTR?48
|
||||
FSTR?49
|
||||
FSTR?50
|
||||
FSTR?51
|
||||
FSTR?52
|
||||
FSTR?53
|
||||
FSTR?54
|
||||
FSTR?55
|
||||
FSTR?56
|
||||
FSTR?57
|
||||
FSTR?58
|
||||
FSTR?59
|
||||
FSTR?60
|
||||
FSTR?61
|
||||
FSTR?62
|
||||
FSTR?63
|
||||
FSTR?64
|
||||
FSTR?65
|
||||
FSTR?66
|
||||
FSTR?67
|
||||
FSTR?68
|
||||
FSTR?69
|
||||
FSTR?70
|
||||
FSTR?71
|
||||
FSTR?72
|
||||
FSTR?73
|
||||
FSTR?74
|
||||
FSTR?75
|
||||
FSTR?76
|
||||
FSTR?77
|
||||
FSTR?78
|
||||
FSTR?79
|
||||
FSTR?80
|
||||
FSTR?81
|
||||
FSTR?82
|
||||
FSTR?83
|
||||
FSTR?84
|
||||
FSTR?85
|
||||
FSTR?86
|
||||
FSTR?87
|
||||
FSTR?88
|
||||
FSTR?89
|
||||
FSTR?90
|
||||
FSTR?91
|
||||
FSTR?92
|
||||
FSTR?93
|
||||
FSTR?94
|
||||
FSTR?95
|
||||
FSTR?96
|
||||
.ENDT
|
||||
|
||||
.ENDI
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
<SYNONYM WITH USING THROUGH>
|
||||
<SYNONYM IN INSIDE INTO>
|
||||
<SYNONYM ALL BOTH>
|
||||
<SYNONYM UNDER UNDERNEATH BENEATH>
|
||||
|
||||
<SYNONYM NORTH N FORE FORWARD FOREWARD F>
|
||||
<SYNONYM SOUTH S AFT>
|
||||
|
@ -70,8 +70,6 @@
|
|||
= V-ATTACK>
|
||||
<SYNONYM ATTACK FIGHT HURT INJURE HIT>
|
||||
|
||||
<SYNTAX BACK = V-BACK>
|
||||
|
||||
<SYNTAX BOARD OBJECT (FIND VEHBIT) (ON-GROUND IN-ROOM)
|
||||
= V-BOARD PRE-BOARD>
|
||||
|
||||
|
@ -175,6 +173,7 @@
|
|||
<SYNTAX JUMP IN OBJECT = V-LEAP>
|
||||
<SYNTAX JUMP FROM OBJECT = V-LEAP>
|
||||
<SYNTAX JUMP OFF OBJECT = V-LEAP>
|
||||
<SYNTAX JUMP TO OBJECT = V-LEAP>
|
||||
<SYNONYM JUMP LEAP>
|
||||
|
||||
<SYNTAX KICK OBJECT = V-KICK>
|
||||
|
@ -231,7 +230,9 @@
|
|||
<SYNTAX SEARCH FOR OBJECT = V-FIND>
|
||||
<SYNTAX SEARCH WITH OBJECT = V-SEARCH> ;"THROUGH"
|
||||
|
||||
<SYNONYM SEARCH EMPTY RUMMAGE SORT SIFT>
|
||||
<SYNONYM SEARCH RUMMAGE SORT SIFT>
|
||||
|
||||
<SYNTAX EMPTY OBJECT = V-EMPTY>
|
||||
|
||||
<SYNTAX LOWER OBJECT = V-LOWER>
|
||||
|
||||
|
|
135
verbs.zil
135
verbs.zil
|
@ -1,4 +1,4 @@
|
|||
"VERBS for
|
||||
"VERBS for
|
||||
Interlogic SF Game
|
||||
(c) Copyright 1981,1982 Infocom, Inc. All Rights Reserved
|
||||
"
|
||||
|
@ -53,7 +53,7 @@
|
|||
<SET V? <OR .LOOK? ,VERBOSE>>
|
||||
<COND (<NOT ,LIT>
|
||||
<TELL
|
||||
"It is pitch black. You are likely to be eaten by a grue." CR>
|
||||
"It is pitch black. You are likely to be eaten by a grue." CR>
|
||||
<RETURN <>>)>
|
||||
<COND (<NOT <FSET? ,HERE ,TOUCHBIT>>
|
||||
<FSET ,HERE ,TOUCHBIT>
|
||||
|
@ -250,9 +250,10 @@ long description (fdesc or ldesc), otherwise will print short."
|
|||
|
||||
<ROUTINE V-VERSION ("AUX" (CNT 17))
|
||||
<TELL
|
||||
"STARCROSS: INTERLOGIC Science Fiction|
|
||||
"STARCROSS|
|
||||
Infocom interactive fiction - a science-fiction story|
|
||||
Copyright (c) 1982 by Infocom, Inc. All rights reserved.|
|
||||
STARCROSS and INTERLOGIC are trademarks of Infocom, Inc.|
|
||||
STARCROSS is a registered trademark of Infocom, Inc.|
|
||||
Release ">
|
||||
<PRINTN <BAND <GET 0 1> *3777*>>
|
||||
<TELL " / Serial number ">
|
||||
|
@ -263,7 +264,7 @@ Release ">
|
|||
<PRINTC <GETB 0 .CNT>>)>>
|
||||
<CRLF>>
|
||||
|
||||
<ROUTINE V-AGAIN ("AUX" OBJ)
|
||||
;<ROUTINE V-AGAIN ("AUX" OBJ)
|
||||
<COND (<==? ,L-PRSA ,V?WALK>
|
||||
<DO-WALK ,L-PRSO>)
|
||||
(T
|
||||
|
@ -278,6 +279,32 @@ Release ">
|
|||
(T
|
||||
<PERFORM ,L-PRSA ,L-PRSO ,L-PRSI>)>)>>
|
||||
|
||||
;"Hopefully improved AGAIN"
|
||||
<ROUTINE V-AGAIN ("AUX" CONT LEXV INBUF V)
|
||||
<SET LEXV <TABLE 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
||||
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
||||
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0>>
|
||||
<SET INBUF <TABLE 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
||||
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
||||
0 0 0 0 0 0 0 0 0 0>>
|
||||
<COND (<0? ,P-LEN> <SET CONT <>>)
|
||||
(T <SET CONT ,P-CONT>)>
|
||||
<TABLE-COPY ,P-LEXV .LEXV 60 ;120>
|
||||
<TABLE-COPY ,P-INBUF .INBUF 50 ;100>
|
||||
<TABLE-COPY ,A-LEXV ,P-LEXV 60 ;120>
|
||||
<TABLE-COPY ,A-INBUF ,P-INBUF 50 ;100>
|
||||
<SETG P-CONT ,A-PTR>
|
||||
<SETG NOT-AGAIN <>>
|
||||
<SET V <MAIN-LOOP>>
|
||||
<SETG NOT-AGAIN 1>
|
||||
<SETG PRSA ,V?AGAIN>
|
||||
<COND (<==? .V ,M-FATAL>
|
||||
<SETG P-CONT <>>)
|
||||
(T <SETG P-CONT .CONT>)>
|
||||
<TABLE-COPY .LEXV ,P-LEXV 60 ;120>
|
||||
<TABLE-COPY .INBUF ,P-INBUF 50 ;100>
|
||||
<RETURN .V>>
|
||||
|
||||
\
|
||||
|
||||
"SUBTITLE DEATH AND TRANSFIGURATION"
|
||||
|
@ -286,17 +313,7 @@ Release ">
|
|||
<GLOBAL LUCKY 1>
|
||||
|
||||
<ROUTINE JIGS-UP (DESC "OPTIONAL" (PLAYER? <>))
|
||||
#DECL ((DESC) STRING (PLAYER?) <OR ATOM FALSE>)
|
||||
<TELL .DESC CR>
|
||||
<COND (<NOT <==? ,ADVENTURER ,WINNER>>
|
||||
<TELL "
|
||||
| **** The " D ,WINNER " has died ****
|
||||
|
|
||||
|">
|
||||
<REMOVE ,WINNER>
|
||||
<SETG WINNER ,ADVENTURER>
|
||||
<SETG HERE <LOC ,WINNER>>
|
||||
<RFATAL>)>
|
||||
<PROG ()
|
||||
<SCORE-UPD -10>
|
||||
<TELL "
|
||||
|
@ -307,8 +324,8 @@ Release ">
|
|||
<COND (<==? ,DEATHS 4>
|
||||
<COND (,DOCKED?
|
||||
<TELL
|
||||
"The expressionless voice seems despairing as it says \"Four failures.
|
||||
They would not be pleased. Such promising candidates, too. If only...\"
|
||||
"The expressionless voice seems despairing. \"Four failures. They would not
|
||||
be pleased. Such promising candidates, too. If only...\"
|
||||
The voice trails off into background hiss. Nothing more happens, ever." CR>)
|
||||
(ELSE
|
||||
<TELL
|
||||
|
@ -435,8 +452,6 @@ you have been given another chance." CR>)>
|
|||
<RETURN <GET .TBL <+ .CNT 1>>>)>)>>>
|
||||
|
||||
<ROUTINE V-WALK ("AUX" PT PTS STR OBJ RM)
|
||||
#DECL ((PT) <OR FALSE TABLE> (PTS) FIX (STR) <OR STRING FALSE>
|
||||
(OBJ) OBJECT (RM) <OR FALSE OBJECT>)
|
||||
<COND (<NOT ,P-WALK-DIR>
|
||||
<PERFORM ,V?WALK-TO ,PRSO>
|
||||
<RTRUE>)
|
||||
|
@ -542,7 +557,7 @@ you have been given another chance." CR>)>
|
|||
;"This must go! Chomping compiler strikes again"
|
||||
<TELL
|
||||
"Oh, no. The " D .OBJ " slips from your arms while taking the "
|
||||
D ,PRSO " and both tumble to the ground." CR>
|
||||
D ,PRSO " and both tumble to the floor." CR>
|
||||
<SET WLOC <LOC ,WINNER>>
|
||||
<COND (<==? ,PRSO ,UNDER-GLOBE>
|
||||
<SETG UNDER-GLOBE <>>
|
||||
|
@ -665,7 +680,10 @@ D ,PRSO " and both tumble to the ground." CR>
|
|||
<ROUTINE V-THROW () <COND (<IDROP> <TELL "Thrown." CR>)>>
|
||||
|
||||
<ROUTINE IDROP ()
|
||||
<COND (<NOT <HELD? ,PRSO>>
|
||||
<COND (<EQUAL? <LOC ,PRSO> ,GLOBAL-OBJECTS ,LOCAL-GLOBALS>
|
||||
<TELL "You can't throw that." CR>
|
||||
<RFALSE>)
|
||||
(<NOT <HELD? ,PRSO>>
|
||||
<TELL "You're not carrying the " D ,PRSO "." CR>
|
||||
<RFALSE>)
|
||||
(<AND <NOT <IN? ,PRSO ,WINNER>>
|
||||
|
@ -752,13 +770,19 @@ D ,PRSO " and both tumble to the ground." CR>
|
|||
<COND (<NOT <SET CONT <NEXT? .CONT>>> <RETURN>)>>)>
|
||||
<+ .WT <GETP .OBJ ,P?SIZE>>>
|
||||
|
||||
<GLOBAL COPR-NOTICE
|
||||
" a transcript of interaction with STARCROSS.|
|
||||
STARCROSS is a registered trademark of Infocom, Inc.|
|
||||
Copyright (c) 1982 Infocom, Inc. All rights reserved.|">
|
||||
|
||||
<ROUTINE V-SCRIPT ()
|
||||
<PUT 0 8 <BOR <GET 0 8> 1>>
|
||||
<TELL "Ok." CR>>
|
||||
<PUT 0 8 <BOR <GET 0 8> 1>>
|
||||
<TELL "Here begins" ,COPR-NOTICE CR>>
|
||||
|
||||
<ROUTINE V-UNSCRIPT ()
|
||||
<PUT 0 8 <BAND <GET 0 8> -2>>
|
||||
<TELL "Ok." CR>>
|
||||
<TELL "Here ends" ,COPR-NOTICE CR>
|
||||
<PUT 0 8 <BAND <GET 0 8> -2>>
|
||||
<RTRUE>>
|
||||
|
||||
<ROUTINE PRE-MOVE
|
||||
()
|
||||
|
@ -810,15 +834,10 @@ D ,PRSO " and both tumble to the ground." CR>
|
|||
<ROUTINE PRE-BOARD ("AUX" AV)
|
||||
<SET AV <LOC ,WINNER>>
|
||||
<COND (<FSET? ,PRSO ,VEHBIT>
|
||||
<COND ;(<NOT <HERE?? ,PRSO>>
|
||||
<TELL "The "
|
||||
D
|
||||
,PRSO
|
||||
" must be on the ground to be boarded." CR>)
|
||||
(<FSET? .AV ,VEHBIT>
|
||||
<COND (<FSET? .AV ,VEHBIT>
|
||||
<TELL "You are already in it!" CR>)
|
||||
(T <RFALSE>)>)
|
||||
(<EQUAL? ,PRSO ,SPACESUIT ,JUNK-SPACESUIT>
|
||||
(<EQUAL? ,PRSO ,SPACESUIT ,JUNK-SPACESUIT ,MOUSE>
|
||||
<RFALSE>)
|
||||
(T
|
||||
<TELL "I suppose you have a theory on boarding a "
|
||||
|
@ -865,11 +884,6 @@ D ,PRSO " and both tumble to the ground." CR>
|
|||
<SCORE-OBJ .RM>
|
||||
<RTRUE>>
|
||||
|
||||
<ROUTINE V-BACK
|
||||
()
|
||||
<TELL
|
||||
"Sorry, my memory isn't that good. You'll have to give a direction." CR>>
|
||||
|
||||
<ROUTINE V-DRINK ()
|
||||
<V-EAT>>
|
||||
|
||||
|
@ -882,7 +896,7 @@ D ,PRSO " and both tumble to the ground." CR>
|
|||
<ROUTINE V-CURSES ()
|
||||
<COND (,PRSO
|
||||
<COND (<FSET? ,PRSO ,VILLAIN>
|
||||
<TELL "Insults of this nature won't help you." CR>)
|
||||
<TELL "Insults won't help you." CR>)
|
||||
(T
|
||||
<TELL "What a loony!" CR>)>)
|
||||
(T
|
||||
|
@ -895,7 +909,7 @@ D ,PRSO " and both tumble to the ground." CR>
|
|||
<ROUTINE V-FOLLOW ()
|
||||
<TELL "You're nuts!" CR>>
|
||||
|
||||
<ROUTINE V-LEAP ("AUX" T S)
|
||||
<ROUTINE V-LEAP ("AUX" TX S)
|
||||
#DECL ((T) <OR FALSE TABLE>)
|
||||
<COND (,PRSO
|
||||
<COND (<IN? ,PRSO ,HERE>
|
||||
|
@ -906,13 +920,13 @@ D ,PRSO " and both tumble to the ground." CR>
|
|||
" is too big to jump over." CR>)
|
||||
(T <V-SKIP>)>)
|
||||
(T <TELL "That would be a good trick." CR>)>)
|
||||
(<SET T <GETPT ,HERE ,P?DOWN>>
|
||||
<SET S <PTSIZE .T>>
|
||||
(<SET TX <GETPT ,HERE ,P?DOWN>>
|
||||
<SET S <PTSIZE .TX>>
|
||||
<COND (<OR <==? .S 2> ;NEXIT
|
||||
<AND <==? .S 4> ;CEXIT
|
||||
<NOT <VALUE <GETB .T 1>>>>>
|
||||
<NOT <VALUE <GETB .TX 1>>>>>
|
||||
<TELL
|
||||
"This was not a very safe place to try jumping." CR>
|
||||
"This was not a safe place to try jumping." CR>
|
||||
<JIGS-UP "You should have looked before you leaped.">)
|
||||
(T <V-SKIP>)>)
|
||||
(ELSE <V-SKIP>)>>
|
||||
|
@ -926,12 +940,12 @@ D ,PRSO " and both tumble to the ground." CR>
|
|||
<ROUTINE V-HELLO ()
|
||||
<COND (,PRSO
|
||||
<TELL
|
||||
"I think that only schizophrenics say \"Hello\" to a " D ,PRSO "." CR>)
|
||||
"Only schizophrenics say \"Hello\" to a " D ,PRSO "." CR>)
|
||||
(ELSE <TELL <PICK-ONE ,HELLOS> CR>)>>
|
||||
|
||||
<GLOBAL HELLOS
|
||||
<LTABLE "Hello."
|
||||
"Nice weather we've been having lately."
|
||||
"Nice weather we're having."
|
||||
"Goodbye.">>
|
||||
|
||||
<GLOBAL WHEEEEE
|
||||
|
@ -987,7 +1001,7 @@ D ,PRSO " and both tumble to the ground." CR>
|
|||
()
|
||||
<COND (<NOT <FSET? ,PRSO ,TURNBIT>> <TELL "You can't turn that!" CR>)
|
||||
(<NOT <FSET? ,PRSI ,TOOLBIT>>
|
||||
<TELL "You certainly can't turn it with a " D ,PRSI "." CR>)>>
|
||||
<TELL "You can't turn it with a " D ,PRSI "." CR>)>>
|
||||
|
||||
<ROUTINE V-TURN () <TELL "That doesn't work." CR>>
|
||||
|
||||
|
@ -1001,7 +1015,6 @@ D ,PRSO " and both tumble to the ground." CR>
|
|||
<IKILL "kill">>
|
||||
|
||||
<ROUTINE IKILL (STR)
|
||||
#DECL ((STR) STRING)
|
||||
<COND (<NOT ,PRSO> <TELL "There is nothing here to " .STR "." CR>)
|
||||
(<AND <NOT <FSET? ,PRSO ,VILLAIN>>
|
||||
<NOT <FSET? ,PRSO ,VICBIT>>>
|
||||
|
@ -1056,7 +1069,6 @@ D ,PRSO " and both tumble to the ground." CR>
|
|||
|
||||
<ROUTINE HACK-HACK
|
||||
(STR)
|
||||
#DECL ((STR) STRING)
|
||||
<TELL .STR D ,PRSO <PICK-ONE ,HO-HUM> CR>>
|
||||
|
||||
<GLOBAL HO-HUM
|
||||
|
@ -1112,10 +1124,9 @@ D ,PRSO " and both tumble to the ground." CR>
|
|||
<SETG PRSO ,SPACESUIT>)>
|
||||
<TELL "It smells just like a " D ,PRSO "." CR>>
|
||||
|
||||
<ROUTINE GLOBAL-IN? (OBJ1 OBJ2 "AUX" T)
|
||||
#DECL ((OBJ1 OBJ2) OBJECT (T) <OR FALSE TABLE>)
|
||||
<COND (<SET T <GETPT .OBJ2 ,P?GLOBAL>>
|
||||
<ZMEMQB .OBJ1 .T <- <PTSIZE .T> 1>>)>>
|
||||
<ROUTINE GLOBAL-IN? (OBJ1 OBJ2 "AUX" TX)
|
||||
<COND (<SET TX <GETPT .OBJ2 ,P?GLOBAL>>
|
||||
<ZMEMQB .OBJ1 .TX <- <PTSIZE .TX> 1>>)>>
|
||||
|
||||
<ROUTINE HERE?? (OBJ)
|
||||
<OR <IN? .OBJ ,HERE> <GLOBAL-IN? .OBJ ,HERE>>>
|
||||
|
@ -1123,8 +1134,8 @@ D ,PRSO " and both tumble to the ground." CR>
|
|||
<ROUTINE V-SWIM ()
|
||||
<COND (<FSET? ,HERE ,RAIRBIT>
|
||||
<TELL
|
||||
"Waving your arms and legs about doesn't help much. You move a little, but
|
||||
some stronger impulse would be much more useful." CR>)
|
||||
"Waving your limbs doesn't help much. You move a little, but some stronger
|
||||
impulse is needed." CR>)
|
||||
(ELSE
|
||||
<TELL "You can't swim here!" CR>)>>
|
||||
|
||||
|
@ -1224,7 +1235,7 @@ some stronger impulse would be much more useful." CR>)
|
|||
<RTRUE>>
|
||||
|
||||
<ROUTINE V-REPLY ()
|
||||
<TELL "It is hardly likely that the " D ,PRSO " is interested." CR>
|
||||
<TELL "It is doubtful that the " D ,PRSO " is interested." CR>
|
||||
<SETG P-CONT <>>
|
||||
<SETG QUOTE-FLAG <>>
|
||||
<RTRUE>>
|
||||
|
@ -1306,6 +1317,8 @@ some stronger impulse would be much more useful." CR>)
|
|||
<SETG UNDER-GLOBE <>>)>
|
||||
<COND (<EQUAL? .X ,RED-DISK ,BLUE-DISK>
|
||||
<DISK-SWITCH .X <>>)>
|
||||
<COND (<AND <EQUAL? .X ,SPACESUIT ,SAFETY-LINE> ,THAT-END>
|
||||
<RTRUE>)>
|
||||
<COND (.WHERE <MOVE .X .WHERE>)
|
||||
(ELSE <REMOVE .X>)>
|
||||
<RTRUE>)>>
|
||||
|
@ -1341,12 +1354,15 @@ some stronger impulse would be much more useful." CR>)
|
|||
|
||||
<ROUTINE V-REPORT ()
|
||||
<TELL
|
||||
"Report? Why don't you wait until you've accomplished something..." CR>>
|
||||
"Report?!? Wait until you've accomplished something..." CR>>
|
||||
|
||||
<ROUTINE V-LOOK-SAFELY ()
|
||||
<COND (<FSET? ,PRSI ,TRANSBIT>
|
||||
<TELL "The " D ,PRSO " looks as before, only tinged by the
|
||||
color of the " D ,PRSI "." CR>)
|
||||
<TELL "The " D ,PRSO " looks as before">
|
||||
<COND (<NOT <==? ,PRSI ,CLEAR-KEY>>
|
||||
<TELL ", only tinged by the
|
||||
color of the " D ,PRSI>)>
|
||||
<TELL "." CR>)
|
||||
(ELSE <TELL "The " D ,PRSI " isn't transparent." CR>)>>
|
||||
|
||||
<ROUTINE V-REACH ()
|
||||
|
@ -1378,3 +1394,6 @@ color of the " D ,PRSI "." CR>)
|
|||
|
||||
<ROUTINE V-SMILE ()
|
||||
<TELL "How pleasant!" CR>>
|
||||
|
||||
<ROUTINE V-EMPTY ()
|
||||
<TELL "There's nothing to empty." CR>>
|
||||
|
|
Loading…
Reference in a new issue