mtkennerly / ludusavi-manifest

Backup info for PC game saves
MIT License
71 stars 13 forks source link

DOSBOX games: Blake Stone and Tomb Raider #21

Closed ajburley closed 1 year ago

ajburley commented 1 year ago

Hi, first of all thanks for this great app. I'm using it on my Steam Deck to sync a number of Steam games that don't have Steam Cloud support. In most cases it works fine.

A couple of my games are not detected by Ludusavi. I'm trying to figure out why, and what needs to be edited on PCGW. They are both DOSBOX games so I guess that has something to do with it.

So first the game "Blake Stone: Aliens of Gold" https://www.pcgamingwiki.com/wiki/Blake_Stone:_Aliens_of_Gold

The DOS save file location is listed as "\<path to game>\SAVEGAM*.BS6" which seems correct to me. On my Steam Deck, the actual file is in "/home/deck/.local/share/Steam/steamapps/common/Blake Stone Aliens of Gold/Blake Stone - Aliens of Gold/SAVEGAM0.BS6"

The Windows path refers to the DOS one. The Steam Play path points to a "pfx" directory which contains all kinds of stuff, but from experience with other games, Luduvici didn't try to backup the whole directory anyway.

Another game I am struggling with is Tomb Raider https://www.pcgamingwiki.com/wiki/Tomb_Raider_(1996)

It's a very similar story. The PCGW gives the DOS save location as "\<path to game>\SAVEGAME.*". On my Steam Deck this is "/home/deck/.local/share/Steam/steamapps/common/Tomb Raider (I)/TOMBRAID/SAVEGAME.0" but again, Ludusavi couldn't detect that file.

Again, I'm not sure what to edit on PCGW in either case.

Thanks again!

mtkennerly commented 1 year ago

Hi! This looks like an issue with the game folder being double-layered:

Ludusavi would interpret <path to game> as just the first half, and so it wouldn't expect to see the second half unless PCGW includes it explicitly.

I'm not exactly sure about PCGW's policy for DOS save locations, but I do see that Tomb Raider has a Windows path entry for <path-to-game>\TOMBRAID\saveati.*. Maybe it would be acceptable to copy the DOS paths into the Windows section (or into a Steam section, if it's possibly Steam-specific) and just add an explicit TOMBRAID or Blake Stone - Aliens of Gold folder.

It would be nice if Ludusavi could detect this automatically since it's probably a common issue, but I'm not sure how to reliably determine the subfolder name. Is there anything else in /home/deck/.local/share/Steam/steamapps/common/Tomb Raider (I) aside from the TOMBRAID subfolder? What about in /home/deck/.local/share/Steam/steamapps/common/Blake Stone Aliens of Gold?

ajburley commented 1 year ago

Hi @mtkennerly thanks a lot for responding!

For Blake Stone no, there is no other data than just that folder.

For Tomb Raider 1, there is a load of stuff there apart from the TOMBRAID folder: folders and files. I think here you can see the whole contents of the "Tomb Raider (I)" folder including the TOMBRAID subfolder: https://steamdb.info/depot/224961/

I have no idea if this folder structure is Steam-specific, I'm afraid, as I only own the Steam versions of these games. Also the Windows path entry for Tomb Raider indicates to me that there is a Windows edition of the game, but that Steam is running the DOS version rather than Windows.

Which PCGW section does Ludusavi look at when the game is running on Linux via Steam Play (Proton)? Is it looking at DOS, Windows or Steam Play sections? I was still not clear on this.

mtkennerly commented 1 year ago

It actually looks at all of the sections to some degree. For example:

ajburley commented 1 year ago

@mtkennerly Thanks for explaining. So I've added a specific "Steam" section for each game. I'm assuming that will work? Let's see, after the next manifest update.

ajburley commented 1 year ago

Checked again and those games are showing up now in Ludusavi, thanks!