Roughly my code, again the tool when parented doesn’t asign into character’s arm
local char:Model? = localplayer.Character
if not data or not char then return end
local model = CharacterViewport.World:FindFirstChildOfClass("Model")
char.Archivable = true
clonedChar = char:Clone()
local tool = repStor.Tool:Clone()
local humanoid:Humanoid = clonedChar:WaitForChild("Humanoid")
clonedChar.Parent = CharacterViewport.World
tool.Parent = clonedChar