Building Maps

At some point you want to fully build and light your level.  It may take upwards of 6 hours to do a full radiosity lighting pass on a large level.  This is why Rad Preview in the World Editor is so important.

 

Launching the Build Wizard

The build wizard can be launched from the build menu.

The build wizard can also be launched from the menu at the top of the World Edit tab by selecting Build>Build Wizard.

mapbuild

 

 

The Build Wizard

The Build Wizard has three tab panes which include the Basic, Advanced, and Build log tabs.

 

The Basic Tab

        Select Map
The default selected map is the actively open map in the editor. All maps defined in the “base\editors\buildwizard.def” file will also appear in the “Select Map” combo box. Additional unlisted maps can be manually added to the map list using the open file button  to the right of the combo box. Once a map file has been selected it will remain in the map list so long as the Build Wizard remains open.

        Presets
The new build wizard allows for presets to be specified for each map. These presets are saved into a human readable file in the same directory as the .map file, the build presets use the map file name but substituting a “.buildpreset” extension. Each map may contain multiple presets.
Build presets are used as common build settings for specific maps. The most common build presets are specified in the file “base\editors\default.buildpreset”. These default presets are used for maps which do not currently have a “.buildpreset” file generated for them. Additionally, the default presets are used as a template for creating the new build presets for a map.
Presets are broken into two types of settings: Build steps, and Build Options. Some build steps require build options to be selected in order to perform that build step. For example: the AAS and Spatial system require build options, as they specify what AAS and Spatial models to use.

on this tab results in a “Basic build” using the build steps described in the expanded build steps tree above.

        MegaTextures
When building using the basic tab, all mega textures for that map are used for presets involving MegaTextures. To get more control over selecting which MegaTexture to use, use the Advanced Tab.

 

The Advanced Tab

The advanced tab allows the user to perform custom builds through the build steps property box, as well as create new, select, modify, and save build presets which can be selected in the basic tab of the Build Wizard.

        Selected Map
The behavior of the map list is similar to that of the Basic Tab. Please see the above section for more information.

        Renaming Presets
If you create a new preset, you have the ability to rename it.

Renaming presets can be accomplished by modifying the name in the Build Preset Combo Box and clicking the rename button . If this button has not been clicked the name will revert back to its previous name upon the combo box losing focus.

        Saving Changes
If this map has no “.buildPreset” file associated with it the Save Button  will always be enabled. Upon first clicking the save button icon, it will prompt you to add this file to source control, and will generate a new “.buildPreset” file containing a duplicate of the “default.buildPreset” file, with whatever current changes you have made.
If the build presets for this map have been previously saved, any changes to the current saved preset will result in the save button being enabled. If this button is disabled , then no changes have been made from the default preset.

        Editing Build CVars
Clicking the BuildEditCVars  button will pop up a new dialogue that adds additional build options through CVars. These CVars are map specific and located with the map file with the “.buildcvars” extension. Some build steps require that this file exist, If it does not exist you will be prompted to make it before continuing with the build process.

        Import Build CVars
The import button  will pop up a new dialog offering the player better options for importing build CVars from another map’s CVar file, or by selecting default build CVar options.

 

        Build Steps
Build steps are broken into categories that group similar build steps. The execution of these build steps may occur in a different order depending on other build step dependences.
Some build steps depend on other build steps to be executed. If this is the case, selecting a build step that has other dependencies will automatically select the other dependent build steps and mark them as read only thus disabling the ability to unselect them. Any build steps that are currently grayed out and are checked, will be executed, but cannot be unchecked due to dependencies. This ensures that the user is aware that another build step depends on that build step.
Conversely some build steps are mutually exclusive of one another. If a build step that is mutually exclusive of another is chosen, the other build step will be grayed out, and remain unchecked. This relays to the user that the option cannot be selected due to a build dependency’s mutually exclusivity.

        Build Options
Some build steps (Like the AAS and Spatial) also have build options. Selecting a build option immediately puts a dependency on the build step, indicating that the build step must take place. Build steps with options are typically unselectable themselves and must be done through the specification of its options.

        Building a Custom Build Without Making a Preset
It is possible to perform a unique / custom build without creating a new preset. This is done by selecting a preset, and making changes to that preset. Instead of saving that preset, select the build button  below, and decline to save changes to that preset.

        MegaTextures
Some build steps require that MegaTextures be selected. This is performed under the category “MegaTextures” in the listing of “Build Selected MegaTextures”. By selecting the MegaTextures from that list you will ensure that any build steps which performs operations on MegaTextures will do so on the MegaTextures you’ve selected. If a MegaTexture is required for a build option, a message box will inform the user that one or more must be selected.

        Building
Using the build button on this tab results in an “Advanced build” which uses the currently selected build steps, build options, and mega textures in the presets property grid. It performs a verification of the current build requirements and will inform the user if additional options must be selected, or if there are other issues.

 

The Build Log Tab

 

