Here is a description of all the available commands which can be bound to keyboard keys or mouse buttons.
See KeySystem for general information about how commands work.
Creates a fresh map in a new wad file. If you choose an existing file, it will be overwritten (i.e. all existing contents removed).
Manages several important settings about the currently edited wad. That includes which game it is for, which source port is being used, and any resource files.
Opens a map for editing. This map can be found the currently edited wad, or the game iwad, or one of the resource wads, or you can even load another wad file (which becomes the currently edited file).
Loads a new wad file for editing from the list of "given files", i.e. files that were specified on the command line when Eureka was started.
next : the next wad file in the list
prev : the previous wad file in the list
first : the very first wad file in the list
last : the very last wad file in the list
current : the same file currently being edited
Opens another map in the current wad.
next : the next map in the wad
prev : the previous map in the wad
first : the very first map in the wad
last : the very last map in the wad
Saves your map into the currently edited wad. It will also build the nodes (BSP information) unless this is disabled in the preferences. The game iwad is considered read-only, and hence this cannot be used on it, instead you will be prompted for a file to export into.
Saves the map into another wad file, possibly a completely new file.
Creates a fresh map in the currently edited wad. Cannot be used on the game iwad.
Copies the current map in the currently edited wad to another slot. For example, duplicating MAP01 into the MAP02 slot. Cannot be used on the game iwad.
Renames the current map in the currently edited wad, or in other words: move the map to a different slot. For example, moving MAP01 to the MAP23 slot. Cannot be used on the game iwad.
Deletes the current map from the currently edited wad. Cannot be used on the game iwad.
Tests your map by launching the game (using your chosen source port).
Builds the nodes (BSP information) for all maps in the currently edited wad.
Opens the Preferences dialog.
Quits Eureka. If you have unsaved changes, a dialog box will appear asking for confirmation.
Undoes (reverses) the last editing operation. This can be repeated multiple times.
Redo is the opposite of Undo, it re-instates the editing operation which Undo undid. It can be repeated multiple times.
Inserts a new vertex, sector or thing into the map. In vertex mode, this will begins line drawing (if not already underway). In sector mode, this can fill empty spaces (or spaces with broken sectors) will a new, valid sector.
/continue : when line drawing, do not stop when joining existing geometry
/nofill : when line drawing, do not fill new spaces with sectors
Deletes one or more objects from the map, using the highlighted object when the selection is empty. Deleting a sector will usually delete all things in the sector too. Deleting a single vertex that connects two linedefs causes the two linedefs to be merged into one.
Note that deleting linedefs or groups of vertices can leave the map in a broken state. It is generally better to go into sectors mode and delete or merge sectors there.
This command can also be used to change textures in the 3D view, or in texture/flat images in the sector or linedef panels. Textures will become "-" (the null texture) and flats will become sky.
/keep : when deleting sectors, keep the things in it, and don't remove any unused linedefs
Performs the clipboard Cut, Copy and Paste functions. On the 2D map view, this will apply to the geometry, allowing an object or groups of objects to be copied and pasted. In the 3D view, these allow textures to be copied and pasted (the "cut" operation sets textures to their default).
Toggles an object in the selection, i.e. if the highlighted object is unselected, then select it, otherwise remove it from the selection.
Adds all objects in the current editing mode to the selection.
Clears the selection, i.e. removes all objects from it.
Selects all objects not in the current selection, and unselects the rest.
This is like "undo" for the selection, can be used to bring back a selection which was accidently cleared. Note that it is limited to a single undo step, and it cannot bring back a selection once modifications are made to the map.
Same as doing a copy followed by a paste. Can be a useful way of adding things to the map by copying an existing thing.
Copies properties from a selected object to the highlight object. Not all properties are copied though. For things, the position and angle are not copied. For linedefs, textures are copied but not X or Y offsets, nor the "impassible" flag.
/reverse : copy from the highlighted object to the selected object(s).
Finds any unused vertices, sidedefs or sectors and removes them from the map.
These comands open a dialog window for moving, scaling or rotating a group of selected objects. They allow specifying an exact distance to move the objects, or an exact scaling factor, or an exact number of degrees to rotate the objects.
Zooms the 2D map view in or out. The <delta> parameter is +1 to zoom in (make everything bigger) or -1 to zoom out (make everything smaller).
/center : focal point of zoom is the center of 2D view (instead of where mouse is)
Scrolls and zooms the map view so that all objects in the current selection are visible.
Shows the Default Properties panel, or hides it if already shown.
Shows the Find/Replace panel, or hides it if already shown.
Finds the next object in the current search.
Scrolls the 2D map view so that the camera (for the 3D view) is shown at the center. Does not zoom the map view.
Places the camera (for the 3D view) at the spot on the 2D map view where the mouse is.
/open3d : activate the 3D view afterwards.
Brings up the "Jump To Object" dialog window, allowing you to jump to the object with a specified index number.
Opens the browser to a particular type of object.
tex : browse textures
flat : browse flats
obj : browse things
line : browse linedef specials
sec : browse sector types
gen : generalize linedef editor (for BOOM ports only)
/force : do not close the browser
/recent : set the category to "Recent"
NOTE: the browser can be closed using the "Set browser 0" command.
Cycles through the categories in the currently open browser. The <dir> parameter is optional, when present it can be +1 to move forward or -1 to move backward through the categories.
Clears the search box in the currently open browser.
Scrolls the browser by a single step. The <delta> parameter is a small negative or positive number, as follows:
-1 +1 : scroll a small amount
-2 +2 : scroll by a single "line"
-3 +3 : scroll by a single page
-4 +4 : scroll to the end
Opens the log viewer window.
Launches a web browser to display Eureka's absolutely fabulous documentation.
Displays a dialog with some brief information about Eureka.
Does absolutely nothing. This can sometimes be useful to disable a certain key combination in a certain editing mode, or to disable a shortcut used in the menus.
Set <keyword> <value>
Sets the value of a certain editor state. It requires two parameters, the first is a keyword for what is being set, and the second is the new value. The value is usually a small number, where 0 means "off" and 1 means "on", though some keywords accept a range of values.
3d : whether the 3D view is active
browser : whether the browser panel is active
gamma : the current gamma level (brightness), 0-4
grid : whether the grid is being drawn
obj_nums : whether object numbers are being shown in 2D view
sec_render : the sector rendering mode in 2D view, 0 for nothing
snap : whether grid-snapping is active
sprites : whether sprites are drawn in 2D view (in Things mode)
Toggles or cycles the value of a certain editor state. It accepts the same keywords as the Set command above.
Waits for the next keypress and adds the META modifier to it.
Changes the current editing mode to the one specified. Note that the 3D mode is not handled by this command (it is changed with the Set or Toggle commands above).
Keywords: vertex, line, sector, thing
Brings up the operation menu.
Runs the map checking dialog.
Keywords: all, major, vertices, sectors, linedefs, things, textures, tags, current
Merges two or more objects into a single one. In things mode, this merely moves the objects to a common location (does not remove any things). In Linedefs mode, this only handles two one-sided linedefs (which are assumed to be back-to-back or close to it).
/keep : when merging sectors, keep linedefs that would otherwise be removed.
Disconnects one or more objects from nearby geometry. In things mode, this separates things which exist at the same place (the coordinates must be exactly the same). In vertex mode, this disconnects the linedefs which join at that vertex.
Mirrors one or more objects about a central axis.
horiz : mirror horizontally (stuff moves left and right)
vert : mirror vertically (stuff moves up and down)
Rotates one or more objects by 90 degrees around a central point.
cw : rotate clockwise
acw : rotate anti-clockwise
Scales one or more objects, making them bigger or smaller. The <factor> parameter is the value to scale by, defaulting to 2.0 when absent. Fractional values like "1.3" are supported. Objects are scaled from their center point. When a sector is enlarged or shrunk, any things it contains are moved too.
Snaps the selected objects to the nearest grid point. For example, if the current grid size is 16 units, and several sectors are selected, all the vertices which are a part of those sectors are moved to be aligned with the 16x16 grid (if possible).
When a vertex cannot be moved (because the nearest grid points are in use), then this command beeps with an error message, and all the vertices which could not be moved are highlighted in red.
Applies a tag number to the selected objects, which must be either sectors or linedefs.
fresh : use a new tag number (one not used anywhere else)
last : use the last (highest) tag number used on the map
Performs the functions typically done by a left mouse button click, namely to select or unselect objects in the 2D map view, to drag objects around, and splitting linedefs.
/noselect : disable the select function
/nodrag : disable dragging
/nosplit : do not split linedefs
Drags the currently selected objects. An outline of the objects follow the mouse while the key or button is held down, and when the key/button is released the objects are actually moved.
Transforms the currently selected objects. The <keyword> parameter determines what kind of transformation to apply. An outline of the transformed objects is shown while the key is held down, and moving the mouse around will affect how large, how much rotation (etc) is applied. When the key is released, the objects are actually moved to their final positions.
scale : scale uniformly, maintaining the same aspect ratio
stretch : scale with stretching (can make everything wider or taller)
rotate : rotate the objects
rotscale : rotate and scale uniformly
skew : skew (shear) the objects
Reshapes the selected vertices so they form a straight line, and each vertex is the same distance apart. The vertices need to be roughly in a line already, and the two vertices at the ends of that imaginary line are the anchor points and do not move, but the remaining vertices are moved.
Reshapes the selected vertices so they form an arc of a circle. The <angle> parameter is the number of degrees in this arc, and can be 360 for a full circle. The vertices need to be roughly in the desired shape already, and will be moved to lie on the arc, with an equal distance between each one.
Aligns the X/Y offsets on the selected linedefs. The flags control exactly what is affected by this command.
/x : align X offsets
/y : align Y offsets
/right : pick walls to the right to align with (instead of the left).
/clear : clear the X / Y offsets (instead of aligning).
Flips the orientation of one or more linedefs.
NOTE: Flipping one-sided lines generally breaks the map geometry, and the /force flag will break the map in a different way: the sidedef stays facing the sector, but leaving the linedef without a right side.
Swaps the sidedefs on some linedefs. This is only really useful for fixing map problems.
Splits one or more linedefs in half, adding a vertex at the exact middle point.
Selects or unselects a group of linedefs in a path. The path stops at forks, i.e. where there are two or more choices of which way to go.
/fresh : make the result a fresh selection (instead of modifying the current selection)
/onesided : only handle one-sided lines (ignore two-sided lines)
/sametex : require lines have the same texture
Raises or lowers the floor height of some sectors. The <delta> parameter is the height value to add, which can be positive or negative.
NOTE: a floor cannot be raised above the ceiling in the sector.
Raises or lowers the ceiling height of some sectors. The <delta> parameter is the height value to add, which can be positive or negative.
NOTE: a ceiling cannot be lowered below the floor in the sector.
Changes the light level in the selected sectors. The <delta> parameter is the value to add, either negative or positive, and it should be a power of two such as: 1, 2, 4, 8, 16, 32, or 64.
NOTE: vanilla DOOM, and some source ports, only use multiples of 16 for the lighting values. For example, there will be no visible difference between 160 and 170 (the next usable value is 176).
Selects a group of contiguous sectors. The flags will control whether neighboring sectors are considered part of the group.
/floor_h : require the same floor height
/floor_tex : require the same floor texture
/ceil_h : require the same ceiling height
/ceil_tex : require the same ceiling texture
/light : require the same lighting
/tag : require the same tag value
/special : require the same sector type
/fresh : make the result a fresh selection (instead of modifying the current selection)
/doors : don't stop at doors (closed sectors)
/can_walk : only spread into a neighbor sector if the heights allow the player to walk there and back (i.e. stop at impassible lines)
Swaps the floor texture with the ceiling texture in all the selected sectors.
Spins the angles (the direction things face) of all the selected things. The <delta> parameter is an angle to add, where negative values spin the things clockwise, and positive values spin the things anti-clockwise. Angles are generally multiples of 45.
2D View Commands
Scroll <x> <y>
Scrolls the map view by a single step. The first parameter is the horizontal distance, and the second parameter is the vertical distance. These values are roughly percentages of the viewing window size.
Changes the current grid size. The <delta> parameter should be +1 to increase the size to the next usable one, or -1 to decrease it.
Sets the current grid size to the given value, which can be anything (i.e. it is not limited to the normal values).
Zooms the map view. The parameter is the scale value, which is positive for N:1 scales and negative for 1:N scales. For example, "-3" means 1/3 scaling. The scale factor is limited to be one of the existing ones selectable on the info bar.
Begins drawing a selection box.
Scrolls the 2D map view using the mouse-wheel. The <dist> parameter is roughly a percentage of the viewing window size, and each step of the mouse wheel scrolls by this amount.
Note: this command will not work unless bound to WHEEL_XXX.
These four commands are used to produce smooth scrolling of the map view. Scrolling continues while the key is held down. The <speed> parameter is roughly a percentage of the viewing window to move each second.
Activates scrolling the map view using the mouse. While the key or button is held down, moving the mouse will scroll the view. The <speed> parameter controls how fast to scroll, 1.0 means the map follows the mouse 1:1, higher values scroll faster, and lower values will scroll slower.
3D View Commands
Performs the usual mouse-click function of the 3D view, namely to select/unselect wall and floor surfaces.
3D_Set <keyword> <value>
Sets a particular state of the 3D renderer to a certain value. The <value> parameter is usually a small number, where 0 means OFF and 1 means ON, though some keywords use a range of values.
grav : gravity mode, camera stays on the floor when moving
tex : texturing of walls and floors
obj : draw things (sprites)
light : lighting enable
Toggles or cycles a particular state of the 3D renderer. For the <keyword> parameter, see the 3D_Set command above.
Aligns the selected wall surfaces with nearby walls, by changing their X or Y offsets. The flags control exactly what is affected by this command.
/x : align X offsets
/y : align Y offsets
/right : pick a wall to the right to align with (instead of the left).
/clear : clear the X / Y offsets (instead of aligning).
Moves the 3D camera by a single step. The <dist> parameter gives the distance to move (in map units).
NOTE: these have been superceded by the NAV versions below, which allow moving smoothing through the map. However these are kept for backwards compatibility, and may still be useful for some people.
Turns the 3D camera left or right by a single step. The <angle> parameter is how far to turn, in degrees, where negative values turn right (clockwise) and positive values turn left (anti-clockwise).
NOTE: this has been superceded by the NAV version below, which allows turning the camera smoothly.
Drops the 3D camera down to the floor, as though the player was standing on the ground. This will raise the camera too if it is below that height.
Adjusts the X and Y offsets on the selected surfaces. While the key or button is held down, moving the mouse will update the offset values.
Moves the 3D camera using the mouse-wheel. Each click of the wheel will move a single step. The <dist> parameter is how far to move, in map units. When using this with the LAX modifier, holding SHIFT will move much slower and holding CTRL will move much faster.
NOTE: this command does not work unless bound to a mouse-wheel button.
Navigates the 3D camera smoothly through the map, while the key is held down. The <speed> parameter is how fast to move, in map units per second. When used with the LAX modifer, the SHIFT key will slow down movement and the CTRL key will move faster.
Turns the 3D camera smoothly left or right. The <speed> parameter is how fast to turn, in degrees per second. When used with the LAX modifer, the SHIFT key will slow down turning and the CTRL key will turn faster.
Moves or turns the 3D camera while the key or button is held down. Moving the mouse forward/back will make the camera go up/down (purely vertically), and moving the mouse left/right will turn the camera left/right. The <speed> parameter controls how fast to move or turn. When used with the LAX modifier, the SHIFT key will slow down movement and the CTRL key will move faster.