I want to increase the size of my NPCs but still make them animatable and keep their accessories in the right position/size. How would I do this?
Note: I’m not tweening the size or anything. I just want to change it to a bigger value.
I want to increase the size of my NPCs but still make them animatable and keep their accessories in the right position/size. How would I do this?
Note: I’m not tweening the size or anything. I just want to change it to a bigger value.
There are different ways to achieve this depending on whether you are using R6 or R15 rigs. Which are you using?
R15
This text will be blurred
I’d recommend posting stuff like this in #help-and-feedback:scripting-support.
Change the NumberValues in the humanoid:

Edit:
NVM, for NPCs you can use Humanoid:ApplyDescription and HumanoidDescription HeightScale/HeightScale/DepthScale/etc. You can find those properties here:
https://developer.roblox.com/en-us/api-reference/class/HumanoidDescription
local function ApplyScaling(Character : Model, Scale : number)
local Motors = {}
table.insert(Motors, Character.HumanoidRootPart.RootJoint)
for i,Motor in pairs(Character.Torso:GetChildren()) do
if Motor:IsA("Motor6D") == false then continue end
table.insert(Motors, Motor)
end
for i,v in pairs(Motors) do
v.C0 = CFrame.new((v.C0.Position * Scale)) * (v.C0 - v.C0.Position)
v.C1 = CFrame.new((v.C1.Position * Scale)) * (v.C1 - v.C1.Position)
end
for i,Part in pairs(Character:GetChildren()) do
if Part:IsA("BasePart") == false then continue end
Part.Size *= Scale
for _,Attachment in pairs(Part:GetChildren()) do
if Attachment:IsA("Attachment") == false then continue end
Attachment.Position *= Scale
end
end
for i,Accessory in pairs(Character:GetChildren()) do
if Accessory:IsA("Accessory") == false then continue end
Accessory.Handle.AccessoryWeld.C0 = CFrame.new((Accessory.Handle.AccessoryWeld.C0.Position * Scale)) * (Accessory.Handle.AccessoryWeld.C0 - Accessory.Handle.AccessoryWeld.C0.Position)
Accessory.Handle.AccessoryWeld.C1 = CFrame.new((Accessory.Handle.AccessoryWeld.C1.Position * Scale)) * (Accessory.Handle.AccessoryWeld.C1 - Accessory.Handle.AccessoryWeld.C1.Position)
if Accessory.Handle:FindFirstChildOfClass("SpecialMesh") then
Accessory.Handle:FindFirstChildOfClass("SpecialMesh").Scale *= Scale
end
end
end