A downloadable game for Windows, macOS, and Linux

Get this game and 17 more for $65.00 USD
View bundle
Buy Now$6.00 USD or more


Hexle is a small number-guessing puzzle game based on Sudoku! Each number can only appear once per line and per 4x4 square, but also binary restrictions apply inside of each square, limiting the numbers that can be placed on any one tile.

Learn Hexle's rules with the game's introduction and then go forth completing generated puzzles in various difficulties. Come back every day to solve the daily challenges or to tackle the weekly 16x16 megaboards! As you complete puzzle grids you will unlock new color palettes to change the mood of the game! (light and dark palettes are available from the start)

You can stop playing at any time and continue your puzzle later. There is one save slot per difficulty which you may continue or reset at any time. The game plays entirely with the mouse.


This was originally Remy's entry for Ludum Dare #54 compo! The Ludum Dare version was made in 48h and had to fit the theme "Limited Space". Here is what it looked like, this version is still available on this page as a free download further down this page!



If you'd like you can come to our Discord to talk about the game and compare scores!

It's also a great place to talk with us and get news of our next projects!


Are you press or a content creator?

If you're a streamer, youtuber, or press and you'd like to cover the game, we've uploaded a few assets you might find useful, including screenshots and thumbnail material! Find them here!



As PUNKCAKE Délicieux we make a new game every month, which you can get by subscribing to our Patreon for 3€/month or buy separately on Itch io for 6$!



Quickpatch 1.0d

  • Changed the animations for steps 2 and 5 of the introduction to make the rules easier to understand
  • Fixed timer shwoing wrong number of seconds when it goes into hours
  • Sharing your score now shows the same timer as in-game

Quickpatch 1.0c

  • Left-clicking a barred option now won't do anything.
  • Added X and C noting controls as alternative to right-clicking.
  • Lengthened the moments of silence between tracks a little bit.
  • Fixed a click on one of the music tracks when it looped.
  • Fixed right and bottom screen borders when using "fuzzy" scaling.
  • Tentative fix for mismatched overlapping music tracks.

Quickpatch 1.0b

  • Easy 8x8 grids now available in the demo!
  • Fixed some palette unlocks showing the wrong unlock condition.
  • Fixed a crash when completing a master 8x8 grid.
  • Fixed the introduction acting weird if you left it without completing it.
  • Fixed a bug where leaving the introduction without completing it would save the last grid as a regular easy mode grid.
  • Fixed the 'Generate a new grid' button generating a classic grid when it should generate a megaboard.
  • Fixed Mathematically Unlikely and (Near-) Infinite Possibilities achievements.
  • Fixed [REDACTED] not being fully active when launching the game with [REDACTED] previously selected.
  • Fixed unlock notifications appearing in demo for things that aren't available in the demo.
  • Fixed [REDACTED] not properly showing its name in the demo.
Updated 18 days ago
PlatformsWindows, macOS, Linux
Release date Dec 01, 2023
Rated 4.3 out of 5 stars
(29 total ratings)
AuthorsPUNKCAKE Délicieux 🥞, Rémy 🍬 Devaux
Tagsgrid, hexadecimal, logic, Ludum Dare 54, numbers, Pixel Art, Relaxing, sudoku, thinking
Average sessionAbout a half-hour
AccessibilityColor-blind friendly
LinksLudum Dare


Get this game and 17 more for $65.00 USD
View bundle
Buy Now$6.00 USD or more

In order to download this game you must purchase it at or above the minimum price of $6 USD. Your purchase comes with a Steam key. You will get access to the following files:

Hexle - Windows 57 MB
Hexle - MacOS 57 MB
Hexle - Linux 57 MB

Download demo

Hexle - Free Demo - Windows 57 MB
Hexle - Free Demo - MacOS 56 MB
Hexle - Free Demo - Linux 56 MB
Ludum Dare Hexle - made in 48h 6 MB

Development log


Log in with itch.io to leave a comment.

Can you please make Linux (and MacOS) builds for the main game? It seems weird to have it for the demo but not for the game itself.

We'll get to it soon! The demo version was mostly just a test, but we have the full thing almost ready now!

Oh this game is like 4 months old lol.


Thank you

This game has been invited to a co op sale! https://itch.io/b/2232/christmas-co-op-bundle

my brain is more damaged than my wrist even though it’s only the demo 💀.


worth the money 

This is a great game! Very fun logic with the shared-bits rule. 
There's too much clicking and right-clicking, though, I won't be able to play for long because it's going to give my wrist RSI.

I'd love it if this included some "Good Sudoku"-like tools, and to be able to swipe across multiple cells to add or remove possibilities.


Hi! Thanks for the praise and sorry about your wrists! 😅

