How could I scale players on the client

Hello there, first of all what Im trying to do is make a simple system that tween the players size when they step on specific part, I should use the client to do that coz tween the size of the players on the server won’t be smooth, I tried to do that with change their humanoid scale values but this made no difference I belive that you cant scale the player model locally with those Values. Do anyone have any other idea how to do this?
Actually They are NPCs not players but I think there is no difference. Also the NPCs rig type is R15.

The properties for scaling a player up are all part of the Humanoid: HeadScale.Value, BodyDepthScale.Value, BodyWidthScale.Value, and BodyHeightScale.Value. The normal value of each is 1. To make the player grow, increase the values. To make the player shrink, decrease the values.

So, you’d wanna tween each one individually. A clean way to do this is organize the values into a table and run a for loop through each.

-- making a player grow
local TS = game:GetService("TweenService")
local growInfo = TweenInfo.new(
    .5,
    Enum.EasingStyle.Linear,
    Enum.EasingDirection.In,
    0,
    false,
    0
)
local values = {
    player.Character.Humanoid.HeadScale,
    player.Character.Humanoid.BodyDepthScale,
    player.Character.Humanoid.BodyWidthScale,
    player.Character.Humanoid.BodyHeightScale
}

for _, value in pairs(values) do
    local grow = TS:Create(value, growInfo, {Value = 2}) -- double size
    grow:Play()
end

Let me know how that works.

I tired that already, but nothing happen the values tween to 2 but the player size doesnt change at all, when I do that on the server side the player size changed but the tween is not smooth.

1 Like