1 NetHack 3.3.1 -- General information
2
3NetHack 3.3.1 is an enhancement to the dungeon exploration game NetHack.
4It is a distant descendent of Rogue and Hack, and a direct descendent of
5NetHack 3.2 and 3.3.0. This version is primarily a bug fix release.
6
7Here is a brief overview of new additions and changes in the game.
8To give more would be cheating, wouldn't it?
9
10o Many, many bug fixes and minor tweaks
11o New warning system that is more pleasant than the old one
12o The Amiga and Atari ports are resurrected
13o The Gnome toolkit interface is now offered as an experimental option
14
15
16 - - - - - - - - - - -
17
18Please read items (1), (2) and (3) BEFORE doing anything with your new code.
19
201. Unpack the code in a dedicated new directory. We will refer to that
21 directory as the 'Top' directory. It makes no difference what you
22 call it.
23
242. If there is no flaw in the packaging, many sub-directories will be
25 automatically created, and files will be deposited in them:
26
27 a. A 'dat' directory, which contains a variety of data files.
28 b. A 'doc' directory, which contains various documentation.
29 c. An 'include' directory, which contains *.h files.
30 d. A 'src' directory, which contains game *.c files used by all versions.
31 e. A 'util' directory, which contains files for utility programs.
32 f. A 'sys' directory, which contains subdirectories for files that
33 are operating-system specific.
34 g. A 'sys/share' subdirectory, which contains files shared by some OSs.
35 h. A 'sys/share/sounds' subsubdirectory, which contains sound files
36 shared by some OSs.
37 i. A 'sys/amiga' subdirectory, which contains files specific to AmigaDOS.
38 j. A 'sys/amiga/splitter' subsubdirectory, which contains files
39 for the Amiga splitter program.
40 k. A 'sys/atari' subdirectory, which contains files specific to TOS.
41 l. A 'sys/be' subdirectory, which contains files specific to Be OS.
42 m. A 'sys/mac' subdirectory, which contains files specific to MacOS.
43 n. A 'sys/mac/old' subdirectory which contains files used by
44 compilers that haven't been tested/used in a while.
45 o. A 'sys/msdos' subdirectory, which contains files specific to MS-DOS.
46 p. A 'sys/msdos/old' subsubdirectory, which contains files for old
47 MS-DOS compilers (no longer officially supported).
48 q. A 'sys/os2' subdirectory, which contains files specific to OS/2.
49 r. A 'sys/unix' subdirectory, which contains files specific to UNIX.
50 s. A 'sys/vms' subdirectory, which contains files specific to VMS.
51 t. A 'sys/winnt' subdirectory, which contains files specific to Windows NT.
52 u. A 'win' directory, which contains subdirectories for files that
53 are windowing-system specific (but not operating-system specific).
54 v. A 'win/share' subdirectory, which contains files shared by some
55 windowing systems.
56 w. A 'win/Qt' subdirectory, which contains files specific to Qt.
57 x. A 'win/X11' subdirectory, which contains files specific to X11.
58 y. A 'win/gem' subdirectory, which contains files specific to GEM.
59 z. A 'win/gnome' subdirectory, which contains files specific to GNOME.
60 A. A 'win/tty' subdirectory, which contains files specific to ttys.
61 B. A 'win/win32' subdirectory, which contains files specific to the
62 Windows NT Win32 API.
63
64 The names of these directories should not be changed unless you are
65 ready to go through the makefiles and the makedefs program and change
66 all the directory references in them.
67
683. Having unpacked, you should have a file called 'Files' in your Top
69 directory. This file contains the list of all the files you now SHOULD
70 have in each directory. Please check the files in each directory
71 against this list to make sure that you have a complete set.
72
734. Before you do anything else, please read carefully the file called
74 "license" in the 'dat' subdirectory. It is expected that you comply
75 with the terms of that license, and we are very serious about it.
76
775. If everything is in order, you can now turn to trying to get the program
78 to compile and run on your particular system. It is worth mentioning
79 that the default configuration is SysV/Sun/Solaris2.x (simply because
80 the code was housed on such a system). It is also worth mentioning
81 here that NetHack 3.3 is a huge program. If you intend to run it on a
82 small machine, you'll have to make hard choices among the options
83 available in config.h.
84
85 The files sys/*/Install.* were written to guide you in configuring the
86 program for your operating system. The files win/*/Install.* are
87 available, where necessary, to help you in configuring the program
88 for particular windowing environments. Reading them, and the man pages,
89 should answer most of your questions.
90
91 At the time of this release, NetHack 3.3 is known to run/compile on:
92
93 Apple Macintosh running MacOS 7.5 or higher, LinuxPPC, BeOS 4.0
94 Atari ST/TT/Falcon running TOS (or MultiTOS) with GCC
95 Commodore Amiga running AmigaDOS 3.0 or higher with SAS/C 6.x
96 (but see Makefile.ami about DICE and Manx)
97 DEC Alpha/VMS (aka OpenVMS AXP), running V1.x through V7.0
98 DEC VAX/VMS, running V4.6 through V7.0
99 HP 9000s700 running HP-UX 10.x, 11.x
100 IBM PC compatibles running MS-DOS with Microsoft C, Borland C++ 3.1, or
101 DJGPP. It is recommended to have at least an 80386 processor.
102 IBM PS/2 and AT compatibles running OS/2 - 2.0 and up with GCC emx
103 Intel 80386 or greater (or clone) and DEC Alpha desktop machines
104 running Windows NT
105 Intel 80386 or greater (or clone) boxes running Linux, BSDI, or
106 Windows 95,98,2000
107 Intel Pentium or better (or clone) running BeOS 4.5
108 Sun SPARC based machine running SunOS 4.x, Solaris 2.x, or Solaris 7
109
110 Previous versions of NetHack were tested on the following systems,
111 and we expect that NetHack 3.3 will work on them as well:
112
113 AT&T 3B1 running System V (3.51)
114 AT&T 3B2/600 & 3B2/622 running System V R3.2.1
115 AT&T 3B2/1000 Model 80 running System V R3.2.2
116 AT&T 3B4000 running System V
117 AT&T 6386 running System V R3.2
118 Data General AViiON systems running DG/UX
119 DEC vaxen running BSD, Ultrix
120 Decstations running Ultrix 3.1, 4.x
121 Encore Multimax running UMAX 4.2
122 Gould NP1 running UTX 3/2
123 HP 9000s300 running HP-UX
124 HP 9000s700 running HP-UX 9.x
125 IBM PC/RT and RS/6000 running AIX 3.x
126 IBM PS/2 and AT compatibles running OS/2 1.1 - 2.0 (and probably
127 Warp) with Microsoft 6.0, and OS/2 2.0 and up with IBM CSet++ 2.0.
128 Intel 80386 or greater (or clone) running 386BSD
129 Mips M2000 running RiscOS 4.1
130 NeXT running Mach (using BSD configuration)
131 Pyramid 9820x running OSx 4.4c
132 SGI Iris running IRIX
133 Stardent Vistra 800 running SysV R4.0
134 Stride 460 running UniStride 2.1
135 Sun-3s, -4s, and -386is running SunOS 3.x
136 Sun-3s and -386is running SunOS 4.x
137 Valid Logic Systems SCALD-System
138
139 Unless otherwise mentioned, the compiler used was the OS-vendor's
140 C compiler.
141
142 The Atari and Amiga ports are struggling to stay supported due to a
143 lack of people with machines and time.
144
145 With the demise of Windows NT on the DEC Alpha, no attempt has been
146 made to build NetHack 3.3.1 on that platform.
147
148 A build for Intel 80286 machines and DOS "real mode" overlaid versions
149 has been produced for 3.3.1, with a marginal attempt at tuning it for
150 suitable performance. If someone has access to real-mode compiler and
151 lots of spare time on their hands, you may be able to enhance the
152 performance even further. We don't know how well it runs on a real
153 80286 since we no longer have access to one.
154
155 - - - - - - - - - - -
156
157If you have problems building the game, or you find bugs in it, the
158development team may be reached at
159
160 nethack-bugs@nethack.org
161
162When sending correspondence, please observe the following:
163o Please be sure to include your machine type, OS, and patchlevel.
164o Never send binary files (e.g. save files or bones files) to the
165 nethack-bugs address. Whichever platform you are using, only a small
166 minority of the development team has access to it, and you will rapidly
167 annoy the others. If you have found a bug and think that your save file
168 would aid in solving the problem, send us a description in words of the
169 problem, your machine type, your operating system, and the version of
170 NetHack. Tell us that you have a save file, but do not actually send it.
171 In the rare case that we think your save file would be helpful, you will
172 be contacted by a member of the development team with the address of a
173 specific person to send the save file to.
174o Though we make an effort to reply to each bug report, it may take some
175 time before you receive feedback. This is especially true during the
176 period immediately after a new release, when we get the most bug reports.
177o We don't give hints for playing the game.
178o Don't bother to ask when the next version will be out. You will not get
179 a reply.
180Alternatively, you may fill out the bug report form on our web
181page at www.nethack.org.
182
183Patches especially should be directed to this address. If you've changed
184something to get NetHack to run on your system, it's likely that others have
185done it by making slightly different modifications. By routing your patches
186through the development team, we should be able to avoid making everyone else
187choose among variant patches claiming to do the same thing, to keep most of
188the copies of 3.3 synchronized by means of official patches, and to maintain
189the painfully-created file organization. (This process has been working since
190the time when everyone just posted their own patches to 2.3. At that time,
191there were no archived bug-fixes to give to people who got 2.3 after its initial
192release, so the same bugs kept being discovered by new batches of people.)
193We have been successful in preventing this from happening since the 3.0
194release. Please cooperate to keep this from happening to 3.3.
195
196It is inevitable that we will reject some proposed additions of new features
197either because they do not fit our conception of the game, or because they
198require more code than we consider they're worth. If we reject your feature,
199you are free, of course, to post the patches to the net yourself and let the
200marketplace decide their worth.
201
202All of this amounts to the following: If you decide to apply a free-lanced
203patch to your 3.3 code, you are on your own. In our own patches, we will
204assume that your code is synchronized with ours.
205
206 -- Good luck, and happy Hacking --
207