Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: I may have created a new type of puzzle (dogbunnypuzzle.com)
1859 points by drcode on Sept 18, 2022 | hide | past | favorite | 464 comments



I have to say the fact that I was able to figure out how the puzzle worked - what I was meant to do - with no instructions in about 60 seconds is a good sign.

I'm also immediately kind of addicted to this....I really like it.

The one thing that annoys me is that I can't see what a symbol is if the dog/bunny is on it because it's covered up. It's hard to remember when there's so many. Some transparency or slight design adjustment would fix this easily.


I didn't understand the conditions at first. I think it would be good to have visual feedback on what the issue is when trying to make a forbidden move, e.g. trying to move through "somebody at Carrot", the condition and the Carrot field should be highlighted together.


Having a knack for these, I found these "lack" of hints (understanding goal, covered tiles, no precondition failed) to be part of the game, and making deduction/memory work for it. There was just enough for me to understand it.

Had these hints been there I'd have been bored rather quickly.


Only thing I didn't know at first was that I assumed multiple conditions were or instead of and. Also, people are talking about flashing lights? I get to the completion criteria with the dog on the bone and the rabbits on the carrot and the game doesn't end. I can keep playing, no lights. Is there more?


> I assumed multiple conditions were or instead of and

Same, so I tried, and it was very obvious that it didn't work, so, and. Discovering that was, to me, part of the whole experience that makes it rewarding.


You need to have both rabbits on carrots


It was not obvious to me until the very end that you can have overlapping animals, my gut instinct is to treat this similar to a "wolf/lamb/cabbage" kind of puzzle and keep the dog and rabbits separate.


Bah, was using darkreader, hurray flash lights!


There is only one carrot, they are both on it.


There are games where figuring out what to do is the goal, but this game has an good enough design that it really doesn’t have to be one of those. Many older games use that kind of obscure design as a crutch to appear more interesting and difficult than they really were.


If you have a knack for them, you can probably just avoid making illegal moves and not worry about it.

Reinforcing the rules of the puzzle when you try to violate one is a good idea.


I agree. It's similar to how Doom was initially whereas now every game is filled with explanations.


That might be because most modern games are much more complicated than Doom. It’s also possible that modern game designers don’t want people to abandon the game before having a chance to really get what the core of it is about.

Don’t get me wrong, there is still a place for games with mystery and obscure mechanics etc, but it doesn’t make sense for most games to be like that. It’s just an unnecessary way to keep away players that would otherwise love the game.


I think that it is also that there are more resources for in-game help on modern hardware.


But there is a difference between a subtle hint and the MegaMan/navi style "hey listen! Here are several paragraphs to read"

Play through portal with developer commentary, that's a masterpiece on how to use hints well without players even realizing.

Things like how hallways are structured, where light is shining, etc.


Wait, which MegaMan game has a verbose tutorial?


> The one thing that annoys me is that I can't see what a symbol is

In a similar vein, when both dog and bunny are on one field, I can't choose which one to pick up.


Didn't realize that was possible. I thought they were never supposed to meet and solved as such.


If you’re fast enough you can pick up one, drop somewhere and pick up the other when the first one is animating back.


This is the way. Moving also reveals the location they are on, if obscured.


I also like that you can make a few mistakes and still solve it.


Are there even any dead states?


Yes. From beginning: Dog right, dog right, dog up.


And you have to reload the page then...

Should have been a "back" button or smth!


Oh yeah, I had to reset once lol. It has to do with getting a couple of characters stuck in the arrow trap without being able to get someone on a tree to escape...I think


Not sure what I am missing. But all the possible moves lead to dead states.

That being said, not sure what the transition labels mean. "Somebody at bone", "Somebody at carrot" or "nobody at bone" means nothing to me. I suspect there's another game that I don't know about that would provide the context.


The path with that label is blocked unless the condition is fulfilled. I don't think it relies on any prior knowledge (at least nothing specific I can think of)


ahhh ok. It is a precondition. That helps!


It's entirely self-contained. "Bone" is a node in the graph, put either a bunny or dog on the bone and that "somebody at bone" path will be enabled because its condition will be enabled.


Yes. I didn't get it. Hated it. Then got it. Completed it. Now I love it. Sign of a good puzzle... though the frustration/challenge balance is on a knife's edge with this game.

Overall, yeah. It has the feel of a clever, loveable game... how it comes together.

Great work. I love these postings. Very artistic.


I love this - also had a hard time with remembering covered icons. Perhaps a tiny offset of the dog/bunny, or even a size difference would help.


Honest question: What kind of design change would you make? I am struggling to think of a good solution that doesn't involve making pieces smaller, which I don't want to do.

One option is that a subtle version of the location image pops up next to the location space if it is occupied


Just display the animals side by side, when they sit on the same node.


It would be fun to have the characters integrate with the node images, as if you are dropping them into little worlds. E.g. when you move a rabbit to the boat node, the boat now has a little rabbit poking out of it. It would be similar to those combined emojis [0]

I recognize that this is a really bad idea from a usability/discoverability perspective, but wouldn't it be charming!

[0] https://emojikitchen.dev/


Being able to move all animals in the same circle.

Right now you could only move the upper one.


Maybe change the animal picture to have them holding the item in their mouth?


Took me about 2 minutes to figure out how to successfully move and quite a few more to fully solve it. A lot of fun!


I second the UX of clearer way of showing the icon the player pieces are on. I don't know if transparency is the way to go. Maybe the shape of the node can differ.


Colour coding?


(author here)

Great feedback! Yes, I am the "Land of Lisp" guy

Sorry about the potential epilepsy trigger- that was the fastest way I could think of to code a quick "reward effect", I will do something different in the next version. I didn't really expect anyone to care enough to solve the puzzle lol.

Now that I know people like the puzzle, I will build out the website and post regular puzzles, follow my Twitter @lisperati for updates.


Thank you.. As fun as it was to solve the simple puzzle, nothing will replace the joy I felt when I showed it to my 8 year old daughter to see her solve it in 2 minutes flat with no instruction at all. Thank you for making it possible. I had to ask her to persist for a bit as she didn't exactly see what had to be done. She knew what had to be done once she accidentally swiped and saw to rabbit get dragged along. May be an animation showing what is possible will help here.


I’m 45 years old and have been staring at it for a very long time without a clue. First off, you’ve raised a wonderful 8 year old and deserve congratulations.

Second, is she available for lessons?? :)


36 y/o, same here


34 year old, probably took me 8 minutes


34yo and also around 8 minutes.

Though, sheepishly, I wouldn't have even mustered the energy had I not seen that someone's kid solved it in two minutes.


Took me about a minute, but I have the mental age of 10, so moving rabbits and a kangaroo (dog?) around makes sense. I just read the boxes/looked at the pictures and moved things around, until the solution was obvious. Just quickly moving things quickly.

If I'd had to think about it without interaction... I'd probably never get it.

I do a lot of graphical work, and have to make things fit / function and the only way to do that is hack it, and then clean it up so it looks planned.


My 9 year old got it in about 3 minutes, but only after I told him to slow down and read everything on the page.

He started with furious swiping right off the bat. I started by reading everything and thinking through moves in my head without even trying to swipe.

I think we ended up solving it in about the same amount of time. Interesting that the rapid iteration method and the measured thoughtful method yielded similar results.


I'm surprised you could infer what was possible just by looking at it. For me, the hints at how the rules worked weren't sufficient. I think lighting up the signs if the conditions are met and perhaps having something on the free move edges to make it clear they can be moved on freely would be super helpful.

I effectively solved the question of "wtf is this?" and the puzzle at the same time.

But after that I really wanted to play again!


I thought it was an image at first, and was trying to mentally move the pieces on the board. After the state got too complicated I happened to tap on one of the pieces and realized it was interactive.

I've played kinda similar things before, such as Baba is You.

Yeah I'd love to see more of these. Now I wanna make one myself.


She's a genius[1]. Took me an age to figure out what the rules were and then a fair while to actually get it done.

[1]Well compared to me anyway


I inferred rules that turned out not to be true:

1) I thought that, obviously, rabbits and dogs couldn't occupy the same space, lest the dog attack the rabbit, causing a lose-condition

2) I assumed that only one animal could occupy a node.

The game, until the last move, is winnable with those extra rules.


I didn't necessarily think of those as rules, but I nevertheless solved the puzzle (until the end) without contradicting them. I only noticed maybe halfway to the solution that there is only one carrot, so obviously the rabbits have to pile up to solve it.


Rabbit and dog never need to occupy the same space.

