The Goldberg slicer for Palapeli

May 9, 2010

Generating a Palapeli puzzle requires one to slice the image into jigsaw pieces. I had no clue how to write a good slicing algorithm for Palapeli. Several tries showed that I am not particularly good at this stuff. Because of that (and because I want more puzzles with obscure piece shapes), I made the puzzle generation extensible: You can write your own slicing plugins for Palapeli. (There’s even a tutorial on Techbase, if you are interested.)

My evil plan worked out: Johannes Löhnert has implemented a Goldberg slicer (I’m not quite sure where the name comes from.) with a plethora of tesselation types and eyecandy. What follows is a shameless (though authorized) copy from the project page:


For KDE SC 4.6, we will work on including the Goldberg slicer as the new default in Palapeli. If this is too long time for you, head over to the project page to install the Goldberg slicer.¹ It works with Palapeli 1.0 and higher.

¹ The fine print: There are only source tarballs at the moment. I tried to make RPM packages with kdeobsgenerator, but it failed with weird linking errors which I could not reproduce outside OBS.


10 Responses to “The Goldberg slicer for Palapeli”

  1. ChALkeR Says:

    This can be fun, but only if the pieces will be rotatable.

    If not, then wierd shapes of pieces will make the puzzle too simple.

  2. KB Says:

    >>has implemented a Goldberg slicer (I’m not quite sure where the name comes from.)

  3. Caig Says:

    For the RPM packages you can try to add libkdegames4-devel in BuildRequires.

  4. TheBlackCat Says:

    Very cool!

    Is there any possibility of allowing scripted slicers so they can be distributed with GHNS?

    • Stefan Majewsky Says:

      It should be possible if bindings are available, though the usual security implications arise.

      • TheBlackCat Says:

        Can’t it be sandboxed? All it should need to be able to do is take in a graphic (whatever form you use it in) and output the puzzle pieces, so I would think you would be able to disable functions like file access, net access, or any other potential security hole.

        • Stefan Majewsky Says:

          Theoretically, it can be sandboxed. Practically, it’s hard to pick which functions you might want. For example, the first jigsaw slicer I wrote loaded predefined jigsaw shapes from SVG files, so file management can a priori not be a bad thing. Then we do not have enough manpower for that. Given the number of slicer plugins in existence (3), I consider it unlikely that this will greatly influence the Palapeli community, and concentrate on functions that more people want (like puzzle piles, piece rotation etc.).

  5. aurelix Says:

    “Goldberg” is not connected to any algorithms used in the code; I just picked something which sounded good. Coming up with a fitting name is so time-consuming that I stuck to the first one which bubbled up from my brain’s depths.

    Fascinating paper however. 🙂

  6. […] which we are working on for Palapeli 1.2 (KDE SC 4.6): During the next week, the bling-compatible Goldberg slicer will be integrated into Palapeli as the new default slicer (I have just renamed it to […]

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s