The build log tab contains information about the active build or the last performed build. At the top of the build log tab contains a build tree of the current build steps. Next to most of the build steps in the build tree have an associated progress bar with them in the corresponding “Progress” column. These progress bars also relate to the nature of the tree in the sense that progress bars of the parent step will be updating as its children progress bars do. At first this may appear strange, but it provides visual information to the parent about the current overall progress of its children steps. Additionally many of the build steps are expandable for additional information.

Below the build tree is a build warning box, which will display warnings that took place during this build. If this box remains empty, everything likely performed as expected. Warnings that are output into this warning box should be looked at and addressed in the map.

Below the build warning box is an overall progress bar. This overall progress bar relates to the parent most progress bar which illustrates how many build steps out of all total build steps we have completed.

If the Build Log Tab turns Orange at any point during the build process, something went wrong and the build process has aborted. See below about failed builds.

 

The Building Process

When a build fails the build steps stop immediately. It then performs an aborted build cleanup for each executed build step in reverse order.

        Successful Build
If a build finishes building with no warnings, no orange background, and completes its normal build cleanup without any errors, the build has been successful, and may now be used locally.

 

Build Steps Explained

Save Build Log

Category: Generic
Description: Saves a log of the build
Tag in .buildPreset file: BSTEP_SAVE_BUILD_LOG

Build Map Dependencies

Category: Generic
Description: Sorts and builds the dependency list based upon the selected mega textures, and makes the megatexture terrain or just builds BSP + Unique if no terrainBuildCommand was specified in the “buildWizard.buildDef” file.
Mutual Exclusivities: BSTEP_BUILD_UNIQUE_BSP
Tag in .buildPreset file: BSTEP_BUILD_DEPENDENCIES

Run Merge Maps

Category: MegaTextures
Description: Run mergemaps on the main map after building the selected MegaTextures
Tag in .buildPreset file: BSTEP_RUN_MERGE_MAPS

Build AAS

Category: Area Aware System
Description: Run the Area Aware System using the specified build options.
Build Options: aas_monster24, aas_monster32, aas_monster48, aas_monster96, aas_player, aas_vehicle
Tag in .buildPreset file: BSTEP_AAS

Build Spatial

Category: Area Aware System
Description: Run the Spatial system using the specified build options.
Build Options: aas_monster24, aas_monster32, aas_monster48, aas_monster96, aas_player, aas_vehicle
Tag in .buildPreset file: BSTEP_SPATIAL

Build BSP Only

Category: Build Dependencies
Description: Builds only the BSP for the specified map
Tag in .buildPreset file: BSTEP_BUILD_BSP

Build BSP Only + No Flood

Category: Build Dependencies
Description: Build the BSP for the map with no flood
Tag in .buildPreset file: BSTEP_BUILD_BSP_NO_FLOOD

Build Unique

Category: Build Dependencies
Description: Build the Unique BSP
Tag in .buildPreset file: BSTEP_BUILD_UNIQUE_BSP

Build Collision

Category: Generic
Description: Build Collision Models and Unique Collision Models
Depended upon by: BSTEP_BUILD_UNIQUE_BSP
Tag in .buildPreset file: BSTEP_BUILD_COLLISION_MODELS

Build Water Volumes BSP

Category: Build Dependencies
Description: Build the Water Volumes BSP
Depended upon by: BSTEP_BUILD_UNIQUE_BSP
Tag in .buildPreset file: BSTEP_BUILD_WATER_BSP

Build Sound BPS

Category: Build Dependencies
Description: Build the Sound BSP
Tag in .buildPreset file: BSTEP_BUILD_SOUND_BSP

Build Foliage BSP

Category: Build Dependencies
Description: Build the Foliage BSP
Depended upon by: BSTEP_BUILD_UNIQUE_BSP
Tag in .buildPreset file: BSTEP_BUILD_FOLIAGE_BSP

Build Detail BSP

Category: Build Dependencies
Description: Build the Detail BSP
Depended upon by: BSTEP_BUILD_UNIQUE_BSP
Tag in .buildPreset file: BSTEP_BUILD_DETAIL_BSP

Package map files (PK5)

Category: Post Build
Description: Builds a compressed package file containing the map folder into a zipped .PK5 file
Depended upon by: BSTEP_BUILD_UNIQUE_BSP, BSTEP_BUILD_SOUND_BSP, BSTEP_BUILD_WATER_BSP, BSTEP_BUILD_FOLIAGE_BSP, BSTEP_BUILD_DETAIL_BSP
Tag in .buildPreset file: BSTEP_PACKAGE_MAP_FILES

Build Preview for selected MegaTextures

Category: MegaTextures
Description: Submits a build preview to the cloud for the selected MegaTextures
Tag in .buildPreset file: BSTEP_MEGATEXTURES_BUILD_PREVIEW

Build MegaTextures Locally

Category: MegaTextures
Description: Build the MegaTextures locally
Mutual Exclusivities: BSTEP_MEGATEXTURES_CLOUD_BUILD
Tag in .buildPreset file: BSTEP_MEGATEXTURES_LOCAL_BUILD