Commit Graph
8962 Commits
Author SHA1 Message Date
nhmall 51b02a7584 correct revision of one file on the commit 2019-12-17 01:07:53 -05:00
nhmall ac6e13fd7a allow run-from-removable-device configuration on Windows
Allow a way to configure NetHack to run entirely from a USB stick
or other removable device in a way that allows everything to
reside entirely on the USB stick, and nothing on the computer's
hard drive. That could be done in versions prior to 3.6.3.

Sample:

i: is a USB stick

i:\nhdist contains the NetHack Windows distribution and a sysconf
file dropped into that distribution with the following entry in it:
	portable_device_top = nethack

No device is included in the portable_device_top entry, the device
is always the device that the nethack exe resides on. If you try
to specify a device in the portable_device_top path, the device
portion will be ignored.

portable_device_top specifies the folder on the device that is writable
by NetHack and as such it cannot be the same folder that the executable
resides in.

i:\nhdist\nethack --showpaths
Variable playground locations:
    [hackdir   ]="i:\nethack\"
    [leveldir  ]="i:\nethack\"
    [savedir   ]="i:\nethack\"
    [bonesdir  ]="i:\nethack\"
    [datadir   ]="i:\nhdist\"
    [scoredir  ]="i:\nethack\"
    [lockdir   ]="i:\nethack\"
    [sysconfdir]="i:\nhdist\"
    [configdir ]="i:\nethack\"
    [troubledir]="i:\nethack\"
NetHack's system configuration file (in sysconfdir):
    "i:\nhdist\sysconf"
The loadable symbols file (in sysconfdir):
    "i:\nhdist\symbols"
Basic data files (in datadir) are collected inside:
    "i:\nhdist\nhdat363"
No end-of-game disclosure file (disabled).
Writable folder for portable device config (sysconf portable_device_top):
    "i:\nethack\"
Your personal configuration file (in configdir):
    "i:\nethack\.nethackrc"

Without that sysconf file in the NetHack distribution folder on the
USB stick with the 'portable_device_top = '  entry, the paths
return to the default locations for 3.6.3 on Windows:

i:\nhdist\nethack --showpaths
Variable playground locations:
    [hackdir   ]="C:\Users\JaneDoe\NetHack\3.6\"
    [leveldir  ]="C:\Users\JaneDoe\AppData\Local\NetHack\3.6\"
    [savedir   ]="C:\Users\JaneDoe\AppData\Local\NetHack\3.6\"
    [bonesdir  ]="C:\ProgramData\NetHack\3.6\"
    [datadir   ]="i:\nhdist\"
    [scoredir  ]="C:\ProgramData\NetHack\3.6\"
    [lockdir   ]="C:\ProgramData\NetHack\3.6\"
    [sysconfdir]="C:\ProgramData\NetHack\3.6\"
    [configdir ]="C:\Users\JaneDoe\NetHack\"
    [troubledir]="C:\Users\JaneDoe\NetHack\3.6\"
NetHack's system configuration file (in sysconfdir):
    "C:\ProgramData\NetHack\3.6\sysconf"
The loadable symbols file (in sysconfdir):
    "C:\ProgramData\NetHack\3.6\symbols"
Basic data files (in datadir) are collected inside:
    "i:\nhdist\nhdat363"
No end-of-game disclosure file (disabled).
Your personal configuration file (in configdir):
    "C:\Users\JaneDoe\NetHack\.nethackrc"
2019-12-17 00:41:55 -05:00
nhmall a2a000656f mistake file 2019-12-15 17:59:48 -05:00
nhmall 3ad628d1e5 more makedefs 2019-12-15 17:41:27 -05:00
nhmall c201c5608b report post-release in makedefs if someone happens to build post-release code 2019-12-15 17:22:11 -05:00
Patric Mueller 9085093338 Fix compilation on platforms that split the ncurses and tinfo libraries
Some platforms compile ncurses in such a way that the tinfo library needs to
be separately linked in (e.g. Gentoo).

The tinfo library is a low-level library being used by and bundled with
ncurses.

