====== Frotz ======
Frotz is a 16-bit MS-DOS interpreter for interactive fiction games. The code is maintained by David Griffith. The current version is 2.54 and can be found at the [[https://www.ifarchive.org/indexes/if-archive/infocom/interpreters/frotz/|If-Archive]].
To get Frotz to work on a BBS, you'll need Doorway, except for Linux systems where Fronz will run just fine. The current version is 2.32. Doorway will redirect the output from Frotz to the terminal, allowing games to be played easily. Doorway is still sold by PC Micro.
**NOTE**:\\
Synchronet's [[util:CIOXTRN]] is a free/open source alternative to Doorway.
====== SCFG Settings ======
Name Frotz
Internal Code Frotz
Start-up Directory ../xtrn/frotz
Command Line game.bat c:\sbbs\node%#
Clean-up Command Line
Execution Cost None
Access Requirements
Execution Requirements
Multiple Concurrent Users No
I/O Method FOSSIL
Native (32-bit) Executable No
Use Shell to Execute No
Modify User Data No
Execute on Event No
Pause After Execution No
BBS Drop File Type PCBoard PCBOARD.SYS
Place Drop File In Node Directory
Time Options Set as needed for your BBS
====== Batch File ======
C:\sbbs\xtrn\frotz
DOORWAY COM1F /S:%1 /G:ON /H /V:D /D /B:MSZ /FC /P:frotz.exe -b0 -u0 game.z8
**NOTE**:\\
In this example, the batch file needs to be named game.bat.
====== Door Specific Instructions ======
Doorway must be in the Frotz folder. Frotz will only run .z5 and .z8 interactive fiction games on the BBS.
In the batch file, you're setting up Doorway to redirect to COM1F. /S: tells Doorway where to look for .SYS file. %1 is the Node that you are passing from the command line to the batch file. /G:ON Turns on graphics. /H Halts Shells To DOS. /V:D passes the Video Mode. This mode must be Direct. /D Disables disk writes. There is no saving. /B:MSZ Handles the last line of text at the bottom or the screen properly. /FC Force carrier for Null Modems. /P is the program that you are going to run.
When you run Frotz you are passing -b0 so the background is black, the text will be white. -u0 will turn off undo, giving you more memory. You do not have to do this will all games. The last value is the game you're going to run.
**NOTE**:\\
You can also add -x on the command line for old Infocom games so the abbreviations work for x/g/z. Examine/Again/Wait
====== Register DOORWAY ======
DOORWAY can still be registered at pcmicro.com. You can use it for 30 days to try it out, but the program will only run for 10 minutes.
====== Linux Script to Save User Positions ======
Save the following script as rungame in your /sbbs/xtrn somewhere, such as /sbbs/xtrn/infocom. Change GAMEPATH as appropriate. I have all my Infocom games in the same /sbbs/xtrn/infocom directory for ease of use.
#!/bin/bash
stty kill undef
stty erase ^?
if [ -z $1 ] ; then
echo "Must provide a user number"
exit 1
fi
if [ -z $2 ] ; then
echo "Must provide a filename"
exit 1
fi
BASENAME=$(echo $2|cut -f1 -d.)
GAMEPATH=/sbbs/xtrn/infocom
SAVEPATH=/sbbs/data/user/${1}/${BASENAME}
if [ ! -d ${SAVEPATH} ] ; then
mkdir -p ${SAVEPATH}
fi
/usr/local/bin/frotz -R ${SAVEPATH} ${GAMEPATH}/${2}
Then an scfg example would be:
[Hitchhiker's Guide to the Galaxy]
1: Name Hitchhiker's Guide to the Galaxy
2: Internal Code ICHHGG
3: Start-up Directory ../xtrn/infocom
4: Command Line rungame %4 hitchhiker.z3
5: Clean-up Command Line
6: Execution Cost None
7: Access Requirements
8: Execution Requirements
9: Multiple Concurrent Users Yes
10: I/O Method Standard
11: Native Executable/Script No
12: Use Shell or New Context No
13: Modify User Data No
14: Execute on Event No
15: Pause After Execution No
16: Disable Local Display No
17: BBS Drop File Type None
18: Place Drop File In Node Directory
19: Time Options...
The %4 means the users user number, zero-filled to 4 digits.
Any saved games will be in /sbbs/data/user/xxxx/gamename
===== See Also =====
* [[:howto:door:|howto:door index]]
{{tag>}}