Open ghost opened 9 months ago
This issue looks a LOT like the same issue I had with fallout1-ce. I opened a pull request for fallout1-ce which fixes that issue: https://github.com/alexbatalov/fallout1-ce/pull/119 If I get time I could try to reproduce this and port that fix over to fallout2-ce.
Thanks a lot for your answer! It appears that your solution is enough to solve the problem. I found the compat_makepath(basePath, drive, dir, NULL, NULL);
function call at line 26 in src/file_find.cc
of the F2CE source. Following your example, I added the compat_resolve_path(basePath);
function call right after it. After having compiled and tried out the game, I could finally save and load the game without any issues. This fix should definitely be added to the latest source.
at line 26 in
src/file_find.cc
Works perfectly, thanks. I would add that after an attempt with the broken code it is advisable to delete the sav files from the maps folder, otherwise you could start fresh games with dead ants in the trial caves...
is it merged to master?
nope
thank anyway, i'll try use fix described here
In case a ubuntu 22.04 / x64 - compatible binary helps: fallout2-ce.zip
Thanks a lot for your answer! It appears that your solution is enough to solve the problem. I found the
compat_makepath(basePath, drive, dir, NULL, NULL);
function call at line 26 insrc/file_find.cc
of the F2CE source. Following your example, I added thecompat_resolve_path(basePath);
function call right after it. After having compiled and tried out the game, I could finally save and load the game without any issues. This fix should definitely be added to the latest source.
Your fix works perfectly for me. (GOG version) Thanks a lot
Had an issue where I was unable to save (Error saving! Unable to save!), I tried fixing the path to data
like in fallout1-ce
(using upper case in the cfgs), but no luck. So then, I tried deleting the SAVEGAME
folder and having the game remake it upon saving, no luck. Adding compat_resolve_path
after compat_makepath
and after recompiling there was no issue.
Game now saves and loads just fine. Should a PR be made for this?
for linux gog install in v1.2 saving worked for innoextract method and heroic game launcher install. v1.3 save fails and compat_resolve_path(basePath);
addition in src/file_find.cc fixes again, but it is now after compat_makepath(basePath, drive, dir, nullptr, nullptr);
line.
issue addressed in PR #369
Judging from other issue reports that have been created in the past, there seems to be a common issue related to case-handling with the game files. I have installed F2CE on an unmodified copy of the GOG version of Fallout 2, with every relevant directory and file lowercased by default (namely, critter.dat, master.dat, patch000.dat, the contents of 'data' and 'sound' being all lowercased also).
When I try saving a game, I get an "Unable to save game" error, with the following debug logs being output on the console screen:
LOADSAVE: Save name: SAVEGAME\SLOT01\SAVE.DAT LOADSAVE: Save function #0 data size written: 0 bytes. LOADSAVE: Save function #1 data size written: 4 bytes. LOADSAVE: Save function #2 data size written: 2784 bytes.
Saving ".SAV" map.ARTEMPLE.SAV saved. AUTOMAP: Saving AutoMap DB index 126, level 0
LOADSAVE: Error writing save function #3 data!
LOADSAVE: Restoring save file backup...
LOADSAVE: Erasing save(bad) slot...
LOADSAVE: Erasing save(bad) slot...
I've tried many variations on the case of the directories and the files I've mentioned above, along with keeping the relevant sections in fallout2.cfg updated, but to no avail. I'm unaware if there are any specific difficulties involved in making F2CE wholly case-insensitive, but shouldn't we at least make sure that the GOG version of the game be supported out of the box, since that's how many users have obtained the game?
(BTW, I've encountered the same issue when installing F1CE on the GOG version of Fallout 1, but was able to get everything to work with some tinkering around with the filenames.)
(I'm also currently running the latest git version as of the writing of this message on a Debian system.)