simont: A picture of me in 2016 (Default)
simont ([personal profile] simont) wrote2005-05-23 09:59 am

Further assorted waffling about puzzles

I spent the weekend working on my puzzle games (again). This time I arranged for Net to guarantee a unique solution, and also wrote code to print out Net puzzles so you can solve them on paper. The latter was a crazy idea I had on Saturday, but actually seemed quite playable once I'd got used to the idea and tweaked the graphic design a bit. If anyone's interested, I've put up a sample sheet (one wrapping and one not) at http://www.tartarus.org/~simon/20050523-netsample.pdf.

I was staggered by the low quality of the competition I'm up against in the desktop-puzzle-games niche. I discovered this week that there are several more implementations of the Net concept than mine and the one I pinched the idea from; quite a lot of the others go by the name of ‘NetWalk’ or trivial variations on same, and I count two or three Linux versions and a Windows one. The Windows one is particularly impressive: as far as I could tell from the website, it has no ability to generate its puzzles automatically, relying instead on a large stored database of them. Once you use up the database, you're stuffed, unless you design your own by hand – at which point you're apparently encouraged to submit them back to the authors for inclusion in the next version. And for this privilege they charge you $10 for a copy (and I wouldn't be surprised if they also charge for upgrades and extra puzzle designs), while all the free versions generate an endless supply of random puzzles. That's the Windows world for you.

Also it occurred to me recently that writing solvers and generators for puzzle games is a field in which I feel extremely at home, for some reason. I think it hits a sweet spot between several of my skills. I'm first and foremost a programmer, but also I have maths training, which means I'm well placed to be able to prove properties of the puzzles I'm working with and thus simplify my code. Also, writing solvers is about half algorithms – a particular interest of mine – and the other half is figuring out how to write an automated solver for the puzzle in question in the first place, which seems to me to be a self-awareness thing: solve one by hand and pay attention to the things you're thinking as you do it. And self-awareness itself is something that's always interested me. As a result, when I'm been doing this sort of stuff, I get extremely absorbed and enthused by it and it's a terrible let-down to come back to (say) work, at which I usually get to use at most one or two of my core skills at any one time.

Oh well. I'd better get back to work anyway…

[identity profile] rillaith.livejournal.com 2005-05-23 09:56 am (UTC)(link)
How does that puzzle work? *looks at your sample and has no idea what's expected of the puzzler*

[identity profile] rillaith.livejournal.com 2005-05-23 10:30 am (UTC)(link)
Although I really like logic based puzzles, you have a tendency to refer to ones which I hadn't encountered previously - I've aquired a small Su Doku addiction after your last post ;) Probably me being a Windows user these days, I guess.

I'd not come across this puzzle before, but your explanation is clear and concise, and I will be printing these out to have a play. In fact, I've just found your puzzle games page... must resist downloading at work.... (Thanks!)

[identity profile] rillaith.livejournal.com 2005-05-24 12:32 pm (UTC)(link)
Ohhhkay, Net is good; can get the bordered ones done pretty quickly.

But, I haven't yet managed to get any of the wrapping ones solved. I've got a few to a point of being hopelessly tangled in knots, with several squares blatantly not connectable with the rest of the configuration, but I haven't found any obvious starting points (like straights/Ts on the edges in the bordered version, for example), apart from occassionally-occuring straights between two end points. This makes it seem a lot more like trial and error (or randomly twisting things round and restarting again several times from the beginning for ages until stumbling over the correct solution) than anything involving logic. Am I missing some key point, or is the wrapping version really that ... random?

[identity profile] rillaith.livejournal.com 2005-05-24 12:35 pm (UTC)(link)
I also meant to ask whether there's a size that's easier for the wrapping version, to get the hang of it?

[identity profile] rillaith.livejournal.com 2005-05-24 12:36 pm (UTC)(link)
... apart from the straights between two ends - and grouped ends where there's only one direction out for some of them, I should have said.

[identity profile] rillaith.livejournal.com 2005-05-24 01:57 pm (UTC)(link)
Thank you! That clarifies several things I'd been doing instinctively in the bordered versions, that I hadn't extrapolated into conscious thought for the wrapping ones. I shall tackle them later. (Not now, not at work. Really not. Honest. I can resist. *cough*)

Now all I need is a "lock" option for tiles so I don't forget which ones were set that way for a reason darnit... ;)

[identity profile] rillaith.livejournal.com 2005-05-24 03:09 pm (UTC)(link)
Woo! Excellent.

And I just solved one, too *beam*

[identity profile] rillaith.livejournal.com 2005-05-24 05:37 pm (UTC)(link)
Oddly, that has made more difference to solving the wrapping ones than anything else! Much obliged :)

[identity profile] geekette8.livejournal.com 2005-05-23 10:36 am (UTC)(link)
Currently trying to avoid going to look at your puzzle page....

BTW, there was a 3D Sudoku in Saturday's Telegraph (3x3x3, each vertical column through the cube, and each 3x3 sqaure in both vertical planes, is valid as well as each horizontal plane being a valid 3x3 grid in the normal way). The setter said he had constructed it to foil all those 2D Sudoku solvers that people have written... I immediately thought of you :-)

[identity profile] ptc24.livejournal.com 2005-05-23 12:03 pm (UTC)(link)
Well some people will write solvers in 3D then. It'd probably take less time to adapt the solver to the puzzle, than to solve it by hand.

[identity profile] geekette8.livejournal.com 2005-05-23 12:23 pm (UTC)(link)
So you're saying it's a 9x9x9 cube, such that every 9x9 slice through it in any direction is a valid 2D Sudoku grid?

Yep. I also felt the same disappointment that there's no constraint on the 3x3x3 sub-cubes.