So I have tested welding a random part to a player and it worked but when I walk it moves back because its not perfectly with the position of the humanoidrootpart so now I am asking how do I weld a part exactly on the player
Use attachments to get the perfect relative position for positioning just like the default Humanoid accessory system.
You can use a normal weld or RigidConstraint, they function the same and the math is the same as well.
Rigid Constraint:
Weld formula which does the same effect:
well as said when using welds the part will move back a bit when moving