Would be even cooler if the page procedurally generated a new puzzle every time it reloads. Not sure how you would go about procedurally generating nontrivial but possible puzzles; that could be an interesting computer science challenge.
I feel like a more interesting piece of code would be one that generated random (but solvable) puzzles and showed what the minimum number of moves was to solve them.
I love these! I tried automating the creation of them a while ago[1] (refreshing the page creates a new one). I should probably revisit it though as the generated puzzles aren't tricky enough..
Did you try graphing how runtime scales as a function of puzzle size? (Assuming there are puzzles available of large sizes.) It would also be cool if your program could be used to generate new puzzles?
How about some wonderful cryptic set of puzzles, where you provide website links that have new puzzles they have to solve before they can continue the puzzle.
As with the procedural puzzle generator, it takes a bit of sifting to find puzzles that are both possible and challenging to solve. But it gets you most of the way there!
Thanks for the feedback. These puzzles are randomly generated, the code for it will be open-source soon! Regarding your issue, which browser/operating system are you using?
Any chance you'd write a technical article on your algorithms? I'm in love with puzzle manipulation code. Seeing the sort of things you're doing would be a lot of fun.
Would be nice if you allowed users to define their own puzzle. I had to set a break point at the right location and call startNew([..my array]) to do so.
Do you think there'd be a way to generate the puzzles that make a case like this is impossible? Like with this puzzle it's a 50/50 gamble whether you get it all in one guess or not
Really fun idea and a great implementation. I have been trying to come up with programming puzzles for my own project https://www.dev-esc.com - an escape room for devs
reply