Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Spider: Stuck notification pops up when not stuck (yet) #340

Open
FoobarTheFatPenguin opened this issue Oct 9, 2023 · 8 comments
Open

Comments

@FoobarTheFatPenguin
Copy link

FoobarTheFatPenguin commented Oct 9, 2023

Hi!

While playing Spider variant games, I can provoke what I believe to be a premature stuck notification.

Screenshot: https://imgur.com/a/ie5bJom

As you can see, I still have cards left on the talon. I could split one of the already sorted piles to fill the empty spaces and then draw more cards from the talon. But the game tells me I'm stuck (and the hint function also has no solution).

The conditions appear to be:

  • Spider type game
  • No more hidden cards in the lower portion on the screen (don't know what it's called)
  • One or more empty spaces in the lower portion
  • All filled spaces in the lower portion correctly sorted

I can just click "Cancel" then proceed to split a deck and keep playing, eventually solving the puzzle. Therefore, I think it's wrong to tell me I have no more moves left.

PySolFC version 2.21.0 (Linux Flatpak)

@joeraz
Copy link
Collaborator

joeraz commented Oct 9, 2023

The lack of hint would explain this. The stuck checker would consider a situation where no hints have been identified, and it's not possible to draw from the talon, as a stuck game.

Rewriting the spider hints to account for this scenario should fix the issue.

@FoobarTheFatPenguin FoobarTheFatPenguin changed the title Spider: Stuck notification too mature Spider: Stuck notification pops up when not stuck (yet) Oct 14, 2023
@hajo4
Copy link

hajo4 commented Oct 3, 2024

This is not a problem of spider-games only, I got false stuck-notifications too on freecell,
eg. with 2 cells still free.
Update: I found a 'stuck'-situation in freecell with 4 free cells - screenshots available...

I also, found 'stuck'-situations with no hints, but no notifications.

@joeraz
Copy link
Collaborator

joeraz commented Oct 5, 2024

The stuck notification logic is first based on the hint logic. If there are no hints, it runs additional checks to see if drawing from the talon or redealing is a valid move, and will actually move the game along.

Can you provide screenshots/save game files of the situation where you get the false or missing stuck notification? That will help fix the issues.

@hajo4
Copy link

hajo4 commented Oct 5, 2024

FreeCell-64721240223095726080_stuck-bug.zip
This game has 2 free cells.
With stuck-notification enabled, trigger the bug by moving the red 10 of diamonds onto the black jack.

@hajo4
Copy link

hajo4 commented Oct 5, 2024

FreeCell-56897846636851724288_stuck-bug.zip
Another savegame to show the bug.
Trigger it by dropping the stack of K-Q-J from column 2
onto the free first column -> 'stuck' with 4 free cells.

@hajo4
Copy link

hajo4 commented Oct 5, 2024

Spider (2 Suits)-52776231887717523456_stuck3.zip
Now a spider-savegame, almost won.
But if you move one of the red 3-2, you get the 'stuck'-message.

@romlok
Copy link

romlok commented Oct 14, 2024

I also just experienced this with Grounds for a Divorce. Moved a 5 ♣️ into an empty cell immediately to its right and got the "no more moves" popup, even though I could clear the rest of the 5's old column. 😕

Screenshot_20241014_131945

groundsforadivorce-86005973088957497344.pso.zip

@joeraz
Copy link
Collaborator

joeraz commented Oct 25, 2024

So the original issue reported here is actually an issue with the Spider hint not being able to recognize splitting up the stacks to enable redealing as a move that would get the player unstuck. An update to the Spider hint logic would address that particular issue.

As for the others, I've split them out into a new issue, #409. This warrants further discussion, and is going to need some extensive testing. Please drop further comments over there - thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants