But I want them to be in specific positions and manually changing the CFrame offset from the HumanoidRootPart sounds extremely tedious, especially if I want to have a lot of parts in the game that can be attached to the player, and I don’t want to have them pre-attached to the starter character.
Is there an easier solution to visually place out these parts like in the picture and when I clone them to the player’s character, they’re in the same position without needing to manually change the offset for each part?
Make all the parts you want into a model, then weld all the parts to the models PrimaryPart and then move the primary part to where you want, and then weld it to the character
you could create a dummy and put a folder in it called parts, and then place all the named parts in the correct position relative to the dummy like in the image you provided.
when you need to position a part onto a character you can then lookup the correct part in the folder of the dummy, find the relative CFrame to the dummy hrp and apply this offset to the new part at the character hrp. Example:
local rCFrame = dummy.HumanoidRootPart.CFrame:ToObjectSpace(dummy.Parts[partname].CFrame)
newpart.CFrame = char.HumanoidRootPart.CFrame * rCFrame
I don’t think that’d work because the parts won’t follow the primary part if they’re using a weld constraint, and I can’t use a normal weld because it doesn’t offset.
yes it would, set the position first then weld using the constraint. I’m guessing you’re making outfits so they should be premade anyways and all you’d need to code is welding the primary part to the player