Matt McCutchen's Web SiteEscape puzzle game  (Top, My modified version of Escape, Klotski embedding, Coq formalization, Escape in Escape embedding, Bottom).  Email me about this page.

Projects related to the puzzle game Escape

Status: active; 2019-present (supersedes any conflicting remarks left on this page; see the home page for definitions)

This part of my web site collects various projects related to the puzzle game Escape.  Please see that web site for an overview of Escape; I won't repeat the information here.  I welcome your feedback on any of the projects on this page; I can set up a mailing list or discussion forum of some kind if it seems worthwhile.

Warning: If you plan to work or play seriously with Escape on Linux, note that as of this writing (2020-02-28), both the Linux binary and the source tarball on the official web site are way out of date and have at least one severe known bug (a bookmark is silently lost if you try to save more than one bookmark on the same puzzle).  I urge you to get a more recent version of Escape, e.g., by building from the official source repository or using my modified version below.

My modified version of Escape [# Top]

Status: highly active!; 2019-present (supersedes any conflicting remarks left on this page; see the home page for definitions)

Icon for Matt's version of Escape
Icon for my version of Escape, featuring the upstream icon and the favicon of this site.

I am maintaining a modified version of Escape with a number of bug fixes and small enhancements.  While the amount of work I've done is modest compared to that of Tom 7 and other contributors, the changes may give you a significantly better experience depending on what you do with Escape, so I am doing what I can to promote my version and urging upstream to merge as many uncontroversial changes as possible.  You are welcome to submit changes to me (you will probably have more luck than with upstream); if I consider them worth maintaining, I will merge them, otherwise I may still link to your version.

To my knowledge, the only major problem in my version compared to upstream is that the built-in upgrader is disabled until I can add SSL support, since I don't want to distribute upgrades on an ongoing basis without SSL.  For the time being, you'll have to download new versions manually.

Quick installation of latest release (201609050.mattmccutchen202008280): Linux binary tar.gz, Windows installer, Windows binary zip.  In general, you should be able to install these over a previous version of Escape without losing your personal data.  Soon I hope to offer a way to switch from an upstream version of Escape using its built-in upgrader.  Please let me know by email or GitLab issue if you experience any problems.  I'd like to offer a Mac OS X release, but I don't have a Mac OS X machine to make it; let me know if you'd like to help with this.

Source code, issue tracking, all releases, etc. on GitLab.  (For the first time, I had a completely free choice of hosting for one of my projects and have chosen an external service, despite my usual preference to keep everything under my control, because I hope it will be less work for both me and potential contributors and I believe the security and privacy risk is low.  If you have any concerns about my use of GitLab, feel free to email me.)

The most notable changes in my version:

For more information, see the bottom of the help file for the latest release.

Klotski embedding [# Top]

Status: dormant; 2019 (supersedes any conflicting remarks left on this page; see the home page for definitions)

I've developed an embedding of several Klotski puzzles in Escape, meaning that the Klotski puzzles can be played from within Escape.  My write-up on this is long enough that it is on its own page.

Coq formalization [# Top]

Status: dormant; 2020 (supersedes any conflicting remarks left on this page; see the home page for definitions)

I have reimplemented the rules of Escape in the Coq mechanized proof system, anticipating use cases such as:

(Caveat: It's a huge amount of work to prove anything interesting in Coq about a system as complex as Escape, at least without Coq skills orders of magnitude better than mine.  So I don't know if the use cases will end up being realistic.  So far, I just had fun reimplementing and testing the rules.)

In addition to the core Escape logic in Coq, there is OCaml code that works with the data types extracted from Coq and can read and write puzzle files (esx) and read the solutions from a player file (esp).

Like my version of the Escape application, this codebase is hosted on GitLab and the same remarks apply.

Escape in Escape embedding [# Top]

Status: on hold; 2020 (supersedes any conflicting remarks left on this page; see the home page for definitions)

I've done some design work for an embedding of Escape in itself (not the identity!).  Since the rules of Escape are so complicated, I expect the output puzzles to be way over the standard size limits even for the most trivial input puzzles; this was a large motivation for me to remove the limits in my version of Escape.  I have a sketch of the UI and some ideas about the data representation and the implementation of certain parts.  I have no materials to share yet, but if you are working on the same thing, please do contact me so we can avoid duplicating work.


Matt McCutchen's Web SiteEscape puzzle game  (Top, My modified version of Escape, Klotski embedding, Coq formalization, Escape in Escape embedding, Bottom).  Email me about this page.
Modification time of this page's main source file: 2020-09-16 13:05:50 +0000
Except where otherwise noted, Matt McCutchen waives his copyright to the content of this site.  This site comes with absolutely no warranty.  Why?