Tarquin's Spiral Stair Builder

By: Tarquin

tarquin@planetunreal.com

Tarquin's UT

This builder is intended to replace the default Spiral Stair builder as well as the curved stair builder. I felt this was necessary because brushes made with the default Spiral Stair builder can't be subtracted.
In writing this new script, I've also found that the sloped floor / ceiling options in the native builder can throw up a lot of errors in the log. I don't know enough about the way UEd handles these to know whether this is bad for a level's BSP, but this new builder addresses this problem anyway. It also allows some new combinations, for example a flat base with a sloped top.
I had hoped to find a way to make the installation of this pack disable the default spiral and curved builders, but I do not think this is possible. If anyone knows of a way, please let me know!

## Options

This builder comes with a large number of options. (I count 18 distinct shapes, before even considering the number of steps.) Not all options are compatible: some will generate a "Bad Parameter" dialog box, with explanations.

StepHeight

  The height difference from one step to the next — the height that a player climbs for each step.

StepThickness

  The actual height of each step block.
  This is usually greater than StepHeight; setting the two to the same value will make a staircase where the steps only touch at an edge.
  If StepThickness is less than StepHeight, each step is totally separate from its neighbors.

StepWidth

  Width of the steps.

InnerRadius

  Distance from the center of curvature to the inner edge of the steps.

StepsPerCircle

  AnglePerStep * StepsPerCircle = 360 degrees, if you prefer. I use this because I work in radians, and so do UnrealScript's trig functions. It would take you a long time to type in all the digits of pi. ;)

NumSteps

  The number of steps in the staircase. This can be larger than StepsPerCircle in some cases only — if you try something that isn't possible, the 'Bad Parameters' dialog box will explain the problem.

AntiClockwise

  Yes, I'm English. Counterclockwise if you prefer.

TopStyle

  Select whether you want sloped top, or regular top with steps, or a flat top.
  The flat option will make stairs like the CurvedStair builder, and will not allow more than a full circle.
  Note that a full circle, flat base brush, as with CurvedStair builder, will meet itself and two polys will touch — the subtracted brush will have a sheet effect between the first and last steps.

BottomStyle

  Same as above. Note in particular you can't have both set to flat — the code is complex enough without building cylinders too.
  You can't have both set to slope if StepThickness isn't strictly greater than StepHeight, since the brush would then have zero thickness throughout.
  The builder checks for these and other problems and explains them as you go.

GroupName

  Works the same as in the native brush builders.

## Known issues

The textures on the walls are turned by 90 degrees. I plan to do... sod all about this, because this builder has been murder to write.
Contact me if you find any bugs.

## Future development

Several new features are on the way.