MAPEDIT README File Copyright (c) 1994-97 Monolith Productions 
additional documentation by Kenneth Silverman 

April 24th, 1997 
MAPEDIT is an extension of Ken Silverman's BUILD editor. This program and documentation are provided 'as-is' and without any warranty. The original document has been truncated for this web site, but is in its entirety in mapedit.doc format to download. You must agree to the terms of the license agreement (license.txt) before you can use MAPEDIT. While we cannot support this program, check out for the latest version and information. Enhancements from the basic BUILD engine and editor are indicated with an asterisk (*). 

MAPEDIT has two modes, both of which are essential:

3D EDIT MODE presents a real-time view of the level as viewed in the game.
2D EDIT MODE overhead view of the entire board.
You can switch between the modes by pressing Keypad Enter.

Use 3D EDIT MODE for:
  Press V to display all the textures currently in use in the level. Note that selecting a wall texture will only display wall textures; likewise for floor and ceiling textures, respectively. Press V a second time to display the entire art file. Press S to place a sprite. You will be presented with a display of all sprites currently in the level. Pressing V will display the entire art file. If you point the cursor at a wall and press S, you will place a wall sprite. Pointing at a floor or ceiling will place a face sprite. Note that display of sprites in use will only show sprites of the same type (i.e. face, wall, or flat--further information on sprite types listed below). Special items, such as weapons, enemies, ammunition, and hazards are available in a pop-up menu. Press Alt-S and choose the class you want by clicking on the tab or pressing the underlined letter (i.e. 'E' for enemies). Press keypad +/- to adjust. Keypad 0 returns the surface to zero shading (i.e. the middle of the spectrum). Ctrl + and Ctrl - select full brightness and full darkness, respectively. Note that MAPEDIT shades each surface separately. A surface can be defined as the floor or ceiling of any sector, or a section of wall between two points.
You can adjust the shading of an entire sector or series of sectors by Alt-selecting them (see below). Press keypad 2, 4, 6, or 8 to scale. Hold down Shift for finer adjustments. To adjust the relative position of a texture on a surface, hold down Ctrl and press keypad 2, 4, 6, or 8. For finer adjustments, use Ctrl+Shift. You can also offset a sprite's position in this manner, but it is usually preferable to simply move it in 2D mode. PGUP and PGDN adjust the elevation of the currently selected sector or sprite. To adjust a floor, point at the floor. To adjust a ceiling, point either at a wall or ceiling. If you point at a surface or object and left click and hold, the object will remain selected until you release the left mouse button, regardless of the cursor position. This technique is especially useful for creating doors or adjusting small sprites. Also, Ctrl+PGUP and Ctrl+PGDN move a ceiling, floor, or sprite to the nearest adjacent elevation. For example, if you have raised one section of your ceiling to a given height, you may quickly move neighboring sections to the same elevation in this manner. Finally, Alt+PGUP and Alt+PGDN allow you to set ceiling and floor elevations to specific settings. Most measurements in MAPEDIT are handled in multiples of 8--a one-story room would be 128 units high, a two-story room 256, and so on. Average doors tend to be 96, 112, or 128 units high.

Use 2D EDIT MODE for:
  Press spacebar to start a new sector. Move the cursor to another position on the grid and press spacebar to insert additional points. Once you've created a sector (minimum of three points), you must close the sector by returning to the original point and pressing spacebar a final time. You can insert additional points by pointing at a wall and pressing Insert. You can drag points to new positions by left- clicking and holding. You can remove points by dragging them to an adjacent point. To delete a sector, point the cursor at it and press Ctrl+Delete.
DO NOT delete sectors by dragging all their points together. This is very bad juju and can screw up your whole map. To get rid of a red-walled sector without actually deleting it, press J on the sector you wish to merge it with and then press J again on the sector you would like to get rid of. To edit a sector, point the cursor at it and press Alt-F5. Use the Up and Down arrows to modify fields and the Left and Right arrows to move between them. When you are finished, press Enter to save any modifications or Esc to discard changes.

Use A and Z to zoom in and out.


ESC = Quit
keypad ENTER = Flip to the 2D EDIT MODE
Mouse = Move mouse cursor
Arrows = Movement
Caps Lock = There are 3 different movement modes in MAPEDIT.
Gravity: Game mode (default). You have gravity.
Step mode: Use A and Z to move up and down in steps.
Free mode: Use A and Z to move up and down freely.

NOTE: For the following keys, it is important to move the mouse cursor to the right position before using them. Remember that if you hold down the left mouse button, the item under the cursor will be locked as the highlighted object until the button is released. This is useful for the PGUP/DN keys and shading.

There are 4 basic types of objects that can be worked with in this part of the editor:

PGUP/DN = Raise or Lower a ceiling or floor. (If a wall is selected, the ceiling of that sector will move) Also, if you did a sector highlight in 2D EDIT MODE, you can raise / lower multiple sectors at a time.

Ctrl+PGUP/DN = Puts sprites exactly on the floor or exactly on the ceiling. Also, adjust ceiling or floor height to that of adjacent sector.

V = Tile selection - use arrow keys to move around. Press ENTER to change the object to the highlighted piece of artwork, or press ESC to cancel without changes made.

ALT+V = Height selection - works just like V, but this selects the groudraw height map. W = Change lighting effect waveform. Once you have created a lighting effect in a sector by editing its properties, you may cycle through the available waveforms by pressing W.

F2 = Toggle state of sprite or sector (ON or OFF)

F3 = Show sector OFF position for Z-motion sector

Alt+F3 = Set OFF position for Z-motion sector

F4 = Show sector ON position for Z-motion sector

Alt+F4 = Set ON position for Z-motion sector

F9 = Auto stair builder. Highlight a group of sectors, then point to an adjoining sector floor or ceiling and press F9. The floor or ceiling you point to will be the lowest step. Enter a step height (16 units is standard) and voila.

2,4,6,8 (keypad) = Repeat values. Use to scale textures or sprites. Use in conjunction with Shift for finer adjustments.

Ctrl + 2,4,6,8 (keypad) = Panning values. Adjusts relative position of texture, as well as sprite offset. Use in conjunction with Shift for finer adjustments.

/ = Use this key to reset the panning values for a texture or sprite.

. or > = This function attempts to align matching textures along a wall or series of walls. It adjust textures to the right of the start position until it encounters a different texture.

F = Flip an object. For sprites and walls, this flips the object x-wise. For ceilings and floors, the objects are flipped in 8 possible ways. Just keep pressing 'F' to go through the 8 ways.

ALT+F = When you use relative alignment mode on ceiling and floor textures, you can press ALT+F on the ceiling or floor to choose a new wall to align to. It actually rotates the walls of a sector by 1.

O = Wall orientation (whether it starts from the top or bottom) Normally, walls are oriented from the top. For example, if you hold down 2/8 on the keypad in 3D EDIT MODE, the wall always starts from the top. Orientation works differently for white lines and red lines, so if a wall doesn't look right, just press 'O' to see if it gets fixed.


TAB = COPY. Copy the attributes of the highlighted objects. The attributes it remembers are: tile, shade, x-repeat, y-repeat, and properties.

ENTER = PASTE. Paste the stored attributes over the highlighted object. Whenever you press ENTER, the y-repeat values stay the same, and the x-repeat values are adjusted so the pixels of the bitmaps have a square-aspect ratio.

Ctrl+ENTER = Paste the attributes to every wall in a sector.

Shft+ENTER = * Paste shade and palette

Ctrl+Shft+ENTER = * Paste tile, shade, and palette to all walls in loop

Alt+ENTER = Paste properties (i.e. sector type, lighting effects, etc.)


Ctrl+Alt+ - or + Decrease/Increase sector visibility

Ctrl+ - or + Decrease/Increase light effect amplitude

Shift+ - | + Decrease/Increase light effect phase

[ or ] Change floor or ceiling slope

Alt+] Align floor or ceiling slope to adjacent floor or ceiling elevation. You may have to Alt+F the sloped sector to get the slope angle right.

\ Reset slope to 0

P = Make ceiling or floor parallax. Best used in conjunction with sky textures (i.e. 2500, 3678, and 3491).

E = Expand or unexpand a floor or ceiling texture. Note that the term 'expand' is counter-intuitive--expanding a texture actually condenses it. Don't ask.

R = Relative alignment - switch between relative alignment mode and normal mode. Allows floor / ceiling textures to align to the first 2 points of a sector. Relative textures will rotate/pan with moving sectors properly.