But yes, I never thought about rule 2 until I got the dog and one rabbit in place and hadn't won.


> I thought that, obviously, rabbits and dogs couldn't occupy the same space

farmer, fox, chicken, and grain, and only three of them can fit in the rowboat

foxes eat chickens and chickens eat grain would be a nice type of constraint OP could add to the puzzles


Seems to me a good comparison between inductive and deductive reasoning. - with a simple logic puzzle like this, both are fairly comparable - especially when some adults (me included) start with the wrong assumption, like two can't be in one node, which will slow down the process


Actually, that's how children learn best: by breaking shit^W^Wperturbing the environment and observing changes.

This instance of the puzzle is also easy enough to actually solve this way. Wouldn't work nearly as well with 25 nodes, 5 rabbits and 3 dogs...


Haha. Thanks for saying that internet stranger! Compared to me as well. It took me quite a bit longer to solve it too, even after i figured the rules.. so I guess kids are just good at adapting to the pretend-laws-world-problem-solving..


Availability bias, keep in mind for kids her age cartoon animals and games like this are their full time job.


My 5yo also enjoyed the puzzle and was excited when he finally figure it out.

The one issue he had was whenever he'd try to move a rabbit from boat to house, he'd accidentally trigger the browser back function because he was starting too close to the edge of the screen. Then the puzzle would be reset when he navigated back to the page.

This caused a lot of frustration because he could be careful when he was thinking about it, but then he'd get absorbed in the puzzle and forget to swipe carefully.


> May be an animation showing what is possible will help here.

Now I'm imagining a version where the animals get antsy and start hopping around on their own if you take too long to make a move.


Your daughter is awesome.


Another quick reward effect you could do to avoid flashing colors is to make the animals jump up and down, as if they’re happy to get their food


I liked the insanely rapidly flashing colors.


I know, I like them too!

This was a popular thing to do in ye olde commodore 64 days, because you could cycle the background color easily in basic, and nobody thought yet that a video game could trigger epilepsy