Adding '-ltinfo' to WINTTYLIB in the hint files was considered the most robust
solution to this problem.  This still works on systems with ncurses 5.9.
Using pkg-config was ruled out as the default build of ncurses doesn't install
the necessary files.
2019-12-15 20:38:44 +01:00
nhw_cron d654a4f5d1 This is cron-daily v1-Dec-12-2019. guidebook updated: doc/Guidebook.txt 2019-12-15 13:19:35 -05:00
nhmall c13695b89d Merge branch 'NetHack-3.6' into housekeeping-to-merge-at-3.6.4-release 2019-12-15 12:44:53 -05:00
keni be01fba97a add date to Guidebook.mn title page 2019-12-15 12:38:42 -05:00
PatR 3f457b664b finalize fixes36.4 2019-12-14 16:06:07 -08:00
PatR b76f7a9ae9 update config-overflow-fix with recent 3.6 changes 2019-12-14 16:03:10 -08:00
PatR c0b74f6ba4 fixes typo 2019-12-13 17:39:39 -08:00
PatR 84bdff6976 kinda/sorta fix github issue #246
Cherry-pick 3.7.0's 565e020573.  Again,
conflict because the fixes entry goes into a different file.

When picking up from floor or removing from container fails because
there aren't any inventory slots available, pickup/take-out stops.
But the message
|Your knapsack can't accomodate any more items.
is inaccurate if there is gold beyond the stopping point.  Actually
continuing in order to pickup/take-out gold would require substantial
changes, but varying the message to be
|Your knapsack can't accomodate any more items (except gold).
when stopping is a one line fix.  The parenthesized remark is only
added if there is actually some gold after the current object and is
given regardless of whether autopickup happens to be targetting it.

