SRB2 Doom Builder

From SRB2 Wiki
(Redirected from SRB2DB)
Jump to navigation Jump to search
This article is about the map editor based on Doom Builder v1.68. For information on SRB2 Doom Builder 2, see Doom Builder.
SRB2 Doom Builder
"Srb2db_b27.png"
Author Oogaland
Latest version Build 27
Release date October 7, 2007
Operating system Windows
Website workbench.srb2.org/srb2db

SRB2 Doom Builder (abbreviated as SRB2DB) is a map editor for SRB2 v1.09.4 developed by community member Oogaland. It is a modification of version 1.68 of Doom Builder that adjusts the editor for use with SRB2 and includes several additional features. An entirely rewritten and expanded version of Doom Builder has since been released as Doom Builder 2, which Zone Builder is based on. For a mapping tutorial for SRB2 Doom Builder, see the SRB2 Doom Builder tutorial.

SRB2 Doom Builder was in development from 2006 to 2007. Afterwards, Oogaland abandoned it in favor of an entirely new map editor, SRB2 Workbench. As a consequence, SRB2 Doom Builder was not updated to reflect the changes made to SRB2 from v2.0 onwards and no longer fully supports SRB2 mapping. Some SRB2DB-specific features, such as the FOF and zoom tube setup tools, no longer work correctly since v2.0. However, these features are not necessary for mapping and do not harm SRB2DB's general functionality. More crucially, SRB2DB expects the main resources for the game to be stored in a WAD file called the IWAD. However, since v2.2 SRB2 stores its resources in a PK3 file called srb2.pk3, which SRB2DB does not support. This problem can be circumvented by copying the contents of srb2.pk3 into a WAD file (e.g., srb2.wad) and using that file as the IWAD for SRB2DB. Additionally, SRB2DB does not recognize composite textures in the new texture format that has been in use since v2.1, which prevents some of SRB2's official textures from appearing in the editor. This can be circumvented by converting all composite textures into single-image textures inside the IWAD file.

Features

On top of Doom Builder's regular features, SRB2 Doom Builder adds the following:

  • The sector effect menu has been changed to a system of four drop-down boxes to reflect the ability to combine sector effects from different groups in SRB2.
  • Because vertical Thing offsets were not possible in the original Doom, SRB2 stores the Z position of Things as part of the flags value. In the original Doom Builder, the flags value of the Thing must be modified to set the Z position. SRB2 Doom Builder adds a new field for the Z position in the Thing property window.
  • FOFs, which the original Doom does not have, are displayed in 3D Mode.
  • The label for the Ambush Thing flag can be changed for specific Thing types. For example, the official configuration file displays the Ambush flag as "Float" for the ring and several other collectible items.
  • The MAINCFG lump, which typically includes the level header, can be edited in SRB2 Doom Builder. A command to merge map-specific level header lumps into the MAINCFG lump has also been added.
  • A feature that allows the user to switch to another map in the same file without closing the program has been added.
  • A text field has been added to the sector property window that allows the user to enter a description of the sector.
  • A command to find sectors with identical properties has been added.
  • A custom FOF setup menu and a zoom tube helper tool have been added, but due to changes in SRB2 v2.0, they no longer function properly.
  • An automatic staircase creation tool has been added, but it is incomplete and may crash the program under certain circumstances.
  • Miscellaneous other features, including bugfixes and extensions of existing features.

Menu info

The following is an overview of SRB2 Doom Builder's menus and the features contained therein.

File

  • New Map: Creates a new map and allows the user to select the configuration file, the map number and the testing mode, and to supply additional resources. These settings can be later changed under Edit → Map Options.
  • Open Map: Opens a map from a specified file.
  • Switch Map: Switches to another map in the same WAD.
  • Close Map: Closes the current map.
  • Save Map: Saves the current map.
  • Save Map As: Saves the current map in a new file. Useful for creating backup WADs.
  • Save Map Into: Saves the current map into an already existing WAD. This allows the user to compile levels from disparate sources into a single file quickly.
  • Export Map: Deletes the map from the current file and saves it into another file.
  • Export Picture: Saves a picture of the map's outline.
  • Build Nodes: Runs the external nodebuilder on the current map. Also runs automatically when saving or testing the map.
  • Test Map: Lets the user play the current map in SRB2.
  • Recent Files: A list of the last eight files that were opened. Select a file to resume working on it.
  • Exit: Closes the program.