(honestly, I'm a bit skeptical about this theory even today, but will defer to the typical opinion on this matter, not being an epilepsy expert)


That’s real. I once wrote a quick & dirty bookmarklet to disable all GIF animation on a page because even fairly unremarkable-to-most-of-us GIFs are uncomfortable for an epileptic friend. It is still on https://alanhogan.com/bookmarklets


Really shouldn't be too difficult to do this at the OS level or even hardware level if someone really wanted to make this happen.


I don't think it's that dangerous if the flashing is very rapid, it has to hit some sweet brainwave spot (10x/s ?) I think. The Porygon episode did.


Atari games, too. This reminded me of the end of Missile Command and Adventure.


Rapidly flashing colors may be dangerous for people with epilepsy.


I wonder if it's better for people with epilepsy to have a simple and more robust solution by getting a monitor that has low refresh rate or limited colors than to try to police all the internet and applications from ever showing flashing colors.


They may and if I had epilepsy then I'd look to do the same, but that won't absolve us of the need to take care so that people without special equipment don't need to worry.


Turn your monitor's refresh rate so low that flashing lights won't actually be flashy and try to operate your mouse cursor. Good luck.


A touch device may be a better option in that case.


i don't have epilepsy but those colors going that fast were a bit much for me


Nice puzzle: Was able to complete it after some trial & error.

Suggestions:

- Mark uncrossable paths with (an 'X' in the middle of the line) OR (red) to make it clearer that the path cannot be currently crossed.

- Mark paths with fulfilled conditions (as green OR with the 'X' removed)

- Mark fulfilled conditions with (a tick symbol OR green) and unmet flags with (a cross ('X') OR red) to make the fulfillment state of conditions obvious.

(edits because I can't use emojis in HN comments.)


All these suggestions are great and "make sense". And all of them would dramatically simplify the game and remove the challenge. The puzzle IS the trial and error.

Perfect illustration of how hard game design is.


I would prefer if that was not "auto" marked in that way, it felt nicer to try to think about each crossing. Perhaps something that could be turned on and off.


No need to improve on any of the suggestions here, pal. Just continue your monthly 1st/15th releases. What is really valuable is the unparalleled creativity in it, not the senseless polishing to cater to the swarming audience.


Fun! Though I managed to break the game by placing all on the boat :)


Break? That's just a failure condition as per rules, working as intended


Just needs a reset button then. Having to refresh the page is a bit silly.


I am adding a reset button (but it only shows up once you reach a dead end, in order to avoid clutter)


Agreed, along with a message of some kind explaining what's happened. My kid ended up with all the animals on the boat and unable to move any of them off, and didn't know why. This was before she understood all the rules of the puzzle.


Don't rock the boat, baby! Don't tip the boat over!


Just FYI, the page doesn’t work on iPad/iOS 14.x Safari, no animals to be seen, just the static graph.


Works on my iPad Air 2 on iOS 15.6.1 and Chrome.


Works fine on an iPhone


That was fun but I didn't see any reward effect at all.


I didn't see one either until I turned off my dark mode browser extension. If you also use an extension that modifies stylesheets, you might want to try disabling it for this site.


Did you get both rabbits to the carrot?


Yes, I did. No reward condition. I am using a dark mode browser extension though.


I thought there was no solution because I thought the arrow pointing on the line from the flower meant you could only go that direction from the flower, but the solution relies on someone behind able to move backwards from the flower.

Granted there is the blue feedback if you are on the flower, but it’s confusing when you are trying to plan ahead.

edit: Fun puzzle though!


Funnily enough I understood all the rules, but still was mentally blocked for a while because I just didn't even consider moving back from the flower as a possibility. I guess there was something about that arrow that was very enticing.


Oh. I solved it by following the arrows, didn’t know I could go the other way.


I followed the arrows too. Took me 15 mins or so to solve. I think the former comment meant that he thought that once you are on a node that is in front of an arrow, you have to follow that arrow, but that is not its meaning obviously.


It didn't work for me on my computer, but I grasped the concept well enough to see that it would be quite enjoyable. Since the purpose of the MVP is to get people interested, I call it a success.


Where you inspired by Alcuin numbers[0]?

[0]: https://www.youtube.com/watch?v=ZCVAGb1ee8A


I don’t have epilepsy, even though, that’s quite an intense flashing image.


That multiple pieces can occupy any space is information you need to present to the player.


There is a tiny bug, when you release and click fast you can drop anywhere.


Thanks for your wonderful books. You have been an inspiration.


That was fun. GG!


thank you!


Feedback:

1. It was good enough that I finished. This is success! Good job!

2. It took me too long to realize characters could occupy the same space, and the game doesn't draw characters occupying the same space very well.

3. The flashing lights at the end are too fast, slow them way down and it will still look good. You'll probably only have to change a number in your code.


I found this particular puzzle pretty easy, but I have a lot of experience with puzzles (recently because my kid likes them).

If you want to train novices up to solve very difficult puzzles of this style (or whatever style), start with very simple puzzles and build your way up in a sequence of steadily increasing difficulty, introducing only about one new trick at a time.


I'm curious, are there any particular tricks you used for this puzzle? I basically just used reasoning and trial and error, but wonder what methods may have helped me solve it quicker.


It’s helpful to me to “chunk” puzzles into specific sub-objectives. I split this one conceptually into a “top area” (house, bone, boat) and a “bottom area” (tree, flower, well, carrot).

The tricky part of this puzzle is getting the rabbits down from house to tree. In order to move anyone from the top area to bottom area, you need to have someone in the bottom area shuffling back and forth, and also someone else in the top area.

Specifically, you need to get one rabbit to the bone (dog must be at carrot) then move the dog back to the flower so the other rabbit can go down to the tree. Once one rabbit is in the bottom area the dog can move to the top area to help get the other rabbit down.

Took me about 2 minutes to figure out what to do, and then another few minutes of dragging stuff around to execute. But again, I have been doing a lot of puzzles with my kid recently, so this kind of thing is top of mind.


I disagree with this completely. The level of difficulty is just enough to get the brain properly churning with a manageable level of frustration without being completely impossible.


You didn’t disagree with anything I said...

I never said this isn’t a fun tricky-but-not-too-tricky one-off puzzle for out-of-practice adult puzzle solvers. (It has one key trick that someone who doesn’t do very many puzzles might take a while to figure out.) I only said it was pretty easy for me personally.

I further claimed that if you want to train complete novices (I am thinking of my 6 year old here, or his less experienced 6-year-old friends) to solve very hard variants of this puzzle, you should start with easy puzzles and introduce one new trick at a time. If your goal is not to train novices to solve hard puzzles, then feel free to disregard this advice.

There are some fun harder tricks that you can throw into this genre of puzzle (not included in this particular example) that if you tried presenting to my 6 year old would completely stump him. But after working his way up methodically he could be taught to notice and solve them.


Can you recommend any online puzzles like this?


If you have kids, I would recommend the physical puzzles made by the company Smart Games. We have a bunch of them and they are generally fun, clever, sturdy, and sequenced pretty well. We also like the Rush Hour sliding car puzzles.

I don’t know too much about puzzle video games (web or otherwise), but we have this week been playing the recently released game Railbound which is pretty fun and has some quite tricky puzzles.


>> It took me too long to realize characters could occupy the same space

I solved it in under 15 minutes or so (multitasling and I didn't time myself) .. and at no point did I even attempt to have two characters on the same space or pass through each other .. other than the final goal of two bunnies on the carrot.

Clearly:

* I'm to dumb to have tried !!

* It can be solved with with a "only ever one character on an intermediate non goal tile" .. although that is probably a slighty longer fiddlyier way of doing things.


I was the same. I only realized they could occupy the same space at the end. It was kind of a fun realization, so the author might keep it that way. Although maybe use an easier puzzle to teach people this fact about the game.


Yeah, this was fun to solve.

Re: 2, it seems intentional when two occupy the same space, 1 of them gets priority and has to be moved first? Ideally, you could pick which 1 of the 2 you could move, but removing this choice makes the puzzle harder.

Re: 3, I don't like the flashing lights/colors at all. Putting a "You win" or "Congrats" <div> somewhere prominent on the page is probably enough. Flashing colors is very painful on the eyes.


I like the flashing colors. It reflects the cathartic pain in reaching a goal and it encourages the impulse to move on.


maybe OP could hire an animator to make a 3 second loop of a happy rabbit eating a carrot and a dog chewing on a bone, anything other than the flashing lights


If you try pulling from different directions, you can pull the one that you feel is lower.


The return to location animation helps here. Drag one animal and the one underneath is available to drag. Probably not very accessible but actually a fun, possibly unintentional, mechanic. Can also drag to see location icon underneath.


My epileptic partner could not handle the flashing colors


Fun implementation. It’s isomorphic to a wide range of problems that have been used for centuries that are all isomorphic to constrained state search. The fact that the graph is explicit here makes the problem way easier. (One you may be familiar with that seems very similar is the parking problem where by sliding around the cars they (un)block one another. None of this is to take away from the fun setting and implementation. Just that it’s not a new type of problem, although it seems to be a fun new instance of a common type of problem.


I would argue that the visual presentation and interface is a big part of what makes a puzzle, and changes how it is perceived, and therefore it is a new type of puzzle.


Fair enough. Depends how you arrange your ontology. But then anything is a new type of problem, so the claim becomes meaningless.


I think your ontology encompasses too much to be useful in classifying games. All single player games without a random element can be modeled as graph search problems with varying degrees of cycles permitted.


Although I agree (mostly- there may be some further structure in my ontology, but not worth arguing about- I’ll buy your characterization), I think that this is exactly what makes it useful.


Woah! Woah! Easy now. We don't need lumpers and splitters shedding blood here.

d


But are we really lumpers and splitters? And is it blood or plasma? And are we actually shedding it? And who are we anyway?


When you're solving the sliding cars puzzle as a person you're not thinking of graphs. The experience of solving OP's puzzle is entirely different from the one you mention. In theory you could stop, write down the underlying graph representation and solve it that way I suppose. Does anyone do that though?


You’re correct. (As I mentioned, having the explicit graph makes it easier, and as another person mentioned, this makes it an essentially different problem.) I wasn’t meaning to say that it’s identical. Just the closest thing I could think of offhand. When I was in grad school working on problem solving we used to make up new problems every day. Every little change changes the problem’s affordances, but if you define a problem type by the method of solution, all of this class are isomorphic (along that dimension). Again, none of this is to take away from the fun design of this problem.


Code Master is another that, again isn’t identical to this OP’s, but has the explicit constrained ATN. https://www.codewizardshq.com/coding-games-for-kids/


The graph drawn here is different from the graph of states: the latter has the cube of the number of these graph nodes, and several edges per node, and would be difficult to draw clearly on a flat paper.


The state I’m referring to is is the whole puzzle state. It’s a confusing term in this case.


Yes, and as I said, the number of puzzle states is the number of nodes in the pictured graph, cubed. There is some relation between the two graphs, but they aren’t the same, and the pictured graph doesn’t necessarily show too clearly how to navigate around between different regions of the graph of game states.


Yes. That’s right. In problem analysis the problem state graph is implicit (or virtual, I’m not sure which is the appropriate term). It happen Ms that this puzzle also has a graph, but (agreeing with you) that’s not the psg. We could call the puzzle’s graph the “map” to be a bit less confusing, assuming we want to bother continuing this thread, but I’m guessing that it’s just you and me at this point, and we agree, so we should stop.


is there a branch of mathematics that formally models this isomorphic forms of this stuff? topology? or just plain old graph theory


Hmmm. We’ll, in CS it’s problem solving: https://www.pearsonhighered.com/assets/samplechapter/0/1/3/6...

You’d think that it would be part of game theory, but all the game theory I’ve seen deals with multiplayer games, but it seems like a cooperative total information n-player game is essentially the same as a one player puzzle. So maybe g.t. generalizes in this way.


It's beautiful! Looks like the optimal solution is 26 steps: https://github.com/polkerty/dog-bunny-puzzle-solver


Got the same.

There are 200 ways of doing this (if you don't distinguish between the 2 bunnies when they're on the same tile, 420 if you do).

If you merge together moves involving the same animal there are only 4 (with length 15).

https://gist.github.com/wrbs/5824e9b17c55b5ad3d8467f93e12ed8... (svg graph of the 4)


Nice.

I tried to fuzz this rather than use an exhaustive search.

So random animals walk randomly.

It gets stuck. So I added if no animal moves after 100 attempts, restart.

But it seems to get stuck all the time. So it loops around mostly and eventually falls to the stuck position.

I have to think about this, is the entropy such that you'll never practically escape by randomly walking?

I feel like if I add more conditions it just becomes an exhaustive search with billions+ of times the extra calculations.


This can be a useful approach when you have a very large number of states (as long as you also don't revisit states). In this case, there are few enough states to just BFS the fastest way directly.


> I tried to fuzz this rather than use an exhaustive search.

Shame. Shame. Shame. rings bell


I think if you refuse to duplicate states you'll get the solution pretty quickly.


This puzzle is so cool because it revolves around casual graphs in classical planning problem! One can use heuristics based search to come up with optimal solutions. I really like this innovative approach to the design.

However, one edge from house to tree wasn't clear at first because, I thought of it as logical or while it was about logical and. Other than that, pretty awesome work!!

Edit:: Scrolling down the comments someone seems to already implemented a graph search. That is pretty quick: https://news.ycombinator.com/item?id=32885309


Yeah the edge with two conditions was a little confusing;

(1) and

(2) or

(3) At bone to go up, at flower to go down [or the converse?]

Was able to figure it out through experimentation, but the signage doesn't make it obvious.


some kind of visual gate or a schematic-toggle-switch kind of thing would help


Or just one label that says "Somebody on bone and flower."

This gives me the idea to make variations of this puzzle to play with my 5yo using pencil and paper. It would be a fun way to teach the difference between AND and OR.

Plus I'll get to see the puzzles he comes up with, once he realizes he can make his own!


I'd love to see the formulation for this problem written out in proper form that can be fed to a solver like MiniZinc or CPLEX or whatever type of solver can handle it.


It looks like Hakan K (has a super cool website where he solves all kinds of optimization problems for fun) was able to solve it using the Picat language in a very small amount of code with a solution (not sure if optimal):

http://hakank.org/picat/dogbunny_puzzle.pi

His website is a treasure trove for these kinds of problems and worth studying.


The solution is 26 steps and that should be the optimal solution.


Awesome! Thanks for popping up and clarifying.

For those of us that are not experts, how is this sort of problem generally classified? I've seen others on here say classical planning, but I wasn't sure if that is correct.


I would (also) say that this is a classic planning problem. It's deterministic, observable, static, and discrete.


I appreciate the clarification here. It helps. Thanks!


I didn't have a problem with that edge.


I thought I had to keep the dog and rabbits separate, which really stumped me for a bit.

It would be neat if the conditional statements emphasized and deemphasized based on whether their condition was currently met.


I made the same assumption and didn't even try putting the dog and rabbits together, but I completed the puzzle (at least I'm pretty sure I didn't overlap them, there was a lot of back and forth)


I find it amusing that this is driven by the particular visualisations of the characters. I.e. if it were a chicken and a rabbit would you have also made this assumption?


For me it's a variant of a classical "move a wolf, goat and cabbage across the river", where you can't have some of them on the boat together, because it would be eaten.


A fun Easter egg would be to have the dog eat the rabbit if both of them are on the boat node.


I didn't even realize two animals could be on the same node at all until I needed to get both rabbits to the carrot.


If it was a chicken and rabbit I think I would have tried to overlap them


I did keep them separate, but still solved it.


How do I interact with the website? It's just a static image for me


I had the same problem. I was trying to click on things but not drag. Maybe if one of the animals is clicked but not dragged, it could expand and immediately get small, as if it had been dragged 0 pixels?


I’m on iPhone but it’s just tap-and-drag for me


On mobile Firefox for me after a while I worked out it was drag and drop on the characters


I love it. Fantastic.

Can you think of a way to re formulate the puzzle so that you can express the rules without words?

Also, the dog / rabbit dynamic (as used in the classic dog/duck/grain river crossing puzzle) made me think that I had to chase the rabbits with dog, or that dogs and rabbits couldn’t share a node. Different animals might be better — rabbit and mouse, perhaps? Or even different coloured rabbits and different coloured carrots?

The words thing though — that’s what you should work on next, I think. Good puzzles like this are word-free in the puzzle itself (Stephen’s sausage roll, English country tune).

It would take this puzzle from great to excellent. Good luck. More please!


> Also, the dog / rabbit dynamic (as used in the classic dog/duck/grain river crossing puzzle) made me think that I had to chase the rabbits with dog, or that dogs and rabbits couldn’t share a node.

Yes, I assumed first that no two animals could share a node at all until I was near the end (and saw that it would be necessary), and I still assumed that rabbits and the dog couldn't share a node ("the dog will eat the rabbit!") because of the river crossing thing, until someone in this very comment thread mentioned an unsolvable state that involved getting the dog a rabbit on the same node.


> saw that it would be necessary

FYI It's not necessary to solve the puzzle.

Also it seems to have issues on FF/Linux because when I did stack a dog and a rabbit I could only then select the dog.


It is necessary to stack the rabbits on each other at the carrot, no?


It is common knowledge that rabbits stack rather naturally.


Don't stack your rabbits. That's how you end up with extra rabbits.


I did it without stacking until the very end. I wasn't sure if you just needed to get 1 rabbit on the carrot, or what.


Oh haha, yeah I guess so then. Sorry, I missed that.


> formulate the puzzle so that you can express the rules without words?

Perhaps just a picture of the state icon (or one with a slash through it) and have it "light up" when the condition is satisfied.


>Can you think of a way to re formulate the puzzle so that you can express the rules without words?

I'm imagining Haskell with emojis now.



And I thought I had a sick and twisted mind...


It took a while, but I got it!

It's like the Wolf, goat and cabbage problem

https://en.wikipedia.org/wiki/Wolf,_goat_and_cabbage_problem


You mean the fox, chicken and grain problem?

I wonder if this just gets localised to typical staple, typical predator and its prey?

I guess cabbage and wolf is eastern Europe / Germany?


Ah yes, "the river crossing problem"!

https://en.m.wikipedia.org/wiki/River_crossing_puzzle


Norway has wolf, sheep and various things the sheep eat (I've seen variants cabbage and bales of grass). We also have a variation where everyone shifts down a step and there's a missionary "above" the wolf.


Wolf-goat-cabbage is definitely the version which is popular in Poland.


Coyote, turkey and corn? Lion, cow and millet? Redback spider (or any native fauna really), kangaroo, can of fosters? I don't know how the Japanese would do it. I was going to go with fish, but the puzzle would need reformulating for that.


Cool puzzle and nice art. Too much flashing at the end. Concept reminds me of the indie game Baba is you: https://hempuli.com/baba/


Hmm, the style of the OP and that landing page reminded me of another web game I saw a few years ago with a philosophical theme, maybe a game jam entry? Kind of bothering me that I can't recall the name.

It was an abstract simulation of the course of a human life: units of "time" spawned regularly in the middle of a black screen. These gravitated towards the cursor and had to be guided to text spaced around the screen: play, grow, work, etc., which all needed to be regularly tended to, with more and more "responsibilities" appearing as time went on.

Some day there'll be an AI search engine for 'tip-of-my-tongue' media. But what will have grown faster? The ability to catalogue things in the world, or the depth of obscurity of things that can be catalogued?

Edit: got it, remembered the dev's domain: https://faedine.com/games/spendyourtime/


Oh, how the subconscious did answer! The Ludum Dare entry I was thinking of is Notch's similarly minimalistic Drowning in Problems. There's also the classic, Alter Ego.


Thanks for sharing. That was a fun game.



The labels as required preconditions take a moment to figure out, but I found it satisfying to do so.

I'm a sucker for graph and topology puzzles, so this was very enjoyable to me. I loved that you could clearly sense progress mounting with each step.

The flashing lights at the end could use a bit of calming down though.

Fantastic prototype, is what this smells like : p


Very fun.

I also found it took a while to understand the rules, which I enjoyed, but others may not.

You could add a restart button to encourage experimentation, or flash preconditions red when blocking passage to communicate rules more clearly, or start off with a simple puzzle that illustrates one rule then allow people to level up to more complex puzzles with additional rules.

Nice job.


2. Make a daily one with a countdown to tomorrows one.

3. Profit.


I've never come across 2 indexing. Is it meant to avoid off by one errors? Pointer arithmetic might be interesting though.


1 is already done, isn’t it?


I don't know, it hasn't being listed, neither has 0.


0. Be Conrad Barski

1. Create http://www.dogbunnypuzzle.com/ and post to HN


Surely it should properly be:

-1. be Conrad Barski 0. Create http://www.dogbunnypuzzle.com/ 1. post to HN


Lol


Hi! I enjoyed the puzzle and I liked how puzzle itself explains every rule within itself. :)

I wrote an automatic solver for the puzzle in Scala and open-sourced in GitHub. : https://github.com/yusungsim/dogbunnysolver Check it out!


Cool. I see it is a solution that has the graph embedded in the code though. Any chance you could build one to work off a generic input model that describes the starting state of the characters, nodes, connections, and connection rules? That way you could run it every day without code tweeks.


Yes! In fact, I already listed-up my future plan for refactoring the code at the readme. One of the plan is to use file I/O to get the graph structure and the rules.

I expect there would be existing solutions for (de)serializing the generic graph. One tricky thing (I think) is to encode the connection rules in some parsable format.

I'm planning on extending the connection rule to propositional logic and find some fancy way to efficiently en(de)code the PL formula.

Maybe I should spend some more nights to refactor my ugly code :P anyway thanks for the reply!


When I was young, I had a book of mazes-with-rules[1]. This would have fit right in! There were definitely mazes that involved multiple entrants into the maze, and rules governing whether edges were allowed to be taken.

Thanks for unlocking an ancient memory. I'll have to see if I can track down my old copy of this book.

[1] https://www.logicmazes.com/super.html


I like the puzzle! Too much flashing at the end there, either tone it down or put an epilepsy warning on it.


I had the same thought. Just made me wonder, are there browser extensions, or maybe even full OS overlays for people with epilepsy that will automatically filter out any potentially problematic flashing?

Edit: Unsurprisingly it appears I'm not the first to have thought of this, at least: https://tlo.mit.edu/technologies/making-screens-safe-those-p...


Fun! UI complaint: the animals block the objects so you can't easily see what they're on, which is annoying. Maybe shrink the animals a bit more, use a 3d effect, or add an option to make them partially transparent. Or just make them sit next to the obj instead of actually on top.

Edit: also, I expected OR rather than AND on the double constraint


My two cents:

1. Like other people I found the UX a bit confusing (figuring out that two animals can occupy the same spot, picking which one of them to move etc.)

2. This one seems hard for a first level, if it's addressed to a general audience. Even figuring out that some edges are directed is not obvious if you don't know about graphs in advance. You should build a tutorial for non-HN people.

3. Are there other levels?

4. Lights are flashing way too fast at the end. A text message would also be nice.

Otherwise a great job! Playable and fun once you get into it. Would totally play again :D


I'm convinced there is only one way to solve this: Write a program to unroll the constrained state transition diagram into an unconditional state transition diagram and find the shortest path. The unrolled version would still be pretty small so you can just iterate over it.


In other words, BFS over the state space of the puzzle, skipping previously-visited states?

You don't actually gain anything by unrolling everything ahead of time; it'd actually be worse because you'd store all the memory and wouldn't stop when you get to the solution. And you can't really factor the state space into subproblems.

Anyway, for this puzzle BFS would work, but classical planning in general gets astronomically exponential fast. It's a neglected field, not yet thawed from the last AI winter.


That's an interesting statement. Because I actually don't think it's true.

(Well obviously it's not and you were joking, but let's say you were not, for the sake of argument.)

Humans do this differently from machines. We look for strategies and have smarts to on-the-fly develop and refine heuristics that rapidly allow us to intuitively do branch-and-bound like algorithms and in the end solve this even though we brute force very litte, if at all.

That's why it took so long for machines to surpass us at chess or similar. It's a different approach. That's what makes machines better at certain things and humans at others. And there is a lot to be gained by trying to have machines also try human-like approaches to problems (strategy-developing rather than brute force).


This can be easily solved by a class of algorithms called "search algorithms". Most famous ones are "Breadth-first search" and "Depth-first search". They have many variations like "Depth limited depth-first search" and "Iterative deepening depth-first search". If you include heuristics, then you have other variations like "A" and "Iterative deepening A". These are pretty well known and relatively easy to implement.


Hacker news change the star into italics. The variations are called 'A*' and 'iterative deepening A*' (Need a backslach prior to the star to show it properly)


You'd have to do that for VxVxV, because there are three different objects (although there's some symmetry). Solving a puzzle is often described as path finding.


The vast majority of states is not reachable, so you can roll out the full tree from the starting state and it's going to be very small. Even the super-naive approach of unrolling the full state space is only 6^7 which is a big waste because connections are very sparse but even that's not big, it just wouldn't scale to larger problems.


This puzzle is definitely along the lines of a Leetcode-style traversal exercise


It was easy to solve in like, 2 minutes.


Possible epilepsy warning on completion?

Great little puzzle, thanks for making this and sharing it.


I really like the whole concept and execution!

I like the lack of instructions, it makes it fun to explore the rules. In fact, unique rules per game might be interesting to discover.

The UI is perfect, keep it simple and focused on play. Though, I agree with other comments that the final flashing lights should be slower.

A move count and leader board for time to complete and fewest moves to complete would make this social-ish.

Maybe hints for harder puzzles?

I could see this going a long way, so many variations to explore!


That was a lot of fun. Easy to figure out what the challenge was. Then puzzling, challenging gameplay and a satisfying conclusion in, I don't know, 15 minutes or so. Good work, well done, hope you do well with this.


It's basically a formal version of a classic sokoban game. I really like it.


Sokoban was also the association I had.


Ultra frustrating, impossible learning curve. Tried twice several hours apart, no progress. Congratulations if that's what you wanted.


I feel like you and I are visitors from an alternate universe, because everyone else seems to find this the best thing ever, whereas I couldn't understand it at all. Initially the animals can't move at all, just snapping back to their original location when you try to move them. Then when they do move (you can move them to blue spaces), they end all stuck and you cannot continue. OK then.


That's a shame for you as the general sentiment is how approachable and easy to pick up it is!


Same here. No shame in it. Wouldn't say it is frustrating but it is a mild annoyance. However, the issue for me was that Darkreader extension was on which made the circles invisible to me.


rule: you can move across the path when either there's an arrow or the condition is true (i.e. someone at carrot)


Same here. No shame in it.


Older analogues exists, but not exactly in this form.

Two puzzles from Logical Adventure of the Zoombinis are very close, though.

The first is Captain Cajun’s ferryboat, which you can see at https://youtu.be/_JlMcs_2xes. The constraint is that all zoombinis you seat on the boat must share at least one trait with at least one of their neighbors. It doesn’t really impose spatial dependencies of movement like your puzzle does though.

For one that does, but by taking on a cartesian grid, you can look to Bubblewonder abyss https://youtu.be/vx1yFKVdq9o, which on its hardest difficulty adds many, many rules to moving between nodes based on traits, plus re-use toggles (so if a node is visited twice, it goes two different places, “capture” triggers of glowing colored particles that holds one Zoombini captive, and a “release” button that lets it go.


This is a fun puzzle! Great job.

It took me a minute to figure out the rules, but I was able to with some experimentation. I think the lack of explicit instructions adds to the charm.

There’s lots of other elements you could add to these puzzles to spice them up, eg, wolves that try to eat the rabbits, or streets which are blocked at a certain frequency by cars.

Some feedback: - needs a reset button! And maybe a sad-rabbit ‘you failed’ notification if you get stuck. - it already looks good, some cute animations would go a long way if you decide to work on the presentation - you could make it a little more obvious what moves are available when you pick up a dog/rabbit, the shift from white to blue didn’t always ‘grab’ my eye and sometimes I didn’t notice a move was available. Again, a simple animation would help - overall I like the minimalism though, so I don’t think you need to go overboard with visual improvements :)


Kudos on the puzzle; very easy to understand what needs to be done/achieved to solve it.

You could change the page title from "React App" to something more appropriate.


This just shows you how spur of the moment my website was :-)


Very fun puzzle! As for my suggestions:

- consider writing key rules on the page. I've had an incorrect assumption that the dog and the bunny cannot occupy the same square.

- displaying a restart button would be useful once there are no legal moves left (for ex. all characters stuck at the yacht)


I think I broke it. Both rabbits at house, dog at ship. And nobody can move anywhere.

Edit: seems like there are quite a few more situations like that. I am just gonna consider it "You Lose" -- when you are forced to refresh the page.


Please make that blinking after winning less... epileptic.


Love it! I refer to these kinds of puzzles as "state mazes", but maybe that's not quite the right term. Many variations are explored in "logic maze" books like Mad Mazes (https://smile.amazon.com/Mad-Mazes-Intriguing-Twisters-Puzzl...). Most of them use simpler mechanics and look more like mazes, but some toward the end start looking like your puzzle.


This seems to be a kind of Petri net[1] almost.

[1] https://en.wikipedia.org/wiki/Petri_net


Reminds me a little of Game About Squares http://gameaboutsquares.com/


I found it frustratingly tedious[0] but solved it. In my experience that means other people will love it, especially if they like logic puzzles.

It took me a while to realize you could put two animals on the same node as the animals are large enough to cover the entire node, which normally means they can't overlap. It also wasn't immediately obvious how multiple conditions on the same vertex interact, i.e. whether it's an either/or or and. This was a problem for me because I couldn't initially see the covered symbols and thus didn't know one condition was already met.

The only real problem, as others have pointed out, is the strobing effect. If you want an easy option that's safer and more pleasant consider simply adding confetti: https://www.kirilv.com/canvas-confetti/

[0]: I don't like thinking too many moves ahead so I often found myself having to run the same animal in circles to activate a condition I had overlooked. Again, this is a me problem. It's why I don't like chess.


It took me a moment to understand what the constraints meant, which says more about how tired I am than it says about the design, which is great! I don’t want to minimize the cleverness of the puzzle design, but I think it’s a visualization of a finite state machine. Not a novel challenge but a clever way to display it for sure.


The one aspect that took me a bit to figure out was whether, to move between the house and the tree, you needed someone on BOTH the bone and the flower or just one of them. (It turned out to be both.)


Fun! Would enjoy more of this. Thoughts:

- good difficulty level. Needed to do a lot of doubling back to solve it.

- Rules we’re easy to figure out for the most part. It would help to add more visual cues about (dis)allowed paths. Ie, given the node occupancy right now, which paths are valid?

- it took me a minute to figure out that valid destination nodes highlighted when I started dragging an animal. Maybe make the invalid nodes red too.

- I assumed that animals couldn’t share nodes. I didn’t try that for a bit, which slowed me down a lot. Wasn’t clear how to chose the “bottom” animal on a node. I also assumed that even if the rabbits were allowed to share a node, a dog and a rabbit could NOT share a node because the dog would eat the rabbit.

- overall a nice example of complexity emerging from a simple rules, which is what you need for a puzzle.

- it’s annoying that you can’t see the node label for occupied nodes

- obvious stats to track include overall time to solve and moves to solve.


This is pretty cool! Conceptually it's pretty similar to a classic Mac game I remember from the 90s called The Tinies. The goal is to get each "Tiny" creature to a bed of the same color.

Where it gets complicated is that each creature will in a straight line move up, down, left, or right as far as they can until they hit a wall. You can't stop in the middle of the floor and turn, although there are arrows on the floor that will redirect them, and even teleport pads. Each tiny also acts as an obstacle to other tinies, so you can place them in a particular location to force another tiny to stop short so they can be moved in a different direction some distance from a wall (similar to your conditional graph edges).

https://www.macintoshrepository.org/3493-the-tinies


I loved it. Could figure out the way it works with no instructions fairly quickly. There was never a moment where I got annoyed and wanted to put it down. It got me trying things all the time and I was never stuck in one place thinking for long. Yet, the solution wasn't something I just randomly found.

Congrats! This is really good.


Quite nice. I enjoyed the distraction.

Unsure if it's a new "type" of puzzle. Virtually any game with multiple characters, buttons and doors plays like this, and can be reduced to a similar graph.

Despite that, I don't want to discourage you. Originality doesn't matter that much. Keep making puzzles like these.


I agree, the title is a little self aggrandizing. As a game designer, I feel it disingenuous to claim it is a "new" kind of puzzle. The person just made a puzzle by adding rules to a set of constraints.


This reminds me of https://blogs.cornell.edu/info2040/2015/09/17/transmission-a... which was a lot of fun.


Prompted by a question on Twitter: it turns out that the puzzle is also NP-complete:

https://www.neeldhara.blog/posts/dogs-bunny-puzzle/


Throwing in a note of appreciation here. Had friends over to dinner last night at our place and at close to midnight a fun debate broke out about puzzles like wordle, and quordle and the like. I shared this URL with my friends and said “no instructions, you just got to do it. All I will say is that it can be done”

It was so funny to suddenly go from noisy bunch of us to each person quietly studying the problem followed by the occasional “wth??”

They all want to know if this is going to be a daily thing now.

The only question mark we have is whether the game will be fun on a regular basis since so much of the fun (and satisfaction) actually came from figuring out the rules of the game in the first place :D


I don't like how the thing I have to move covers up the things I have to look at. Lost interest pretty quick because of this, but it seems like it would be pretty easy to put the moving thing next to the symbol or something.


Same here. Found it more frustrating than fun for this reason.


I love it! Here's more unrequested feedback and ideas

Having two conditions on the same edge was confusing because being on different sides reads like an OR. And it's too my personal preference that it be entirely pictoric (eg. the same tiny tree but drawn inside a little circle through the edge as forming a part of it, or the same but crossed out for the bone). That way AND vs OR would be easy to read too, depending on weather the icons go along the edge for AND (eg in two little circles, or maybe a bigger one split across), or the icons are on the sides of the edge (with the circle being cut by the edge)


I couldn't understand how everyone was able to understand the puzzle and solve it without hints. Took me a few minutes to realize this is an interactive, click-and-drag game. I don't need any hints now. :)


I figured it was conrad barski the moment i saw the art. I like that style.


It was fun and engaging and I enjoyed it!

That having been said, and I apologize for raining on the parade, but I do not think it is a new type of puzzle. It's basically a visual representation of a state machine. I believe the classic "Get the farmer across the river with his wolf, goat, and cabbage" puzzle is the same sort of puzzle and could be represented in a similar way.

If there is some aspect of it that I have failed to take into account that makes it unique, I'd very much like to know!

And again, thank you for sharing this; it was fun ^_^


Since he could use lights, giving accessible paths green highlight and red to the opposite, would save players some time and become intuitive, or destinations bg become red/green, had fun


This was great. I experienced much of the name confusion as other people but it only lasted a minute or two so not a problem worth solving imho.

Nothing happened when I reached the win condition though. Shrug.


Great work, it is very easy to understand but challenging enough to be rewarding. A puzzle once a day with a timer or an action counter to compare with your friend could be quite successful!


The light show at the end gave me a chuckle. Pretty fun little puzzle.


Can't wait for regular puzzles like this!! This was awesome! From a technical perspective, I'm wondering if there are some kind of generative procedures that can generate "solvable" graphs? Very curious about it :) Also how to get the solution from a previously generated graph although that might be simply some DFS/BFS across several "start" nodes where the search stops once all the target conditions are met. Still very interested though and amazing job!!


