Skip to content

How to make a new map

lunetoiles edited this page May 17, 2019 · 12 revisions

Introduction

This guide will cover how to make a new map into the Overwatch race map engine. You will use the "Gather Room Editor" and "Map Maker" to find all the values you need for your map, and then enter them in to the correct sections of the race map engine framework.

Although the process can get complex and tedious in parts, little to no understanding of Overwatch workshop scripting itself is required to make a new map.

If you'd like a better idea of what goes into making a map, you can click below for a timelapse video of making a map from start to finish

Overwatch Workshop - Race Map Creation Timelapse

Picking a Map

Before you can make a race map, first you need to pick the Overwatch map you will be using. As you use the editing tools and templates in the rest of the guide, you will need to set the options to use your map on each of them.

To set your map, first go into the modes setting and enable only the mode you will be using. The supported modes are currently Assault, Escort, Hybrid, Control, and Skirmish. Then, go to the maps setting, click the "none" button, find your map and toggle it to on.

Map and Modes settings location

Please note than on Control maps, you will need to also select the control point you will be using in its mode settings.

Where to limit valid control point

Making a Gather Room

Getting Started

The first step to making a map is to make a gather room. This is the room with the high score leaderboard and a few other things that players are brought to between attempts. Although this may change in the future, currently this room must be one of either team's spawn rooms.

To begin, load up the "gather room editor" code from the code list. Then, edit the rule "Game start config - edit here" to skip the waiting times at the start of the map, and to try out the different spawn rooms.

Where to set match start, spawn room actions

Making your Gather Room

The gather room editor uses several buttons and edit modes to place all the elements of a gather room. The controls are as follows:

  • Press ultimate (default Q) to cycle between all the gather room elements. The current element number you are editing and its value will be displayed at the top of the screen.
  • Press jump to cycle between changing values by 1, 0.3, or 0.1 as displayed next to the "CURRENT:" text.
  • Press crouch to redraw any text elements at their new positions.
  • The position editor mode is the most complex, with the following controls:
    • Press interact (default F) to move the position to your current location.
    • Press ability 1 (default shift or E depending on character) to cycle between moving the position left/right, forward/back, and up/down.
    • Press primary and secondary fire (default left and right click) to move the position in the currently selected direction.
  • The size editor uses primary and secondary fire (default left and right click) to adjust the size or scale.
  • The angle editor sets the angle to your character's facing angle when you press primary fire (default left click).

Spawn Rectangle

The first thing to place is the spawn rectangle. This is the rectangle where players will be spawned into the gather room. You can see this rectangle with the white, blue, and red dots. The spawn rectangle should be placed with a view of the leaderboard, and be a bit above the floor so players don't fall out of the map. This uses the first 4 gather room values.

spawn rectangle example

Index 0: The center of the spawn rectangle, shown by the white dot. This uses the position editor

Index 1: The width of the spawn rectangle. This uses the size editor.

Index 2: The length of the spawn rectangle. This uses the size editor.

Index 3: The angle of the spawn angle. This uses the angle editor. Red dots at the front, blue dots at the back.

Leaderboard

The next thing to place is the leaderboard. Players will always be spawned facing the leaderboard. Its position is represented by a purple orb.

leaderboard position indicator

Press your crouch button after moving it to redraw the example text in the new location.

leaderboard after pressing crouch to update text

Index 4: The position of the leaderboard. This uses the position editor

Index 5: A size multiplier for the leaderboard. This uses the size editor.

Optimize and Moderate Circles

The final objects are the optimize and moderate circles. The optimize circle is where players can change settings and should be easy to find but not too close to the leaderboard. The moderate circle is where the server operator can run some special commands. Remember to press crouch to redraw their text after moving them.

optimize and moderate example image

Index 6: Optimize circle location. This uses the position editor.

Index 7: Moderate circle location. This uses the position editor.

Saving your Gather Room

Once you are done, press escape and open the workshop inspector.

Where to find workshop inspector

Then, take a screenshot or write down the values in global variable C.

The values to save

Make sure to save these values somewhere safe. You will need to enter them in to your final map.

Designing a Track with the Map Maker

First, load up the Map Maker code from the code list. Perform the same steps as above to set your map and the skip/pause match timer actions.

The map editor is a fully featured checkpoint/node editor. Unfortunately, building this complex of a tool in Overwatch workshop means a complicated interface.

This chart explains the flow of the editor. I recommend keeping it open for reference while using the map maker. Don't worry about trying to remember it all at once, the guide will go through it step by step.

Map editor interface flowchart

This guide will be using the official button names for the rest of the section. If you have not remapped your controls, they are the following keys:

  • Primary Fire - left click
  • Secondary Fire - right click
  • Ultimate - Q
  • Ability 1 - Shift (or possibly E for some characters)
  • Interact - F
  • Jump - Spacebar

The following image points out all the on-screen editor hud elements.

hud diagram

Using Place Checkpoint Mode

This is the default mode the game will start you in. In this mode pressing primary fire moves your currently selected checkpoint to your character's position. Use this mode to get the checkpoint close to where you want it.

In this mode, the mode display text will say "Checkpoint on You".

From this mode you can press interact to go to detail edit mode, or you can press ultimate to go to checkpoint select mode.

Using Detail Edit Mode

Detail edit mode lets you carefully move your checkpoint into the perfect position and change its size.

detail edit gif

Detail edit mode lets you move the checkpoint left/right, forward/backward, up/down, and change its size using the primary and secondary fire. You can hold down the button to move repeatedly. You cycle through these modes with ability 1. Your current mode will show the current edit direction, or "sphere" for size (it was the closest word).

