There isn’t a lot of info anymore about UT2004’s now-old editor. A lot of the info that does exist is sometimes difficult to run into because of the way search engines work now, and because it’s scattered across several different places, in bits.
Here’s a small index of the guides I’ve made or am working on for UT2004’s UnrealEd:
- Basics (This guide!)
- [Browsers + basics of Static Meshes & Pickups]
- Lighting + Sky Boxes (work in progress)
UnrealEd isn’t complicated, though it looks so at first. Modern UE4 or even UE3 users will be familiar with the navigation and control, but people coming from different editors usually take longer to get in-line with the way things work.
You can control the camera in the 3D viewport by using the mouse. Forget keys for camera control.
- LMB on its own moves the camera forward and backward, whilst also turning the view, but only in a horizontal direction.
- LMB + RMB moves the camera up and down but also strafes left and right.
- RMB alone only serves to turn the camera around, but usually when you are navigating somewhere in the map, you will find yourself holding RMB as you use the other two movements.
For moving the camera in the 2D viewports simply use LMB or RMB, but you can use them together to “zoom” in and out, if for some reason you lack a mousewheel.
Also, if you’re starting out, be aware that Ctrl+S is not how you save. Ctrl+L can be used for saving.
Ctrl+A, Ctrl+S, Ctrl+N and Ctrl+D are all key combinations used for fast brush-work. The brush is a repositionable object that doesn’t exist in the game world on its own. By default, on a new map it is not active.
As soon as you click one of these icons on the left, the default brush will appear, as seen on the right.
The icons on the left-hand side can be right-clicked too. This allows you to set specific parameters for their sizes, which you will be doing a lot as you edit maps. The previously mentioned key combinations do the following: Add, Subtract, Intersect and De-Intersect. Ctrl+A and Ctrl+S are therefore the ones you use most often, in a basic manner.
The way levels worked in games like UT2004 up to this point was what is called a BSP, or Binary Space Partition, in full. The BSP format basically says” there is something” or “there isn’t something”. Within a .ut2 BSP level, the entirety of the initial space is Positive. This means all of the space is full, or in other words, “there is something” filling all the space.
To start making a shape for your level you must carve away the Negative space, using Subtraction with your brush. Importantly, you can only have one active brush. To be honest, this was a bit confusing for me when I started, since I was used to Half-Life 1 level editing.
So, if you have the default cube brush as above, and you then press CTRL+S, you’ll be able to see through the 3D viewport that it becomes an open space with a random texture:
By default this new open cubic space is 2563 units. This is actually quite large. A player character is about 96 units tall. For reference, with a character mesh below:
You can right-click surfaces in the 3D viewport, or more generally any location in the 2D viewports, to get a context menu like this, which will allow you to place Player Starting Points (PlayerStart) and Lights:
To move the building brush around, you don’t need to have selected anything, as it will auto-select if nothing else is selected. If you do want to select it however, you can just left-click its outline in one of the viewports.
You then move the brush around by using Ctrl+LMB. Important: Which viewport you do this in will affect how it moves. In the 2D viewports it will move in any of the two axis.
But in the 3D viewport, object movement works like camera movement. If you have an object selected and you Ctrl+LMB in the 3D view, it’ll move along the X axis. Ctrl+RMB will move it along the Y axis, and finally, Ctrl+LMB+RMB will move it on the Z axis, i.e. up and down.
In the 2D viewports you can rotate selected objects by holding down Ctrl+RMB and moving your mouse left or right. The axis of rotation for the object is the one perpendicular to the view’s plane. So if you are looking at the Top-Down view (the X,Y plane), you will rotate the object around the Z axis, which is the most common type of rotation you will need.
It’s probably worth mentioning that whatever you do with the building brush won’t affect your level until you actually subtract or add with it. You can reset the building brush easily by going into the the Brush menu at the top:
This concludes the very basic and important bits of moving the camera around and moving an object around.
For me, the general workflow involved in making a full level involves the following steps:
- Before anything else, I start by making a sketch of a desired level. It doesn’t have to be precise, though it may help if you think about a character’s size, especially when you aren’t used to the editor’s scale yet.
- In the sketch, the main negative space is planned, and the primary objective and weapon points are designated.
- Once I’m happy with a sketch, I start to try and get the shape I want for my level by using negative brushes. There’s a lot of trial and error for me to get the scale right vs what I envisioned the map would feel like when in-game.
- Then, start thinking about the static meshes I want to use, if I hadn’t already, and start to place the objectives and weapons, roughly, also detailing some of the BSP shapes with more complex subtraction and addition.
- If a map is going to be symmetrical, I only do one team’s side first, before copying it over in bits to the other side.
- Finalise with better and more refined light placement and ammo placements and so on. Static meshes are quite important for the “flavour” of a level, too.