private puzzles -- crash opening non-existent .wts file

Started by LociOiling

LociOiling Lv 1

As discussed in the custom puzzles thread, there's a persistent crash when opening a private puzzle. Creating the private puzzle seems to go smoothly, but opening the puzzle does not.

The complaint is always about a missing .wts file:

** Encountered Crash at C:\Users\jflat06\foldit\develop\source\src\core\scoring\ScoreFunction.cc:3512
Unable to open weights/patch file. None of (./) or (./).wts or cmp-database-9cc626267aa5f6df9bcb5f94584712fd\database\scoring/weights/ or cmp-database-9cc626267aa5f6df9bcb5f94584712fd\database\scoring/weights/.wts exist

The directory cmp-database-9cc626267aa5f6df9bcb5f94584712fd\database\scoring\weights does exist, and it's full of .wts files. Not quite sure why the message mentions it twice. I don't see a file literally called ".wts", if that's what it's looking for.

For the latest test, I updated the puzzle to use "example_pdb.pdb", which is provided along with Foldit standalone. I didn't try to add any .wts files this time, since that doesn't really seem to be the problem.

The invite link is:
https://fold.it/puzzles/join?invite=gA6WovWm5oSK9JUntazYwRc%3D–TK69O83rnbYRbFZa–QnWkUFD%2Fj8WZW16RldWfhg%3D%3D

When I tried to open the updated puzzle, the result was yet another crash, log file attached.

log.txt

LociOiling Lv 1

Some good news here, although there's still a flaw in puzzle setup.

First, it looks like rmoretti answered this over in #bugs-and-feedback on Discord:

I'm not sure why we don't have default weights enabled anymore. – For a workaround, you should be able to add a .wts file to the puzzle setup. This one should be what's considered the "default" one.

The .wts file is attached, with the .txt extension added to allow posting it here. You'll need to rename the file again to remove the .txt before trying it in Foldit.

ref2015_cart.wts.txt

Adding the .wts file as suggested does get past the crash.

The flaw is that it seems necessary to supply the PDB file in the "puzzle files" list, either in addition to or instead of the "starting structure" field. The following setup works:

I had previously assumed that the "starting structure" field was for the PDB, but perhaps it's for a modified PDB.

When I used only the starting structure field, the private puzzle failed to open, as detailed in the next post.

LociOiling Lv 1

The previous post shows a correct setup.

When the PDB only appears in the "starting structure" field, theprivate puzzle fails to open. A popup appears:

The message also appears in log.txt:

standalone.application.boinc.Puzzle: {0} Exception: No .pdb or .opdb file found. in C:\Users\jflat06\foldit\develop\source\src\standalone\application\boinc\Puzzle.cc line 1598

There's no crash, so no traceback info in the log.

Although Foldit appears to hang when the message is dismissed, it's actually still responding. The Alt + P hotkey can open the puzzle menu again, which allows opening a science puzzle.

For reference, I'm using the PDB example that's distributed along with Foldit standalone. (Once again, remove the .txt before using the file.)

example_pdb.pdb.txt

When Foldit encounters an error like this opening a puzzle, it should return to the previous puzzle menu versus just sitting on a screen with no visible controls.

LociOiling Lv 1

After a further test, the "starting structure" field is not required. So you can create a puzzle with just a PDB file and the .wts file that rmoretti supplied.

One additional flaw is that there doesn't seem to be a way to remove a starting structure once you've added it to the puzzle. I had to create a new private puzzle.

The invitation link for the new puzzle is: https://fold.it/puzzles/join?invite=4FvE45eotfiEJJvbWdOa%2BKg%3D–rME8G8OidwlNnWfH–gYv%2BPW%2FxH3bf08nwnlh%2Bzw%3D%3D

Clearly, we need some better documentation. I'll try to get this info on the wiki soon.

LociOiling Lv 1

Back on the weights file bug, the file ref2015_cart.wts is included in Foldit, for example:

C:\Foldit\cmp-database-9cc626267aa5f6df9bcb5f94584712fd\database\scoring\weights

The same location gets mentioned in the error message which appears when you don't explicitly include the file:

Unable to open weights/patch file. None of (./) or (./).wts or cmp-database-9cc626267aa5f6df9bcb5f94584712fd\database\scoring/weights/ or cmp-database-9cc626267aa5f6df9bcb5f94584712fd\database\scoring/weights/.wts exist

So it seems like the logic that locates the default weights file is missing something for private puzzles.