Mapping/zh: Difference between revisions

From DDraceNetwork
FightFire (talk | contribs)
mNo edit summary
FuzzyBot (talk | contribs)
Updating to match new version of source page
Line 1: Line 1:
{{DISPLAYTITLE:地图制作}}
<languages/>
{{LangNavBox}}
<div lang="en" dir="ltr" class="mw-content-ltr">
'''地图制作'''过程大致可分为头脑风暴,贴图设计以及地图测试三大环节。Teeworlds所属的每个模组(游戏模式)都将游戏地图作为玩法的基础。
The brainstorming session requires the map maker to create a creative and entertaining map entity through extraordinary imagination.
</div>


头脑风暴环节要求地图制作者通过不凡的想象力,来制作出有创意、娱乐性高的地图实体;
<div lang="en" dir="ltr" class="mw-content-ltr">
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.
</div>


贴图设计环节要求地图制作者为地图添加漂亮的外观,设计过程中一般要符合大众审美,且各个贴图所表示的信息应足够清晰且不会产生歧义,同时整体设计风格也要一般要符合游戏画风;
<div lang="en" dir="ltr" class="mw-content-ltr">
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.
</div>


地图测试环节要求地图制作者完整将自己所制作的地图进行测试,以便发现当前地图中尚未察觉出的玩法问题或贴图设计问题等等。
<div lang="en" dir="ltr" class="mw-content-ltr">
Players can access the map editor interface by clicking on the editor in the main menu.
</div>


玩家可以点击主菜单中的编辑器,来进入地图编辑器界面。
<div lang="en" dir="ltr" class="mw-content-ltr">
From any in-game screen, pressing {{key press|ctrl|shift|E}} will also take you directly to the map editor screen.
</div>


在游戏内的任何界面下,按下{{key press|ctrl|shift|E}}也可以直接进入地图编辑器界面。
<div lang="en" dir="ltr" class="mw-content-ltr">
== DDNet Map Creation Guidelines==
</div>


== DDNet地图制作准则 ==
<div lang="en" dir="ltr" class="mw-content-ltr">
如果玩家最终想让自己的地图在DDNet服务器上发布,那么玩家必须遵守如下准则去制作地图。在地图上传至DDNet的Discord服务器之前,请确保玩家已经完整地测试过地图,地图各关卡运行和操作流畅,同时设计环节也已完全竣工。
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.
</div>


=== 在游戏体验方面,我们要求: ===
<div lang="en" dir="ltr" class="mw-content-ltr">
每个关卡都应有足够的空间供玩家进行舒适地操作;
===In terms of game experience, we require that:===
</div>


地图整体难度应保持平衡,不得出现较大的波动(例如在一个中阶地图当中不能插入高星高阶地图甚至是疯狂地图的操作);
<div lang="en" dir="ltr" class="mw-content-ltr">
That each level should have enough space for the player to operate comfortably.
</div>


在容易造成失败的关卡当中,应有办法让其他玩家进行救援;
<div lang="en" dir="ltr" class="mw-content-ltr">
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).
</div>


关卡操作不得过于精确或仅仅为难而难;
<div lang="en" dir="ltr" class="mw-content-ltr">
there should be a way for other players to rescue in levels that are prone to failure
</div>


不得过度使用特殊游戏实体,同时不得将特殊实体用在修复地图关卡漏洞上;
<div lang="en" dir="ltr" class="mw-content-ltr">
level operations must not be too precise or difficult just for the sake of being difficult
</div>


不得故意误导或混淆关卡操作方式;
<div lang="en" dir="ltr" class="mw-content-ltr">
shall not make excessive use of special game entities, and at the same time shall not use special entities for fixing map level bugs
</div>


关卡不得利用游戏物理机制上的Bug来实现。
<div lang="en" dir="ltr" class="mw-content-ltr">
shall not intentionally mislead or confuse the way the level operates
</div>


=== 在视觉效果方面,我们要求: ===
<div lang="en" dir="ltr" class="mw-content-ltr">
所有玩家过关需要的实体都必须在贴图当中清晰地表示出来;
Levels must not exploit bugs in the game's physics mechanics to achieve this.
</div>


不同实体的贴图或标记必须要易于区分;
<div lang="en" dir="ltr" class="mw-content-ltr">
===In terms of visual effects, we require that:===
</div>


前景与背景必须要有明显的区别;
<div lang="en" dir="ltr" class="mw-content-ltr">
all entities required by the player to pass the level must be clearly represented in the mapping.
</div>