Is this playable on iPads? No element appears to be actionable... :(


Same here. Thought the puzzle was obscure on purpose.


Yes. That’s what I played it on. Javascript disabled?


No, just stock Mobile Safari with a DNS ad-blocker. Nothing exotic.


So I finally pulled it up on my laptop, what's particularly weird about that is that all the resources when loading the page seem to be from the site, same domain. It's not pulling in resources from another domain that may be getting blocked.


I wish I could see the icons that the rabbit and dog are standing on


I'd change the word "Get" to "Move". I spent a minute trying to figure out how this game worked but I think changing those Gets to Moves would've helped


Super fun game solved it in < 5 min. Would love to have more levels!

You might consider updating the meta tag that handles the Open Graph text preview image. Right now the text preview image of your website on an iPhone is the React logo.

https://developer.apple.com/library/archive/technotes/tn2444...


When dog and rabbit are on the same node, it was somewhat hard for me to pick the right one to move (on mobile Safari), but I eventually managed. Very nice game.


If the author is looking for ideas here, with minimal impact on the existing design, I'd recommend putting the most-recently dropped animal in the back to allow for cycling through which one you pick up.

Another possibility is a "hover" state when when you mouseover a node with 2 animals, they animate quickly into a side-by-side orientation so you can easily pick which one you want to interact with.


Did you manage to? I couldn't choose the other one. (I forgot which one it was.) Even now on desktop it keeps picking up the dog and can't choose the rabbit.


I love it. I suggest making it so the dog and rabbits can't occupy the same space. I solved it this way afraid I would lose if I let a dog dog on the same node as the rabbit (just seems like they wouldn't get along). Then, I had to restart to see if they would and was a little disappointed to find they did.

