This article should eventually cover different ways of using slopes.
Avoiding texture stretching
Since sloped surfaces are, technically, floors or ceilings, the texture can be visibly stretched if the angle is steep enough. The closer to the vertical, the more blatant the effect. This can be avoided by changing the texture's scaling to compensate for the stretching. This may in turn require adjustment to the alignment. In the Hexen map format, the following functions are useful for these purposes:
Cliff and basin with Plane_Align
Set the height of the floor, ceiling, or both that you want on both sides of the row, or inside and outside the donut. These will be used to determine the slope's starting and ending height. The slope can go either up or down, it will work either way.
Step 2Plane_Align. Set 1 for either floor, ceiling, or both as desired.
Now split them up into several squares or rectangles, as shown. This is not required, but will help avoiding mistakes in the next step.
Step 3level editor you use.)
It is important that the triangles follow an AVAVAV pattern as shown here, or there may be problems with slopes not matching up with each other.
You can put multiple donuts or rows adjacent to each other for more complex and natural shapes; as long as there is a flat, non-sloped sector in between each row so that the slope lines will know the correct height they should be sloping to.
Depending on what you are building, it might be preferable to make the flat sectors in between your rows as thin as possible to hide their existence, but if I'm designing hills or a large rocky ceiling I'll often take advantage of the flat sectors between rows, making wider or narrower sections of slopes and flat regions in different areas; you can get more bang for your buck this way, so to speak, creating more complex-looking natural landscapes without needing even more rows of sloped sectors.