不要将对比度和饱和度调得太高,否则看上去会很不舒服;
<div lang="en" dir="ltr" class="mw-content-ltr">
the decals or markers for different entities must be easily distinguishable.
</div>


在贴图层存在标志,提示或警告时,必须在实体层当中添加“Turn Off Entities(关闭实体层)”的标记;
<div lang="en" dir="ltr" class="mw-content-ltr">
there must be a clear distinction between foreground and background.
</div>


如果使用了其他地图当中的素材,则需要得到素材原作者的许可后才能使用。
<div lang="en" dir="ltr" class="mw-content-ltr">
not to turn up the contrast and saturation too high, otherwise it will look uncomfortable.
</div>


=== 其他层面上,我们要求: ===
<div lang="en" dir="ltr" class="mw-content-ltr">
所有的玩家都必须要经过起点;
If there are signs, hints or warnings in the mapping layer, the "Turn Off Entities" marker must be added to the entity layer.
</div>


每张地图上都应有时间检查点。
<div lang="en" dir="ltr" class="mw-content-ltr">
If you use material from other maps, you need to get permission from the original author of the material before you can use it.
</div>


=== 额外注意: ===
<div lang="en" dir="ltr" class="mw-content-ltr">
在上述规则的基础上,关卡的独特性和创新性至关重要,同时也要保证地图有着优秀的贴图设计。一个简单但有良好关卡设计和优秀视觉效果的地图,相比于一个充满各式各样复杂问题的地图来说,会有更高的概率被选中并上传至DDNet服务器当中。
===On other levels, we require:===
</div>