Do you have an automated solver or a way to procedurally generate games? You could produce one a day and get the next wordle going.


Simply put, I think it’s fun! I’d love to see a move counter, to compare with an optimal solution.

Work it into a randomly generated daily puzzle and you might have something!


Really enjoyed this. The lack of additional hints and instructions made it much more enjoyable than if everything was handed to me. More of this, please!


It would be useful to design beginner levels so that there are no states you can get into but not solve the puzzle from.

I believe it's easily possible to make puzzles where you can move into a subgroup that doesn't include the solution. Where that's possible you really want to solve the whole thing mentally before moving any pieces.

This seems like a visualized version of the logic problems on the LSAT (and used to be on the GRE?).


Well, I quite enjoyed that! Well done, and I agree that I haven't really seen this type of puzzle before. It's similar to those slide around number/picture puzzles. I did a bit of experimentation and figured out that characters could overlap places and then the rest was just figuring out how to get to positions that I could move forward from (getting the dog up to the top loop, etc)

Nicely done!


Took me 4 minutes to solve it. A few issues:

- It's not clear that you can drag the characters.

- Tried to scroll and thought something was wrong when it wasn't working.

- Looks like you can also drag the main map image at least on Firefox which makes it slightly more confusing for those without much experience with React or programming in general.

- The rabbits looked scared or sad I thought the puzzle had something to do with that, it doesn't.


This is HN and almost nobody is talking about how this was coded.