You can press jump to cycle through moving the checkpoint 1, 0.3, or 0.1 units on each click. Your current edit size is displayed on the HUD next to "current".

When you are done with detail edit mode you can press interact again to go back to place checkpoint mode, or press ultimate to go to checkpoint select mode.

Setting the Spawn Point

The checkpoint at index 0 is special. Rather than a checkpoint the player has to reach, this is the spawn point they will start the race at. Detail edit mode acts special when editing this checkpoint.

spawn point edit gif

Because this is the spawn point, it doesn't have a size. Instead, it has a direction the player will be spawned looking in. This angle is displayed as a white orb. In detail edit mode instead of editing the size, you will go to a mode to set the spawn angle with the mode text "starting". In this mode, pressing primary fire will set the spawn angle to be your character's current facing angle.

Using Checkpoint Select Mode

Checkpoint select mode lets you select, add, insert, and remove checkpoints. Its mode display text is "Pick Checkpoint".

checkpoint select gif

In this mode primary and secondary fire will increase and decrease the checkpoint index, moving the blue checkpoint indicator. If you select the next checkpoint that hasn't been created yet, the HUD will say "Next" instead of displaying a position and size.

From this mode there are three different buttons you can press to perform various actions:

  • Ultimate: This will take you back to place checkpoint mode, editing the checkpoint you had selected. If you where at the end of the track, a new checkpoint will be created.
  • Interact: This will insert a new checkpoint into the track immediately after the checkpoint you had selected, and take you back to place checkpoint mode. If you try to insert when you are already at the max number of checkpoints an error sound will play and nothing will happen.
  • Ability 1: This will delete the checkpoint you had selected and leave you in checkpoint select mode. If you try to delete the spawn point checkpoint, an error sound will play and nothing will happen.

Testing your map

At any time you can switch to test mode but using any voice line. This will take you to the spawn point and start the race timer in the top right. The red diamond points you to the next checkpoint. You can press ultimate at any time to restart the race. The race will not restart automatically after reaching the goal.

The test mode is not as polished or fully featured as the real race engine, but it will let you test your map as you go. When you are ready to go back to editing, use any voice line.

Saving your map

When you are satisfied with your map, find a place on the map and move your camera so that the checkpoint display in the top left is on a dark, easy to read background.

saving map example

Take a screenshot or write down all the checkpoint positions and sizes. Unfortunately, until the development team adds some kind of data import/export this is the only way to save your map.

Creating your Map from the Template

Before you begin, I highly recommend you copy all of your values from your gather room and checkpoint list into a spreadsheet. Although you can enter into the workshop directly from your screenshots, it is very easy to lose track of your place or write things wrong. It is much easier to first type out all the values into an easy to read sheet, and then copy and paste them into the editor.

Spreadsheet picture

Once you are ready to begin, load up the map template from the code list. You will only need to edit the top 4 rules in the template to make your map.

Checkpoint Positions

Expand the Global state 0 - Checkpoint Position Creation rule. Make copies of the Modify global variable(A, append to array, vector) action so that you have one copy for every checkpoint, including the spawn point checkpoint. Modify the X, Y, and Z positions in each copy to match the values from the map maker. Make sure to move the Set global variable(Z, 1) action back to the bottom of the list when you are done.

checkpoint positions image

Checkpoint Sizes

Expand the Global state 1 - Checkpoint size Creation rule. Make copies of the Modify global variable(B, append to array) action so that you have one copy for every checkpoint, including the spawn point checkpoint. The first copy is for the spawn point and is special. Modify the vector X, Y, and Z positions to match the facing angle shown in your list from the map maker. The other actions will all have just have the size from the map maker. Make sure to move the Set global variable(Z, 2) action back to the bottom of the list when you are done.

Checkpoint sizes image

Gather Room Settings

Expand the Global State 2 - Gather Room Config rule. There should be a Modify global variable(C, append to array) action for each gather room element. Enter the values you saved from the gather room editor into each.

Gather room settings image

Miscellaneous Config

Expand the Global State 3 - Misc Config rule. Edit the values as per below:

Misc settings image

  • Start Forcing Spawn Room(Team 1, <spawn room index>) - If the gather room is in a Team 1 spawn room, set the index to the spawn room it is in. Otherwise, set to any number.
  • Start Forcing Spawn Room(Team 2, <spawn room index>) - If the gather room is in a Team 2 spawn room, set the index to the spawn room it is in. Otherwise, set to any number.
  • Set Global Variable(Q, False) - Change false to true to enable debug mode.
  • Modify Global Variable(D, Append to array, 0.250) - This value is the extra distance around a checkpoint that it will activate beyond the visual size. You shouldn't need to edit it, unless checkpoint activation feels unfair at this size for your character.
  • Modify Global Variable(D, Append to array, <team>) - Set this to the team the spawn room the gather room is in belongs to.
  • Modify Global Variable(D, Append to array, <number of control points>) - Set to the number of control points. This will be 0 for Skirmish and Escort, 1 for Control and Hybrid, and 2 for Assault.
  • Modify Global Variable(D, Append to array, <number of escort checkpoints>) - Set to the number of escort checkpoints. This will be 3 for Escort, 2 for Hybrid, and 0 for all other modes.

Saving and Testing your map

Once you have entered all of your values, your map is complete! Save your settings into a new custom game save slot. Set yourself to Team 2 first slot to make yourself the moderator and start the match. If all the values where entered correctly, your map should now be complete and fully playable. Have fun!