I made creator for stairs (or walls), for now only straight, not bending. It uses instanced static mesh for visuals and invisible mesh for collision. All done in blueprints with nice randomizing options.
It is based on blueprint 3rd person game template, but should be easy to migrate.
Some pictures, each brick is separate random mesh from array, that is easy to expand:
Options have tooltips, but just in case:
General options:
WX,WY - columns and rows of stairs/brick wall
Step_H - Z offset of each new row
Scale - scales whole blueprint
Brick_offset - this shifts every other row horizontally
Cos_offset_mlt - simulates wear of effect on middle column, moves all bricks in Z axis proportionally to cos function like on 1st picture
Mesh_size - this allows for nice gaps or a bit overlapping to hide holes.
Randomness settings:
SEED its 42
Random Rot Scale - rotates all meshes randomly from -value to +value in degrees
Random Major Rotation - flips meshes by multiple of this value, 90 or 180 works best unless you have non boxy meshes.
Random Major Rotation Steps - how many times it can flip mesh, 0 will flip some by major rotation, so set major rotation to 0 instead for non flipping.
Now quite important debug options:
This blueprint uses invisible static meshes, they are fine until 10x10 steps or so. After that working in editor is quite impossible. Keep them both unchecked for editing, turn on only for game or debugging colision.
And use this way for collision only when you really need it.
By default collision meshes are turned off. And instanced static mesh collision most of times does not work. So if you want to try it in game turn on “Spawn Collision?”
Download link: Dropbox - Error
PS. Working on improving it, new version will have option to approximate collision with single mesh for row or column of bricks.