unnethack / unnethack Goto Github PK
View Code? Open in Web Editor NEWNetHack fork that is in development
Home Page: https://unnethack.wordpress.com
NetHack fork that is in development
Home Page: https://unnethack.wordpress.com
General information about UnNetHack =================================== UnNetHack is a fork of NetHack, originally based on NetHack version 3.4.3. It features more randomness, more levels, more challenges and more fun than vanilla NetHack. In a nutshell I would describe UnNetHack as "how NetHack would look today if the DevTeam didn't stop releasing", following a modern open source project approach of development. The project page with detailed information about changes from NetHack, the development blog, public servers, source code repository and ways to reach the developer can be found at: https://unnethack.wordpress.com/ For discussions, join the IRC channel #unnethack on Libera.Chat, post to the Reddit group r/nethack or the Usenet group rec.games.roguelike.nethack. -- Good luck, and happy Hacking
After I try to save a character, I can see the save file in the main unnethack folder, but if I relaunch the game there is no saves in the "who are you" screen. I can resume the character by typing in the character's name manually. Not sure if related, but saving does not put any file into the "save" folder. Is there a setting that I need to change somewhere?
Ascended (as a knight). Got the error:
impossible called impossible
Postgame wrapup disrupted.
Report error to "wizard".
Last thing that worked was showing me my conduct.
I'm a dirty save-scummer, so i can reproduce.
Unix UnNetHack Version 6.0.5 - last build Thu Jun 2 21:53:19 2022.
~/src/UnNetHack@mx-5% git log | head
commit be3bd338a66bc72439a51ba8032a20e73031299f
Darwin mx-5.icpsr.umich.edu 21.5.0 Darwin Kernel Version 21.5.0: Tue Apr 26 21:08:22 PDT 2022; root:xnu 8020.121.3~4/RELEASE_X86_64 x86_64
Klaak reported:
Tried to wear my glowing dragon scales while standing next to an opposite gender foocubus, which initiated its seduction attack in the middle of the turns required to put on my scales.
This was the output:
a - a blessed +0 athame (weapon in hand) {10}.
What do you want to wear? [gHJ or ?*]
You feel very attracted to the incubus. The incubus murmurs sweet nothings into your ear. "Take off your suit; let's get a little closer."
Warning: end_burn: obj set of disintegration dragon scales not lit. The set of disintegration dragon scales stops glowing. Time stands still while you and the incubus lie in each other's arms...
I've noticed, that massacre vault is missing the convict corpse. Probably, because vault was implemented earlier than Convict role was introduced and vault wasn't updated.
I fell through the final level of sokoban by walking over a pit and was teleported to walled tile just outside the level 3h map. And I guess there's no way to get out. [https://nethackwiki.com/wiki/Sokoban_Level_3h](see level 3h here) notice the empty tile to the right of the down stair, that's where I fell and got stuck. I've not yet quit the game just incase there's a way out...
When levitating and attempting to move onto pit trap spaces, the game prompts "Do you really want to step into that pit? [yn] (n)".
I would really love to play this with YHACS
When you #ride your horse and it gets stuck in a bear trap you can just
unmount it (#ride) and she will be pulled out of the trap.
When building in parallel, like make -j16
the build fails occasionally on missing date.h
file:
$ ./configure --enable-curses-graphics --disable-tty-graphics --with-owner=no --with-group=no --with-gamesdir=/tmp/unnethack
$ make -j16
gcc -DAUTOCONF -Wall -I../include -I./../include -g -O2 -c ./../sys/unix/unixmain.c
./../sys/unix/unixmain.c:9:10: fatal error: date.h: No such file or directory
9 | #include "date.h"
| ^~~~~~~~
AFAIU date.h
is an autogenerated file, but unixmain.o
does not state it's dependency on that anywhere.
It's best reproducible with make --shuffle
from GNU make-4.4
.
When using a single gem is dipped into acid and used up, it can be referenced later as obj->cursed.
Here:
Line 2824 in a1739c3
Two #ifdef WIZARD stanzas in dungeon.c look to be the culprit. One in init_level and one in init_dungeons. Removing these appears to reproduce the same layout in wizard mode as encountered in a normal game.
The 16x16 tileset has been updated so can now be used to resolve this issue (as well as give people the choice of playing with the 16x tileset)
To reproduce, read a blessed scroll of magic mapping in front of a sleeping monster (with/standing on an item), eg. in a nymph garden or leprechaun hall.
A possible fix is given here
cfe8bb3
This simple fix has the slight side effect of denying the player a glimpse at the glyph of the first item in any currently visible monster's inventory. Other detection methods provide this information at the cost of a --More-- prompt.
If stairs are generated with a subroom of a vault without doors (for example a 1x1 subroom or in the fake Oracle vault), the player might have no way of accessing the stairs.
Out of the box run of the windows download gives unable to load tiles file, reverting to default. error. The unchozo32b.bmp is present but does not seem to work... Switched to untekhack.bmp which works fine
./configure errors out with
Invalid configuration 'arm64-apple-darwin21.3.0': machine 'arm64-apple' not recognized
This was observed on an older version, where seed layout differs from the current version. The version used was compiled following the command
git checkout -b oldversion 3eb89b1
with the added modification given in #5 to get the normal layout to reproduce in wizard mode, for testing purposes. Dungeons of Doom:19 has a general store in a U shaped layout. Observe the items/mimics in the leftmost 3 columns of the shop. Setting the system clock to a specific time and date produces a different collection of items/mimics in these columns. One such occasion was April 18th 2015, 13:20 local time (12:20 UTC). The effect persists for a few minutes. I observed this effect at least two other times, but can't recall the times to reproduce. In each case, the shop generates as normal after a few minutes.
It would be nice to be able to #name an item on the floor (as you can in vanilla).
Two specific use cases
You've kicked that gray stone, it hurt, you want to name it 'loadstone' without picking it up
That scroll on the shop floor causes your pet to flee - let's name it scare monster without risking paying for used goods
I guess the alternate in both causes is to automatically name them as with other unique messages.
The 32x32 tileset includes custom walls for branches/special levels beyond those available in vanilla NetHack. Following Sokoban (the purple walls), these are:
Following those are walls intended for the quests (as these cover a variety of terrain). At present only the vanilla walls (Gnomish Mines, Gehennom, Fort Ludios, Sokoban) are enabled.
I was just trying to start 6.0.4 but I got the error "cannot load tiles bitmap", after downgrading to 6.0.3 the error is gone. Im running Win10 21H2.
Putting a wand of cancellation into a bag of holding might destroy an iron safe that is on the ground.
Iron safes should be strong enough to withstand such an explosion (although its contents could be shattered).
Fairly simple issue, though one that is causing me some serious funk due to my decades of of muscle memory!
The default setting for 'Rest' in UnNethack appears to be "." now instead of the space bar, and the Rest_on_Space option was removed I'm sure for very good reasons. As a result, I tried to use the move skip Whatis option but it doesn't appear to do Anything when I try to toggle it between True and False.
I would LOVE to try out Unnethack for the first time, is there something I'm missing or is this just Nertz?
In the tilesets folder, it says for untiles32x.png
:
(currently out of date for 4.0.0, will be updated later)
Consider this a feature request for that.
If I use the current file for the latest version, will the game still be playable?
Recent run on an HF server using UnNetHack 6.0.3
On a couple of levels - primarily VotD and the elemental planes - I was getting the following errors -
makemon trying to create a monster at <81,0>?
Program in disorder; you probably should S)ave and restart the process.
makemon trying to create a monster at <81,0>?
Program in disorder; you probably should S)ave and restart the process.
makemon trying to create a monster at <81,0>?
Program in disorder; you probably should S)ave and restart the process.
Restarting had no effect but going to the next level stopped until for a while. Not sure whether this is an HF server issue or an UnNetHack issue.
Platform: Android
I had been playing a wizard, named Will. He died, so sad.
I started a new game, entered 'Will' as the name, got the list of classes to choose and did not make a selection. Put my phone down, it was late, I went to sleep, when I woke up the battery was low.
When I opened UnNethack it was still at the class selection screen. I chose Wizard, human, male, chaotic. Spawned into the game with (about) 50 sets of starting gear.
About 50 spellbooks (half of them force bolt), 24 spells already known. 50 +0 cloaks of magic resistance, a huge pile of different scrolls, potions, rings. Only a handful of tools, and 2 weapons:
Among the tools, both:
Most of the items had '#' as a label, and could not be used (everything was "a silly thing to eat/drink/read"). Many of the items had text similar to what you see after you die, and choose to identify your inventory, like "1 [uncursed] scroll of confuse monster [confuse monster]"
I dropped everything, and started sorting through it. Used WoC to clear the useless potions and scrolls, drank the rest (successfully), read some enchant armors, enchant weapon.
Decided to poly-pile the rest. Stacked some things up, grabbed a wand of locking to zap the nearest door while I was working. As soon as I zapped it at an open door, game crashed, no save game created.
It's possible, given the low battery over night, that Android paged out some or all of the app while at the class selection screen, and the bug occurred when it re-opened it the next morning.
MacOS 13.2.1 x64 on 16" MBP
version:
~/src/UnNetHack@mx-5% git log | head
commit a72806564aaeab8eec9a7f23807d8e0049c006b2
Author: Patric Mueller <[email protected]>
Date: Fri Jan 27 13:27:18 2023 +0100
Fix tests
Bug: Ascended, went through possessions, inventory, genocides, etc - through conduct, then got:
impossible called impossible
Postgame wrapup disrupted.
Report error to "wizard".
Can provide savefile & binaries if helpful.
Just went to clean out Sheol and got to the executioner. He was generated with a wand of magic missile, and rather than whacking me with Cleaver, he tried zapping me with the wand.
He was therefore extremely easily dispatched. I had a lot more trouble with the rest of his level than with him. Based on my tombstone from an earlier encounter, I know that's not the intent. :)
So, if someone's feeling frisky, perhaps modify him so that he'll ignore wands if he's within Cleaving distance of the player.
To reproduce, start a game in wizard mode, wish for 2 cursed loadstones, wish for a cursed scroll of flood. Move to open floor, read the scroll. The game crashes before the wizard mode life saving prompt occurs, with the message
extract_nobj: object lost
Suddenly, the dungeon collapses.
The crash occurs only when reading from a single cursed scroll of flood, reading from a stack of many such scrolls works fine.
I ran into a guard while I was in the vault with the portal. I had already killed Croesus.
I gave the guard my name, but was unable to pacify him. See attached screenshot.
Can provide (macos x64) savefile & config.log, commit was:
commit a72806564aaeab8eec9a7f23807d8e0049c006b2 (HEAD -> master, origin/master, origin/HEAD)
Author: Patric Mueller <[email protected]>
Date: Fri Jan 27 13:27:18 2023 +0100
This is generating monsters that are too difficult if the player encounters them on an early level. An example is the Ozymandias' Tomb vault, which makes up to 3 web traps, with accompanying giant spiders, and can appear from Dungeons of Doom:1. Web traps don't normally generate above depth 7.
after ./configure with --enable_x11_graphics, i get a segfault when trying to run unnethack.
Linux 5.3.0-42-generic #34~18.04.1-Ubuntu SMP Fri Feb 28 13:42:26 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
I have encountered a weird issue with UnNetHack v5.2.0-1 recently. The main problem is, that the statuscolor and menucolor patches takes no effect on the game's appearance. The NetHack wiki says, that UnNetHack incorporates the color patches by default, but I haven't found any way to switch it on. This game seems quite unplayable without being colored properly, so I need your help. What should I do to make these patches working? I have Windows 7 running on my PC, if you're interested.
# dip
What do you want to dip? [a-dfhktvxzA-DF-HMR-TVX or ?*]
What do you want to dip the long sword into? [X or ?*]
Your Vorpal Blade softly glows with a light blue aura.
Doubt my specifics matter much but:
Unix UnNetHack Version 6.0.4 - last build Fri Apr 15 16:20:01 2022.
UnNetHack-6.0.4-20220203-1f061e93b
Darwin mx-5.icpsr.umich.edu 21.4.0 Darwin Kernel Version 21.4.0: Fri Mar 18 00:45:05 PDT 2022; root:xnu-8020.101.4~15/RELEASE_X86_64 x86_64
Hi,
6.0.3 on MacOS latest, locally compiled with no configure options except --dir's
My tourist ran into some anti-magic fields early on and max power went down to zero. Based on spoilers on nethackwiki, losing max power does seem to be intended, so no problem there.
However, since that happened, I no longer get a bump in max power when I gain a level.
I've come across a few potions of gain energy so my level 22 character now has max power of 31.
This is an interesting challenge, so I'm not sure whether it is intentional or a bug, but I thought I'd report it.
At https://github.com/UnNetHack/UnNetHack/blob/master/sys/share/unixtty.c#L469 there is an attempt to set the terminal to raw mode. Unfortunately it also seems to set the speed to 0. This has the effect of terminating the login session and even the xterm (if that's what you're using) to close.
This patch avoids the issue:
+++ sys/share/unixtty.c
@@ -462,7 +462,8 @@ check_utf8_console()
}
/* set minimal raw mode */
- struct termios raw = { 0 };
+ struct termios raw = original;
+ cfmakeraw(&raw);
raw.c_cc[VMIN] = 0;
raw.c_cc[VTIME] = 3; /* timeout of 0.3 seconds */
if (tcsetattr(STDIN_FILENO, TCSAFLUSH, &raw) == -1) {
My manual tcsetattr(3) says:
The cfmakeraw function sets the flags stored in the termios structure
(initialized by tcgetattr) to a state disabling all input and output
processing, giving a "raw I/O path". It should be noted that there is no
function to reverse this effect. This is because there are a variety of
processing options that could be re-enabled and the correct method is for
an application to snapshot the current terminal state using the function
tcgetattr, setting raw mode with cfmakeraw and the subsequent tcsetattr,
and then using another tcsetattr with the saved state to revert to the
previous terminal state.
When you select pacifist in the conducts tracking menu (before starting a game), you start with your armour off and when you put it on it acts as if you have broken nudist (spawns a cobra, "You realise you were nude").
When you select nudist in the conducts tracking menu, you start with your weapon unwielded and upon breaking /pacifist/, you get the "You feel violent! Do you want to quit?" prompt.
I think the two conducts are just swapped. I think (but am not confident enough to be sure) that you can switch the two lines in wintty.c
:
https://github.com/UnNetHack/UnNetHack/blob/master/win/tty/wintty.c#L497
here the pacifist flag comes before the nudist one, but in the menu the nudist one comes before the pacifist one.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.