You can already swipe across multiple cells to remove possibilities, though you'll have to click them one by one to add them back. 🙂


The demo is so good! Hopefully, an Android app will be available.

This is mental

i like this!

very cool and fun my brain is not as big as i think it is but nevertheless i solved some with minimal error! :D


Overwhelming at first, but really fun to figure out how to improve and make deductions! I wish I could draw on the screen; I stopped using the game and solved them in paint instead. And then eventually I went back to only using the game, to try to get my time down – here’s my fastest:

hard mode 2:51

What does the daily do? it seems to be completely random puzzles, not a single puzzle per day.

(1 edit)

Really cute puzzle game! Some fun logic going on with the restricted bits and the way you have very few ways of placing 1 - 2 - 4 - 8 and all the 2-bit numbers. You can go pretty fast if you're smart about the way you use the available info. For a first time puzzle game, this is really good I think! Also, love the confettis <3


looks nice dude.

and nice to have a linux build

will have a try


Perhaps I've just got a bad memory, but I would have loved a way to note the restricting bits on the outside of the frames. Just keeps me from having to scrub back thru the rows and columns when I want to guess.


I ended up with a puzzle during the introduction to Rule 3 that requires the not-yet-revealed Rule 5 to disambiguate. :/ (Unfortunately Itch isn't letting me post a comment with a screenshot, which has since vanished from my clipboard.)

What to say about a Punkcake Game. Nice visuals and VFX, beautifull pixel art, and a very fun gameplay!


Some UIs don't show.

A crash log when clicking the button after completing the daily challenge:

  . Starting log.

  . Writing to log.txt

  . Initializing SUGAR v0.0.6.

  . Running on Windows.

  . Using SDL 2.28.2

  . Using LuaJIT 2.1.1692716794

  . Using Lua 5.1.4

  . Running from: D:\Desktop\0\231003\hexle_windows\

  . Created new memory chunk '_sugar_'.

  . FreeType library was initialized.

  . Using FreeType 2.12.1

  . Relocating chunk '_sugar_' for resizing.

  . Resized '_sugar_' to 0x01F4 bytes to fit new 'default_font' req.

  . Correctly requested 'default_font' 0x01F3 bytes at 0x01 in chunk '_sugar_'.

  . The 95 glyphs font 'default' was created.

  . GFX system initialized.

  . Time system initialized.

  . Input system initialized.

  . Successfully opened audio device

  . Could not get device name.

  . Driver: wasapi

  . Frequency: 44100

  . Format: 0x8010

  . Channels: 2

  . Samples: 2048

  . Audio system initialized.

  . All systems initialized.


  . Found 'main' chunk.

  . Found 'gfx8.png' chunk.

  . Found 'utility.lua' chunk.

  . Found '../../libs/gifkey.lua' chunk.

  . Found '../../libs/remy_systems.lua' chunk.

  . Found '../../libs/autosnaps.lua' chunk.

  . Found 'time.lua' chunk.

  . Found 'font.png' chunk.

  . Found 'sfx/confirm.wav' chunk.

  . Found 'sfx/deny.wav' chunk.

  . Found 'sfx/hover_in.wav' chunk.

  . Found 'sfx/hover_out.wav' chunk.

  . Found 'sfx/complete.wav' chunk.

  . Found 'sfx/note_in.wav' chunk.

  . Found 'sfx/error.wav' chunk.

  . Found 'sfx/note_out.wav' chunk.

  . Found 'sfx/select.wav' chunk.

  . Found 'sfx/close.wav' chunk.

  . Successfully loaded data.sgr.

  . Deleted font 'default'.

  . Correctly requested 'default_font' 0x01F3 bytes at 0x01 in chunk '_sugar_'.

  . The 95 glyphs font 'default' was created.

  . Running...

  . Defined 0 buttons for player 0.

  . Relocating chunk '_sugar_' for resizing.

  . Resized '_sugar_' to 0x41F4 bytes to fit new '8_srf' req.

  . Correctly requested '8_srf' 0x4000 bytes at 0x01F4 in chunk '_sugar_'.

  . Created the 128 x 128 surface '8'.

  . Correctly loaded 'gfx8.png' into '8' surface.

  . Resized '_sugar_' to 0x43C0 bytes to fit new 'main_font' req.

  . Correctly requested 'main_font' 0x01CC bytes at 0x41F4 in chunk '_sugar_'.

  . The 85 glyphs font 'main' was loaded from font.png

  . Relocating chunk '_sugar_' for resizing.

  . Resized '_sugar_' to 0xFA00 bytes to fit new 'Hexle_screen_srf' req.

  . Correctly requested 'Hexle_screen_srf' 0xB640 bytes at 0x43C0 in chunk '_sugar_'.

  . Created new window 'Hexle'.

  . Resized '_sugar_' to 0x010300 bytes to fit new '__boot_sheet___srf' req.

  . Correctly requested '__boot_sheet___srf' 0x0900 bytes at 0xFA00 in chunk '_sugar_'.

  . Created the 96 x 24 surface '__boot_sheet__'.

  . Deleted surface '__boot_sheet__'.

  . Correctly requested '__boot_sheet___srf' 0x0900 bytes at 0xFA00 in chunk '_sugar_'.

  . Created the 96 x 24 surface '__boot_sheet__'.

  . Deleted surface '__boot_sheet__'.

  . Defined 7 buttons for player 0.

  . Loaded sfx 'confirm' from file 'sfx/confirm.wav'

  . Loaded sfx 'deny' from file 'sfx/deny.wav'

  . Loaded sfx 'select' from file 'sfx/select.wav'

  . Loaded sfx 'hover_out' from file 'sfx/hover_out.wav'

  . Loaded sfx 'complete' from file 'sfx/complete.wav'

  . Loaded sfx 'error' from file 'sfx/error.wav'

  . Loaded sfx 'note_out' from file 'sfx/note_out.wav'

  . Loaded sfx 'close' from file 'sfx/close.wav'

  . Loaded sfx 'hover_in' from file 'sfx/hover_in.wav'

  . Loaded sfx 'note_in' from file 'sfx/note_in.wav'

  . done generating board!

  . done generating board!

  . done generating board!

  . done generating board!

  . Duplicating log to crash_log_000.txt

  . Quitting required.

ERR [string "..."]:1203: attempt to compare table with number

Stack traceback: 

[string "..."]:123: in function <[string "..."]:109>

[string "..."]:1263: in function 'gridgen'

[string "..."]:1203: in function '_genholes'

  . main loop exit


  . Initiating shutdown.

  . Deleting window 'Hexle'.

  . Deleted surface '8'.

  . Deleted font 'main'.

  . Deleted font 'default'.

  . GFX system shut down.

  . Input system shut down.

  . Audio system shut down.

  . Deleted memory chunk '_sugar_'.

  . Application ran for 2594.398000 seconds.

  . All systems shut down.

  . Ending Log.

this is a really fun take on a sudoku-like game! there's something very satisfying about filling up the 4x4 square.


i might have been pampered by modern sudoku games, where clues get blurred once that number doesn't fit - just so you don't have to manually cross redundant clues

Still pretty fun for what it is

Well done !

Thanks for sharing the source too!

I was hoping to play this on macOS, but I’m missing the libs/gifkey.lua and libs/autosnaps.lua files, so I’d be grateful if you could point me in their direction 🙏


Hi! I'm not sure what you're trying to run the game with but unfortunately it was made with our custom engine Sugar which is not available to the public at this time. I shared the source files mostly to comply with the Ludum Dare Compo rules, and so people can have a peek at them, but there's no way for you to actually build the game sorry.

That being said, I'll be trying to provide a Mac version myself soon, and I will add a Linux build today as well!

I see! That makes sense, thanks for the info I look forward to trying the game out

You might also look into installing wine. It seems scary but once installed most windows games on itch should run perfectly (depending on your hardware/osx version). I use wine-crossover installed via brew from Gcenx's cask, see https://github.com/Gcenx/wine-on-mac#macos-catalina-and-later

Neat, I’ll check it out. I’ve used wine in the past pre-Catalina, but wasn’t aware of wine-crossover, thanks!

Hi again, we've just added MacOS support at last for Hexle, so you can check it out now if you still want to. :)


Thanks for letting me know!


Rule 5 makes no sense: how can all of the 16 numbers appear in each 8-number row and column? That's literally double the quantity that will fit. I seemed to solve the Rule 5 tutorial puzzle regardless of this, completely ignoring that "rule"... but the buttons that appear when it's completed are at least half below the bottom of the window and unreadable. (The "restricting bits" thing is NOT explained well AT ALL, but I was able to reason it out. I doubt many others will...) Needs more work to be interesting to anyone other than math/puzzle/programming geeks like myself, and even among us it's a stretch. There's a good puzzle concept in there somewhere, but I'm not about to try to make my own instances of it.

Okay, I think I know what you meant to say with rule 5: no number may be duplicated in any row or column. None of the tutorial levels required this, but the daily puzzle today did. That would be a failure of the tutorial. (Since none of the other rules make any quadrant of the puzzle dependent on any other, this would be a very important rule, and thus especially important to phrase correctly.)

Thank you for providing the source code. I don't have any puzzle games in mind but I plan to make some SDL2 games hopefully some day and this will help me learn.