1 $! NetHack.Com -- sample command procedure for invoking NetHack 9-JAN-1993
4 $! Possible command line arguments include
5 $! "-uConan-B" !play a barbarian named Conan
6 $! "-u" "Merlin-W" !play a wizard named Merlin (slight variant of above)
7 $! "-e" or "-E" !play an elf with default name (from environment
8 $! ! [ie, NETHACKOPTIONS logical name] or VMS username)
9 $! "-a" or "-A", "-b" or "-B", "-c" or "-C", ... !specify character type
10 $! !note: "-s" is ambiguous between "play as a samurai"
11 $! ! vs "show scoreboard", so use "-S" for the former
12 $! "-x" or "-X" !play in 'explore' mode (practice for beginners)
13 $! "-D" !play in 'wizard' mode (for debugging, available only
14 $! ! to the username compiled into nethack.exe as WIZARD)
15 $! "-dec" !turn on DECgraphics mode (VT100 line drawing, done
16 $! ! automatically below if appropriate term attribs set)
17 $! "-d" dir-path !specify an alternate playground directory (not
18 $! ! recommended; define HACKDIR instead)
22 $! assume this command procedure has been placed in the playground directory;
23 $! get its device:[directory]
24 $ hackdir = f$parse("_._;0",f$environ("PROCEDURE")) - "_._;0"
26 $! hackdir should point to the 'playground' directory
27 $ if f$trnlnm("HACKDIR").eqs."" then define hackdir 'hackdir'
29 $! termcap is a text file defining terminal capabilities and escape sequences
30 $ if f$trnlnm("TERMCAP").eqs."" then define termcap hackdir:termcap
32 ! [ obsolete: now handled within nethack itself ]
33 ! $! prior to VMS v6, the C Run-Time Library doesn't understand vt420 :-(
34 ! $ TT$_VT400_Series = 113
35 ! $ if f$getdvi("TT:","DEVTYPE").eq.TT$_VT400_Series -
36 ! .and. f$trnlnm("NETHACK_TERM").eqs."" then define nethack_term "vt400"
38 $! use the VT100 line drawing character set if possible
40 $ usropt = f$trnlnm("NETHACKOPTIONS")
41 $ if usropt.eqs."" then usropt = f$trnlnm("HACKOPTIONS")
42 $ if f$locate("DECG",f$edit(usropt,"UPCASE")) .ge. f$length(usropt) then -
43 if f$getdvi("TT:","TT_DECCRT") .and. f$getdvi("TT:","TT_ANSICRT") then -
44 $ graphics = " -dec" !select DECgraphics mode by default
46 $! get input from the terminal, not from this .com file
49 $ nethack := $hackdir:nethack
50 $ if p1.nes."-s" .and. p1.nes."-s all" then -
51 nethack = nethack + graphics
52 $ nethack "''p1'" "''p2'" "''p3'" "''p4'" "''p5'" "''p6'" "''p7'" "''p8'"