Glossary

Startup Script

When gmax is first started, MAXScript searches for any startup script files, which it then automatically loads and runs. This feature is useful if you have function libraries you always use and want preloaded, or if you want to establish custom UI settings, define scripted plug-ins, or load scripted utility rollouts.

MAXScript first searches for .mcr (macroScript definition files) in the ui\macroscripts directory. These macroScript definitions are not compiled at this time; rather they are just scanned to identify the macroScripts that have been defined.

MAXScript next searches for .ms, .mse, and .mzp files in the plug-in path directories (defined in the Configure Paths dialog) and their subdirectories, and compiles these files. The gmax base scene and user interface have not been created at this point, so no viewport or scene commands should be executed in these files. These files should primarily define scripted plug-ins and utility functions.

Any utility functions used by the macroScripts defined when reading the ui\macroscripts directory should be defined in a .ms or .mse file in one of these directories. You can prevent a nested directory from being scanned by placing its name in parentheses, for example "(old-versions)", allowing you to enable and disable scripts in handy directory-based groupings.

At this point, gmax creates the base scene and user interface. Any macroScripts used by buttons in the user interface are compiled at this time.

The automatic loading of the following startup script files can be deactivated by turning off the Auto Start MAXScript option in the MAXScript page of the Preferences dialog, as described in MAXScript Preferences Settings.

MAXScript first searches for a file named startup.ms in the following directories, in this order:

  1. The Scripts directory (defined in the Configure Paths dialog)

  2. The Startup Scripts directory (defined in the Configure Paths dialog)

  3. The gmax executable main directory

  4. The Windows NT 32-bit system directory (system32)

  5. The Windows 16-bit system directory (system)

  6. The Windows directory

  7. The directories that are listed in the PATH environment variable

MAXScript stops searching when it finds the first occurrence of startup.ms.

MAXScript then recursively scans the Startup Scripts directory (defined in the Configure Paths dialog) and directories nested within them for .ms, .mse, and .mzp script files and loads them. In this pass, any script files with the name startup.ms are ignored. You can prevent a nested directory from being scanned by placing its name in parentheses, for example "(old-versions)", allowing you to enable and disable scripts in handy directory-based groupings.

If you specify a script to run in the command line (-U MAXScript script_name), the script is executed at this point. (See the MAXScript Reference topic "Running Scripts From The Command Line").