A downloadable tool for Windows and Linux

Puzzle Key is a tool to help you visualise your adventure game puzzles and make puzzle dependency charts.

Create nodes for each step of your puzzles. Colour code them to help see puzzle-type distribution and flow.


Right click to add a stand-alone node and enter some text for that step of the puzzle.

Then you can drag out in either direction to create adjoining nodes. Change their colour from the right-click menu.

Updated 6 days ago
PlatformsWindows, Linux
Rated 5.0 out of 5 stars
(2 total ratings)
AuthorNathan Hoad
GenreAdventure, Puzzle


PuzzleKey-linux-1.0.3.zip 15 MB
PuzzleKey-win-1.0.3.zip 14 MB

Development log


Log in with itch.io to leave a comment.

(6 edits)

Someone shared this tool, as I'm trying it seems interesting. Thanks for sharing it with us. I like that it is fast to load and gives right away the work area, and that once I understood a bit the UI I can do things fast. I would like to share my opinion on the improvements it would benefit to have;

  • Can you make the mouse scroll zoom in/zoom out instead of going up and down? (edit: nevermind, I found out Ctrl+scroll.)
  • Can you make the mouse scroll less violent (like less movements for scroll click).
  • Maybe make a parameter menu where we can configure the behaviour (scroll = zoom or move, scroll tick how much displacement, ...).
  • With unzoom the text becomes blurry.
  • I agree with the vertical graph part. Altough the horizontal is good for story node logic, the vertical would be good to give mechanical details on a "story node", or puzzle parts.
  • Right now we have to select the text to change the node color. (EDIT : in fact, you need to click textarea to have color change options, and I was clicking on the padding where I don't have color changes options.)
    • It would be nice to have only need to 
      • (select the box > right click) 
    • instead of now 
      • (select the box > select the text > right click)
  • The padding of the box is too big IMHO, you should make the text take more space inside (or make it a parameter value).
  • There is no help menu or no help node when we open the software to give all shortcuts. I had to find everything by myself or looking on other comments.
  • When doing ALT+N it would be good to have it spawn under the mouse and not in a location far away
  • When zooming in with Ctrl+scroll make so it zooms toward mouse position and not center of screen.
  • Would be interesting to be able to copy-paste/drag and drop images to have them in it, for reference purposes.

I intend to use it for video game story design (I'm not a pro) and table top role playing scenario with friends.

I use Draw.IO as well but I expect PuzzleKey to be more straightforward in doing those related tasks, as in less clicks.

Hey, thank you so much for this! It's even more comfy than yEd; but can I ask you, is it possible in a future version to add nodes connection to the bottom of each node? Ron Gilbert & lots of other indie devs mention how incredibly different is to design the puzzle charts vertically instead of horizontally, and since the "connection points" of each node are only on the left/right side, it really gets uncomfortable to design the chart vertically this way (so I wanted to ask this in case adding a new connection point is something relatively "easy" thing to do). Thanks anyway, loving this!

I’d love to have vertical connections too - I agree that designing the puzzle graph horizontally doesn’t feel quite right. Unfortunately, the GraphEdit stuff in Godot only works horizontally so it would be a lot more complicated to build everything custom.

looks good, the only bad thing i found is that i pressed CTL+N instead of ALT + n (windows) and it deleted the whole process i did :'(

Oh wow, yeah that’s a bug. It looks like it’s not doing the proper check for changes when the shortcuts are used. I’ll fix that up.

Version 1.0.3 has added the unsaved changes check where it should be.

Hi,  this looks great. I'd  love to take it for a spin. It's exactly what i'm needing.

Can you please include a linux build?

Thank you

I’ve added a linux build but I don’t actually have linux installed so I’m not able to test it properly. Let me know if it doesn’t work.

I am so sorry to only reply now.  Yes, the linux build works perfectly. Thank you for supporting the linux community :-)

The window keeps spawning quite a bit off my screen, I think its because of my resolution scaling. If its cool with you, please add "OS.center_window()" to the code for when it starts up?

Deleted 1 year ago

I’ve made that change - version 1.0.1 for both Windows and macOS are now available.

Ah, thanks good sir!