This has been enforcing an optional part of the FHS that proves
problematic on distributions that do not include /usr/games or
/usr/local/games on the $PATH by default. On the packagers’ side, the
Arch, Fedora, and OpenBSD packages (at least) have been patching the
Makefile.in files in order to get it to install to the bin directory
instead. On the users’ side, this comes as a rather nasty surprise
when neither the terminal nor GUI will launch the games when they have
been installed to a location not in the $PATH.
If desired by packagers or end-users, the old behavior can still be
effectively implemented by using `./configure --bindir=/usr/games`
Once the app has been launched at least once, double-clicking upon
an .lmp file should start the Chocolate Doom launcher and add
appropriate "-playdemo" command-line arguments.
Closes: #677.
This reverts commit 59aad53bbd.
Closes#665.
The original commit enhanced the behaviour of Doom to make some of the
pseudo-random behaviour less predictable. Whilst this is a nice feature, it's a
feature that vanilla lacks: replaying a demo would result in those behaviours
(wipe, pitched sound effects) being identical each time. This is not the case
with the above feature.
It could actually be quite useful to ensure that such behaviours are
reproducible to fine-tune our emulation of e.g. Doom/Heretic/Hexen pitch
shifting. Perhaps in the future our testing will be enhanced to compare
multimedia output of Vanilla versus chocolate for demo playback, in which case
we would also need to have reproducibility here.
Doomworld is now available over https: so there's no reason to link
to unencrypted http: URLs (which are just redirect anyway). Also the
idgames interface URLs have changed.
I think these were introduced when functions in the file were made
static, eg.
"static declaration of 'OPL3_EnvelopeGenOff' follows non-static declaration"
Make function prototypes static where appropriate.
If the savegame directory is unwriteable we should exit with an error -
the previous behavior caused an infinite loop of attempting to open the
same file repeatedly. Because the player may value the progress they
have made, attempt to write the savegame to a temporary directory first
before exiting with an error.
This fixes#659. Thanks to @terrorcide for the bug report.
We only initialize the joystick subsystem if usejoystick is true, but
joystick_index must also be valid in order to use a joystick, and a
negative value indicates no joystick is set.
Versions of make other than GNU make don't support automatic variables
in explicit rules, only in suffix (implicit) ones.
This fixes the build on FreeBSD (and possibly other BSD variants), which
was failing with errors like:
cp chocolate-doom-setup
usage: cp [-R [-H | -L | -P]] [-f | -i | -n] [-alpvx] source_file target_file
cp [-R [-H | -L | -P]] [-f | -i | -n] [-alpvx] source_file ... target_directory
*** Error code 64
Stop.
The server was rejecting connects when running with chex.wad, because it
was expecting the gamemode to be shareware; in fact, chex.wad contains
four episodes worth of levels (even though only five levels are used).
Technically it is therefore a retail IWAD and we should expect
gamemode=retail when using it. This fixes#647; thanks to Danfun64 for
reporting the bug.