Yes, this looks like a bug. I've had issues with handling of sounds before - in fact, sound doesn't work on my OpenSUSE dev setup either. And the question of which sound file format to use doesn't lead to any good answers, any choice is some form of compromise.
In any case, I've filed it as a bug, thanks for the excellent report.
Angband 4.2.4
Collapse
X
-
Ok by sheer luck I managed to reproduce the "cannot save" bug mentioned earlier.
Here's the strace output of trying to save with ^S:
Code:root@e5550:/home/eko# strace -f -t -e trace=file -p 12560 strace: Process 12560 attached with 2 threads [pid 12560] 22:32:58 openat(AT_FDCWD, "/home/eko//.angband/Angband/CharOutput.txt", O_WRONLY|O_CREAT|O_TRUNC, 0666) = -1 EMFILE (Too many open files) [pid 12560] 22:32:58 newfstatat(AT_FDCWD, "/home/eko/Games/angband/angband-4.2.4/lib/save/Eko641517.old", 0x7ffd9c794b20, 0) = -1 ENOENT (No such file or directory) [pid 12560] 22:32:58 newfstatat(AT_FDCWD, "/home/eko/Games/angband/angband-4.2.4/lib/save/Eko960892.new", 0x7ffd9c794b20, 0) = -1 ENOENT (No such file or directory) [pid 12560] 22:32:58 openat(AT_FDCWD, "/home/eko/Games/angband/angband-4.2.4/lib/save/Eko960892.new", O_WRONLY|O_CREAT|O_EXCL, 0600) = -1 EMFILE (Too many open files) [pid 12560] 22:32:58 openat(AT_FDCWD, "/home/eko//.angband/Angband/window.prf", O_RDONLY) = -1 EMFILE (Too many open files) [pid 12560] 22:32:58 openat(AT_FDCWD, "/home/eko//.angband/Angband/window.prf", O_RDWR|O_CREAT|O_APPEND, 0666) = -1 EMFILE (Too many open files) [pid 12560] 22:32:58 openat(AT_FDCWD, "/home/eko//.angband/Angband/lore.txt.new", O_WRONLY|O_CREAT|O_TRUNC, 0666) = -1 EMFILE (Too many open files)
Code:eko@e5550:~$ ulimit -n 1024
Code:eko@e5550:~$ ls -l /proc/12560/fd | wc -l 1025
I can't attach the listing to this post as it exceeds the file limit but I can send it by mail if needed.
[EDIT]
Maybe it's a problem with my system only, as
1) The sound doesn't even work
2) Launching the game with a command-line indicates a problem with the sound output:
Could not open audio output file for writing.
./angband: Failed to load sound 'amb_door_iron'
./angband: Failed to load sound 'plc_hit_hay'
./angband: Failed to load sound 'plc_hit_hay'
./angband: Failed to load sound 'plc_hit_hay'
./angband: Failed to load sound 'mco_howl_croak'
./angband: Failed to load sound 'plm_click_switch'
./angband: Failed to load sound 'plm_open_case'
./angband: Failed to load sound 'plc_miss_arrow2'
./angband: Failed to load sound 'mco_hit_whip'
./angband: Failed to load sound 'plc_hit_body'
./angband: Failed to load sound 'mco_hit_whip'
./angband: Failed to load sound 'plc_hit_hay'
./angband: Failed to load sound 'mco_creature_yelp'
./angband: Failed to load sound 'plc_hit_body'
./angband: Failed to load sound 'mco_click_vibra'
./angband: Failed to load sound 'pls_tone_headstock'
./angband: Failed to load sound 'plc_hit_body'
./angband: Failed to load sound 'mco_howl_high'
Weird thing, the output doesn't mention the extension (.mp3) ?
I suppose the process can't write/open any files after triggering a sound 1024 times in the game (ie open a door, shoot a monster,...) which is why I couldn't consistently reproduce the bug...
In the end, it's not a big deal as disabling sound solves the problem, but maybe it could be a good idea to systematically close sound files and/or have a better error handling in case of SDL sound failure like on my system?
[/Edit]Last edited by animal_waves; March 15, 2022, 22:42.Leave a comment:
-
-
Any ETA for this fix? Or should I just continue the laborious process of "probing" each monster, and doing several iterations of being careful not to kill unprobed uniques? I can do it, I've done it a few times before. I've gotten my current @ to about 40% full knowledge.Leave a comment:
-
The matrix does not list all possible curses (ex: teleportation, sickliness, envelopping curse are missing). I think the reason must be because they have no 'flags' fields in curse.txt so they don't appear in the Matrix. Other curses have such flags (ex: vulnerabilty have AGGRAVATE as a flag) so they will appear in the matrix.Leave a comment:
-
I see that my lantern (found on the floor) has not been fully ID:d. However, the resistances etc. matrix does not show any question marks. Is this supposed to happen?
edit. Found an ID scroll that reveals the lantern has been cursed. So the curse was the reason for ??, but was it so that curses we're not rune magic or something hence not showing question marks in the resistances matrix?Leave a comment:
-
Delete any old lore.txt.new in the user directory. Then try again.Leave a comment:
-
I will test it, but I suppose it uses the same function as the ^X command so I don't get too much hope.
Is the filesystem where your savefiles and lore.txt are located close to running out of inodes or space (some condition that would prevent generation of a new file)? Saving the lore happens after the savefile but looks like it has better handling of "couldn't open the file" conditions than the savefile code so you see the message about the lore.txt save failing but not about the failure to save the savefile.
I'll try to debug with strace and post here if I have any news!Leave a comment:
-
Ah yes, keymaps are working fine with SDL 1 (I recompiled for the test), so it's only affecting the SDL2 frontend.
I was surprised to see the behavior is not exactly the same (ie. the SDL frontend reminds the user to save the keymaps to a .pref file, which is not the case of the SDL2 frontend), as I was thinking the "core" of the game was the same, and the frontend only managed the UI, but it seems I was wrong!
Aaah, another problem: my game sometimes fails to save when quitting (with ^X), it complains about not being able to write lore.txt.new.
lore.txt already exists, is populated and is writable.
What's weird is that I can't reproduce the bug consistently, most of the time the save is done correctly but of course the bug happens after +30 mins of game (maybe because I killed a particular monster - but which one?-)
I already lost 2h+ of progression and two nice artifacts to this problem .
Any tips? Could my savefile be corrupted? I switched form SDL2 to SDL during this run, maybe that's the cause of the problem?Leave a comment:
-
Ah yes, keymaps are working fine with SDL 1 (I recompiled for the test), so it's only affecting the SDL2 frontend.
I was surprised to see the behavior is not exactly the same (ie. the SDL frontend reminds the user to save the keymaps to a .pref file, which is not the case of the SDL2 frontend), as I was thinking the "core" of the game was the same, and the frontend only managed the UI, but it seems I was wrong!
[Edit]
Aaah, another problem: my game sometimes fails to save when quitting (with ^X), it complains about not being able to write lore.txt.new.
lore.txt already exists, is populated and is writable.
What's weird is that I can't reproduce the bug consistently, most of the time the save is done correctly but of course the bug happens after +30 mins of game (maybe because I killed a particular monster - but which one?-)
I already lost 2h+ of progression and two nice artifacts to this problem .
Any tips? Could my savefile be corrupted? I switched form SDL2 to SDL during this run, maybe that's the cause of the problem?
[/Edit]
I'm not denying this is a bug, just a workaround in the meantimeLeave a comment:
-
Ah yes, keymaps are working fine with SDL 1 (I recompiled for the test), so it's only affecting the SDL2 frontend.
I was surprised to see the behavior is not exactly the same (ie. the SDL frontend reminds the user to save the keymaps to a .pref file, which is not the case of the SDL2 frontend), as I was thinking the "core" of the game was the same, and the frontend only managed the UI, but it seems I was wrong!
[Edit]
Aaah, another problem: my game sometimes fails to save when quitting (with ^X), it complains about not being able to write lore.txt.new.
lore.txt already exists, is populated and is writable.
What's weird is that I can't reproduce the bug consistently, most of the time the save is done correctly but of course the bug happens after +30 mins of game (maybe because I killed a particular monster - but which one?-)
I already lost 2h+ of progression and two nice artifacts to this problem .
Any tips? Could my savefile be corrupted? I switched form SDL2 to SDL during this run, maybe that's the cause of the problem?
[/Edit]Last edited by animal_waves; March 11, 2022, 22:43.Leave a comment:
-
I think I found a bug:
Creating keymaps doesn't seems to work anymore.
When saving them to a .prf file, the file is created but there's nothing in it apart for the "begin Dump keymaps" & "end Dump keymaps" comments, with nothing in it.
Keymaps created also have no effects in game, but when using the "query" menu to check their existence they are listed.
Saving other settings in .prf files works as expected (ie. subwindows configuration).
I'm using GNU/Linux SDL2 build (compiled with --with-no-install).
Also, not related, but a feedback nonetheless:
I've always wondered why the SDL2 frontend of V felt "sluggish", slow compared to other variants... now I discovered the base delay factor is set to 40 by default (I think?), lowering this number to 10 vastly improved my experience! Any reason it's this high?
As for the delay factor, that's a historic setting - maybe so new players don't miss the fact that there are missile/explosion animations?Leave a comment:
-
I think I found a bug:
Creating keymaps doesn't seems to work anymore.
When saving them to a .prf file, the file is created but there's nothing in it apart for the "begin Dump keymaps" & "end Dump keymaps" comments, with nothing in it.
Keymaps created also have no effects in game, but when using the "query" menu to check their existence they are listed.
Saving other settings in .prf files works as expected (ie. subwindows configuration).
I'm using GNU/Linux SDL2 build (compiled with --with-no-install).
Also, not related, but a feedback nonetheless:
I've always wondered why the SDL2 frontend of V felt "sluggish", slow compared to other variants... now I discovered the base delay factor is set to 40 by default (I think?), lowering this number to 10 vastly improved my experience! Any reason it's this high?Last edited by animal_waves; March 10, 2022, 18:55.Leave a comment:
-
lore.txt for your monster memory, window.prf for your subwindow setup; both these should be in your user folder (assuming Windows). The file you changed for the inventory was probably constants.txt; that usually lives in the gamedata folder, but the best option is to put your modified version in the user folder.
Let me know if I've missed anything.
I believe scores from user/scores is the other file.Leave a comment:
-
Let me know if I've missed anything.Leave a comment:
Leave a comment: