Phantasmal MUD Lib for DGD

Phantasmal Site > Setup > distrib_builder.pl

Using the distrib_builder Script

Whether you use the Bundled release, the regular release or CVS, you'll need to decide whether you want to work on everything in one lump or use the distrib_builder script. The distrib_builder script takes a DGD directory, a Phantasmal directory, and (optionally) a game directory and puts them together into a Phantasmal Game Bundle, such as the Bundled release of Phantasmal. Since putting together a Phantasmal package requires a lot of copying and testing, you can save yourself a lot of work by using the distrib_builder script. You can either use it once to set up your Bundle, or you can use it constantly for testing.

If you decide to use the distrib_builder script constantly for testing, you'll do your editing in your subdirectories (mudlib and your specific game's directory - mostly your specific game's directory) and then run the distrib_builder script every time you want a testable MUD bundle. Please remember that changes made in your game bundle directory will be deleted when you copy over the new bundle, so don't do a lot of work there and then lose it by copying over all the old versions...

How to Use the Script

You'll probably want a directory where all your Phantasmal-based code lives. It's the directory you were in when you first did a CVS checkout of the Phantasmal code, if you're using the CVS version. We'll refer to it as "code" throughout this section.

Your Phantasmal directory will be immediately under the code directory. You'll also want to check out the 'tools' module from CVS, which contains the Perl script you'll be running. If you're starting with 'Seas of Night' rather than plain Phantasmal, you'll also want to check out the 'testgame' module, which contains Seas of Night. So, your code directory will contain directories called 'phantasmal', 'tools', and 'testgame'. Change into the 'tools' directory.

If your checkout was successful, there will be a file called 'distrib_builder.pl' in that directory (among others). Make sure you have Perl installed on your system, and then run the script. You can run it by typing 'perl distrib_builder.pl', or (in Unix only) by executing the file directly, as a command. This starts the script.

If you have put the appropriate things in the appropriate places, the distrib_builder script will find your installations of DGD and Phantasmal, and ask if you want to use the appropriate directory for each. If distrib_builder can't find DGD or Phantasmal, or if you tell it not to use any of the installations it finds, you can then tell it a directory to check. That directory must contain a valid DGD or Phantasmal installation. If it doesn't, distrib_builder will complain and will refuse to use it.

If the testgame module is present, distrib_builder will ask you if you want to use it. If it isn't checked out, distrib_builder will ask you if you want to use the built-in game in your Phantasmal directory (by asking if you want to use your Phantasmal directory as the game directory). The choice is yours. Either should work fine, though you'll get a different game from testgame and phantasmal - they're different from each other, and intentionally so.

The distrib_builder script will put the game bundle into its own directory under your code directory. If there is already a bundle there, the script will ask if you wish to delete it. It is highly recommended that you do so to avoid stale files. If you don't wish to delete the game bundle and want to cancel the script's action, you should hit <CTRL>-C immediately - if the script is allowed to complete, it will overwrite many of the files in your game bundle, which is pretty certainly not what you want if you plan to keep it.