== 编辑器界面总览 ==
<div lang="en" dir="ltr" class="mw-content-ltr">
下图为游戏自带的地图编辑器页面:
That all players must pass the starting point.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
There should be time checkpoints on each map.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
===Additional notes:===
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
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.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
==Overview of the editor interface==
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
The following image shows the map editor page that comes with the game.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
[[File:Editor 3.png|800x800px]]
[[File:Editor 3.png|800x800px]]
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
Next, we will explain the purpose of each button in the editor interface one by one according to the content number on the picture.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
1. File: Used to create, read and save map files. In the drop-down menu that appears after clicking.[[File:Editor file.png|left|thumb|File drop-down menu content]]
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*New (New) {{key press|ctrl|N}}: New map file.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Read (Load) {{key press|ctrl|I}}: reads the map file.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Load Current Map {{key press|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.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Append {{key press|ctrl|A}}: adds all the materials in a map file to the current map.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Save (Save) {{key press|ctrl|S}}: saves the current map.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Save As (Save As) {{key press|ctrl|shift|S}}: saves the current map under another file name, while continuing to edit the map under that file name.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Save Copy (Save Copy) {{key press|ctrl|shift|alt|S}}: saves the current map under another file name, but continues to edit the map under the original file name.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**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.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Exit (Exit): Exit the editor interface.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
2. This area displays the name of the map file currently being read and its file save path.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
3. This area displays the attributes of the current map editor.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*X.Y: indicates the current position of the map editor where the mouse cursor is located, in grid.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Z: indicates the scale value of the current map, which defaults to 200 when the map is loaded in
the editor.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*A: indicates the playback speed of the current map animation, default is 1.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*G: indicates the size of the current map grid lines, default is 1.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*10:18: local time.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
4. exit the editor interface.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
5. Function area, in order from left to right.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Show Details (HD) {{key press|ctrl|H}}: preview the appearance of the current map in high quality mode.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Show animation (Anim) {{key press|ctrl|M}}: previews the animation effect set by the current map.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Show field of view boundary (Proof) {{key press|ctrl|P}}: previews the maximum field of view of the player.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**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.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Show in-game visuals (Zoom): preview what the player sees in the actual game.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Show Grid (Grid) {{key press|ctrl|G}}: turns on grid lines.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Show Info (Info) {{key press|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.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Place Unused (Unused) {{key press|ctrl|U}}: allows placement of unused mappings in the map, a feature not commonly used in modern maps anymore.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*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.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*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.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
6. Field of view adjustment area, in order from left to right.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Expanded field of view (ZO) {{key press|numpad-}}: expands the field of view of the operation area by 50 points of scale value each time.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**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.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Restore field of view (1:1) {{key press|numpad*}}: restores the field of view to the default scale value.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Reduce field of view (ZI) {{key press|numpad+}}: reduces the field of view of the operation area by 50 points of scale value at a time.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
** 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.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*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.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
7. Brush function area, in order from left to right.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Horizontal flip (X/X) {{key press|N}}: flips the contents of the brush horizontally.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Vertical flip (Y/Y) {{key press|M}}: flips the contents of the brush vertically.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*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 {{key press|shift}} during the modification process for more precise modification.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**You can only choose from 90°, 180° and 270° angles.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Counterclockwise rotation (CCW) {{key press|R}}: rotates the contents of the brush counterclockwise at an angle.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*Clockwise rotation (CW) {{key press|T}}: rotates the content in the brush clockwise at a certain angle.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
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.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*In the layer management interface.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**Click the Layer button to switch the editor interface to the image management interface, while the button changes to Images.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
***Pressing {{key press|→}} will also switch to the image management interface, or pressing {{key press|←}} will switch to the sound management interface.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**Click Add group to add a new layer group.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**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).
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*In the image management interface.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**Click the Images button to switch the editor interface to the sound management interface, and the button changes to Sounds.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
***Pressing {{key press|→}} will also switch to the sound management interface, or pressing {{key press|←}} will switch to the layer management interface.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**Click the Add button to add image clips from the default clip folder to the map file.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**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.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**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.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
***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.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**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.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
***Readd: Overwrite the clip by calling a file with the same name directly from the default clip library.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
***Replace: select a clip file to overwrite the clip.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
***Remove: removes the clip file.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
****When right-clicking on a file in the External area, an additional Embed option will appear to move the file into the Embedded area.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*In the Sound Management screen.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**Clicking the Sounds button switches the editor interface to the Layer management interface, and the button changes to Layer.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
***Pressing {{key press|→}} will also switch to the layer management interface, or pressing {{key press|←}} will switch to the image management interface.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**Click the Add button to add sound clips from the default clip folder to the map file.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
***Currently DDNet game editor only accepts opus format audio files.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**Right-click on a file to perform the following actions.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
***Readd: Overwrite a clip by calling a file with the same name directly from the default clip library.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
***Replace: select a clip file to overwrite the clip.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
***Remove: Remove the clip file.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
9. Additional ribbon, the buttons in this ribbon will change depending on the selected layer.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*When any layer is selected, the following buttons appear.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**Focus (Refocus) {{key press|home}}: immediately focuses the view to the upper left corner of the map.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**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.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**Destructive mode {{key press|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.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*When Game or Tile layer is selected.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**Add Border: Adds a two-frame border to the current layer, using the texture of the selected layer's No. 2 map.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*When Switch layer is selected.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**Switch setting (Switch) {{Key press|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: {{Key press|ctrl|F}}) is used to automatically set the unused number.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
*When Speedup layer is selected.
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
**Switch setting (Switch) {{Key press|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: {{Key press|ctrl|F}}) is used to automatically set the unused number.
</div>


接下来会根据图片上的内容编号来逐一解释编辑器界面中各个按钮的用途。
<div lang="en" dir="ltr" class="mw-content-ltr">
*When Speedup layer is selected.
</div>


1.文件(File):用来对地图文件进行新建、读取、保存等操作。点击后出现的下拉菜单中:
<div lang="en" dir="ltr" class="mw-content-ltr">
[[File:Editor file.png|left|thumb|File下拉菜单内容]]
**Speedup (Speedup) {{Key press|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.
* 新建(New){{key press|ctrl|N}}:新建地图文件;
</div>
* 读取(Load){{key press|ctrl|I}}:读取地图文件;
* 读取当前地图(Load Current Map){{key press|ctrl|alt|I}}:若在游戏过程中或回放中进入了编辑器界面,点击此按钮会载入当前游戏所使用的地图;
* 添加(Append){{key press|ctrl|A}}:将一个地图文件里的所有素材添加到当前地图中;
* 保存(Save){{key press|ctrl|S}}:保存当前地图;
* 另存为(Save As){{key press|ctrl|shift|S}}:以另一文件名保存当前地图,同时以该文件名继续编辑地图;
* 保存副本(Save Copy){{key press|ctrl|shift|alt|S}}:以另一文件名保存当前地图,但以原文件名继续编辑地图;
** 当保存副本时所使用的地图名与现有文件重复时,完成保存后会以该文件名继续编辑地图。
* 退出(Exit):退出编辑器界面。


2.该区域显示当前读取的地图文件名称以及其文件保存路径;
<div lang="en" dir="ltr" class="mw-content-ltr">
*When the Tele layer is selected.
</div>


3.该区域显示当前地图编辑器的各项属性:
<div lang="en" dir="ltr" class="mw-content-ltr">
* X.Y:表示当前鼠标光标所处于地图编辑器的位置,单位为网格;
**Transmission Area Settings (Tele) {{Key press|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: {{Key press|ctrl|F}}) is used to automatically set the unused number.
* Z:表示当前地图的缩放比例值,在编辑器内载入地图时默认为200;
</div>
* A:表示当前地图动画的播放倍速,默认为1;
* G:表示当前地图网格线的尺寸大小,默认为1;
* 10:18:本地时间。


4.退出编辑器界面;
<div lang="en" dir="ltr" class="mw-content-ltr">
*When Tune layer is selected.
</div>


5.功能区,从左到右依次:
<div lang="en" dir="ltr" class="mw-content-ltr">
* 展示细节(HD){{key press|ctrl|H}}:预览当前地图在高质量模式下的外观;
**Adjustment Zone Setting (Tune) {{Key press|ctrl|A}}: Set the number of the next placed adjustment zone entity. In its drop-down menu, Zone is used to set the number.
* 展示动画(Anim){{key press|ctrl|M}}:预览当前地图所设置的动画效果;
</div>
* 展示视野边界(Proof){{key press|ctrl|P}}:预览玩家的最大视野范围;
** 其中,蓝色圆圈表示玩家的实际位置,红色框线和绿色框线表示在不同分辨率下可观察到的最大范围,白色框线表示在开启动态视野后可观察到的最大范围。
*展示游戏内视觉效果(Zoom):预览玩家在实际游戏当中看到的画面;
* 展示网格(Grid){{key press|ctrl|G}}:开启网格线;
* 展示信息(Info){{key press|ctrl|I}}:预览实体或贴图的详情信息,内容包括但不限于实体或贴图所属ID、贴图动画轨迹、贴图变形情况;
* 放置不可用贴图(Unused){{key press|ctrl|U}}:允许在地图中放置不可用的贴图,现代地图中已不常用该功能;
* 展示颜色(Color):预览当前笔刷所设定的颜色,关闭后笔刷将显示原配色,但不影响放置后贴图所设定的颜色;
* 实体层选择(Entitles):选择当前地图需要使用的实体层类别,根据地图所应用到的游戏模式不同,编辑器中选择的实体层也应有所不同。


6.视野调整区,从左到右依次:
<div lang="en" dir="ltr" class="mw-content-ltr">
* 扩大视野(ZO){{key press|numpad-}}:扩大操作区的视野,每次扩大50点比例值;
*When the Quads layer is selected.
** 向下滚动鼠标滚轮同样可以扩大视野,每滚动一格扩大20点比例值,以此种方式扩大视野最多扩大至2000点比例值。
</div>
* 恢复视野(1:1){{key press|numpad*}}:将视野恢复至默认的比例值;
* 缩小视野(ZI){{key press|numpad+}}:缩小操作区的视野,每次缩小50点比例值;
** 向上滚动鼠标滚轮同样可以缩小视野,每滚动一格缩小20点比例值,以此种方式缩小视野最多缩小至10点比例值。
* 以点击按钮或按快捷键的方式扩大或缩放视野无最大和最小比例值的限制,比例值甚至可以达到负值。当比例值为负值时,地图整体呈颠倒状态。


7.笔刷功能区,从左到右依次:
<div lang="en" dir="ltr" class="mw-content-ltr">
* 水平翻转(X/X){{key press|N}}:将笔刷中的内容水平翻转;
**Add Quad {{Key press|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.
* 垂直翻转(Y/Y){{key press|M}}:将笔刷中的内容垂直翻转;
</div>
* 旋转角度(90°):每次旋转笔刷中的内容时所转过的角度,可通过按住该按钮并左右滑动鼠标来修改,在修改过程中按住{{key press|shift}}可以更精准地修改;
** 只能从90°、180°、270°三种角度中进行选择。
* 逆时针旋转(CCW){{key press|R}}:以一定角度逆时针旋转笔刷中的内容;
* 顺时针旋转(CW){{key press|T}}:以一定角度顺时针旋转笔刷中的内容。
8.图层管理区,这里负责管理地图的图层组和图层,以及对贴图素材、图片素材、声音素材的调用:


* 在图层管理界面中:
<div lang="en" dir="ltr" class="mw-content-ltr">
** 点击Layer(图层)按钮可将编辑器界面切换至图像管理界面,同时该按钮变为Images(图像);
*When the Sounds layer is selected.**Add Sound (Add Sound) {{Key press|ctrl|Q}}: Adds a sound set by the current layer to the workspace.
*** 按{{key press|→}}也会切换至图像管理界面,或按{{key press|←}}切换至声音管理界面。
</div>
** 点击Add group可添加新的图层组;
** 右键某一图层组可设置该图层组的各项参数,右键某一图层可以设置该图层的各项参数(待做详细解释)。
* 在图像管理界面中:
** 点击Images(图像)按钮可将编辑器界面切换至声音管理界面,同时该按钮变为Sounds(声音);
*** {{key press|→}}也会切换至声音管理界面,或按{{key press|}}切换至图层管理界面。
** 点击Add按钮可从默认素材文件夹里添加图片素材至地图文件内;
** Embedded区域表示该系列的素材已嵌入地图文件当中,下载地图时,该类文件也将算进地图文件体积当中;
** External区域表示该系列的素材位于地图外部,是游戏内的默认素材,下载地图时,该类文件不算入地图文件体积当中。当地图需要调用该区域的图片素材时,将直接从玩家本地的默认素材库当中调用同名文件。
*** 无论素材位于哪个区域,当素材文件为白色或红色(表示选中)时,表示该素材正在被地图使用中;当素材文件为蓝色或紫色(表示选中)时,表示该素材尚未被地图使用。
** 左键点击已被添加的文件可在右侧工作区当中预览该图片,右键点击文件可执行如下操作:
*** Readd:直接从默认素材库当中调用同名文件覆盖该素材;
*** Replace:选择一个素材文件来覆盖该素材;
*** Remove:移除该素材文件。
**** 当右键External区域的文件时,会额外出现Embed选项,用来将该文件移入Embedded区域当中。
* 在声音管理界面当中:
** 点击Sounds(声音)按钮可将编辑器界面切换至图层管理界面,同时该按钮变为Layer(图层);
*** 按{{key press|→}}也会切换至图层管理界面,或按{{key press|←}}切换至图像管理界面。
** 点击Add按钮可从默认素材文件夹里添加声音素材至地图文件内;
*** 目前DDNet游戏自带编辑器只接受opus格式的音频文件。
** 右键点击文件可执行如下操作:
*** Readd:直接从默认素材库当中调用同名文件覆盖该素材;
*** Replace:选择一个素材文件来覆盖该素材;
*** Remove:移除该素材文件。


9.附加功能区,该功能区的按钮会随着所选择的图层不同而发生改变:
<div lang="en" dir="ltr" class="mw-content-ltr">
* 选中任意图层时,均会出现以下按钮:
10. workspace, where all the components needed for the map are placed (to be explained in detail).
** 聚焦(Refocus){{key press|home}}:立即将视野聚焦至地图的左上角;
</div>
** 坐标传送(Goto XY):立即将视野聚焦至地图特定坐标处,点击该按钮便可在其下拉菜单中设置坐标,之后点击Go按钮将视野聚焦至该坐标处;
** 覆盖模式(Destructive){{key press|ctrl|D}}:开启覆盖模式后,笔刷所经过的区域会完全覆盖并替换这片区域的贴图;关闭覆盖模式后,笔刷经过的区域只会填充没有贴图填充的位置。
* 选中Game或Tile图层时:
** 添加边界(Border):为当前图层添加两格厚度的边界,使用的贴图为所选图层的2号贴图。
* 选中Switch图层时:
** 开关设置(Switch){{Key press|ctrl|A}}:设置接下来放置开关层实体的编号。其下拉菜单中:Number用来设定编号,Delay用来设定附加信息编号,F(快捷键:{{Key press|ctrl|F}})用来自动设定未被使用的编号。
* 选中Speedup图层时:
** 变速带设置(Speedup){{Key press|ctrl|A}}:设置接下来放置变速带实体的各项参数。其下拉菜单中:Force用来设定该变速带可以提供多少速度,Max Speed用来设定在该变速带处最大可以拥有多少速度,Angle用来设定该变速带的方向。
* 选中Tele图层时:
** 传送区域设置(Tele){{Key press|ctrl|A}}:设置接下来放置传送区域实体的编号。其下拉菜单中:Number用来设定编号,F(快捷键:{{Key press|ctrl|F}})用来自动设定未被使用的编号。
* 选中Tune图层时:
** 调整区域设置(Tune){{Key press|ctrl|A}}:设置接下来放置调整区域实体的编号。其下拉菜单中,Zone用来设定编号。
* 选中Quads图层时:
** 添加图片(Add Quad){{Key press|ctrl|Q}}:在工作区添加一个当前图层所设定的图片,若该图层没有设定图片,则默认添加一个2*2网格大小的纯白色正方形。
* 选中Sounds图层时:
** 添加声音(Add Sound){{Key press|ctrl|Q}}:在工作区添加一个当前图层所设定的声音。


10.工作区,地图所需要的所有元件均放置于此(待做详细解释);
<div lang="en" dir="ltr" class="mw-content-ltr">
11. hint area, when the mouse hovers over a button, the hint area will appear with the function of the button.
</div>


11.提示区,当鼠标悬停在某一按钮上时,提示区会出现该按钮的功能提示;
<div lang="en" dir="ltr" class="mw-content-ltr">
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).
</div>


12.服务器设置:此处负责添加适用于当前地图的服务器指令,通常需要特殊机制的地图会用到(待做详细解释);
<div lang="en" dir="ltr" class="mw-content-ltr">
13. Envelope animation: this is responsible for setting the animation effect in the map (to be explained in detail).
</div>


13.包络线动画:此处负责设置地图中的动画效果(待做详细解释)。
<div lang="en" dir="ltr" class="mw-content-ltr">
<!--To-do items.
</div>


<!--待做项目:
<div lang="en" dir="ltr" class="mw-content-ltr">
Explain in detail what is marked "to be explained in detail" above.
</div>


详细解释上述标注“待做详细解释”的内容;
<div lang="en" dir="ltr" class="mw-content-ltr">
Full explanation of the features in the editor.
</div>


充分解释编辑器内的各项功能。
<div lang="en" dir="ltr" class="mw-content-ltr">
Discuss the similarities and differences between modern maps and traditional and classical maps, or discuss their backstories.
</div>


讨论现代地图与传统图,古典图的异同,或讨论它们的背景故事;
<div lang="en" dir="ltr" class="mw-content-ltr">
Write a short tutorial on mapping. -->
</div>


写一个简易的制图教程。-->
<div lang="en" dir="ltr" class="mw-content-ltr">
== External Resources ==
</div>


== 外部链接 ==
<div lang="en" dir="ltr" class="mw-content-ltr">
* [https://forum.ddnet.org/viewtopic.php?f=35&t=2419 Mapping ABC] - Index
*[https://forum.ddnet.org/viewtopic.php?f=35&t=2419 Mapping ABC] by Index
* [https://forum.ddnet.org/viewtopic.php?f=16&t=2420 Link list] 包含大量的制图资源 - Index
* [https://forum.ddnet.org/viewtopic.php?f=16&t=2420 Link list] including lots of mapping resources by Index
* [https://www.youtube.com/watch?v=t0ljtNtiijU DDRaceNetwork - How to Use the Map Editor] - Nick Joy
* [https://www.youtube.com/watch?v=t0ljtNtiijU DDRaceNetwork - How to Use the Map Editor] by Nick Joy
* [https://www.youtube.com/watch?v=UXZnF17TgEQ Teeworlds - How to map a DDRACE map. - Part 1] - Aoe
* [https://www.youtube.com/watch?v=UXZnF17TgEQ Teeworlds - How to map a DDRACE map. - Part 1] by Aoe
* [https://www.youtube.com/watch?v=tKuv4nn3nIo Teeworlds - How to map a DDRACE map. - Part 2] - Aoe
* [https://www.youtube.com/watch?v=tKuv4nn3nIo Teeworlds - How to map a DDRACE map. - Part 2] by Aoe
* [https://www.teeworlds.com/forum/viewtopic.php?id=11094 Maps Envelope Tutorial] - 2gethR
* [https://www.teeworlds.com/forum/viewtopic.php?id=11094 Maps Envelope Tutorial] by 2gethR
* [https://forum.ddnet.org/viewtopic.php?t=2428 Automapper Tutorial] - timakro
* [https://forum.ddnet.org/viewtopic.php?t=2428 Automapper Tutorial] by timakro
* [https://forum.ddnet.org/viewtopic.php?f=9&t=722 Mapper rules] DDNet地图的测试流程 - jao
*[https://forum.ddnet.org/viewtopic.php?f=9&t=722 Mapper rules] for DDNet map testing process by jao
</div>

Revision as of 20:30, 11 February 2023

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.
File drop-down menu content
  • 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