Starfleet Platoon

The DLL Scriptor

The Creators
BS-er - DLL Code and editor functions
Madcat - Script Translator code and output generation.
Greeny - Consultant


The BZII DLL Scriptor is a handy utility that a map maker can use to create a customized BZII mission. The user creates an input file consisting of predefined commands, and the BZII DLL Scriptor processes those commands to create a mission DLL. The user will NOT need any other utilities to make the DLL.


  • Up to 20 separate script routines in a mission, all running simultaneously or switched on/off by other script routines.
  • Routines can serve numerous purposes, such as triggers, timers and controlling fiendish plots of the AI adversary.
  • DLL can maintain awareness of up to 64 units, buildings or other objects, so that they can be continuously controlled or monitored.
  • Storage for up to 32 map locations, for use with certain commands.
  • Storage for up to 200 different names for paths, odf names, sound file names, AIP file names etc. Maximum of 19 characters each.
  • Load any AIP file for the built-in game command AI to use (details on this are sketchy, and little is known about AIP files).
  • Display white, green or red text in the objectives box at any point in the script. DLL will store approximately 2 KB of text.
  • Play audio clips at any chosen point in the mission.
  • Create any game object anywhere on the map, and command it to do almost any of its available commands.
  • Nearly all the DLL functions used in single player missions will be available, plus some additional features will be available that aren't part of the C++ files provided by Pandemic.
  • Additional flow control commands will be available for branching and looping to any other part of the script. Multiple script possibilities and outcomes will be a breeze.
  • Scripts will be easier to write and manage than an equivalent script written in C++ code. This is because scripts will be written exactly in the manner and order that events will happen, with no additional overhead to add to the clutter.
  • Handy "wait" command will be available to space out script events by the desired time in seconds.
  • Feature lets you specify a group of locations and have the DLL choose one of them at random.
  • Random script branching. Use a special script command to randomly choose between up to 5 different event paths in the script.
  • Create a sweeping camera sequence using a single script command. Four different script commands allow the camera to move along paths and track objects.
  • Game saving will work perfectly with no additional effort. All scripts will start exactly as they left off when a saved game is loaded.
  • Storage for almost 1000 distinct script operations (Swampwampus used 115).
  • Excellent collaberation potential. You can partner with others and merge numerous script routines into one mission. The editing community can create a public domain of advanced AI strategy scripts.

VM-Module Features:

  • Smaller DLL Sizes with VM Module DLL
  • Backward Compatible with 1.0


Here is an example script that I used for my first BZII mission, SwampWampus. It has several good examples of trigger routines that cause the mission to end in victory or failure depending on certain conditions. You'll notice comments in the file that are preceded by 2 forward slashes //. Comments placed after a // will be ignored by the utility.

Integrated Text Editor:

The BZII DLL Scriptor contains an integrated text editor, with an added feature that lets you look up any of the script commands and place them in your script file. Here's a screenshot of the actual DLL Scriptor user interface.

DLL Build Log:

The BZII DLL Scriptor will reports the progress of DLL creation, and post errors and other information. Here's a screenshot of the build dialog used to create a DLL.


There should be no cause for concern when running this utility or using a generated DLL. No map maker will have the ability to make the script DLL do malicious things to your computer system, although they will have the ability to make a mean, nasty mission if they so desire. Nevetheless, the tools will be offered as-is, with no warranty, no guarantee of support, and no liability on the part of anybody.

Console Debug Messages:

A debug version of the DLL output sends text to the BZII console showing the commands that it is executing. This feature of lets you see your script operations executing in real time. It may prove to be a valuable debugging tool.

The text in this screenshot shows an example of the first few operations of my "Swampwampus" mission. It shows the execution of Routine 0, the main routine in this script. After waiting a few seconds the script displays the mission text and then plays the audio file "swamp1.wav". It then enters a loop where it creates 4 Scion Warriors, and commands them to follow "path_1" leading them to the ISDF factory. After looping 4 times to make the Warriors, the script is waiting 110 seconds until sending in the next attack.

These are just a few examples of the things that will be possible with this utility.

User's Guide:

A user's guide provides nearly all the information required for effectively using this utility. This will make this tool much easier to use, and explains how to write a script that can be processed by the utility. It also contains a description for each operation that can be performed using the script.

Download the BZII DLL Scriptor v1.7a Installer (approx. 1.26 MB)

DLL Source Code

© 2000-2009 Paul "Sonic" D.
All Rights Reserved.