First time seeing this in KPatience. The game shouldn’t even start if it isn’t solvable though but it’s something.

  • tgf@lemmy.world
    link
    fedilink
    arrow-up
    53
    ·
    4 天前

    I think Windows 7 solitaire had an option where you could only get solvable games. Personally i like it when you don’t know if it can be solved - part of the puzzle for me.

    • Pika@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      32
      arrow-down
      1
      ·
      edit-2
      4 天前

      To each their own, that’s the reason I don’t play Solitaire physically and play it digitally I hate spending 5-10 minutes on a game just to find out that I can’t beat it. There’s no sense of satisfaction for me

    • F/15/Cali@threads.net@sh.itjust.works
      link
      fedilink
      arrow-up
      9
      ·
      edit-2
      4 天前

      I was grateful for the option for a few games, before realizing that I was miserable. The game felt too easy with the option on. If they also had a stock of difficult levels to occasionally kick me to death, that’d’ve be nice. Going from 50% to nearly thoughtless 99% completion rate was no fun.

    • muhyb@programming.devOP
      link
      fedilink
      arrow-up
      6
      ·
      4 天前

      I partially agree. From the start, it should be solvable. But if it can be solvable in a very certain way, I’m fine with it. I think a good puzzle should be at least solvable even if it was badly designed.

      Windows 7 solitaire was good, though it was kinda easy IIRC.

    • quediuspayu@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      1
      ·
      4 天前

      I remember seeing the option, it required an account and I wouldn’t be surprised if there was a paid subscription after that.

  • Arrkk@lemmy.world
    link
    fedilink
    arrow-up
    27
    ·
    4 天前

    The Zachtronics solitaire collection (steam, Linux version available) has a bunch of fun unique solitaire variants, and every layout is guaranteed to be solvable.

    • muhyb@programming.devOP
      link
      fedilink
      arrow-up
      5
      ·
      edit-2
      4 天前

      Seems nice, added to my wishlist. Thanks for the heads up!

      Edit: It’s also available on GOG, which is better.

  • Zier@fedia.io
    link
    fedilink
    arrow-up
    12
    ·
    4 天前

    I play Yukon all the time. And I have learned 2 things. 1. When it says “Calculating…” when the game starts, you’re not going to win. And 2. If you stack too many random cards, it eventually tells you the game is lost. The other weird thing that happens is, sometimes you use the “Hint” and it will just show you how to move a card from same to same. Example, you have a 2 sitting on a 3, and there is an open 3. And that’s the only move left. It’s a forever loop that you never win or lose.

  • Great Blue Heron@lemmy.ca
    link
    fedilink
    English
    arrow-up
    9
    ·
    4 天前

    You can’t always trust the KPatience solver for some games. I have not worked out yet which games it’s broken for but I routinely win Simple Simon games that it says can’t be won. There others, but I can’t remember which.

    I also have a bit of a love/hate relationship with the solver hinting - I’d like hints to only point out moves that I’ve missed based on the cards on the table. The hints often seem to be positioning the cards for future moves.

    • Ephera@lemmy.ml
      link
      fedilink
      English
      arrow-up
      1
      ·
      3 天前

      Since no one mentioned it yet, this is the classic card game “Klondike”.

      KPatience is a program that implements multiple such card games…

    • JasonDJ@lemmy.zip
      link
      fedilink
      arrow-up
      6
      ·
      4 天前

      The idea is to have four stacks of cards at the top. One for each suit, ace thru king. Once you get that you win.

      You can move cards around the bottom by stacking them in descending order (King thru 2), in alternating colors (red, black).

      You can move multiple cards to a new stack if it’s suitable.

      You can turn the upside down cards on the bottom once there are no face-up cards covering them.

      When the bottom stacks are empty, you can start a new stack in that spot, but only with a King.

      The draw pile at the top is where the different sets of rules come into play…some people draw 1 at a time, some draw three at a time. Some people also play with a limit of how many times you can loop through the draw pile.

      There’s also a scoring system but that’s unimportant for most people unless they really care. After all, solitaire is a one player game.

    • muhyb@programming.devOP
      link
      fedilink
      arrow-up
      4
      ·
      4 天前

      The ultimate goal is to gather all 4 types of cards to top right empty slots from the smallest card to biggest card (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, J, Q, K).

      You pull from the main deck 1 or 3 at a time (1 is easier) and you can only put that card under a bigger one. Also only K cards can be placed on a completely emptied out slots under. Sorting should be opposite colour too (If you pull 10 black, you can only place it under J red). Black if red, red if black.

      I hope I was clear.

  • palordrolap@fedia.io
    link
    fedilink
    arrow-up
    4
    ·
    4 天前

    It’s also my experience that KPatience doesn’t skip unwinnable games. It also occasionally generates one where it can’t determine whether the game is solvable or not, which is probably due to search space limitations. I’ve won a couple of those, but they’re risky to start in the first place!

    I can see the logic for not skipping unsolvable games.

    KPat uses a seed system (called “Numbered Deals”) to “shuffle” the cards before a game. The seed can be generated (pseudo-)randomly, which is the default, or entered manually. In theory, a manually-entered seed could be unsolvable, and there would then need to be completely different logic flow for random and manual seeds after the shuffle and deal.

    It’s way simpler to just generate a new game seed randomly as necessary and then have the rest of the program be clueless as to whether it was typed in or not.

    • muhyb@programming.devOP
      link
      fedilink
      arrow-up
      3
      ·
      4 天前

      It also occasionally generates one where it can’t determine whether the game is solvable or not, which is probably due to search space limitations. I’ve won a couple of those, but they’re risky to start in the first place!

      I kinda like those. I’ve also won couple of them and one of them was quite close to a win and it was always unwinnable at the very last parts (I tried the same seed 3-4 times).

      Yeah, I get the logic and with the current system it might cause a long start if it runs into a bad string since it should also skip undeterminable games. Maybe someone should rewrite it in Rust. /j