Early Roguelike Collection
Find a file
John "Elwin" Edwards 6dfde944f0 Rogue V4, V5: disable a cheat granting permanent monster detection.
In these two games, a potion of monster detection turns on the player's
SEEMONST flag.  A fuse is set to call turn_see() to turn the flag back
off.  But the save and restore functions do not recognize turn_see() and
fail to set the fuse up again.

When restoring, Rogue V4 merely sets the fuse's function to NULL and
leaves it burning.  When it goes off, a segfault results.  Rogue V5
clears all the fuse's fields, and the player retains the ability to see
all monsters on the level.

The save and restore code can now handle the fuse.  The function used is
a new wrapper, turn_see_off(), which should lead to less problems with
daemons being multiple incompatible types.

Also, Rogue V4 and Super-Rogue now properly clear unrecognized daemon
and fuse slots when restoring a saved game.
2016-03-05 12:10:20 -05:00
arogue5 Merge the GCC5 and build fix branches. 2016-03-02 21:28:34 -05:00
arogue7 Merge the GCC5 and build fix branches. 2016-03-02 21:28:34 -05:00
rogue3 Merge the GCC5 and build fix branches. 2016-03-02 21:28:34 -05:00
rogue4 Rogue V4, V5: disable a cheat granting permanent monster detection. 2016-03-05 12:10:20 -05:00
rogue5 Rogue V4, V5: disable a cheat granting permanent monster detection. 2016-03-05 12:10:20 -05:00
srogue Rogue V4, V5: disable a cheat granting permanent monster detection. 2016-03-05 12:10:20 -05:00
xrogue Merge the GCC5 and build fix branches. 2016-03-02 21:28:34 -05:00
install-sh Only include one copy of the install-sh script. 2015-06-05 18:02:17 -04:00
README.txt Update the Visual Studio project files. 2015-08-18 13:23:56 -04:00
roguelike.sln Update the Visual Studio project files. 2015-08-18 13:23:56 -04:00

This is the source for the Roguelike Gallery's versions of Rogue and other
early roguelike games.

The code was obtained from the Roguelike Restoration Project
(rogue.rogueforge.net).  Modifications have been made mainly for compatibility
with the dgamelaunch online play system.  Some bugs have also been fixed, and
the build process slightly improved.  The essential flavor of a codebase half
as old as stored-program computing machinery remains unchanged.

Advanced Rogue 7 and XRogue were recently added and are still in an
experimental state.

To install on Unix (including OS X):

If you checked out the source from Mercurial, run 'autoreconf' first.

Build by running './configure' and then 'make'.  If you just want to play the 
game from your own user account, 'configure' won't need any options.  The 
games will keep the high score lists in whatever directory you run them from.

For a multi-user installation, you will need to set the '--enable-setgid',
'--enable-savedir', '--enable-scorefile', and '--enable-logfile' options.  Run
'make install' after building.

There are other possible options; run './configure --help' for a full list.

To install on Windows:

Visual Studio solution and project files are included.  They are still being
tested but should work with Visual Studio 2015 on Windows 8.1.

You will need pdcurses before you can build.  Create a folder called 'pdcurses'
in this folder and copy into it curses.h, term.h, and pdcurses.lib from the
pdcurses distribution.

You can also build on Windows using MinGW.  Make sure pdcurses is installed.
You will have to go into the '/lib' folder and copy 'libpdcurses.a' to
'libcurses.a', and 'libpdcurses.dll.a' to 'libcurses.dll.a'; this should get
fixed soon.

It is recommended to run 'configure' with the '--disable-logfile' option, and
'make' with the 'LDFLAGS=-static' option.

Note that Super-Rogue has problems with restoring saved games on Windows,
whichever build system is used.

See the individual games' subdirectories for further documentation.  Some of 
the manpages may be outdated, but the guides to playing should be accurate.

The games can be played via SSH or the Web at rlgallery.org.

Bugs:

The original authors claimed that the list of bugs was "probably infinite".  If 
you encounter one of these, please report it on the bug tracker at 
https://bitbucket.org/ElwinR/rl.