Fixes #246
2019-12-13 16:15:37 -08:00
PatR f8fbe4e989 allow teleport onto the vibrating square
Cherry-pick 3.7.0's 4a3d5f95d9
(github pull request #252).  Slightly tricky because the fix entry
nowgoes into a different file.  fixes37.0 will need fixing up.
2019-12-13 15:58:56 -08:00
nhmall dacf025262 typos 2019-12-13 18:39:31 -05:00
nhmall 6a3b9c2f52 housekeeping updates for 3.6.4 2019-12-13 18:37:36 -05:00
PatR 62c271f21b polymorphed steed phrasing
When you ride your steed into a polymorph trap and it changes into a
creature that can still wear the saddle, the message is
|You have to adjust youself in the saddle on <foo>.
which sounds as if the game is telling the player that he or she needs
to do something.  Simplify it to
|You adjust yourself in the saddle on <foo>.
2019-12-13 14:01:28 -08:00
PatR 40789b7070 fix potential buffer overflow loading config file 2019-12-13 13:36:38 -08:00
PatR 49fdd32d4f comment typo 2019-12-12 12:16:50 -08:00
PatR 8a57029503 spelling and typo fixes
Submitted for 3.7.0; all but one also apply to 3.6.3.

I rewrote the curses terminal-too-small message instead of just
fixing the spelling of "minumum".
2019-12-11 12:35:45 -08:00
nhw_cron 850d37b47f This is cron-daily v1-Dec-2-2019. files updated: Files 2019-12-06 21:57:45 -05:00
nhmall a7ac5ce7f3 article fix for polymorphing steed 2019-12-06 17:50:59 -05:00
nhmall 7a3ce901ab make this branch recognizable for post-3.6.3 patch commits and patch tests 2019-12-06 16:35:47 -05:00
PatR afb4a67f0e PANICTRACE memory leak
Changing from BETA to RELEASED resulted in turning off PANICTRACE
and that exposed a minor memory leak.  Only applies to program exit
so doesn't impact play.
2019-12-06 12:59:18 -08:00
nhmall 7ea41cd31d another bit 2019-12-05 18:24:04 -05:00
nhmall 3f2abab48c README bit 2019-12-05 18:18:17 -05:00
nhw_cron bd7547fe62 This is cron-daily v1-Dec-2-2019. guidebook updated: doc/Guidebook.txt 2019-12-05 18:10:19 -05:00
nhmall d4885095ad Merge branch 'stuff-to-merge-at-3.6.3-release' into NetHack-3.6 2019-12-05 16:38:10 -05:00
nhmall 4868f83db1 more self-recover prompting cleanup (tty) 2019-12-04 13:10:12 -05:00
nhmall 67dee9d579 http to https 2019-12-04 12:26:10 -05:00
nhmall cfb382c626 more prep bits 2019-12-04 11:51:24 -05:00
nhmall 491b885777 more prep work 2019-12-04 11:46:15 -05:00
nhmall 1e6b4c1a6d doc updates for release 2019-12-04 11:36:01 -05:00
nhmall ea2b8a90ee remove conflicting prototype declared for getlock in ntconf.h with mingw build 2019-12-04 04:46:41 -05:00
nhmall 5c57804a97 fix self-recover prompting on windows
the prompting on Windows wasn't working correctly if a prior game had crashed
and the self-recover feature was trying to kick in. This impacts tty, curses,
and mswin (GUI).
2019-12-03 23:32:12 -05:00
nhmall 8a7ec78d17 add code support to make keypad behave better with swap_yz option
This is being committed commented out in include/ntconf.h.
2019-12-02 22:55:48 -05:00
nhmall 5a3b8e7b38 README update Dec 2 2019-12-02 12:05:18 -05:00
nhw_cron e5dd0e735a This is cron-daily v1-Dec-1-2019. guidebook updated: doc/Guidebook.txt 2019-12-02 07:58:34 -05:00
nhw_cron 103ad2521d This is cron-daily v1-Dec-1-2019. files updated: Files 2019-12-02 07:50:17 -05:00
nhmall 5de24d2a0d follow-up bit 2019-12-01 19:11:12 -05:00
nhmall d2d40289e6 update and/or clarify some version references 2019-12-01 19:07:28 -05:00
PatR 839597eb59 comment bit
'ick' comment was from there were multiple "You finish taking off..,"
strings that only varied by one word.  That was replaced last night.
2019-12-01 07:38:01 -08:00
PatR 8f06974414 fix #H9479 - worn dented pot can't be taken off
Taking off no-delay helmets, gloves, and boots were unintentionally
taking off suit instead and stayed worn themselves.  As far as I
saw, only helmet types "fedora" and "dented pot" were applicable;
all gloves and boots have a small multi-turn delay.  This was an
unintended side-effect of the first "slippery gloves" commit so
happened about three weeks ago.
2019-11-30 20:19:10 -08:00
nhmall 3497946074 yet-another has_color 2019-11-30 22:20:03 -05:00
nhmall d2d2887cbc leave option setting as previous (it was not part of the change) 2019-11-30 15:51:58 -05:00
nhmall e8ef02d597 one more win_proc 2019-11-30 15:27:04 -05:00
nhmall 31cfe76b67 build with TEXTCOLOR undef'd turned up a couple of things
Also, one more has_color in obsolete sys/mac folder. Adjusted code.
2019-11-30 15:05:48 -05:00
nhmall 0843c5d922 some dead code eliminations and a couple of documentation updates 2019-11-30 13:35:14 -05:00
nhmall 42a13a1198 has_color() performance fixes
Performance profiling showed that multiple strcmpi() calls were
occurring each and every time a character was going to the map.

This update:
- honors the WC_COLOR capability
- It allows a window-port to control individual color availability should the window-port wish to do so.
- Makes checking on the individual colors for the active window-port is a straightforward table lookup at the CLR_ offset.

iflags.use_color remains a master on/off switch for use of color, regardless of the capability
compiled into the game (default TRUE).

The has_color() routine, which is now a shared routine in src/windows.c, could likely be made
into a simple macro to eliminate the function call, but this update does not go that far.

This hits a lot of port files due to the window-port interface change, mostly cookie-cutter.
2019-11-30 11:44:07 -05:00
PatR 49e4dfbc0f fix teetering typo
do.c:1005:54: warning: address of function 'uescaped_shaft' will always
      evaluate to 'true' [-Wpointer-bool-conversion]
        if (trap && (uteetering_at_seen_pit(trap) || uescaped_shaft)) {
                                                  ~~ ^~~~~~~~~~~~~~
2019-11-29 11:38:42 -08:00