3 ms·
I implemented a partial generator based on the idea in my previous comment. It was quite a fun challenge. At each step it determines the reachable squares for
by oessessnex 3y ago
I implemented a partial generator based on the idea in my previous comment. It was quite a fun challenge.
At each step it determines the reachable squares for the given piece, that are not occupied or block past moves, and chooses one at random, then it computes the shortest path to that square.
This procedure is repeated until there are no squares available.
Only pawns, knights and kings are supported so far.
https://gist.github.com/oessessnex/bc617095675da44f857216f98e461bec https://gist.github.com/oessessnex/bc617095675da44f857216f98...
Great game btw :)
- ramly 3y agoGlad you enjoyed the game - and the generator metagame. Thanks for pitching in and sharing your partial gen implementation! > the reachable squares for the given piece, that are not occupied or block past moves The last part is key. There's a similar discussion related to level generation here: https://news.ycombinator.com/item?id=37334186 https://news.ycombinator.com/item?id=37334186 If you do check it out, I'd be curious to hear your thoughts on the Linjat approach and the limitation around trivial solvability of gens without an optimizer step of some sort. Still unclear at this stage where the debate of ML vs deterministic solvers will land on this one, though there are already several insights discussed that can be meaningful for puzzle design in general. Let me know if you end up expanding the code and/or going through the 'forward solver' tangent debate. Thankful for your efforts in taking a stab at this challenge!