Skip to content
plusmouse edited this page Feb 13, 2026 · 1 revision

Latest alpha will have LSM support for borders, however the entries require the borders in a very specific format:

      LSM:Register("nineslice", key, {
        file = "Interface/...", -- Location of asset
        previewHeight = 10, -- height/width used for aspect ratio of preview
        preivewWidth = 10,
        padding = {left = 2, right = 2, top = 2, bottom = 2}, -- Padding (expanded area the texture should cover to make sure the nineslice wraps around the object properly
        margins = {left = 15, right = 15, top = 15, bottom = 15}, -- SetTextureSliceMargins parameters
        scaleModifier = 0.35, -- Scale factor to apply to the texture to modify the border width without having a tiny/large texture
        mode = Enum.UITextureSliceMode.Stretched, -- SetTextureSliceMode parameters
      })

And to make a border, and ensure that even with curved corners the status bar texture stays within them

      LSM:Register("ninesliceborder", key, {
        nineslice = ninesliceKey,
        mask = {
          file = "Interface/...", -- Location of mask asset
          margins = {left = 24, right = 24, top = 24, bottom = 24}, -- TextureSliceMargins parameters
        },
      })

Example border (nineslice) and border mask (ninesliceborder.mask) attached

blizzard-cast-bar-square blizzard-cast-bar-square-mask

Finally, for highlights you can now add your own textures to the list

        LSM:Register("platynator/sizedtexture", key, {
          file = "Interface/...", -- asset location
          width = 15.625, -- Not required to be this value, but 15.625 is the default bar height
          height = 125, -- Not required to be this value, but 125 is the default bar width
        })

Clone this wiki locally