Movers are brushes moving from a position to another. They can move when activated or move constantly in a loop. Building a moverYou can build a mover from one brush or multiple brushes.However, if the final shape is too complex, it might create visual and/or collision problems online or even offline. The best way to create movers is to build a room dedicated to this task. You create your brushes there by adding and substracting shapes, moving vertexes and so on, just like you would do to create a solid structure. Create this structure at a reasonable distance from the walls so it can be later enclosed by a cube to create the mover. Do not forget to put textures on your surfaces, resize, align, rotate them until you have the result you wanted. Note : I have noticed textures can ignore your changes (resize, ...) later in the actual mover but there's a way to fix that. I will explain this further in this page. ![]() When you have built the brushes, you must now create the mover. Before doing anything else, you MUST reset any rotation or scaling in the building brush by right clicking on it and selecting "reset => all". If you fail to do this, your mover will likely be non-solid but in the center. ![]() Right click on the cube shape builder and set values to create a cube with the building brush large enough to enclose all the brushes being part of your mover. DO NOT use click and drag to resize the building brush ! ![]() Position the building brush so that it encloses the mover brushes and click on "intersect". Note : Before intersecting, make sure the pivot of the building brush is in the center of your structure. This is very important for rotating movers because they rotate around the pivot point. Alternatively, if your mover is only composed of one brush, you can just right click on the brush and select "Polygons => To Brush". ![]() The the building brush is ready to add the mover. Move it where you want the the start position of your mover. Adding a moverThere are a few types of movers, you can access these types by right clicking on the "add mover" icon.By default, if you click on the icon, it adds a simple mover. In most cases, you will only need two types of movers, the simple mover and the Loop Mover. The Rotating Mover can be used but it bugs online. If you still want to use a rotating mover, just make sure to set the property "Networwing => RemoteRole" to ROLE_DumbProxy otherwise it won't rotate online. You might also have to change the values of "Networwing => NetUpdateFrequency" but that's really a pain. The best way to do a rotating mover that will work every time is to add a simple mover and to change the property "Movement => RotationRate => Yaw" to a value (negative values make the mover rotate counterclockwise). You also have to change "Object => InitialState" to "None" otherwise, if you leave it to "BumpOpenTimed" (the default value), the mover will reset to its start position as soon as a player touches it. You can also make semi-rotating movers like an elevator turning one way when going up and the other way when going down. This is done by adding a simple mover and rotating it manually on its "key 1" (explained later) pressing Control, right-click and dragging in camera mode. The Attach Mover is handy when you want to attach actors to your mover. For instance Death Triggers, teleporters and so on can be attached to your mover so they move with it. Note : It's better not to attach flags to movers because that creates messages "The flag has returned" everytime the move is activated. However, most actors can be attached to a simple mover. To do so, set a mover tag ("Events => Tag") to a value and set the same value in "Movement => AttachTag" for every actor you want to attach to this mover. The value you set must be unique for a mover otherwise the actors won't know which mover to follow. The Loop Mover is usually used to make movers moving forever. To make them move forever, they must be used together with a Timed Trigger. For the mover, you set the "Events => Tag" to a value and the "Object => InitialState" to "LoopMove". Then you add a TimedTrigger actor anywhere in the map and you set "Events => Event" to the same value and "TimedTrigger => bRepeating" to True. One TimedTrigger can be used to make many movers move. The AssertMover is used to make different move times between the keys. For instance, you can use this type of mover to make an elevator go up slowly and get down fast, saving time for the other players waiting. ![]() Setting the mover keysWhen you have added your mover, you must set the positions (called keys) the mover will take.To do so, select the mover, right-click on it and select "Movers => Key 1". Move your mover to the second position you want it to be. Then select "Movers => Key 0" again reset the mover to its start position. To verify whether the positions are correct, switch from key 0 to key 1 and back to key 0 again. You can make up to 8 positions but since, by default, a mover is set to 2 positions, don't forget to change the value of "Mover => NumKeys" to the number of keys you set. ![]() ![]() Main mover properties
Triggered activation of moversIf you want to activate a mover when a player shoots somewhere, passes somewhere or presses a button, here is how to proceed.
Checking the mover texturesYou can see the mover textures, align, rotate, resize them and so on by right clicking on the mover and selecting "Movers => Show Polys". Don't forget to rebuild after you change something.Last stepALL movers must be set on key 0 before testing/releasing a map, especially loop movers which won't move otherwise.Example mapDownload the example map CTF-BT-MappingTips_Movers.zip.Extra tips
|