Edit

  • Undo: Undoes the last action. To change the number of actions that are saved and can be undone, go to Tools → Configuration and select the Editing tab.
  • Redo: Redoes the last undone action.
  • Move Mode: Switches to Move Mode, which allows the user move around the map view.
  • Vertices Mode: Switches to Vertices Mode, which allows the user to create and move vertices.
  • Lines Mode: Switches to Lines Mode, which allows the user to create, move and edit linedefs.
  • Sectors Mode: Switches to Sectors Mode, which allows the user to move and edit sectors. New sectors are not created here, but rather by drawing a closed loop of linedefs in Lines Mode.
  • Things Mode: Switches to Things Mode, which allows the user to create, move and edit Things.
  • 3D Mode: Switches to 3D Mode, which allows the user to navigate a 3D preview of the map. No new map geometry can be drawn in 3D Mode, but sector heights can be changed and textures can be set and aligned. At least two sectors must be created before 3D Mode is available.
  • Cut: Removes the current selection and places it on the clipboard for pasting.
  • Copy: Copies the current selection and places it on the clipboard for pasting.
  • Paste: Pastes the selection currently on the clipboard. The selection may be moved around before being placed.
  • Delete: Removes the current selection from the map.
  • Find: Allows the user to search for map components according to a number of criteria.
  • Find and Replace: Allows the user to search for and replace map components according to a number of criteria.
  • Flip Horizontally: Flips the current selection horizontally.
  • Flip Vertically: Flips the current selection vertically.
  • Rotate: Rotates the current selection by a specified angle.
  • Resize: Shrinks or expands the current selection by a specified percentage.
  • Snap to Grid: When enabled, all map components are forced to attach themselves to the grid in the map view. Disable this to place map components between the grid points.
  • Snap to Vertices: When enabled, vertices and linedefs attach to each other upon touching.
  • Stitch Vertices: When enabled, overlapping vertices and linedefs are merged into one.
  • Center View: Positions the map view on the center of the grid and zooms out far enough so that the entire map is visible.
  • Select All: Selects all map components that belong to the current mode.
  • Select None: Deselects all highlighted map components.
  • Invert Selection: Selects all map components that belong to the current mode, but drops the current selection.
  • Map Options: Allows the user to change the map settings, such as the configuration file, the map number, the testing mode, additional resources and default settings for textures, sector heights and sector lighting.

Prefabs

Prefabs allow the user to save a selection of map components in an external file and then quick-insert them into any map. This is useful for structures that are used several times in the same map or across different maps.

  • Insert Previous Prefab: Inserts the last prefab that was used into the map.
  • Insert Prefab from File: Inserts a prefab from a specified file into the map.
  • Save Selection as Prefab: Saves the current selection in a prefab file.

Scripts

  • Edit MAINCFG lump: Edits the WAD's MAINCFG lump, for example to create a level header. This requires the file cmcs21.ocx to be registered on the computer.
  • Merge MAPnnD into MAINCFG: In previous versions of SRB2, level headers could be stored in map-specific lumps with the name MAPnnD, where nn is the map number. These lumps are no longer supported. This feature merges all lumps of this type into the MAINCFG lump.

Tools

  • Find Map Errors: Checks the map for generic errors, such as faulty level geometry or missing textures.
  • Tag Browser: Generates a list of tags that are used in the level and the linedefs/sectors that use them. Double-clicking on an entry will highlight the corresponding linedefs/sectors in the map.
  • Remove Unused Textures: Removes textures on surfaces that are out of view (such as the lower texture on a linedef that separates two sectors of the same floor height). Caution: If the map contains moving sectors, some textures that are out of view on startup might become visible later on. These will be removed as well.
  • Fix Missing Textures: Replaces all missing textures with the default texture. The default texture is set under Edit → Map Options.
  • Fix Zero-Length Linedefs: Removes all zero-length linedefs from the map.
  • Reload Resources: Reloads the resource WAD. If you modify the resource WAD while still having SRB2 Doom Builder open, use this option to update it.
  • Effects: Leads to the Zoom Tube Wizard. This feature is broken and should not be used.
  • Customize Toolbar: Allows the user to arrange the buttons on the toolbar.
  • Configuration: Opens the configuration window, which allows the user to adjust SRB2 Doom Builder's settings.

Mode-specific menus

The menu between Edit and Prefab changes depending on the mode that is currently active, e.g. if SRB2 Doom Builder is in Lines Mode, the Lines menu will appear. These menus contain mode-specific features.

Vertices

  • Snap to Grid: Moves all selected vertices to the nearest grid point.
  • Stitch Vertices: Merges all selected vertices with the first vertex selected.
  • Clear Unused Vertices: Removes all vertices from the map that are not connected to a linedef.

