This is the README file for Angband 2.8.1 (03/04/97) [Meaning it might not apply for Zangband in all respects, of course... (TY)] Angband 2.8.1 is a semi-stable official release incorporating all of the improvements added since Angband 2.7.8. Any bugs found in Angband 2.8.1 will be fixed in Angband 2.8.2, the next stable official release. See the Official Angband Home Page "http://www.phial.com/angband/" for more information about exactly what has changed recently. === General information === Angband is a "graphical" dungeon adventure game using textual characters to represent the walls and floors of a dungeon and the inhabitants therein, in the vein of "rogue", "hack", "nethack", and "moria". There are extensive ascii "on line help" files in the "lib/help" directory. This version of Angband will run on Macintosh, Windows, Unix (X11/Curses), Linux (X11/Curses), Acorn, Amiga, various IBM machines, and many others... See Makefile, h-config.h, and config.h for details on compiling. See "Makefile.xxx" and "main-xxx.c" for various supported systems. Visit the Angband Home Page ("http://www.phial.com/angband/"), and browse through the Angband newsgroup ("rec.games.roguelike.angband"). Send bug reports, suggestions, etc, to Ben Harrison ("benh@phial.com"). === Quick and dirty compilation instructions (for Unix) === Step 1: Acquire. Ftp to "export.andrew.cmu.edu:/angband/Source" Try "bin" and "mget angband*.tar.gz" and "y" Step 2: Extract. Try "gunzip *.gz" then "tar -xvf *.tar" Step 3: Prepare. Try "cd angband*/src", then edit "Makefile" You may also edit "h-config.h" and "config.h" Step 4: Compile. Try "make", and then "cd .." if successful Step 5: Execute. Try "angband -uTest" to initialize stuff Step 6: Play.... Read the "online help" via the "?" command. === Special instructions for other systems === The IBM requires extraction with "pkunzip -d" to create subdirectories. The Macintosh requires that the "lib" folder be in the same folder as the executable. Also, note that System 7.5 (and perhaps others) are brain damaged, and may default to the incorrect folder for opening savefiles. Make sure you keep all your savefiles in the proper place, and if you load a savefile from the wrong place, note that the game may decide to re-save your savefile in the proper place when you quit. === Upgrading from older versions or other platforms === If you have been playing Angband on a different platform, or with an older version of Angband, it may be possible to "upgrade" to Angband 2.8.X, keeping your old savefiles, high score list, and other files, instead of starting over. Angband 2.8.X uses a platform independant file format for the binary files that store information about games in progress, known as "savefiles". Also, Angband 2.8.X is able to translate savefiles from any version of Angband from Angband 2.5.1 on. Unfortunately, pre-2.5.1 savefiles are not usable, since they used a system specific savefile format, and did not have an official definition, and sometimes include assumptions that are no longer valid. To use an old savefile, simply copy it into the "lib/save" directory, changing the name of the savefile (if necessary) to satisfy the requirements of the platform you are using. In general, the savefile should be named "UUU.NNN" or "NNN" where "UUU" is the userid of the player (on "multiuser" systems), and "NNN" is the name of the "character" in the savefile. Note that only "multiuser" platforms use the "UUU.NNN" form, and the "period" is required. Angband 2.8.X uses a platform independant (?) file format for the binary file used to store the high score list. This file may be moved between platforms (if needed) or copied from older versions (Angband 2.7.4 or later). Angband 2.8.X uses a high score file called "scores.raw", which is kept in the "lib/apex" directory. Older versions kept the "scores.raw" file in the "lib/data" directory, along with several other version specific files. Angband 2.8.X uses a platform independant file format for the ascii files used to store information about dead players, which is used to help create "player ghosts" in the dungeon. If necessary, these files, which are kept in the "lib/bone" directory, may be copied from older versions, as long as you make sure that they are renamed as "bone.XXX" where XXX is the level on which the dead player died, and that every line in the file is "complete". It is also possible to delete the contents of the "lib/bone" directory at any time, which will prevent the creation of player ghosts. Currently, these files are not actually used by the game. Angband 2.8.X uses a set of ascii "configuration files" which are kept in the "lib/file" directory (see below). Certain of these files may be taken from older versions, though most are optional for the most common configurations. Angband 2.8.X uses a set of ascii "user pref files" which are kept in the "lib/user" directory. Some of these files are usable on multiple platforms, but in general they are restricted to a single platform. In general, "pref" files from older versions may be used with Angband 2.8.X, by moving them to the "lib/user" directory from the old "lib/pref" or "lib/pref-*" directories, but note that some important changes have been made in Angband 2.8.X, and, for example, old "pref" files which change the "attr/char" definitions of "terrain" features such as walls or doors must be changed to use the new methods. Make sure to put comments in your "user pref files" describing the purpose and the proper platform for your files, to facilitate future upgrades. === Directory "src" === The "src" directory contains the complete set of source files. The "main-???.c" and "Makefile.???" allow compilation on various systems. Some of these systems (Macintosh, Windows) require "extra" files, most of which are located elsewhere (except for the "A-mac-h.*" Macintosh files). === Directory "lib" === The "lib" directory contains all of Angband's special sub-directories. === Directory "lib/apex" === The "lib/apex" directory contains the "high score" files. The "scores.raw" file contains the "high score" table, in a "semi-binary" form, that is, all the bytes in the file are normal ascii values, but this includes the special "nul" or "zero" byte, which is used to separate and pad records. You should probably not attempt to modify this file with a normal text editor. This file should be (more or less) portable between different platforms. It must be present (or creatable) for the game to run correctly. === Directory "lib/bone" === The "lib/bone" directory contains special "player ghost" template files. The files in this directory have filenames of the form "bone.NNN" where "NNN" is the level on which the player died. They contain information about the dead player, currently, one line each for the player name, maximum hitpoints, race, and class. These files are probably portable, and are probably compatible with older bone files, if those files are renamed, and a final newline is added for compatibility. Actually, only the "player name" from these files is actually used. === Directory "lib/data" === The "lib/data" directory contains various special binary data files. The files 'f_info.raw', 'k_info.raw', 'a_info.raw', 'e_info.raw', 'r_info.raw', and 'v_info.raw' are binary image files constructed by parsing the ascii template files in "lib/edit", described below. These files are required, but can be created by the game if the "lib/edit" directory contains the proper files, and if the game was compiled to allow this creation. === Directory "lib/edit" === The "lib/edit" directory contains various special ascii data files. The files 'f_info.txt', 'k_info.txt', 'a_info.txt', 'e_info.txt', 'r_info.txt', and 'v_info.txt' are ascii template files used to construct the binary image files in "lib/data", described above. These files describe the "terrain features", "object kinds", "artifacts", "ego-items", "monster races", and "dungeon vaults", respectively. The ascii template files are easier to edit than hard-coded arrays, and also prevent compilation errors on some machines, and also shrink the size of the binary executable, and also provide a user-readible spoiler file of sorts. These files are optional if the game is distributed with pre-created binary raw files in "lib/data". === Directory "lib/file" === The "lib/file" directory contains various special ascii data files. The 'news.txt' file is displayed to the user when the game starts up. It contains basic information such as my name and email address, and the names of some of the people who have been responsible for previous versions of Angband. You may edit this file (slightly) to include local "site specific" information such as who compiled the local executable. You should refer the user to a special "online help" file, if necessary, that describes any local modifications in detail. The first two lines of this file should be blank, and only the next 20 lines should contain information. The 'dead.txt' file is displayed to the user when the player dies. It contains a picture of a tombstone which is filled in with interesting information about the dead player. You should not edit this file. The optional file 'wizards.txt' may be used to specify which users may enter 'wizard' mode. A missing file provides no restrictions, and an empty file prevents everyone from entering 'wizard' mode. This file is only used on multi-user machines, otherwise there are no restrictions. The optional file 'time.txt' may be used to restrict the "times" at which the game may be played, by providing specification of which hours of each day of the week are legal for playing the game. See 'files.c' for more details. A missing file provides no restrictions, and an empty file will, by default, forbid the playing of the game from 8am-5pm on weekdays. This file is only used on multi-user machines, and only if CHECK_TIME is defined, otherwise, there are no restrictions. The optional file 'load.txt' may be used to restrict the "load" which the game may impose on the system. See 'files.c' for more details. A missing file provides no restrictions, and an empty file will, by default, restrict the "current load" to a maximal value of 100*FSCALE. This file is only used on multi-user machines, and only if CHECK_LOAD is defined, otherwise, there are no restrictions. === Directory "lib/help" === The "lib/help" directory contains the "online help" files. This directory is used to search for normal "on line help" files. === Directory "lib/info" === The "lib/info" directory (optional) contains the "spoiler" files. This directory is used to search for any "on line help" file that cannot be found in the "lib/help" directory. The user may "redirect" this directory to point at any available directory. Note that the default "help.hlp" file allows the "9" key to access a help file called "spoiler.hlp", and allows the "0" key to access "user.hlp". These special help files can thus be placed in the user's own "info" directory to allow the on line help to access his files. === Directory "lib/save" === The "lib/save" directory contains "savefiles" for the players. Each savefile is named "NNN" where "NNN" is the name of the savefile, or, on some machines, the name of the character, or, on multi-user machines, "UUU.NNN", where "UUU" is the player uid and "NNN" is the savefile name. The savefiles should be portable between systems, assuming that the appropriate renaming is perfomed, and any file "type" information is specified (for the Macintosh). === Directory "lib/user" === The "lib/user" directory contains the "user pref files", if any. In general, these files are used to "customize" aspects of the game for a given site or a given player. These files can define "macros" (which allow a single keypress to perform a complex action), set options (which affect how the game will handle various situations), and specify visual mappings for various monsters, objects, or terrain features. See "files.c" for more information on the proper "format" of these files. === Directory "lib/xtra" === The "lib/xtra" directory contains special system files, if any. --- Ben ---