B = Make an invisible wall, such as a window, block you from going through. Since the wall is invisible, you can also highlight the ceiling right above the window or floor right below the window. You can block either the front or the back of the window. If you block the back only, you will be able to go onto the window sill.

T = Cycles through degrees of translucency.

M = Creates an illusionary wall that can be viewed from both sides (such as a window). You can make a masked wall blocking or hitscan (i.e. blocks vectors).

1 = Make a 1-way wall and 1-way flat sprites.

2 = Some walls have two different sections. One step on the ceiling and one step on the floor. Normally they always have the same attributes. It is possible though, to give both the top and bottom different attributes by pressing 2 on that wall. 2 simply makes the bottom wall's attributes separately editable. Press 2 on either the top or bottom wall.

O = Wall orientation (whether it starts from the top or bottom or, in the case of red walls, the inside or outside). Experiment.

H = Toggle hitscan. Setting hitscan will make a masked or 1-sided wall block vectors (i.e. shotgun blasts and bullets).

A word about sprites:

'Face' sprites always face the player.
'Flat' (or 'wall') sprites are fixed in orientation. Examples include signs, paintings, etc.
'Floor' sprites lie flat, usually on a floor or ceiling.

Alt+S = Insert a sprite from a menu: Enemy, Weapon, Ammo, Item, Hazard, Misc. Choose cancel or hit Esc to abort.

B = When the mouse cursor is on a sprite, this makes a sprite block you from walking through. Sprites with the 'B' attribute will appear pink in 2D EDIT MODE

H = Toggles hitscan on a sprite.

T = Press to make a sprite 50/50 transluscent. Press T again to put sprite back to normal mode.

1 = Toggle between 1 and 2-sided for flat and floor sprites.


ESC = Show a menu that says, "(N)ew, (L)oad, (S)ave, (Q)uit" Press ESC again to cancel the menu.

The mouse cursor will highlight the nearest object within a specific threshold (see MAPEDIT.INI). The selected object will flash, and any XObject information will be displayed in the lower panel. Key operations in 2D will apply to the selected object. Sprites have various shapes in the overhead map, depending on their attributes:

* Face sprites are cyan circles with a line extending from the center to indicate their angle. (ref. '<' and '>')

* Thick sprites have the blocking attribute set. (ref. 'B')

* Purple sprites have the hitscan attribute set. (ref. Ctrl+H)

* Sprites with three or four lines extending from the circle are wall sprites. The shorter lines indicate which sides are visible. (ref. 'R' and '1' in 3D mode keys.)

* Sprites with square centers are floor sprites, and can be manipulated with all the keys referred to above.

This section not complete. keypad ENTER = Flip back to the 3D edit mode

Mouse = Move mouse cursor

Left mouse button = If you hold down the left mouse button, you can drag existing points. To drag multiple points you can use the right shift key to first select a rectangular region of points to highlight, then just drag any of the highlighted points and the rest move with it.

Right mouse button = Moves the player's positions to the mouse cursor. This is useful when you accidently get stuck somewhere in the board, or when you need to edit some part of a sector that is hard to access.

Right Shift = Select a bunch of points for use with dragging around. Selects all points inside a box. (Use the left mouse button to drag)

Ctrl+Right Shift = Select a bunch of points for use with dragging around. Selects all points on a loop. (Use the left mouse button to drag)

Right Alt = Select a bunch of sectors for either duplication or dragging around. (see left mouse button for dragging and the insert key for duplication).

Arrows = Move player position in the appropriate directions. The player will be clipped. To jump to a different part of the board, use the right mouse button.

Space = Press the space bar when drawing new sectors. There are several ways of drawing new sectors. The following three ways of drawing sectors can all be done by only using the space bar. The computer is smart enough to decide which method you are using.

  1. 1. Drawing a FULL LOOP - that is, whenever the new sector meets the old sector, draw over that line again. In full loop mode the new sector must not already be in another sector. The loop is done when you press the space bar at the first point again.
  2. 2. SPLITTING a sector - press space bar to draw points at which you want to split a sector. The computer knows you are done splitting when you end at another point that's on the edge of the sector you are splitting.
  3. 3. Drawing a sector COMPLETELY INSIDE another sector. (for example, columns) To do this, just press space bar at every point in the loop. The loop is done when you press the space bar at the first point again.
