For example, the offsets of UDim2 can’t be assigned to, making code like this fail:
script.Parent.Bars.HealthBar.Size.X.Offset = .5
The right way to do it is to create a new UDim. This is counter intuitive to most programmers because usually you never want to allocate new objects like this if you can avoid it.
So a note here might be nice:
I forget if Vectors work the same way in Roblox Lua. The docs don’t say.