Developed from September 25th 2018 to 11th December 2018. This was my first level design project for university. Enjoy!
This topic will detail how I will design and create a CTF map for Unreal Tournament.
I have begun by opening up UT Editor and going through the map scale area to better understand the ratios that I will be designing my level to. I’ve taken notes on these and have begun to look at existing maps from UT.
A classic UT 99′ map that was famous for it’s short and brutal design. The map came with two large towers that allowed snipers to shoot down at people passing on the bridges. However, due to the Translocator, players on the bridge were able to teleport around making it much harder for them to be killed. This made for quick gameplay that is still loved in the community today.
Additionally, I have been playing Team Fortress 2’s CTF mode for research on the game type.
A classic from Team Fortress which was ported to Source with TF2. The map in the image below is similar to that of Facing Worlds (2 large towers, bridge in the middle). As TF2 doesn’t have something similar to the Translocator for every class, they have balanced the map more by placing a roof over the bridge, making it harder for Snipers to kill less mobile classes when crossing. Because of this, however, it typically means that Snipers begin to fight each other from across the map. This makes other players also become Snipers and stop focusing on the objective.
The interior to this map is quite large as it was originally built for teams of 12 a side. The narrow corridors allow for Snipers to get easy kills when enemies come round square corners with ramps. This also allows for Engineers to build Sentry Guns in tight spaces which makes them hard to take down as Spies aren’t able to bypass them/jump on them.
While this is too large for my map design, it is good to note that tight and long corridors do not make for good gameplay especially with UT’s high focus on mobility.
Another TF2 CTF map which is known for being much better than 2Fort. This map features 2 main bridges in the middle, one above another. The top one having crates/other obstacles and the under one being a riskier route as it has a smaller width and no cover.
This map allows all classes to use their mobility and different attributes to a much better potential than 2Fort. Scouts are able to run under the bridge and quickly reach the opponent’s base. Soldiers are able to rocket jump from bridge to balconies to do the same. Pyro’s can now also do this with their jetpacks. Demomen are able to place sticky bombs around the bridge to deter players from passing. Heavies are difficult to play on this map but with the addition of a Medic, can be Ubercharged across the bridge to push the enemy back. Snipers are able to snipe from balconies to stop large targets from passing (however, due to their exposure and limited sight lines, this can be risky and therefore balanced) and Spies are able to hide in corners and jump around rocks to stay hidden to get to the intelligence (flag).
While TF2 mechanics are not the same as UT’s, they do showcase ideas that don’t work in multiplayer games. Using this, after taking notes on these levels, how they work, why they are balanced/not balanced. I will ensure that the map I design for this project is balanced, utilises UT’s mobility abilities and is fun to play.
As of writing, I have came up with 2 real designs for maps.Other drawings were concepts.
First Design and Concept
The first design is a straight forward rectangle where fighting mainly takes place in the middle room and the two flag rooms (when defending/attacking). There are two large props in the middle of the main area to make sure that sight lines are kept to only the middle of the map. While not shown, there were plans to add two balconies from either way so that the enemy teams could access the flag rooms via vents however, they aren’t drawn and steps up to the middle props also aren’t drawn. While the map may work, it wouldn’t be visually interesting enough to keep players engaged over long periods of time.
Second Design and Concept
After a lecture which showed more complex map designs, I wanted to redesign the map to make it more visually interesting and create a better gameplay experience for the users. I experimented with different shapes, firstly trying out a Colosseum shaped design, however, I realised that this would be hard to create in the editor and would be hard to create with my limited knowledge of the Unreal Engine. I decided to opt with a hexagon design instead which was similar but much easier to create. With the introduction of a hexagon design, the map will be made a lot more interesting to look at and the inclusion of a full second floor to fight on will further the experience. On the right in the image is the bottom floor of the main fighting area. The shaded sections are areas in which the player will drop to their death. Each side has two main platforms to stand on either side and in the middle, there are bridges and a connector for enemies to fight against each other. There are also two slanted boxes either end which blocks sight lines to each enemies flag rooms. There are also ramps either side so that players can get to the second floor.
On the left image, the ramps continue up to the second floor where they are able to access their team’s vent system or fight in the middle. I’ve reused the props from the last design and placed them up here. Thus making this an alternative way to the enemies’ flag room.
Power-up placement and weapon placement have not been decided on.
Playing more Unreal Tournament
I have been hosting and playing in Unreal Tournament social events to help myself and others better understand how people will play our maps when we come to testing them. I had started to look into the different types of weapons I’d like to be used in my level.
Currently, I’d like to have the Link Rifle, Flak Cannon, Rocket Launcher and Translocator. Updates to that list and more will be stated why when the map design becomes finalised.
I have still not yet decided on the theming of my level. Based on the current design, it could possibly be a factory level. If not, I may go with a prison theme due to the close quarters nature of the arena. When I get a longer chance to look at the assets that UT has to offer, I will decide then.
Beginning the Blockout
Before finalising my design, we were asked to start by going into UE4 and just testing some things, placing blocks etc. I first decided to design a basic map (this is where the original concept was drawn that can be seen in the above post). After that, I loaded up the example map and took notes on the different amounts of units needed for certain shapes such as story height, doors and walkways. I then loaded up a new world and began to experiment with different tools and shapes. I only used the scale tool. I saved the level to the computer only and left.
The second time I attempted to create the level was in the next practical I had. This time, I had drawn up the second concept and started to take the size into consideration by making sure things were in ratio with the world. I started to use the brush size tool rather than the scale tool, also. I still experienced problems however as I wasn’t yet editing the position of vertexes. I didn’t know about its use and so create a square which I would then use other squares to block out the corners (as the map is octagonal). I quickly realised that this wasn’t the correct way of blocking out the map. I asked, was helped and then learnt about being able to move faces, edges and vertexes. I saved the map once more but still forgot to move it onto the network to load it up again another time.
After those first attempts, when I began to finally properly block it out, I still didn’t truly understand what the best way for me to get an octagon shape was. A friend next to me extended an octagon to the side and I realised that it created a good shape for my ground floor. By doing the same, I began to finally blockout the map the way I always wanted it.
Blocking Out Properly
I started by creating a cylinder, pulling out the faces/vertexes and pulling them across and attempted to line it up with my notes. I then realised that I was not able to measure the size of the BSP as it had not been scaled nor had it been used with the brush tools. I then worked out that by using the middle mouse button in the orthographic views, I was able to see the size of different shapes. I used this a lot when making sure it matched my drawings. After a lot of fiddling, I was able to create the size that I wanted it and then added a subtractive square so that I could cut the shape in half so that it could be mirrored later.
After more readjusting, I enlarged the shape to match with the calculations for the drawings and then I began to cut shapes out of the initial cylinder to match my design. After a while, I had came up with this:
Additionally, I added names to each of the BSPs in the following format. (SideOfMap_Middle/NotMiddle_SideRelativetoPlayer_Object) I then went back for the day. This time, I learnt how to save to the network.
The next day, I went and did more work on the level, starting to create some of the walls and the next floor up. I used different orthographic views this time and was able to line up things that were wrong from yesterday. I also made two revisions during this time:
First and Second Revisions
The first was the stairs leading up to the platform, these were changed as they were too steep. The player could climb on them, but they didn’t fit well with the rest of Unreal Tournament. To fix this, I made them longer and have a smaller gradient.
The second revision was making the boxes on top more specifically positioned. On the design, they are turned to a random angle and need to be readjusted to ensure that they don’t break up gameplay too much. I’m still deciding on how tall these should be.
(I additionally found the map inspiration- can’t add to last post but can post here:
Continuing the Blockout
I then attempted to do the walls. However, the walls proved to be difficult to get right. This was because I did not start in the centre of the grid and meant that it would either take a long time to line them up correctly with mathematics or I could get it off-target via eye. I chose to do it via eye and it didn’t end up going well. I then had the idea to remove the walls and try using a hollow wall that matched the dimensions of the of the first cylinder that makes up the bottom floor. The problem with this though was because I had used the tool to edit the edges/vertices, the size was not initially recorded. I tried to line it up via eye and again ended up giving up on getting it exact.
After placing down the wall, I went back to paper to design the other rooms of the map. I initially looked for inspiration in TF2’s CTF map Well
In this map, the flag is highlighted by the red square. There are 4 different ways of obtaining this flag. The blue and green routes show the lower floor entrance to the flag while the yellow and purple paths show the higher-level route where you need to walk round the balcony and then drop down. The blue circle highlights a spawn room where the other team spawns. This makes it easier for them to defend. Of course, to use this, I had to think about the player spawns, theming and routes for such a small map versus TF2’s large version in comparison.
Using this, I began to draft ideas on what I could do instead of copying the design.
These designs ultimately fell through due to the complexity of the tower and I changed to go with a spawn room under the flag. I also changed from having ramps to jump pads as they aided in the fast paced/close quarters gameplay style that I was trying to create, having players surprise one another and who’s reaction times were faster.
When adding in the balcony, I started to notice a BSP hole. I attempted to fix this by moving the base around, further away from the main map. While this worked, when trying to then connect a corridor to the bases, half of the corridor would always be missing, no matter where it was put. After trying to rectify the issues, I gave up and decided that it would be best to start again with all my revisions already in place.
(Problem areas include mismatching wall sizes in green and blue. Purple shows the large BSP hole in the base where the balcony should go)
Blocking Out Third Attempt and All Revisions
After a couple of days, I came back and redid all the blockout work up to that point. I did this all in the middle of the grid this time and ensured that all the computers I worked on had the same snap grid. This version of the blockout still needed to be edited and a few more revisions were made but most of it maintained the original design.
All in all, I had made 6 major revisions to the centre of the map.
1. Changed twice, the stairs were extended out and made to go higher up. This meant that players and bots were able run under easier and get the Flak Cannon behind it.
2. The second floor was made more specifically to block sightlines, double damage powerup was added between the crates so that players either had to vault on the crates exposing themselves or get close to enemy team without weapon (via translocator).
3. Platform along with Stinger Minigun was added to encourage more wall-running within map.
4. The way to the vents was made to be on the same platform as the main area of the second floor. Doing this meant it was easier to slide to the other side, maintaining flow of gameplay.
5. Floor pits were expanded to make players think about their moves/dodging more.
6. Cylinders were added as pylons to show more support to the main platform along with replacing the slanted blocks that originally blocked slightlines. Makes it easier to wall run and serves as another obstacle to people fighting in the middle.
The final week 3 version of the base came out as such;
Similarly designed to Well still but obtains its own personality by having the spawn underneath rather than behind. Along with walk around balcony with its own pickups.
These are some in-engine screenshots of the final version of the map for week 3 before testing.
I then had AIs test the map. I made some final adjustments such as the corridor for the balcony, as the AI struggled to get through it. Besides that, the map played well and the experience that I had hoped for was being created. I hoped that the users would make better use of all the terrain as the AIs cannot wall run/slide.
When bringing out the level and playing it in UT for the first time, I realised that one of the adjustments I had made before packaging it was not saved and the map flags were backwards. This created an amusing situation in which the players had to take the enemy flag from their own base to the enemy’s base.
After fixing it and repacking it again, I had others test it and write down their responses on a questionnaire I had drafted on Microsoft Forms. My testing was to improve the map and find out qualitative information from others that would be vital in doing so.
Here are the results of that testing:
Questions 1 and 2 were asking for the date at the time and the name of the person playing. Just in case I needed to reference answers or ask them further about their thoughts on the map.
Question 3 asks about the size of the map and whether the player thinks it is the right size for a 3v3/4v4 map for UT. The general census showed that they believed the map was too small for the amount of players on the map.
Question 4 asks about the weapon placement and which weapons have been put in. Their opinions are all quite different and will need to be reviewed independently to see if I can reach a solution where the majority are happy.
Question 5 asks about the map movement in general as I wanted to understand how I could improve the design of the map to better fit with UTs moving mechanics. According to the results, a majority approved on how I used the mechanics but one disagreed and the other liked the sliding and dodging but not the translocator usage.
Question 6 asks for a general score. This was mainly to gauge for myself on how well the level had performed in relation to its original design. A 5.2 average was given, the lowest being 3 and the highest being 7.
Question 7 asks about what each player would add/change to the map. (names with James Kinch are not me but are done on my account). Each will need an independent review and personal opinions (on how people like different kinds of maps etc.) will need to be considered.
The last two questions ask about the questionnaire. Everyone that answered the questionnaire were happy with what they could input and no changed were needed.
Overall, the testing went according to plan and now I have a lot of ideas and ways to improve upon the map. This week was extremely useful in gauging player feedback at this point and I’m happy to know that my map has achieved a 5.2 rating when it is still so early in development. It’s been very encouraging and I intend to use the AI and other players in the future to test my designs.
Changes After Testing/Feedback from Lecturers
4 Weeks on, the map has seen a lot of new additions added along with a lot of changes existing sections. I was very confident in my skill to change the map, however, a talk with a couple of the lecturers proved that my ideas were not well founded and that I had made massive oversights. Due to this, the map was made to a better convention.
This is the new design for the map. There is now a small arena running around the side of the base. Doing this added a new way for the flag to be captured, rather than just rushing round the vent or through the main door. BSP pipes also now cover up a walkway, similar to the base walkway in the middle area, featured on either side. Access to this can be gained via a jump pad, furthest away from the door to the base. The rocket launcher has now also been added to add extra variety.
Changes to Base
The base has been cut in half. After a lecturer told me that there was no reason to go to the other side of the room, I decided to just cut the room in half. Doing this meant that a lot of unnecessary space was cut out and I could then focus on just making players move around half the space.
Pipes now run through the base to fit more with the factory style which will power a “Core” in each of the bases. One of the link guns have been removed from the base and 2 of the medium health packs were also removed.
Changes to the Middle Section
The middle section has also been changed a lot. Again, more pipes have been added to reinforce the factory theme. The top section has been changed to block line of sight between the two vents. Doing this will stop players camping there. You are now also able to run along the pipe up the top, making more sense than just having a platform. Underneath the middle, it is mainly the same, just replacing the Stingers on the platforms to medium health packs. The grenade launcher was also moved from the platform to being inside the base.
While I have not conducted another survey on my level, I did play it when it was being tested by 7 other people. It was generally liked by the other players (despite the flags being in the wrong place yet again). I asked at the end of the match what people thought and the only things that were disliked was the holes in the floor and the openness of the middle section. I may try and design a way to stop the sightlines being an issue, but I think the map is fundamentally flawed in the middle without a real fix. If I had time, I would redesign the middle section but unfortunately, I don’t have enough time and will have to start meshing.
Overall though, I’m generally happy with the map’s progression.
We had some additional work during this time which I was also working on for the module, hence the large gap.
I finally got around to meshing out my level. I kept to the Liandri theme for all of the level using many different types of pipes, walls and floors. After the redesign, it didn’t take long for me to think about what kind of props fit the level. Due to a lot of high rises in the level, pipes were added to show a connection between the level and the theme. While doing this, I was able to find props that fit together well with pipes and began to add caps too. Doing this on the platforms either side of the ground floor made for a visually interesting platform.
I continued to mesh and eventually had gotten through most of the fighting area plus one of the bases by the end of the first day. Additionally, I asked a few friends what they liked more in some situations. Hence why the three pipes in on the ground floor were changed to pillars. Doing this made more sense has the pipes couldn’t transfer whatever they are holding.
Covering Up and Workarounds
When I began to place walls, I decided to put them in a pattern where the top and bottom met. Doing this meant that if the top or bottom wall had a hole that it would cover, I would have to remove the wall. I didn’t want to shrink the wall down as it would have meant that the pattern wouldn’t have continued all the way round. To fix this, I decided to add additional pipes/details to hide areas with no walls while maintaining the theme of the level. Doing this led to more visually interesting props.
Until this point, I had no roof for the buildings. Once I had nearly finished meshing, I decided to add a roof to start on the lighting. I found a lot of issues with this and tried to brighten up rooms with point lights and spotlights but nothing was light enough to illuminate the room. I found that by adding a skylight, I could at least see the entire room. This made everything a dark cream colour though and didn’t look nice.
Because of this, I looked for a glass texture to see if I was able to create the same effect as just having the roof open. I was able to find one and while the texture isn’t great when stretched, it did let lots of light in and created the original effect.
In the end, the only lights that were added were to the corridors in the small arenas each side of the base and a colour showing what base the player is at.
Final Meshing, Last Refinements and Conclusion
After another few hours, I was able to finish the meshing and refine a few areas that either had no texture, something that I forgot to add details to or any of the blockout I could take away. I also placed blocking volumes down on a mesh that had no collisions to simulate them which then allowed me to take more of the blockout away to reduce wasted memory. After having a few people running round the level to give the all clear and that I hadn’t missed anything, it was finally done.
I added a few last refinements such as spectator cameras, sounds to the pipes and music to the level. I then finished by creating the sequencer video which can be viewed below:
To conclude, I’ve learnt an absolute ton from creating this level in Unreal. A lot of do’s and don’ts about general game design/level design, how Unreal Engine works with a grid system/placing props and also how Unreal Tournament works/why it works so well. I’m very happy with my level but if I had more time (or had gotten into the swing of uni life earlier), I would have added more details, especially to each side of the base to better indicate which team owned which side, a better light outside and also made a bigger effort to more effective light the room without having to rely on the glass (which doesn’t look particularly nice but isn’t noticeable while playing).
I hope you’ve enjoyed seeing the development of CTF-PipeDream as much as I have had creating it.