Introducing Simon Tatham’s Puzzles & Tips On Dominosa

I’ve brought up Simon Tatham’s Puzzle Collection here before. It was then, and still is now, one of the great wonders of the World Wide Web, a completely, utterly free, in both beer and libre, collection of randomly-generated puzzles of 40 different styles and counting, available for pretty much every platform. Not currently for Mac, because Simon’s Mac stopped working, but you’re free to compile it yourself if you can.

Let’s delineate the platforms: Windows, Linux, Mac (with the above caveat), Android, iOS, Java and even Javascript. You should be able to field one of those options, right? And which puzzles are provided? Black Box, Bridges, Cube, Dominosa, Fifteen, Filling, Flip, Flood, Galaxies, Guess (Mastermind without the trademarked name), Inertia, Keen, Light Up, Loopy, Magnets, Map, Mines(weeper), Mosaic, Net, Netslide, Palisade, Pattern (a.k.a. Nonograms, or Picross), Pearl, Pegs, Range, Rectangles, Same Game, Signpost, Singles, Sixteen, Slant, Solo (genericized Sokoban), Tents, Towers, Tracks, Twiddle, Undead, Unequal, Unruly and Untangle. Not only will the software generate an endless of stream of puzzles for you to solve, often with a user-selected difficulty, but some platforms will even print out books of these generated puzzles for you to solve, along with an answer key.

The puzzles I’ve boldfaced are what I call Nikoli-style puzzles. Nikoli is a popular Japanese puzzle magazine, the original home of Sudoku, and has a particular kind of logic puzzle that’s really satisfying to play. They usually have simple rules, but with profound implications, and with some thought you can deduce processes to help you solve them. Sudoku aficionados will immediately know what I’m talking about. The main subject of this post is about one of these Nikoli-style puzzles, Dominosa.

Nikoli specializes in human-created puzzles, and Simon Tatham’s Puzzle Collection creates its puzzles by computerized process. These kinds of puzzles really are better when set by hand. But that doesn’t mean the automatically-generated kind doesn’t have its place.

Also, Simon Tatham’s puzzles are completely free, don’t track you, and don’t have ads, making them a real rarity in this money-desperate age. If you need any proof that the app stores of Apple and Google are rigged against you, then consider that the Puzzles have been available on both their platforms for over a decade, but their discovery algorithms never seem to surface them. (Here’s some help in finding them: Google Play, Apple App Store.)

To give you idea of what kind of puzzles these are, and to get you on your way to solving one kind of them, here are my observations about Dominosa. The rest of this post is pretty long, so this is your chance to check out if you don’t want basic tips on how to solve it.


Dominosa, KDE version

Dominosa presents you with a grid of numbers, usually from 0 to 6 (you can choose to solve larger puzzles). The numbers represent the values on a field of dominoes, but the edges between them have been removed, leaving only the numbers of pips that would be on their two sides. Your job is to place dominoes on the field, over the numbers, to reconstruct where they were originally. The puzzle is solved when every number is accounted for, filling the board with exactly one domino of each pair of values, with no contradictions.

I’ll present a series of images representing working out one of these puzzles at a basic level of difficulty. Not all of them are as simple as this.

A Dominosa puzzle, from the Android version of Simon Tatham’s Puzzles.

The way I solve these, I first look through for pairs of numbers. If you’re on a version of the Puzzles with keyboard support, you can press a number to highlight all of its values throughout the board. If you don’t have a keyboard, there will usually be number buttons onscreen that fill the same purpose. There may also be Undo/Redo buttons; if there aren’t, you can use Ctrl-Z/Ctrl-R for that.

I start out by looking for all the zeroes. Here they are:

In a double-six puzzle like this one, there will always be eight of each digit. What I’m hoping to find is exactly one isolated pair of one of the numbers. There’s only one domino with each pair, from 0-0 through to 6-6, so a single pair means that a domino must be there.

No luck with Double-Zero, so I keep going, checking each number in turn. (You can only have up to two digits highlighted at once; pressing a number again turns off its highlighting.)

I have better luck with the 2s: there’s only one adjacent pair. So I click on the space between them to place a domino, as so:

In Nikoli-style puzzles, as you correctly fill out each little bit of the puzzle, it makes the rest of it slightly easier. When you make progress in solving it correctly, the puzzle seems almost to knit together, until the whole grid is complete.

It’s not just single pairs that are useful though. Sometimes you’ll find single triples, either in a straight line as here, or in an L-shape. So long as there aren’t any other adjacent digits of that value in the puzzle, then you know that one of the two possible pairs must be the correct one.

How is that useful? In the below case, there are borders between the digits that the two possible placements have in common. Since one or the other must be correct, the two domino edges that the possibilities share must be edges in the solution. We can mark edges in Dominosa with the right mouse button, or on mobile platforms with a long press:

Above I’ve placed the horizontal edges that the two possible Double-Three locations have in common.

Moving on. There’s a single pair of 4s, so I’ve marked that domino. And there’s an L-shaped arrangement of three 6s. It’s on the outside of the puzzle, so there’s really just one edge to place, like so:

I’ve also started on the second step of the puzzle, looking for non-identical domino pairs. This is where the ability to highlight two different numbers becomes useful.

Now we’re looking for each possible 0-1 combo. There’s three possibilities here, which isn’t helpful.

The process I use is to check for the dominoes with one zero: 0-1, 0-2, 0-3, 0-4, 0-5 and 0-6. After that, the remaining pairs beginning with 1: 1-2, 1-3, 1-4, 1-5 and 1-6. When I move to the next digit, there’s fewer to check, because we’ve already done some: 2-3, 2-4, 2-5, 2-6; then 3-4, 3-5 and 3-6; then 4-5, 4-6, and finally 5-6.

Of the 1-2 domino, there’s only two places where it could be, so I can place edges alongside them. Also, there are two 1-6 pairs. But because we’ve ruled out one of them, when we tried the Double-Sixes, there’s only one pair left that could possibly be the domino.

Ah. Now we have one of the best things we can find: a dead-end. A place with a cul-de-sac, where a domino has to go regardless of its digits. Every digit in the puzzle must connect in one direction, and the 3 to the right of the 4-4 has only one way to go, so that must be where the 3-1 goes. And because of the two edges nearby, the 1-2 also has a location where it has to go.

The great thing about these placements is, they weren’t narrowed down from the lack of other pairs of digits. Since the 3-1 has to go there regardless, all the other 1s by 3s on the board can’t be options, so we can place edges between those numbers.

We’re lucky again; each of these edges produces mandatory domino placements, in the same way!

These, in turn, allow us to place another domino, a 1-4, and to block an edge between another 1 & 4. It results in an unfilled region of the puzzle with only one entrance. Dominoes have exactly two ends, so any region containing an odd number of digits is impossible. This lets us place a useful edge, between a 5 and a 6, because if the edge were below the 6 instead, the region would have 11 digits in it.

Continuing with checking for pairs, there’s a triple, a 1-5-1 with no alternatives around them. Since each puzzle must have exactly one 1-5, it has to be one of these two places, so all the other 1-5s in the puzzle must have edges between them.

And that means a mandatory placement for the 1-0.

Hah, I neglected the mandatory 6-2 at the right side of the puzzle! But I did find a single remaining instance of a 2-4, which I filled in.

And then I noticed the 6-2:

We’ve done about half the puzzle now, but really we don’t have much left to do. The 6-2 we place means we can place edges between the 2 and 6 at the bottom of the puzzle, as so:

We can hurry through the rest of the puzzle. There’s a single triple of 3-4-3, so we can place an edge above its 4:

There’s a single 3-6:

That creates two dead-ends, a Double-3 and 0-4, and then a 4-3:

From here, most of the rest of it can be worked out with the same principles. When we get to small areas like this, often figuring out where to place one domino, or even edge, makes the rest of its region obvious. There’s a small region with a single path into it, so the fact that regions can only have an even number of digits comes into play again.

This puzzle is almost solved, so let’s just jump straight to the solution:

As noted before, most puzzles aren’t this easy. Often after you’ve been through all the possible pairs of digits, you still have a significant amount of puzzle left to do. Usually, if you look carefully at the puzzle, you can figure out placements that, if made, will result in contradictions to the rules of the puzzle. If you find one of those, you can then place an edge between its numbers.

There’s a couple more tricks I know of, but they start getting harder to explain easily here. I’m by no means an expert: I’m sure that experienced Dominosa solvers know tricks I have yet to figure out. I also don’t want to explain too much about how to solve these puzzles, as I got a lot of entertainment in figuring out my solving process, and I’d hate to deny that to you. Most of the processes I’ve mentioned so far are pretty obvious implications of the rules. Revealing the less obvious tricks feels a bit like a spoiler.

