[Workshop Mode] Hunted - Gibraltar Escort Map (with Elevators and Speed Bubbles) v1.0

After a lot of work, a new version of the map with elevators and speed bubbles is finally complete :smiley:

Share Code: H2NQM (works on Live servers!)

Older versions
  • Updated version (with combat medics, might have some issues): Share Code YW5HE
  • Original version (without combat medics): Share Code G58XM

I tried to create a custom map that is a bit reminiscent of the Team Fortress Classic map Hunted but added some other fun elements to it with elevators and speed bubbles.

Hunted - Gibraltar Escort Map (by Delwion#2667)

A group of deadly snipers (Widowmaker and Torbjörn) are trying to assassinate an important omnic diplomat (Zenyatta). Bodyguards armed with rocket launchers (Zarya), heavy machine guns and protective barriers (Orisa), or a med kit and a pistol (Mercy) have been tasked to defend the hunted omnic.

Objectives and Victory Condition

To escape successfully, the Hunted needs to reach 3 checkpoints, each within a 5-minute time window (Hunted Team wins).
When the time runs out or when the Hunters have eliminate the Hunted 15 times in total, Hunters win.


The game starts with a waiting phase of 40 seconds for the Hunted Team in which teleporters block them from leaving the spawn room (I had to give the Hunters some time to get into position since this is the Skirmish version of Gibraltar, not the Payload one).

After 40 seconds, the teleporters disappear and the real match begins.
Every time the Hunted reaches a checkpoint, there is a message for all players and respawn areas are moved (like they do on the payload map when a checkpoint is reached).
Every time the Hunted is killed, all players of the Hunted Team instantly respawn in their team’s respawn room and Hunters gain back full health.

General Settings
  • Health pack respawn time 50%.
  • No ultimate abilites for any character.
  • Custom, faster player respawn time of 6 seconds (except when the Hunted is killed - in which case the entire Hunted Team respawns instantly).
Playable Characters - Hunted Team
  • Zenyatta - The Hunted (always 1 in Hunted Team): Can only kick (high damage), use his orbs of discord and harmony, and move at 75% speed. No primary or secondary fire. 50% healing received.
  • Zarya - Bodyguard Soldier (0-5 in Hunted Team): Can only use a stronger secondary fire (higher velocity, more damage, stronger knockback, knocks down enemies hit for a split-second [like Reinhard’s Earth shatter; serves to interrupt the aiming of widow players when hit] ), increased ammo clip size, no shields or primary fire. Increased health and less damage received.
  • Orisa - Bodyguard Heavy Weapons Robot (0-5 in Hunted Team): Can only use a stronger primary fire (more damage, higher velocity, pushes enemies back [like Roadhog’s ult, but weaker], larger ammo clip size) and her barrier (cooldown 150%). Increased health and less damage received.
  • Mercy - Bodyguard Combat Medic (0-5 in Hunted Team): Can only use primary fire, no secondary fire (180% healing dealt with staff; more damage, much higher projectile velocity, and larger ammo clip size with pistol). 125% movement speed. No abilities. Increased health and less damage received.
Playable Characters - Hunters
  • Widowmaker - Sniper (0-6 in Hunters team): No Venom Mine. 130% movement speed. 60% grappling hook cooldown. Increased healing received from health packs.
  • Torbjörn - Engineer (0-6 in Hunters team): Greatly increased projectile speed, but no overload. 110% movement speed. Increased health and increased healing received from health packs.
Hero Limitations

The Hunted Team needs to have 1 Zenyatta. This is ensured in the following way:

  • After the inital waiting phase, whenever there is no Zenyatta in the Hunted Team, a random player of that team is forced to play Zenyatta (until another player in the Hunted Team selects Zenyatta as well - see below when this is possible).
  • When there is a Zenyatta in the Hunted Team already and he is inside the spawn room, then other players in the Hunted Team can select Zenyatta (+Zarya, Orisa, and Mercy, as usual) as hero.
  • When there is a Zenyatta in the Hunted Team but he is NOT inside the spawn room, then no other player in the Hunted Team can select Zenyatta as hero.
  • If there are two or more Zenyattas in the Hunted Team and one of them attempts to leave the spawn room, he will immediately respawn (so Zenyattas cannot leave the spawn room until there is only 1 in the team).
  • The individual objective for each role (Hunter/Bodyguard/Hunted) is displayed with a “Big Message” when a player spawns as a new hero.
  • Message to all players when Hunted has been eliminated (+ Score Update).
  • Message to all players when Hunted reaches checkpoint (+Score Update).
  • Warning message when players attempts to leave spawn room as Zenyatta when there are 2 or more in the team.
Original Verdict

A lot of the scripting I did in the workshop could probably have been done more efficiently by somebody with coding experience, but after a lot of testing, things seemed to work the way they were supposed to, in the end, and I had some fun playing this map with 4-6 players. I found it surprisingly reasonably well balanced and I think there were some great moments when Zen was rushing towards the next point, never knowing if he’d make it until the very last second. There’s a variety of strategies that the bodyguards and Zen can use if they play together and Hunters will fail if they try to focus too much on killing Zaryas and Orisas. The outcome from match to match was quite different :slight_smile:

Some problems I had: AI is treated differently from normal players in some ways. Forcing an AI to play a specific hero doesn’t work, for example, even if it’s a hero that the AI can play like Zenyatta.
Disabling built-in game mode respawning didn’t work for me (maybe it doesn’t on Skirmisher maps?).
Edit: Found the explanation posted by Dan Reed 4 hours ago ^^: [Not Working] Disable Built In Game Mode Respawn - #2 by DanReed-11233
Edit2: I tried this, but it’s still not working for me (the regular respawn timer still appeared), so maybe it doesn’t on Skirmisher maps.
Edit 3: Got it to work with event player died, no condition, action disable built-in game mode respawning(event player).

Commenting on the workshop tool in general, I think that it’s a great tool and I’m sure that some people will come up with some fantastic custom game settings for Overwatch. Would be nice to see this if this could go even further (we’ve seen in the past how popular RTS mods can become, or how much fun custom server settings used to be in games like CS or Half-Life; I think it opens up possibilities for Overwatch as well. My dream would still be a map editor though :wink:

Update: Added combat medic (Mercy) as additional class for the Hunted Team, added new icons that mark objectives more clearly in the game, lots of other small improvements. New version: See share code at the top of this post.

Update: I’ve improved and re-written the “code” many times to make the map work in the way it was intended to. By far the biggest challenge for me was the limit on the number of effects that could be in game at the same time and getting them to spawn and be destroyed when needed. The worst part was that something broke the workshop scripts over and over again, making it impossible to save(!) and impossible to obtain a share code. Even worse, when I did save it seemed to corrupt the savegame and make changes undone that I had done in previous saves. And there was no warning from the game. I just noticed it when changes in the workshop script seemed not to take effect anymore. I’m pretty sure it has something to do with either going over the allowed limit of entities (total number of effects + icons seems to be 32) or going over a hidden limit in the number of conditions/actions/events. I had to restart Overwatch in order to be able to save changes again (I know about the issue that happens when there is a new version of the game available but I think that was not it). And since the game doesn’t tell you when you click on save but it’s actually not saving, it’s easy to lose hours of progress that way :confused: If the cause is the number of entities or the number of events/actions/conditions being too high, then I hope this will be fixed before the live release of the workshop tool. Another potential cause of problems could be when a script creates too many effects in a short amount of time. I had to use “Wait” actions quite often or the script would not work anymore: the effects weren’t created or weren’t visible (it sometimes seemed like the “Create Effect” action also had a delay before it was run; for example: I had one action to create a sphere effect with a radius based on a global variable. The following action in the list changed that global variable but the radius of the created sphere in game would then be the new, changed value ofthe global variable, instead of the value it had when the “Create Effect” command was given). Also, I think it would really help to have an easier way to move up or down actions in the list on PC. Or is there one already that I missed? >< And a way to copy vectors from one action/condition to another :smiley:

Overall though, I still love the workshop. I had a lot of fun trying it out and I think it’s a great addition to Overwatch :slight_smile:

In case anybody is interested in the script of the map, here’s some additional info that could make it easier to read:


A Progress of game (phase/stage)
B Number of Zenyatta kills that Hunters scored
C Index to start at in array global variable Z when destroying effects (command to destroy effects is given by global variable K)
D Command to destroy red eye icon and “Eliminate” text on Hunted (visible only to Hunters)
E unused
F unused
G Command to create white eye icon and “Protect” text on Hunted (visible only to Hunted Team)
H Command to create elevators (value = number of elevators to be created; global variable L is used as a parameter)
I Command to create red eye and “eliminate” text on Zen
J Array: Index 0: ID of “Protect” in-world text
Index 1: ID of “Eliminate” in-world text
Index 2: ID of white eye icon
Index 3: ID of red eye icon
K Command to destroy effects (value = number of effects to be destroyed; global variable C is used as a parameter)
L Index to start at in array global variable Y when creating elevators (command to create elevators is given by global variable H)
M Is the game currently checking for check points (0=no; 1=yes)
N Array of checkpoints positions (to check if a Zenyatta player has reached any of them)
O Array of teleporter positions
P Array of ALL POSSIBLE elevator positions
Q Array of ALL POSSIBLE speed bubble positions
R Array that lists radius of ALL POSSIBLE speed bubbles (a specific radius for each of the positions listed in global variable Q)
S Used to prevent players from picking Zenyatte when they shouldn’t be allowed to
T Delay for “Time is up” victory condition (so the Hunters team won’t win when the initial waiting period of 40 seconds is over)
U Index to start at in arrays global variable X and W when creating speed bubbles (command to create speed bubbles is given by global variable V)
V Command to create speed bubbles (number = number of bubbles to be created; global variable U is used as a parameter)
W Array of CURRENTLY ACTIVE speed bubbles’ radius (slice of global variable R)
X Array of CURRENTLY ACTIVE speed bubbles’ positions (slice of global variable Q)
Y Array of CURRENTLY ACTIVE elevators’ positions (slice of global variable P)
Z Array the lists IDs of created effects (so specific effects can be destroyed)


A Display time counter for role-specific objective “Big Message”

H Keeps track of which hero was played last, so a new objective “Big Message” appears when the player switches to another hero

L Countdown timer for custom respawn (players respawn after 6 seconds when L == 1)

T Current speed bonus (from speed bubbles; gradually goes back to 0 when player is not inside a bubble anymore)

X X position of last elevator the player has been inside of
Y Is the player currently in an elevator? (0 = no; 1 = yes)
Z Z position of last elevator the player has been inside of

GLOBAL VARIABLE Z INDEX (saves IDs of effects to destroy them when needed)

|0|Teleporter 1|
|1|Teleporter 2|
|2|Teleporter 3|
|3|Elevator 1|
|4|Elevator 2|
|5|Elevator 3|
|6|Elevator 4|
|7|Elevator 5|
|8|Elevator 6|
|9|Elevator 7|
|10|Elevator 8|
|11|Elevator 9|
|12|Elevator 10|
|13|Elevator 11|
|14|Elevator 12|
|15|Elevator 13|
|16|Elevator 14|
|17|Speed Bubble 1|
|18|Speed Bubble 2|
|19|Speed Bubble 3|
|20|Speed Bubble 4|
|21|Speed Bubble 5|
|22|Speed Bubble 6|
|23|Green Pillar 1A|
|24|Green Pillar 1B|
|25|Green Pillar 2A|
|26|Green Pillar 2B|
|27|Green Pillar 2C|
|28|Elevator 15|
|29|Elevator 16|
|30|Elevator 17|
|31|Elevator 18|
|32|Elevator 19|
|33|Speed Bubble 7|
|34|Speed Bubble 8|
|35|Speed Bubble 9|
|36|Green Pillar 3A|
|37|Green Pillar 3B|

Approximate position for each elevator and speed bubble

Elevator 1 |21 / -2 / -134| In front of Hunted Team spawn room
Elevator 2 |35 / -5 / -143| Payload building payload side
Elevator 3 |51 / -5 / -149| Payload building cliffs side
Elevator 4 |37 / -5 / -133| First bridge
Elevator 5 |60 / -7 / -133| Payload building secret entrance
Elevator 6 |48 / -6 / -118| Straight after first bridge
Elevator 7 |42 / -8 / -113| Second bridge spawn room side
Elevator 8 |28 / -10 / -98| Second bridge checkpoints side
Elevator 9 |26 / -5 / -76| In front of first checkpoint
Elevator 10 |33 / -5 / -59| Right after first checkpoint
Elevator 11 |53 / -5 / -59| In front of ship, first checkpoint side
Elevator 12 |50 / -3 / -34| Under bridge inside large hall with ship
Elevator 13 |67 / -3 / -32| Back side of large space ship
Elevator 14 |77 / -3 / -32| Right in front of checkpoint 2, leading up to a ledge
Elevator 15 |77 / -3 / 3| After second checkpoint, in front of first building with 2 doors (left side)
Elevator 16 |62 / 1 / 3| After second checkpoint, in front of second building with 2 doors (right side)
Elevator 17 |91 / 1 / 14| After second checkpoint, go straight and up the stairs, on that platform before entering the building
Elevator 18 |65 / 1 / 23| In front of final bridge
Elevator 19 |85 / -1 / 43| In front of final checkpoint

Speed Bubble 1 |30 / -5.5 / -157.68| Spawn room Hunted Team, cliffs side
Speed Bubble 2 |60 / -5 / -120| First corner, on stairs near cliffs
Speed Bubble 3 |5 /-2 / -104| Large bubble in side room opposite first checkpoint
Speed Bubble 4 |53 / -1 / -77| After first checkpoint, stairs on left side
Speed Bubble 5 |70 / -3 / -53| Before second checkpoint, stairs on left side
Speed Bubble 6 |34 / -1 / -35| Stairs on right side in hall with ship
Speed Bubble 7 |98 / -2 / -28| After second checkpoint near cliffs on left
Speed Bubble 8 |47 / 2 / 0| After second checkpoint right side, inside the building on small stairs
Speed Bubble 9 |51 / 4 / 41| Middle of stairs that lead up to final bridge


Other forum discussion about the concept of a Zenyatta escort mission


1 Like

Go completely old school and have it so the target can’t attack or anything since that was the roots of hunted in the original TF version. If I remember correctly the target just had a bit extra armor and that was about it.
It was a real pain in the rear when you escorted them all the way to the end only to have them sniped as the platform was going up on the one map I recall. Think it was a valley type one with a lava surrounded island at the end of it.

The map I know best is this one from TFC:

Edit: Unfortunately I can’t post links, but the map I mean is the one on the teamfortress wiki: Hunted_(Classic)

There were other VIP/Hunted escort maps though. Not sure which map in TFC was the first one.

The Civilian (the Hunted) had an umbrella on the map I know which was a melee weapon that worked like the crow bar I think. So that’s why I let Zenyatta keep his kick (but not his primary and secondary attack). I let him have the orbs, too, 'cause that allows the Zen player to mark enemies for the bodyguards and heal team members. I feared that it might be too boring to play Zen without those abilities. In the TFC days, we often had the problem that no one wanted to play the Hunted at LAN parties.

I also changed the objectives a bit since running through the entire map of Gibraltar seemed to take too much time and it would be too hard for the Hunted to reach the rescue point alive. So I’ve made 3 checkpoints instead. On the original TFC map, the Assassins team got 25 points for every kill of the Hunted, and the Hunted team got 50 points every time the Hunted made it to the rescue point. It was very hard for the Hunted Team to win with the same number of players in each team.

I’m working an a new version now that adds an additional class to the Hunted Team :slight_smile:

Update: Final version with elevators and speed boost bubbles complete; see opening post of this thread for share codes :slight_smile: