RAIF FAQ > Programming IF > 4.15: How do I create a standalone executable program out of an IF game?

4.15: How do I create a standalone executable program out of an IF game?

Often, authors want to create an executable version of their game for a particular platform so that players do not need to download a separate interpreter program. While this is not a bad idea, one does need to remember that the whole reason that most IF systems need interpreters is so that the game files can be played on just about every type of computer without the author needing to compile a Windows version, a Mac version, a Unix version, an Amiga version, etc of every single game. Also, because interpreters are not bundled with every single TADS, ZMachine, or whatever game on the IF-Archive, the game files are much smaller. A Windows executable (for example) is completely useless to a Mac user, and doubly so when at heart the executable contains a file that could be run on the Mac if available separately. So an author really should make sure that the platform-independent game file is available even if she makes a standalone version.

That said, there are several ways to make standalone executables. On Windows, ZMachine (that is, Inform) games can be made executable with jzexe, a tool packaged with jzip, and the TADS Workbench comes with a tool that not only puts TADS games into executable files but even gives them customizable installers. You can also use maketrx, which is included with TADS, on DOS for games that don't require Windows, but the full TADS workbench is probably preferable for recent computers.

On Macs, MaxZip (for Inform ZMachine), MaxTADS, and MacGlk Hugo all allow easy creation of standalone games. Andrew Plotkin, author of the Max interpreters, has offered to create a Mac executable of any TADS, Inform, or Hugo game for authors who don't have access to a Mac; he will even upload it to a popular Mac ftp site and make it a pretty icon. (The default TADS runtime also can be binded to a game, but it's better to use MaxTADS.)

On some versions of Unix, jzexe has been reported to work. However, if you're on Unix, you're probably smart enough to read a README and download the proper interpreter.

BundleMonkey, by L. Ross Raszewski, is a utility which can be used to package a gamefile, plus auxilliary files, together with any Windows or MSDOS interpreter program into a single executable file. <http://justice.loyola.edu/~lraszews/if/monkey.zip>


RAIF FAQ > Programming IF > 4.15: How do I create a standalone executable program out of an IF game?