Batch Import Levels

Posted Jan 11, 2018
Last Updated Aug 14, 2020

batch level importerThe batch importer for Wall Worm allows you to quickly convert lists of levels to import into 3ds Max from Source and Goldsource. You can batch imports VMF, MAP and RMF files. This tool only works in 3ds Max 2018.4+ and works best in 3ds Max 2020.3.

The batch importer utilizes the MaxBatch tools available to 3ds Max 2018.4+. The batch importer allows you to write your own batch files to import scenes and does not require Max to be running during the process.

This is a commandline application that you can run outside of Max. You can write batch files yourself or create them with the Batch Importer inside Max. To launch a GUI for the tool in Max, click Wall Worm > Wall Worm Importers > Batch Level Importer (see image to right). The GUI gives access to most (but not all) of the parameters in the tool.

Below is an example batch file:

In this example, all VMF files from the C:\maps folder will be imported and saved as MAX scene files. By default, imported scenes get imported to $scenes/convertedFiles .

  • The first parameter must be a path to [WALLWORM INSTALLATION PATH]/
  • For backslashes, it's a good idea to add an extra backslash in the event the backslash is followed by a character that would make it be interpretted as a special character (for example, \t is a TAB).

General Parameters:

This set of parameters is for controlling what files are imported and what to do with the imports.

Some requirements:

  1. Either folder or maplist must be set. If both are empty, the script will not run.
  2. One of these three must be set to true: makeMAX, makePak or fbx. By default, makeMAX and makePak are already true.

This string is the folder for which to search for scene files to import. Required if maplist is empty.


This parameter sets filters for the file name. Use a semi-colon-separated list of filename filters where the asterisk (*) is a wildcard. For example, to use only files that start with "cs_" and "de_", enter this as your filefilters; "cs_*,de_*". To only include files with "c4a1" in them, set this as the fileFilters:"*c4a1*".


This parameter sets the file types to use during a folder import. If not set, defaults to ".vmf". Acceptable values are:

  • .vmf
  • .map
  • .rmf

This parameter is a string containing a list of specific files to import. Separate each file with a semicolon in the list. Required if folder is not set.


This boolean value tells the importer to save Max scenes. Required if makePak and fbx are false. Default value is true.


This boolean tells the importer to analyze the scene and write a batch file for PAKing the assets into the BSP. File is not executed but written to the output location of where the imported level came from. Default is true.


This boolean tells the importer to create a FBX file of the import.


This boolean will force the FBX file to embed textures. Default is false.


This boolean tells the importer to convert the images to TIFF (useful for sending scene to other applications and not using VTF files). Default is false.


This allows you to set the FBX version. Default is #fbx201400.


This boolean value tells the importer to overwrite pre-existing Max/FBX files. When false, existing scenes (probably previously imported) will not be overwritten. Default is false.


This string sets the path for saving Max scenes. Default is $scenes/convertedFiles .


This integer should be a value for what Max version to save the files as. Allowed values are the current Max version and the three previous versions. By default, the importer will set this to three versions back from the current. Valid values are currently: 2018, 2017, 2016, 2015. This list creeps up one each new version of Max.

Settings Parameters:

This set of parameters lets you control the general Wall Worm settings to use during the import. None of these are required. By default, the current settings in Wall Worm are used. Setting a preset (by name or index) will override the settings and use the preset's settings. Some of the preset settings can then be further controlled with the parameters following the preset loading settings.


This integer will allow you to tell the importer to use the indexed preset from your Wall Worm settings presets list. Is based on order of the presets. Is not used if presetName is used.


This string will let you load the settings for the preset by the first preset who's name matches this value. Case sensitive. Overrides presetNum.


This integer value sets what engine to use. Default's to current game settings in Wall Worm or that derived from preset. Valid values are 1 (Goldsource) or 2 (Source):


This string containing a list of WAD files to use in ALL imported MAP/RMF files. Separate each file with a semicolon in the list. Only used with RMF/MAP files.


This parameter sets the folder containing the gameinfo.txt file.


This string is a semicolon-separated list of extra content folders for searching for assets.


This string is the folder for the 3ds Max Project. If not set, uses the current Max Project folder.


This boolean tells the importer to do extra lookups to find missing VMT files. Can slow down the importer.


This boolean tells the importer to do extra lookups to find missing VTF/TGA/BMP files. Can slow down the importer.


This boolean value will tell the importer to set imported assets (textures) to paths relative to the project folder instead of using absolute filename paths..


This string allows you to set the FGD file used for this import.

Import Parameters:

This set of parameters lets you control some of the settings used on the import itself. These generally relate to the settings in the Level Importer UI.


This boolean sets whether to import hidden object. Do not import objects that are hidden when set to true. Default is false.


This integer sets a virtual height/width of bitmaps for missing textures. This can affect the UVs of imported brushes because brush UVs use the physical dimensions for calculating UVs. Default is 512. For images that exist, the actual size is used.

batch level importer

UI for the batch level importer.

Newsletter Subscription