One great advantage you have in solving Nikoli-style puzzles on a computer is the Undo feature. Like doing Sudoku by hand, if you reach a point where tricks fail you and solving algorithms leave you stranded, you can progress by making assertions, basically guesses, then working them through until you reach a contradiction. There’s a whole strategy to this: you want to make a single binary, this-or-that guess, and to pick an unlikely guess, one that will prove itself incorrect quickly. Then you can erase the marks you made following your guess, and then mark its opposite.

On a computer, you can undo until the point where you made the guess, with Ctrl-Z. On paper, you’d not only have to remember all the marks you’d made since the guess, but you’d have to erase them all, which makes a huge mess. If you undo too far, you can press Ctrl-R to redo the removed moves. It’s really a tremendous aid!

Give Dominosa a try, and see what you can deduce. If you want to try some of the other Nikoli-style puzzles, that feel similar but have a different process, I recommend Loopy, Slant and Bridges.

Hempuli is still at it

Hempuli is the brilliant creator of the rule-breaking-and-making puzzle game Baba Is You. That is not the subject of this post, but I couldn’t recommend it more highly.

No, the post’s subject is a series of things they’ve made since. Yes, I said things. I said it and I meant it!

They’re all: (free|wonderful|insane|playable in browser|available on itch.io). There’s twenty-three of them, and they’re all ludicrous ruminations on the idea of Sokoban. We’ve posted about Hempuli’s improbable series of Sokolikes before, but they keep making them, and so now there’s 23.

The basic rules are: there are blocks, and you can push them. If all the Xs on the level have blocks on them at the same time, the flag activates, but it stays active only while every X is occupied. If the flag is active, you can step on it to complete the puzzle.

But there are also buttons. If all the buttons of a given color have boxes (or players) on them at the same time, then certain gates in the puzzle open. Some puzzles have water. Don’t step in that. Boxes will usually float on top of water though.

In (nearly) all the puzzles, the arrow keys move your little Sokoperson, the R key resets the current puzzle, and the Z key reverses your last move. Keep pressing Z to keep going back, until you reach the puzzle’s start state.

Those are the basic rules, but don’t be surprised if they’re upturned in some of these games. Hempuli is diabolical, and sometimes the basics don’t apply, or are turned on their head in unexpected ways.

From Mountris. The character is about to make a surprising mistake.

In Mountris, some of the blocks you push are Tetris shapes, that move as a single unit. Think carefully about the implications of that.

Upon seeing this early puzzle in Permaban, my mouth said, unprompted, “What fresh hell is this?”

One interesting thing about these games generally is how they often break one of the central rules of Sokoban, that you can’t push two or more blocks at a time. In many of Hempuli’s variants you can, but in some of them you can only do it in certain circumstances.

Hell, continued: From the aptly-named (?!) Nabogorf. Notice, this one has a different Undo key. Why do you suppose that is?

As I review these games in order, I’m struck by how they keep getting stranger. Evidently the process of making Baba Is You disconnected some important limiter in Hempuli’s brain, and so now they’ve become a portal, spewing forth constant matter from the Elemental Plane of Puzzles. Weep for them… but also, enjoy the results of that, both now and almost certainly in the future.

From Mayban: Oh, there’s color now. What does that mean? What’s about to happen? Why am I shaking in my seat?
Automount turns the game on its head. But they all do, so that statement is meaningless. This one turns it extra on its head. With cherries on top.

Roguelike Celebration Talks Start Tomorrow!

Ah, it crept up on me, so let me remind everyone that Roguelike Celebration begins today, although until tomorrow it just means they’re opening their social space for awhile. Nicole Carpenter at Polygon wrote a short piece about this year’s conference.

There is an admittance fee, but if you can’t afford it you can also get a free pass! Please consider paying them if you are able though, they do a lot of work every year in putting it together.

Here is the official schedule (linked), below is it presented just as a list of talks, with ✨sparkle emojis✨ around the things that personally enthuse me. ✨Just because!✨

Times given are US Pacific/Eastern. If you think the short times between starts are indicative of short talks, most of them aren’t that short, they have two tracks going on beside each other:

SATURDAY

9:30 AM/12:30 PM: Arron A. Reed, Klingons, Hobbits, and the Oregon Trail: Procedural Generation in ✨the First Decade of Text Games✨

