Conveyor Belts in SRB2 are a great way of adding a bit of change to average gameplay flow. However, they can be a bit complex to make. This tutorial should help explain the process.
Contents |
The first thing that needs to be done when creating a conveyor belt is to have the conveyor belt's Target Sector set to use Sector Type 1024 - the Conveyor Belt special. This will not make the conveyor belt suddenly work, however. This special assists SRB2 with handling conveyor belts correctly, but it does absolutely nothing by itself.
The next step is to set up the control sector. Unlike most cases, the control sector's settings, such as floor & ceiling height, in this instance, have no bearing on how the conveyor belt will work. Instead, everything is controlled by the linedef with the linedef special.
For conveyor belts, it is best to use Linedef Type 530 - the Scroll Floor Texture and Carry Objects special. This linedef carries objects & scrolls the floor flat, like a real conveyor belt would. There are many other options for slightly different effects, but in most cases this linedef special is the best choice.
Setting up the control sector's speed & direction is often the real tricky part. What determines the direction of the conveyor belt is the direction of the linedef. And what determines the speed of the conveyor belt is the length of the linedef.
When creating a conveyor belt, it is usually best to figure out which way the conveyor belt will face. A linedef's direction is determined in an odd way: if the linedefs of a sector are facing inwards (which they always are in a control sector), then the linedefs go clockwise around the sector. Therefore, for example, the left linedef of a square control sector would be going upwards. Create a control sector; find the linedef going the correct way; give it action 530; and tag it to the target sector.
The speed is actually really easy to set. The longer the linedef, the faster the conveyor. Usually, it's best to try & test different linedef lengths, just to be sure that the speed is a good one.
Setting up a conveyor belt on an FOF is very similar to setting one up on a sector. The linedef settings stay the same, for the most part, with the only difference being that Linedef Type 533 is used instead of 530. The only significant difference lies in how the FOF is tagged.
To set a conveyor belt on an FOF, simply give the FOF's control sector the Sector Special 1024. Also, give the FOF's Control Sector's Sector Tag (Note: not linedef tag) the same number as the linedef tag on the conveyor belt's control sector. Now simply tag the FOF to the target sector, and the conveyor belt will work. Also, use THZFLR16 or THZFLR17 on the ceiling of the FOF, as that's the flat that will be scrolling.
It is generally a good idea to have all conveyor belts use the flats THZFLR16 or THZFLR17. THZFLR16 is designed for conveyor belts going north/south, and THZFLR17 is designed for conveyor belts going west/east. While it isn't always best to use these, it is very often the better choice.
When making conveyor belts that have a higher floor height than the sector or sectors around it, it is a good idea to use THZCONV1, THZCONV2, and THZCONV3, as linedef textures, as they are a nice little set of textures that look like the ending and middle parts of a real conveyor belt. For an example of how they look, and how to set them up, try the example WAD that can be found at the bottom of the article.
MAP05, replacing Techno Hill Zone Act 2.
THZCONV1, THZCONV2, and THZCONV3.
MAP05, replacing Techno Hill Zone Act 2.