Lines

  • Snap to Grid: Moves the vertices of all selected linedefs to the nearest grid point.
  • Autoalign Textures: Automatically aligns the textures of the selected linedefs. While the automatic alignment may not be perfect in all situations, it usually improves significantly on misaligned textures. This tool can also be used in 3D Mode by pointing to a wall and pressing A.
  • Select only 1-sided lines: Deselects all linedefs from the current selection that are not one-sided.
  • Select only 2-sided lines: Deselects all linedefs from the current selection that are not two-sided.
  • Flip Linedefs: Flips the orientation of the selected linedefs. This causes their sidedefs to switch places.
  • Flip Sidedefs: Exchanges the sidedefs of the selected linedefs without changing the linedef's orientation.
  • Curve Linedefs: Splits each selected linedef into smaller linedefs that form a curve. The number of linedefs per curve, the curve distance and the delta angle are adjustable. Checking the checkbox forces the linedefs into a circular shape.
  • Split Linedefs: Splits the selected linedefs in half by inserting a vertex in the middle.
  • Cascade Tags Upwards: Assigns tags to the selected linedefs, starting with the tag of the first selected linedef and ascending in steps of one in the order that they were selected in.
  • Cascade Tags Arbitrarily: Assigns tags to the selected linedefs, starting with the tag of the first selected linedef and ascending by a specified step number in the order that they were selected in.
  • Copy/Paste Linedef Properties: Copies/pastes all properties of the linedef and its associated sidedefs to another linedef.

Sectors

  • Snap to Grid: Moves the vertices of all selected sectors to the nearest grid point.
  • Join Sectors: Merges all selected sectors with the first sector selected. The properties of the previously existing sectors will be overwritten with the properties of the remaining sector.
  • Merge Sectors: Merges all selected sectors with the first sector selected and removes any boundary linedefs that may have existed between them. The properties of the previously existing sectors will be overwritten with the properties of the remaining sector.
  • Gradient Brightness: Adjusts the light level of all selected sectors to a gradient. The light level will increase/decrease in evenly distributed steps from the light level of the first selected sector to the light level of the last selected sector, in the order that they were selected in.
  • Gradient Floors: Adjusts the floor height of all selected sectors to a gradient. The floor height will increase/decrease in evenly distributed steps from the floor height of the first selected sector to the floor height of the last selected sector, in the order that they were selected in. This is useful for creating stairs.
  • Gradient Ceilings: Adjusts the ceiling height of all selected sectors to a gradient. The ceiling height will increase/decrease in evenly distributed steps from the ceiling height of the first selected sector to the ceiling height of the last selected sector, in the order that they were selected in. This is useful for creating upside-down stairs.
  • Cascade Tags Upwards: Assigns tags to the selected sectors, starting with the tag of the first selected sector and ascending in steps of one in the order that they were selected in.
  • Cascade Tags Arbitrarily: Assigns tags to the selected sectors, starting with the tag of the first selected sector and ascending by a specified step number in the order that they were selected in.
  • Convert to Stairs: Converts a sector to a staircase. This feature is glitchy and may crash the program, therefore it should be avoided.
  • Raise/Lower Floor by 8px: Raises/lowers the selected sectors' floor by 8 fracunits.
  • Raise/Lower Ceiling by 8px: Raises/lowers the selected sectors' ceiling by 8 fracunits.
  • Increase/Decrease Brightness: Increases/decreases the selected sectors' light level in steps of 16.
  • Copy/Paste Sector Properties: Copies/pastes all properties of the sector to another sector.
  • Find Set of Identical Sectors: Selects all sectors with the same properties as the currently selected one. This is useful for finding sectors that can be joined/merged.
  • Setup FOF: Opens the FOF setup menu. This feature is broken and should not be used.

Things

  • Snap to Grid: Moves all selected Things to the nearest grid point.
  • Rotate Angle Clockwise/Counterclockwise: Rotates the angle of the selected Things clockwise/counterclockwise by 45 degrees.
  • Mouse Rotate: Allows the user to adjust the angle of the selected Thing with the mouse. Only one Thing may be selected at a time when using this feature.
  • Copy/Paste Thing Properties: Copies/pastes all properties of the Thing to another Thing.
  • Filter Things: Filters the Things on the map according to a number of criteria. Things that do not fit the criteria are hidden from view.

Editor-specific Thing types

SRB2 Doom Builder uses two special Thing types for editor-specific tasks. These Thing types are unused by SRB2 and will not display in-game.

  • Thing type 32000: 3D Mode Start – By default, the user will start at the Player 1 Start when entering 3D Mode. To change the starting point, this Thing can be placed on the map. It will stay in the last position it was scrolled to. The vertical position is also taken into account. SRB2 recognizes this Thing type and will not display an error message in the console when it is present on a map.
  • Thing type 32001: Control Sector Position Hint – This Thing type is used by the FOF setup menu to indicate where the control sector for the FOF should be placed. Since the FOF setup menu does not work correctly, this Thing type is irrelevant.

External links

  WAD editors [view]
Lump editors LumpModSLADESLumpEdXWE
Map editors Doom BuilderSRB2 Doom BuilderSRB2 WorkbenchZone BuilderUltimate Zone Builder
Nodebuilders ZenNodeZDBSP