Backspace = When plotting points with the space bar, you can use backspace to get rid of the last point plotted. You can press the backspace to get rid of all the points if you didn't want to start a sector at all.

Insert = Inserts a new point at the midpoint of the highlighted line. Then you can drag the point to wherever you like. (If you insert on a red line, the point will be inserted on both sides of the sector line.) If a bunch of sectors are selected (see right ALT) then instead of inserted points, the selected sector bunch will be duplicated (stamped). Don't forget to drag the selected sectors after stamping.

Delete = Use this to delete sprites (blue circles). To delete points of a sector border, don't press delete. Instead, drag the point into one of its 2 neighbor points on the sector. This is easist done if grid locking is on (mouse cursor is pink). If 2 neighbor points are equal, Right- Ctrl-Delete = This deletes the whole sector that the mouse cursor is in. Note the right ctrl for protection.

(Note: to delete a point of a sector, just drag that point into the next point and it will automatically be deleted. You should do this with grid-locking on)

J = Use to join two neighboring sectors. Press J when mouse cursor is over the first sector. Then press J again when the mouse cursor is over the neighboring sector. The attributes of the combined sector will be taken from the first sector selected.

ALT+S = When you have a white loop inside a sector, you can press ALT+S on it (highlight any of its lines) to turn the whole loop red.

S = Places a sprite at the location under the mouse cursor. A sprite looks like a blue circle in the overhead map.

B = Blocks / unblocks you from going through a wall or sprites. A blocked wall or sprite will appear pink in 2D EDIT MODE. See the description for 'B' in the 3D EDIT MODE section for more details. C = Turn a line into a circle defined by short line segments. First press 'C' on a highlighted wall. Then move the mouse to the right place and press '+' or '-' if you want to change the number of points on the circle. Press 'C' again to cancel the circle drawing or press the Space bar to actually change the map.

+/- = Increase / Decrease the number of points on the circle.

T , H , ALT+T , ALT+H = Type in a LO-tag for a sector. [ Level designers should not edit these fields directly as they are used internally by Monolith's XSYSTEM.)

Ctrl+H = Toggle the hitscan sensitivity of a sprite or masked wall. Objects which are hitscan sensitive can be hit be vector weapons.

I = Toggle invisibility for sprites. Invisible sprites which are non-blocking and non-hitscan sensitive show up as dark gray.

E = Change a sprite's status list number. < and > = Rotate a Sprite: Rotation has a precision of 2048 degrees, and sprites can have an angle value range of 0 to 2047. Pressing the shift key allows a finer degree of rotation.
Rotate a Sector: Sectors highlighted with RightAlt can also be rotated using these keys.

[ and ] = Rotate a sprite without wrapping. Generally used for marker sprite rotation, allowing marked sprites to rotate several times throughout a busy cycle.

CTRL+T = Toggle the text captions for sectors, walls and sprites.

TAB = Move the mouse cursor to the inside of a sector that you you want to see the attributes of. It will show them at the bottom of the status bar. To clear it, press TAB again at somewhere in the board that is not part of any sector. This is a useful key for debugging.

ALT+TAB = Works just like TAB, but here, you can see the attributes of highlighted walls or sprites. For red lines, the side the mouse cursor is on the line affects which line is highlighted, since red lines are actually defined as 2 walls (1 wall for each sector).

Scroll Lock = Set starting position (brown arrow) to your current position (white arrow).

A,Z = Zoom in and out. This is useful for choosing whether you want to edit finely or not.

G = Change grid resolution. The grid resolution cycles through this sequence:

K = Mark a wall or sprite for motion (blue = forward motion, green = reverse motion)

L = Turns grid locking on or off. If the mouse cursor is pink then grid locking is on. If it is white then grid locking is off. There is no grid locking if the grid is turned off. Also, grid locking will lock to nearby points.

M = Toggle the mask status of a wall

S = Places a sprite at the location under the mouse cursor. Refer to the SPRITES section (above) for more information.

Alt+S = Convert internal white sector (single-sided linedef) to a red sector (double-sided lines). (NOTE: Outer loop cannot be converted!)

F5 = Display sector specific data

F6 = Display sprite/wall specific data

Alt+F5 = Edit sector specific data in the editing dialog.

Alt+F6 = Edit sprite/wall specific data in the editing dialog.

This page © Ignore This Productions Co. Ltd.
* Main *