EDM Editing Quick Guide



This is not a complete reference but it should be enough to get you started with mapping. More information may be available on the Sauerbraten homepage, most of which also applies to EDM (and vice versa).

Edit Mode

Enter the built-in map editor by pressing [E]. When you are connected to a multiplayer server, CoopEdit mode must be enabled.

Creating, Loading and Saving Maps

Create a new map by pressing [T] or [H] and typing /newmap N. N sets the map size: /newmap 10 will create a quite small map, /newmap 11 a map twice as large, and so on. You can also use the editing | map operations menu.

To load a map type /map <MAPNAME>. To save a map, use /savemap <MAPNAME> or /savecurrentmap.

Editing Geometry (world)

Editing the world is easy. Basically you select cubes and operate on them with the mouse wheel, holding down various modifier keys.

Selecting Cubes

Hold down the left mouse button and drag to select a range of cubes to modify. One side of the selection cube is the active one, colored white. Point at one side of a cube and press [LEFTSHIFT] to select the active side.

The Editing Grid

Selection and Cube size is affected by the grid. Hold down [G] and turn the mouse wheel to modify the grid size.

Creating and Destroying Cubes

Simply roll the mouse wheel up and down to create and destroy solid cubes.

Face and Vertex Manipulation

Hold down [F] and roll the mouse wheel to move the active face of cubes. Point at the corner of a cube, hold down [Q], and roll the mouse wheel to modify single vertices.

Textures

Hold down [T] and roll the mouse wheel to select the texture of the active face. Textures are kept in a most-recently-used list, so textures you have already used in this editing session will be the first in the list. Custom textures can be loaded in map config files.

Flip, Rotate, Copy&Paste

[X] or /flip mirrors (flips) the selection.
[R] + Mousewheel or /rotate rotates 90 degrees.
/copy [C] + /paste [V] copies / pastes selection. NEW: also works in coopedit now
[U] or /undo undoes last change. NEW: also works in coopedit now

Entities

Entities are parts of the world which perform some gameplay function. They are created with the command

/newent entity-name PARAMETERS

entity-name sets the type of the entity, PARAMETERS is a list of at most 4 integers that additionally control what the entity does.

Delete an entity with the /delent command (default key: [BACKSPACE]).

Press [F5] to [F8] while rolling the mouse wheel to change entity attributes.

Copy and paste an entity with /entcopy and /entpaste ([CTRL+C], [CTRL+V]).

Entity Types and Parameters (List out of date, some of the names have changed and some new types were added. See the in-game Editing menu.)

  • light RADIUS RED GREEN BLUE
  • point light. Radius sets the size of the light, red green blue sets the color (0 to 255). Color values may be negative.

  • playerstart YAW
  • player start. YAW sets the direction in which the player looks when spawned. Players get spawned at a random playerstart if the map contains more than one.

  • shells, bullets, rockets, riflerounds,
    pbombs, laser, pistolbullets
  • ammo for the corresponding weapons (no parameters). There are no weapons to pick up; the player has all weapons by default, you only have to collect ammo.

  • health
  • +25 health powerup.

  • healthboost
  • +75 health boost.

  • greenarmour, yellowarmour
  • green (weak) and yellow (strong) armor.

  • quaddamage
  • Quad Damage. Lasts 30 seconds.

  • radar
  • Radar Plug-In. Adds a HUD item which lets you locate players, items, and projectiles nearby. Battery lasts 30 seconds.

  • teleport IDX
  • Teleporter. Transports players, rockets, etc. idx is the number of the teledest to teleport to.

  • teledest ANGLE IDX
  • Teleporter Destination. angle sets where the teleported player will look. idx must be set to the correct teleporter number.

  • jumppad ZPUSH YPUSH XPUSH SOUND
  • Pushes players, rockets, grenades. Z Y X defines where to push. sound is 0 for default sound, 1 for air sound, 2 for silence.

  • ambient_drops INTERVAL FALLOFF
  • makes dripping sounds like in a cave. interval is the time in milliseconds between drops. falloff sets the distance the sound can be heard (the lower the value, the wider the range).

  • mapmodel ANGLE IDX
  • Shows a map (MD2) model. angle sets the yaw, idx is the number of the model to display. Default map models are loaded in data/default_map_settings.cfg. Custom mapmodels can be loaded in map config files.

Lighting

CoopEdit

CoopEdit is a game mode in which all the players connected to a server can work on the same map simultaneously! In EDM you can either allow everybody to change your map, or allow single players to make changes while others can only look at your world (to prevent people messing up your map on a public server).

Entering CoopEdit Mode

Connect to a Server:
/connect edm-fps.net

Enter CoopEdit mode:
/mode 1; map YOURMAP

If you are the first player on the server, this will switch to CoopEdit instantly. If there are other players, more than half of them have to vote for the change by typing map YOURMAP. Then press [E] to start editing. Other players will see your changes instantly.

CoopEdit Permissions

In EDM you can use the following commands to specify who may edit your map:

/cedit_allowdefault [0..1]
When set to 1 everybody connected to the server may modify your map ("free-for-all" editing). When this is 0 only players you choose can edit. This is a persistent variable which means the setting is saved at exit.
/cedit_allow [player] and
/cedit_refuse [player]
Allows or disallows a single player to edit your map. [player] can be the player's client number or simply his name.
In Coopedit mode every editing change a player makes is sent to other players over the network. When events by a player are first refused, you will see a console message like

CoopEdit events by PLAYERNAME (#CLIENTNUM) refused, use cedit_* commands to allow

You can then use /cedit_allow to allow this player to edit your map (or not).

File Transfers

You can upload and download files from the server to synchronize maps with other players (e. g. after lighting).

/sendmap
sends your map to the server and saves it in the incoming directory. Other players can then use
/getmap
to download and reload the map.

While uploading or downloading a progress bar will be displayed. With a reasonably fast connection (ISDN or DSL) you will be able to walk around and even play as usual while the upload or download is in progress! After an upload is finished all players are notified with a console message.

CAUTION: There are currently no file transfer checks or other 'security' measures for the server. Everybody may upload files; basically the server's incoming directory is "public space" which anybody can access. Anybody may overwrite the files which you put on the server as well, so the server space is at the moment only good for exchanging files between players, not for permanent storage. The client as well as the server make backups before overwriting game files, in the form MAPNAME<TIMESTAMP>.BAK.

Map Config Files