Mapping
The brainstorming session requires the map maker to create a creative and entertaining map entity through extraordinary imagination.
The mapping session requires the map maker to add a nice look to the map, the design process should generally be aesthetically pleasing to the public, and the information represented in each mapping should be clear enough and not ambiguous, while the overall design style should also generally be in line with the game's art style.
The map test session requires the map maker to test the map he or she has made in order to find out any gameplay problems or texture design problems that have not yet been detected in the current map.
Players can access the map editor interface by clicking on the editor in the main menu.
From any in-game screen, pressing ctrl+⇧ Shift+E will also take you directly to the map editor screen.
DDNet Map Creation Guidelines
If a player eventually wants their map to be published on the DDNet server, then the player must follow the following guidelines to create the map. Before uploading the map to DDNet's Discord server, please make sure that the player has tested the map completely, that the levels of the map run and operate smoothly, and that the design aspects have been fully completed.
In terms of game experience, we require that:
That each level should have enough space for the player to operate comfortably.
The overall difficulty of the map should be balanced, without large fluctuations (e.g. no insertion of high star high level maps or even crazy map operations in the middle of a medium level map).
there should be a way for other players to rescue in levels that are prone to failure
level operations must not be too precise or difficult just for the sake of being difficult
shall not make excessive use of special game entities, and at the same time shall not use special entities for fixing map level bugs
shall not intentionally mislead or confuse the way the level operates
Levels must not exploit bugs in the game's physics mechanics to achieve this.
In terms of visual effects, we require that:
all entities required by the player to pass the level must be clearly represented in the mapping.
the decals or markers for different entities must be easily distinguishable.
there must be a clear distinction between foreground and background.
not to turn up the contrast and saturation too high, otherwise it will look uncomfortable.
If there are signs, hints or warnings in the mapping layer, the "Turn Off Entities" marker must be added to the entity layer.
If you use material from other maps, you need to get permission from the original author of the material before you can use it.
On other levels, we require:
That all players must pass the starting point.
There should be time checkpoints on each map.
Additional notes:
On top of the above rules, it is important that the levels are unique and innovative, and that the maps have excellent mapping design. A simple map with good level design and good visuals will have a higher chance of being selected and uploaded to the DDNet server than a map with a wide variety of complex problems.
Overview of the editor interface
The following image shows the map editor page that comes with the game.
Next, we will explain the purpose of each button in the editor interface one by one according to the content number on the picture.
1. File: Used to create, read and save map files. In the drop-down menu that appears after clicking.
- New (New) ctrl+N: New map file.
- Read (Load) ctrl+I: reads the map file.
- Load Current Map ctrl+alt+I: If you enter the editor screen during the game or during playback, clicking this button will load the map used in the current game.
- Append ctrl+A: adds all the materials in a map file to the current map.
- Save (Save) ctrl+S: saves the current map.
- Save As (Save As) ctrl+⇧ Shift+S: saves the current map under another file name, while continuing to edit the map under that file name.
- Save Copy (Save Copy) ctrl+⇧ Shift+alt+S: saves the current map under another file name, but continues to edit the map under the original file name.
- When the map name used when saving a copy duplicates an existing file, the map will continue to be edited with that file name after completing the save.
- Exit (Exit): Exit the editor interface.
2. This area displays the name of the map file currently being read and its file save path.
3. This area displays the attributes of the current map editor.
- X.Y: indicates the current position of the map editor where the mouse cursor is located, in grid.
- Z: indicates the scale value of the current map, which defaults to 200 when the map is loaded in
the editor.
- A: indicates the playback speed of the current map animation, default is 1.
- G: indicates the size of the current map grid lines, default is 1.
- 10:18: local time.
4. exit the editor interface.
5. Function area, in order from left to right.
- Show Details (HD) ctrl+H: preview the appearance of the current map in high quality mode.
- Show animation (Anim) ctrl+M: previews the animation effect set by the current map.
- Show field of view boundary (Proof) ctrl+P: previews the maximum field of view of the player.
- where the blue circle indicates the player's actual position, the red box line and green box line indicate the maximum range that can be observed at different resolutions, and the white box line indicates the maximum range that can be observed with dynamic view turned on.
- Show in-game visuals (Zoom): preview what the player sees in the actual game.
- Show Grid (Grid) ctrl+G: turns on grid lines.
- Show Info (Info) ctrl+I: previews the details of the entity or texture, including but not limited to the ID of the entity or texture, the texture animation track, and the texture deformation.
- Place Unused (Unused) ctrl+U: allows placement of unused mappings in the map, a feature not commonly used in modern maps anymore.
- Show Color (Color): previews the color set by the current brush, after closing the brush will show the original color match, but does not affect the color set by the placed mapping.
- Entitles: select the category of entity layer that needs to be used for the current map. Depending on the game mode applied to the map, the entity layer selected in the editor should also be different.
6. Field of view adjustment area, in order from left to right.
- Expanded field of view (ZO) numpad-: expands the field of view of the operation area by 50 points of scale value each time.
- Scrolling the mouse wheel down also expands the field of view by 20 scale points per scroll, expanding the field of view in this way up to a maximum of 2000 scale points.
- Restore field of view (1:1) numpad*: restores the field of view to the default scale value.
- Reduce field of view (ZI) numpad+: reduces the field of view of the operation area by 50 points of scale value at a time.
- Roll the mouse wheel upward to also reduce the field of view by 20 scale points per scroll frame, and reduce the field of view in this way up to 10 scale points.
- Expanding or scaling the field of view by clicking buttons or pressing shortcut keys has no maximum and minimum scale value, and the scale value can even reach negative values. When the scale value is negative, the map as a whole is upside down.
7. Brush function area, in order from left to right.
- Horizontal flip (X/X) N: flips the contents of the brush horizontally.
- Vertical flip (Y/Y) M: flips the contents of the brush vertically.
- Rotation angle (90°): the angle at which the content in the brush is turned each time it is rotated, which can be modified by holding down this button and sliding the mouse left and right, holding down ⇧ Shift during the modification process for more precise modification.
- You can only choose from 90°, 180° and 270° angles.
- Counterclockwise rotation (CCW) R: rotates the contents of the brush counterclockwise at an angle.
- Clockwise rotation (CW) T: rotates the content in the brush clockwise at a certain angle.
8. Layer management area, here is responsible for managing the map's layer groups and layers, as well as the invocation of the mapping material, picture material, and sound material.
- In the layer management interface.
- Click the Layer button to switch the editor interface to the image management interface, while the button changes to Images.
- Pressing → will also switch to the image management interface, or pressing ← will switch to the sound management interface.
- Click Add group to add a new layer group.
- Right-click a layer group to set the parameters of that layer group, and right-click a layer to set the parameters of that layer (to be explained in detail).
- In the image management interface.
- Click the Images button to switch the editor interface to the sound management interface, and the button changes to Sounds.
- Pressing → will also switch to the sound management interface, or pressing ← will switch to the layer management interface.
- Click the Add button to add image clips from the default clip folder to the map file.
- Embedded area means the clips of this series have been embedded in the map file, when downloading the map, this kind of file will be included in the map file volume.
- External area means that the material of this series is located outside the map, it is the default material in the game, when downloading the map, this kind of file will not be counted in the map file volume. When the map needs to call the image material of this area, it will directly call the file with the same name from the player's local default material library.
- Regardless of the location of the clip, when the clip file is white or red (selected), it means the clip is being used by the map; when the clip file is blue or purple (selected), it means the clip is not yet used by the map.
- Left-click on a file that has been added to preview the image in the right workspace, and right-click on the file to perform the following actions.
- Readd: Overwrite the clip by calling a file with the same name directly from the default clip library.
- Replace: select a clip file to overwrite the clip.
- Remove: removes the clip file.
- When right-clicking on a file in the External area, an additional Embed option will appear to move the file into the Embedded area.
- In the Sound Management screen.
- Clicking the Sounds button switches the editor interface to the Layer management interface, and the button changes to Layer.
- Pressing → will also switch to the layer management interface, or pressing ← will switch to the image management interface.
- Click the Add button to add sound clips from the default clip folder to the map file.
- Currently DDNet game editor only accepts opus format audio files.
- Right-click on a file to perform the following actions.
- Readd: Overwrite a clip by calling a file with the same name directly from the default clip library.
- Replace: select a clip file to overwrite the clip.
- Remove: Remove the clip file.
9. Additional ribbon, the buttons in this ribbon will change depending on the selected layer.
- When any layer is selected, the following buttons appear.
- Focus (Refocus) home: immediately focuses the view to the upper left corner of the map.
- Goto XY: immediately focuses the view to a specific coordinate of the map. Clicking this button sets the coordinate in its drop-down menu, and then clicking the Go button focuses the view to that coordinate.
- Destructive mode ctrl+D: When Destructive mode is enabled, the area the brush passes over will be completely covered and the texture of this area will be replaced; when Destructive mode is disabled, the area the brush passes over will only be filled with the location that is not filled with the texture.
- When Game or Tile layer is selected.
- Add Border: Adds a two-frame border to the current layer, using the texture of the selected layer's No. 2 map.
- When Switch layer is selected.
- Switch setting (Switch) ctrl+A: Set the number of the next placed switch layer entity. In the drop-down menu: Number is used to set the number, Delay is used to set the number of additional information, and F (shortcut: ctrl+F) is used to automatically set the unused number.
- When Speedup layer is selected.
- Switch setting (Switch) ctrl+A: Set the number of the next placed switch layer entity. In the drop-down menu: Number is used to set the number, Delay is used to set the number of additional information, and F (shortcut: ctrl+F) is used to automatically set the unused number.
- When Speedup layer is selected.
- Speedup (Speedup) ctrl+A: Set the parameters for the next placement of the speedup entity. In the drop-down menu, Force is used to set how much speed the belt can provide, Max Speed is used to set the maximum speed you can have at the belt, and Angle is used to set the direction of the belt.
- When the Tele layer is selected.
- Transmission Area Settings (Tele) ctrl+A: Sets the number of the next entity to be placed in the transmission area. The drop-down menu: Number is used to set the number, and F (shortcut: ctrl+F) is used to automatically set the unused number.
- When Tune layer is selected.
- Adjustment Zone Setting (Tune) ctrl+A: Set the number of the next placed adjustment zone entity. In its drop-down menu, Zone is used to set the number.
- When the Quads layer is selected.
- Add Quad ctrl+Q: Adds a picture set by the current layer to the workspace. If no picture is set for that layer, a plain white square of 2*2 grid size is added by default.
- When the Sounds layer is selected.**Add Sound (Add Sound) ctrl+Q: Adds a sound set by the current layer to the workspace.
10. workspace, where all the components needed for the map are placed (to be explained in detail).
11. hint area, when the mouse hovers over a button, the hint area will appear with the function of the button.
12. server settings: here is responsible for adding the server instructions applicable to the current map, usually need special mechanisms of the map will be used (to be explained in detail).
13. Envelope animation: this is responsible for setting the animation effect in the map (to be explained in detail).
External Resources
- Mapping ABC by Index
- Link list including lots of mapping resources by Index
- DDRaceNetwork - How to Use the Map Editor by Nick Joy
- Teeworlds - How to map a DDRACE map. - Part 1 by Aoe
- Teeworlds - How to map a DDRACE map. - Part 2 by Aoe
- Maps Envelope Tutorial by 2gethR
- Automapper Tutorial by timakro
- Mapper rules for DDNet map testing process by jao