The snapping is great. The tweening is great. I guess this is uses draggable? It could have gone wrong a thousand ways but its a great success in terms of usability (I'm on mobile)

in terms of the puzzle itself I found it a bit confusing, but I'm sure you'll figure it out. it takes real initiative to just code a thing and try things out


Framer Motion


I thought the dog would eat the bunny if they occupied the same space (and that stopping the dog eating the bunny was the point).


If you enjoyed this, you might enjoy Heroes of Sokoban: https://sites.math.washington.edu/~ostroff/puzzles/Heroes_of...

Note: it doesn’t work on mobile.

(Once you beat it, google Heroes of Sokoban 2 and 3 for more levels)


Very enjoyable and well done, but not "new". This effectively the same as push maze, with non contiguous rule sets.


Took 30 seconds to figure out what to do and then a minute to solve it. This was really good. Like many have pointed out, it takes a few seconds to figure out what is where and remember what symbol is under the animal but if this was a quick prototype, it's really good. Thanks for sharing it with us "Land of Lisp" guy.


This is fun.

A minor issue: It would be nice if nodes could be skipped.

E.g. initially, the dog is on the tree and can move to the carrot in two steps. It is required to make both steps and drop the dog on the well. I would prefer if I could put the dog directly on the carrot, or if I could put the dog on the carrot after hovering the dog over the well.


I like having to drop the dog, it makes it easier to figure out the rules initially without instruction. Also it forces more explicit play, rather than just checking where you're allowed to drop the dog. Obviously it's not very hard to figure out, but I'm imagining kids might end up playing this--having them drop the dog makes sure they understand the solution.


Looks excellent!

Not sure if it’s an issue on iPhone or my IQ, but I can’t figure out what the rules are. I highlight an animal but can’t move it on what seems a bidirectional edge (no nodes light up). But sometimes can. I assume that should work always but it’s not for me.

Also initially assumed I had to keep them separate, but comments here said no.


Seems like it's a bit buggy. Got a bunny stuck on a flower, unable to move it. Moved the second bunny to the same place and that made it unstuck.


I'd guess that's just how the puzzle works.


I am completely lost. How do you play this?


Drag animals from one node onto another.

Some edges are one-way (marked with an arrow).

Some edges are only open when an animal is (or is not) on a certain space, as indicated by the text on that edge.

More than one animal may share a node at the same time.


I am on an iPad and there are no animals anywhere on the screen.


Surely figuring out the rules for oneself is an essential part of the puzzle?


Nice one, finished in about 20 minutes, I think it can be seen as a variation of the classical (don't know the English name) "order the numbers from 1 to 9, whith a blank space", with some extra rules.

By the way, on Firefox/Android a bunny flew away to never return when I was dragging it from the boat.


Fun, but alas not new: conditional movement of entities through a graph towards a win-state configuration is a decades-old staple of game puzzles. For someone with the relevant experience, less than 90s to clear.

I did like the presentation, however! I think it has potential for a series of escalating difficulty.


Really enjoyed this. If this was a premium mobile game with more levels increasing in difficulty, I'd buy it for sure. Others have covered minor feedback like character icons overlapping on the same space, the flashing lights at the end, etc. So i won't. But overall, this is exciting!


Some neat concepts here. Aside from the mostly cosmetic qol issues other commenters mention, I also wonder if the game will get repetitive. It's hard to tell with only the one level but I imagine there might be some recurring patterns that the player will pick up on after playing for a bit


I love puzzles and flashing lights. Perfect!

Only counter-intuitive aspect I figured out only after finishing the first play was that animals, even dog and bunny, can occupy the same spot. But since it's possible to finish the game without doing that (except the final move) it's kinda moot point.


It's got too many rules for a puzzle imo. It does take an overly long time to figure out how it works.


Took me less than 60 seconds. I'd say it's a perfect little puzzle. Next one you encounter you know the rules.

I'd argue 2048 is harder to learn and that was a popular game.


I actually thought 60 seconds was a bit too long. An easy to understand puzzle is probably more intuitive and < 15-20 secs from start/enough not to notice it took time.


It's a puzzle for people with a CS degree. You need to recognize state transitions and conditions. Other people will take much longer.


Nice puzzle! It would be nice to indicate whether the transition with two conditions is an “or” or “and”.


Good fun, but not intuitive for people who drive on the left-hand side of the road (the somebody at bone/somebody at flower path assumes right-hand drive). Occupying the same space also feels wrong - I didn't even try this until both bunnies had to go onto the carrot.


> Good fun, but not intuitive for people who drive on the left-hand side of the road (the somebody at bone/somebody at flower path assumes right-hand drive).

Both have to be occupied at the same time; it’s not directional.


The "and" condition (must have someone on the flower and the bone) confused me because I thought it was an OR condition. Took me a few tries to realize what the constraints were.

I'd like to see these be autogenerated, that seems like a fun problem to solve.


It’s good and I enjoyed it a lot! the mental problem solving is similar to https://trainyard.ca/ so I don’t think it’s a new type of puzzle but a new variant on the unlocking gating puzzle.

Or maybe even sokoban


This feels very very similar to learning how to complete sliding puzzles for the first time! Recreating that feeling of moving around pieces to eventually understand the logic is great!

Also feels similar to the problem of getting a fox, a chicken, and a sack of grain across a bridge.


This is not new type of puzzle, the most basic version of is defined like this:

The man needs to cross the river with a wolf, goat and a cabbage. Wolf would eat goat, goat would eat cabbage, boat has only room for two.

Every kid in Russia knows that puzzle, although your implementation is quite good.


Took me a while to figure it out as I assumed the labels on the lines to be dynamic.

But once I got it, it was super fun to play. I wonder if you can algorithmically generate these puzzles and have human's curate them based on factors (joy, difficulty, visual appeal etc).

Thanks for sharing. :)


Yes I have a puzzle generator program, will post more soon


It took me a while ti realize what the edges even meant. I didn’t find it obvious at all. After a few trial movements and staring at the screen in disbelief, I got it.

One thing that I would definitely change is getting stuck. There shouldn’t be a state that you can’t get out of.


This was a lot of fun! Please make more levels and post them here! My main complaint is the 2-way path on the left (Somebody at Bone/Somebody at Flower), I couldn't tell which restraint was for which direction, a simple arrow should fix this.


Sweet excited for the abstract nightmares tonight where I’m asking myself about the deeper intrinsic connection between rabbits and trees and dogs and how it’s all a DAG and what do DAGs and dogs have in common besides three letters with a vowel in between

Really stoked


1. The animal icons didn't show up for me until I refreshed the page a few times. (Edge, Windows 10)

2. Would help to say "Somebody at bone AND Somebody at flower". I first interpreted it as OR and thought it was broken when it wouldn't let me move.


I shared it with my wife because she likes puzzles. It took her about a minute to figure out how the game worked. Once she knew what to do she how do play - she was done in under a minute and said it was fun.

Nice work! Any feedback I would give is in other comments.


I'd love to see a "this is how many moves it took you" score when you win.


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.


You can get into 'irreversible' states unless I'm mistaken. With a bunny on house and a dog/bunny on sailboat, the game is stuck. (Not a bug... maybe a feature... but you have to start over unless I'm mistaken.)


Could you please change the cursor to pointer when hovering over a dog / bunny? I initially thought I would have to solve the puzzle on a piece of paper, until a peer told me that I can just drag and drop the characters.


I tried it on two different browsers and it does exactly nothing.

It's just a diagram showing labels and lines? But nothing moves, and I don't see any rabbits or dogs.

I checked developer tools, and there are no messages.

Not really sure what it's supposed to do.


I got this too (and yes, I did enable JS to try it out since the page title helpfully informed me it was a React App.) The lack of any errors or warnings in the browser console is definitely strange. I guess the puzzle is to... debug it?


Feedback: add restart button so I don't have to reload the page when I get stuck.

Great game!!


Really fun to play! Reminded me of CodeMaster [0]

[0] https://www.thinkfun.com/products/code-master/


Simple concept executed well - got hooked into it straight away. Would be cool if you could figure out a way of automatically generating more, then you could show a different one every day like Wordle.


If this is by Conrad Barski (the Land of Lisp author), I wonder if early versions were done in Lisp and translated to JavaScript or whatever is needed for the web. Just curious how the development went.


I have a puzzle generator in zig (tuned to be super fast at brute force graph generation)

The front end is boring JavaScript, because I use react relay a lot on other projects, which is not clojurescript compatible


What are the main things that cause a JS program to be compatible (or not) with clojurescript?


Thanks for answering! Good to know!


Maybe Clojurescript?


Yes you did. One of these a day, please. I really like the hand-drawn / doodled style.. it disarmed me, which was good because solving this required me to be patient and to unwire my brain a little


working on it


I Kobayashi Maru’d it by setting the animals’ absolute positions in css.


It's a state machine, so it is probably easier for programmers to solve than non-programmers. It's basically a debugging puzzle. :) How about a bigger one? Or a random generator?


Reminds of the game “We were here together”, where you and your partner have to be at certain position doing some coordinated actions to solve the puzzle and advance to the next stage.


Loved this! I don't have any feedback that hasn't already been mentioned, but I would like to chime in that I'd definitely play more levels if you build them!!


If you're on mobile and you need to move a character to the left, you will want to swipe to the left very slowly to avoid triggering the gesture for moving back a page.


Yeah that's annoying, I'll have to see if the back gesture can be disabled


As I moved the last piece I was 75% expecting to be rickrolled.


I wish I had thought of that lol


That was fun :) - thank you - https://imgur.com/a/ZBh9EHq - more coming?


So much fun! It'll be nicer to highlight the paths which are "available" given the criteria. It could be only enabled when you start dragging an entity


What I really liked about this game was the lack of instructions. It's like you get two games in one - figuring out how to play and then figuring out how to win.


I like the UI design of this page, but I often forget what the symbol under the rabbit or dog is, it would be nice if it could be displayed, just a small question


Maybe just give a hint that you have to DRAG the animals.

The symbols are very hard to make out when the animals are on them. If this is intentional, then cover them entirely.


