winadv21.wri -- Colossal Cave Adventure for Windows 3
WINADV 2.1
Colossal Cave
Adventure
for Windows 3
(550 point version)
Wolfgang Strobl, strobl@gmd.de
WINADV is a port of the classical Colossal Cave text adventure to Windows 3. It is the result of a few nights work based on the source code of a pure text mode Unix program downloaded from one of the ftp servers carrying sources.
I added a few GUI bells and whistles to the game, but tried to maintain the original look & feel at the same time. While it is still possible to play the game using keyboard commands only, the addition of a few buttons for the most common command verbs, and a resizeable and scrollable output window (based on Alan Phillips TextView DLL) makes the play much more comfortable.
Sometimes this mixture of two user interfaces is a bit confusing. For example pushing the "quit"-button triggers the question "Do you really want to quit now?" in the output window, and has to be answered with "yes" or "no", either using one of the buttons labeled "yes" and "no", or by typing "yes" or "no" into the input window and hitting the Enter key (or pushing the OK button).
Instead of giving the dreaded "This program requires Windows" message, WINADV runs the text based DOS equivalent of the game, when called from the DOS command prompt.
Installation
The game consists of six files contained in one archive file:
WINADV.EXE the game program, for both DOS and Windows
TEXTVIEW.DLL Alan Phillips TextView DLL,
ADV.KEY Game database
ADV.REC "
WINADV.WRI this file, documentation
README.1ST as it says
Copy all files into a fresh subdirectory and run WINADV from there. It is a good idea to move the TEXTVIEW DLL to the Windows system directory (\WINDOWS\SYSTEM, usually), if it isn't already there. Add WINADV.EXE to the games group of the program manager. WINADV needs the two game database files ADV.KEY and ADV.REC in its current directory).
Running the game
Start the game, for example by double clicking on its icon in the program manager. It creates the main window (which contains part of a nice black and white picture of a dragon, from M.C.Escher). Now two additional windows get created: one called "WinAdv - Output window", which contains the game messages in black letters and your input in blue letters, and another one called "WinAdv - Input window" which allows keyboard input of commands.
Saving and reloading the state of the game
As described in the answer to the "info" command, you can stop the game and save the actual state by using the "save" command in order to restore it at a later time.
Saving the content of the output window
The output window has a menu entry "File" with one subentry "Save". It causes the current content of the output window to be saved into a file "ADVTRCnn.TXT" in the current directory, where nn is the smallest two digit number so that a file with that name doesn't already exist. I.e. successive calls of "Save" result in files named ADVTRC01.TXT, ADVTRC02.TXT and so on. The whole output window content including the parts which have scrolled away will be saved.
Don't confuse this with the "save" command within the game itself. The output window save file is just a hardcopy of what you played, while the save command (given by typing it into the input window) gives you the ability to restore the game state, later, but doesn't show how you got there.
The output window
The output window as a "Scrolling" menu entry, which allowes "Automatic" and "Manual" scrolling. The initial state is Automatic, which essentially mimics the behavior of a scrolling ascii text terminal, where the last n lines of output are visible. Setting the mode to "Manual" adds a vertical scroll bar, which allows scrolling back and forth and to inspect previous lines of output, up to the initial greeting messages. The output windows has place for 2000 output lines, if enough memory is available.
The scrolling mode of the output window is forced to be "Automatic", if the input window gets the keyboard focus back. This is because the current implementation of the TextView window (the output window) isn't able to store lines when in "Manual" mode.
The output window uses the system font by default. The font and its size can be changed using the "Font..." menu entry in the main window, if WinAdv is running under Windows 3.1 or Windows 3.0 with an installed COMMDLG.DLL library. After selecting a different font or size (attributs like bold or italic are ignored), the output window is closed and recreated using the just selected font. Unfortunately, this implicitly discards the output window content. So be carefull - save the output window content in a file, if you need it, before you change its font.
The attributes of the selected font are stored in a file WINADV.INI in the Windows directory and are used for later games.
The output window is resizeable. The actual width of the output window will be remembered for later use in WINADV.INI, when you quit the game.
Technical notes
The executable WINADV.EXE contains both the DOS and the Windows version of the game interpreter. If you start it from within a DOS box, it will run as a DOS program in line mode. Both versions use the same game database (adv.key and adv.rec).
Status of the game
The Colossal Cave adventure game is public domain, as far as I know. WINADV.EXE and this documentation ("the archive") , i.e. the port of the game to Windows is
© Copyright 1991, 1992 by Wolfgang Strobl, all rights reserved,
Distribution of this program is granted, if the collection of the six files (see "Installation") is distributed together and no part is modified and no money is charged for it. It is only allowed to distribute this program, if the recipient has the right to distribute this program further. It is explicitly forbidden to distribute this program, if the recipient isn't allowed to distribute the game either as copy of the archive, or as full copy of the medium (floppy disk, for example) he or she got the game on, at the recipients choice. The inclusion of this program into a collections of programs implies that the distributor of the collection implies this permission to copy.
If you like the game, drop me a postcard with the picture of a bicycle (really!):
Wolfgang Strobl
D-5300 Bonn 1
Germany
______________________________________________________________________
The TextView DLL is © Alan Phillips 1991.
I have included the release note from the author who wrote the source code on which I based my Windows port (Ken C. Wellsch) at the end of this document.
History of WinAdv
Version 1 Initial release. Unfortunately, the sources that where the base of this port where broken, making playing the game more difficult than it should have been. A second attempt to start with the original Fortran sources failed because none of the Fortran to C converters I have access to understood the ancient programming style this game was written in.
Version 2 is based on a different sources. This should fix most problems with the game itself.
Version 2.1 A font selection dialog has been added, and the width of the output window is now remembered in WINADV.INI. Manual editing of WINADV.INI shouldn't be necessary, anymore. The font dialog requires the COMMDLG.DLL (standard on Windows 3.1). I don't own the Windows 3.1 SDK (I've reengineered the COMMDLG.DLL interface only), so I can't supply the COMMDLG.DLL with this game.
The game windows can be brought to top just by starting it a second time, for example by doubleclicking it in the Program Manager. This works whether the game is iconized or not.
Release note for the game sources
From kcwellsch@watdragon.UUCP (Ken C. Wellsch) Mon Jul 7 15:10:06 1986
Path: beno!seismo!caip!clyde!watmath!watnot!watdragon!kcwellsch
From: kcwellsch@watdragon.UUCP (Ken C. Wellsch)
Newsgroups: net.sources.games
Subject: Adventure -- part 0 of 7
Message-ID: <1182@watdragon.UUCP>
Date: 7 Jul 86 19:10:06 GMT
Reply-To: kcwellsch@watdragon.UUCP (Ken C. Wellsch)
Organization: U of Waterloo, Ontario
Lines: 81
I have been meaning to submit this game for some time but never seemed
to find time to do it. This version of Adventure is taken from a Zerox
Sigma-9 (rest her soul!), originally written by Dave Platt of Honeywell
under CP-V (in Fort-77). I rewrote it into Ratfor many years ago and a
couple years ago rewrote it again in C. This is the 550 point version
of Adventure (for those who only know the 350 point original).
I had a lot of fun playing it on the SIGMA-9, and rewriting it, I hope
you enjoy it too! Watch out, having the database can certainly ruin
the game if you look at it!
The system components such as restricting the programs use etc. have
been left incomplete. I had done them back in the old Ratfor version
under V7 but each system can be quite different about determining load
etc. so I didn't bother (a lame excuse I know).
+--------------------------------------------------------------------------
|
| CP-V Adventure
|
| Originally written by David Platt (from the 350 point Adventure),
| UNIX C Version written by Ken Wellsch, with several modifications.
|
| Original release notice from 12/1/79:
|
| FOR THE OFFICIAL STUFF: PERMISSION IS HEREBY GRANTED TO ALL
| USERS TO POSSESS, USE, COPY, DISTRIBUTE, AND MODIFY (BUT NOT
| TO SELL) THE PROGRAMS AND FILES IN THIS PACKAGE.
|
| IF YOU HAVE ANY PROBLEMS GETTING THIS TURKEY INSTALLED, FEEL
| FREE TO WRITE OR CALL - AND HAVE FUN, FOLKS
|
| DAVID PLATT
| HONEYWELL LOS ANGELES DEVELOPMENT CENTER
| 5250 WEST CENTURY BOULEVARD
| LOS ANGELES, CALIFORNIA 90045
| (213) 649-6870 x253
| HVN 369-1253
|
| Current release notice as of 8/11/85:
|
| Permission is hereby granted to all users to possess, use, copy,
| distribute, and modify the programs and files in this package
| provided it is not for direct commercial benefit and secondly,
| that this notice and all modification information be maintained
| along with the package.
|
| Ken Wellsch
| University of Waterloo
| CS Graduate Department
| Waterloo, Ontario N2l 3G1
| (519) 888-4518
|
|
|History:
|
| 1979 winter:
| -- Running on XEROX SIGMA-9 under CP-V.
| Written in Fortran-77 by David Platt.
|
| 1982 winter:
| -- Completely rewritten for PDP 11/44 under UNIX Version 7.
| Written in Rational FORTRAN (ratfor) by Ken Wellsch.
| 1984 fall:
| -- Once again rewritten, this time for a VAX 11/780,
| under UNIX BSD 4.2. Written in C by Ken Wellsch.
|
|
| Copyright (c) 1979 David Platt Database & Methods
| Copyright (c) 1984 Ken Wellsch C Code & Modifications
|
+--------------------------------------------------------------------------
--
------------------------------------------------------------------------------
-- Ken C. Wellsch, CS Dept., U. Waterloo, Waterloo, Ontario, Canada N2L 3G1 --
CSNET:kcwellsch%watdragon@waterloo.csnet HOME:1-519-746-4984
ARPA :kcwellsch%watdragon%waterloo.csnet@csnet-relay.arpa OFFI:1-519-888-4518
UUCP :...!{allegra|clyde|linus|utzoo|inhp4|decvax}!watmath!watdragon!kcwellsch
------------------------------------------------------------------------------