10:00 AM/ 1 PM: Nic Tringali, ✨Abstract Space Exploration✨ in The Banished Vault

10:30 AM/ 1:30 PM: Linas Gabrielaitis, Fictions of Infinity in ✨Geological Finitudes✨

10:45 AM/1:45 PM: Ludipe, Exploring ✨Pacifist✨ Roguelikes

11:30 AM/2:30 PM: Florence Smith Nicholls, Another Stupid Date: ✨Love Island as a Roguelike✨

11:45 AM/2:45 PM Kes, Hunting the Asphynx: Roguelikes, ✨Provenance✨, and You

Noon/3 PM: Mike Cook, Generating Procedures: ✨Rule and System Generation✨ for Roguelikes

1:30 PM/4:30 PM: Scott Burger, The ✨Data Science✨ of Roguelikes

2 PM/5 PM: Nat Alison, In Defense of ✨Hand-Crafted Sudoku✨

3 PM/6 PM: Eric Billingsley, Scoped-down design: ✨Making a Tiny Roguelike✨

3:30 PM/6:30 PM: Elliot Trinidad, Touching Grass & Taking Names: Tuning the ✨Blaseball✨ Name Generator

4:30 PM/7:30 PM: Paul Hembree, Audible Geometry: Coordinate Systems as a Resource for ✨Music Generation✨

5 PM/8 PM: Jurie Horneman, Why ✨Dynamic Content Selection✨ Is Hard

SUNDAY

9:30 AM/12:30 PM: Mark Johnson, ✨Generating Riddles✨ for a Generated World

10 AM/1 PM: Jesse Collet & Keni, Fireside Chat About the Development of ✨NetHack✨

10:30 AM/1:30 PM: ✨Leigh Alexander✨, ✨McMansions of Hell✨: Roguelikes and Reality TV

1 PM/4 PM: Ray, Remixing the Layer Cake: Facilitating ✨Fan Reinterpretation✨ Through ✨Caves of Qud✨’s Modular Data Files

1:15 PM/4:15 PM: Crashtroid, Preventing Ear Fatigue with ✨Roguelike Music✨

1:30 PM/4:30 PM: Everest Pipkin, The Fortunate Isles: Fragment Worlds, Walled Gardens, and ✨the Games That Are Played There✨

2 PM/5 PM: ✨Jeff Olson✨, ✨Alphaman✨: Developing and Releasing a Post-Apocalyptic Roguelike Game in the ✨DOS Days✨ When Computers Were Slow, Memory Was Scarce, and No One Had Ever Heard of Object-Oriented Code

3 PM/6 PM: Dustin Freeman, ✨Live Action Roguelike✨

3:30 PM/6:30 PM: Jonathan Lessard, A ✨Simulation✨ with a View

3:45 PM/6:45 PM: Tom Francis, Generating ✨Boring Levels✨ for Fresh Experiences in Heat Signature

4 PM/7 PM: Patrick Kemp, Design Tooling at ✨Spry Fox✨

5 PM/8 PM: Stav Hinenzon, A Messy Approach to ✨Dynamic Narrative✨ in Sunshine Shuffle

5:15 PM/8:15 PM: Josh Galecki, ✨Procedurally Generating Puzzles✨

5:30 PM/8:30 PM: Jasper Cole, ✨Backpack Hero✨ – Player Upgrades and Progression

6 PM/9 PM: Brianna McHorse & Chris Foster, Fusing AI with Game Design: Let the ✨Chaos✨ In

The Looker

Remember The Witness? Remember how everyone loved The Witness?

What? You didn’t love The Witness? Are you it some kind of blasphemer?

Sure, it has all those smarmy tape recordings all over the place. Certainly, you never quite feel like you’re done with it. Absolutely, everyone has at least one puzzle they find maddeningly obtuse (mine was on the ship). But you gotta admit, the special category of puzzle was a work of genius. If you don’t know what I mean by the special category, um… forget I said anything!

Well whether you loved The Witness or if you think it Jonathan Blows, you might want to have a look at The Looker, a pitch-perfect parody that’s actually a pretty decent puzzle game in its own right. It’s rated Overwhelmingly Positive, and as a reviewer says, “If you liked The Witness, you’ll like The Looker. If you hated The Witness, you’ll love The Looker.”

It’s free on Steam, and only takes a couple of hours to complete!

Steam: The Looker ($0) via Dominic Tarason.