This seems a bit like an extended version towers of Hanoi.


Interesting puzzle. I teach search algorithms, so it was somewhat quick for me to solve. We now need a way "randomly" generate the initial state.


Great game, more levels and maybe a countdown for animals that will eat other animals (and end the game) if they are left on the same pad for too long.


I disagree about the countdown. It wouldn't change the actual puzzle and arguably wouldn't make the game more fun to play for most people.


A timer would only be fun for me in order to compete with friends. Not a distracting one that you can see while playing, but a time at the end with the number of the puzzle (assuming more get made) would be helpful for sharing.


Anyone else get tripped up by being able to place bunnies and the dog on the same space? Instinctively I expected that to trigger a failure state.


On Firefox for android when you solve it (dog at the top, both rabbits at the bottom left) nothing happens. Other than that it's really nice!


Worked for me. All the fields flashed started and kept flashing different colors.


could be that you have dark reader extension enabled?


Exactly. That's it. I suspected it later while reading other comments, checked on chrome and they flashed as expected. Too late to edit the post unfortunately.


Cost me 10 min to solve the puzzle. Quite an enjoyable game! My only feedback is to highlight the condition which blocks the path on the UI.


Fun. Can't wait to see this in code interviews.


That was very well made! Are there any more levels?


more levels will be coming


Feels like calculating forcing chess moves. I.e forced mates are conditional on where pieces can go and where the pieces actually are.


Another small improvement: It says "React App" in the tab, which should probably be "Dogs and Bunnys" or similar.


When two of something are on the same tile, I think you need a different image - or to add some kind of stacking visual or something


I liked the fact it didnt count steps and has no score. More casual that way.

Idea: rabbit grab an object (e.g. a key) and needs it to reach a cell.



That was very fun, would definitely play more as a casual game on my phone while commuting or during other downtime activities:)


That was a fun puzzle. I like that it was intuitive and you could figure out how to play without a stupid tutorial. Well done


Suggestion: make the dog eat the rabbit if they occupy the same space.

(I solved it without doing so because I assumed that was a constraint.)


Yes, I'm thinking of working this idea into the next iteration (though with a wolf instead of a dog)


I found a state with no legal moves within my first handful of moves - everything on sailboat is irrecoverable. Cool game!


Having programming background, especially grinding the fizz buzz algos for fangs prep definitely helps with this puzzle.


Too confusing to understand what to do here.


Basically click and drag the animals. The "paths" have conditionals that must be met by having any animal on the symbol to "unlock" the road.


Just a static image, no animals or anything to click on, tried on Chrome 83 (no add-ons) and FF 88 (uBlock, disabled).


Very nice. But is there only one kevel or I just haven't figured out how to move to the next after completing it?


I'm assuming the author just made the one level. Iirc Conrad Barski is a medical doctor that made the famous Land of Lisp book for teaching Lisp programming. A pretty creative person. I assume the fun for them was in creating this and getting feedback and not necessarily coming up with 50 levels.


More levels will be coming :-)


Awesome. I had 3 of my friends play it as well and they all caught on pretty quick and beat it.

Suggestions: if you run HakanK's program in this thread(or have your own), you can determine the optimal # of moves and use that to score folks. It would be cool to be able to compare against my friend group that does daily games like this to see who got closest to the optimal number and who got the lowest time. I really enjoyed it!

Edit: I don't care about leaderboards and would never suggest a login. Just something definitive that I could screenshot amongst friends.


It doesn't work. Especially on mobile.


This is one of the least useful bug reports I have ever seen. You could at least have reported your browser and operating system.


That seems to be a standard bug report to me.


Must be a very rare browser, it works very well on Brave (mobile).

Also, it is always more helpful to state the actual issue.


Safari on ios. I see no dogs or rabbits. I only realized that it was supposed to be interactive by reading the comments here.

Edit: Same in Chrome on ios for me.


Not sure what is going on, works fine on Safari (ios) here.


Solved it on mobile, but no signal that game was finished. On Firefox (android) here.


Worked fine for me on FF on Android. With third-party disabled uBO even.


Worked well on my Android`s Vanadium browser (chromium based).


Worked fine in Ecosia on mobile


I may be a bit thick but can someone explain this to me? I can’t seem to solve it despite trying for quite a while.


Great game! Reminded me alot of the game, "Baba is you". Keep it up! Would love to play other levels :)


Very cool little game. More levels please!


Working on it


That was a fun few minutes of my life I don't want back, great puzzle concept built around dependency hell!


I would classify this problem as a multi agent path finding problem on a directed graph with conditional edges.


Reminded me a bit of the game Baba Is You


First game I thought of. Baba is hardcore.


This should have a mild epilepsy warning.


This was a fun timepass for me, i am happy to have figured oyt and solved it in less than 4 minutes. Good job!


Word of warning: iPhone Firefox dark mode renders the game unplayable. Turn off dark mode to fix the issue.


I feel like I've seen this in a Professor Layton game before. Just not laid out like this of course


Intuitive and nice brain teaser. Should share it on some kid’s dedicated website. I bet they’ll love it.


I really enjoyed it, took me time to realize that I can put two pawns at one place.

Maybe some mobile release soon?


Do you think you might try to procedurally generate additional levels? Or craft them by hand?


Took a Second to get the instructions and it was fun, thanks for something new and different


This is so cool, just like that Missionary-cross-bridge or the Family-cross-bridge puzzle!


Petri nets: the game

Nice one!


Loved your puzzle, it was really fun. It took me a bit but I was able to solve it. :)


It appears as though the website is down, I'm getting "Site Not Found"


Really fun game! I'd love more :)

SEIZURE WARNING: Once you win, there is a lot of flickering.


I got all the rabbits and the dog to one node and then I could not move anywhere.


I don't get it.

I beat it. It's a neat puzzle, but why the tremendous upvotes for this?


I guess a lot of people played it and enjoyed it.

I wonder - am I more likely to vote for something interactive like this game? I.e. does the fact that I was actively playing rather than simply passively reading put me in a more active state of mind?


No reason, the sweetness/ingenuity just hits in the right spot for a lot of us


This was fun! Would definitely play a mobile puzzle game with levels like this


That's an awesome game. It took me an embarrassingly long time to solve.


This was so fun!

Make one new puzzle a day like Wordle and I'll get addicted for sure :)


Great game

I agree i don't think i have seen constraint as a game quite like this before


My daughter is indignant about your inconsistent use of rabbit vs bunny.


Yeah that was by accident, I whipped this up kinda fast


Reminds me of baba is you.


Once you get it, it's one of those games that give good vibes.


How do you generate levels or at least validate they’re solvable?


Nice algorithm inspired…the Leetcode study definitely helped!


Nice puzzle!

It would be nice to show how many steps were taken to solve it.


>site not found

looks like there's some problem with the hosting


I had to read comments to find out its interactive...


Doesn't work on mobile was confused at first


might be an off-beat opinion, but I think the rules are perfectly clear as is. Took me around 5 minutes from first sighting.


Doesn’t work in safari or chrome on my iPhone.


I thought it was just me, glad you posted this.


Game is stuck when rabbits and dog are on ship


It isn't stuck, you lost :) Refresh the page to try again.


Something about "losing" a puzzle doesn't feel right.


Same as putting the wrong letter in a crossword or making 6 wrong guesses in Wordle. Sometimes puzzles have to be started from scratch.


This is excellent, please build on this idea.


Really cool game and idea. Please build more.


This is awesome. Please create more of this!


Fun puzzle. Nice flashing lights as a reward


“I wish this was daily” - my 7 yo son.

Nice work!!

Edited: typo, with -> wish


Very nice! Really enjoyed figuring it out :)


Yeah this is fun and simple. Nice work!!


Inspired by resource allocation graphs?


That was fun. Where is the next level?


This looks like a fun TLA+ exercise.


Doesn't work in Qutebrowser.


I was clueless and gave up.


This was awesome. Loved it.


That was fun!!! Thank you!


That was fun to figure out


Loved it. Great work :)


I love it. Post more!


that was a fun puzzle, are you planning on making more?


Damn that was hard.


expected to have confetti at the end. nice puzzle


Well that was fun!


FF throws an insecure warning so I can't check it out


only one level? c'mon this is great!


This was great.


I enjoyed it :D


my 10yo and my 8yo loved this


671098


Fun!


It was fun


I love it!


Good job!


holy shit that was hard


damn that was hard


interesting game


Looks like a bit expanded goat, wolf, cabbage puzzle


Fun game, but after the seizure, do I not get another board???




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: