Gun aiming gives unexpected offset for the viewmodel

Im trying to make aiming down sights for my gun system using attachment for the viewmodel offset.

My code for ViewModel offset:

        local add = CFrame.new()
	
		if tool then
			for i, val in pairs(tool:GetChildren()) do
				if val:IsA("CFrameValue") and string.find(val.Name, "_OFFSET") then
					add*=val.Value
				end
			end
		end
		
		local originalcf = workspace.CurrentCamera.CFrame  * add * CFrame.new(0, -2, 0)  * JointM6D.Transform

Values in the tool:
image
For aiming im just tweening the AIM_OFFSET value with this formula:

     local aimincf = AimAttachment.WorldCFrame:ToObjectSpace(Camera.CFrame)

It gives me a minor offset like this:


Its getting fixed when i remove the FP_OFFSET value COMPLETELY, the FP_OFFSET value is too big compared to the offset it gives me so i can’t understand what makes it happen
Result after i remove FP_OFFSET value from the tool completely:
image

quick question in the picture showing its offset, is that tiny dot where it actually aims?..

also um this line:

local originalcf = workspace.CurrentCamera.CFrame  * add * CFrame.new(0, -2, 0)  * JointM6D.Transform

uh theres -2 in there for y axis ( im dumb )

as for the picture, yes, this dot is the centre of the screen and where it should aim

the -2 for Y is for viewmodel to be on the same height as HumanoidRootPart in the first person
i dont think this line affects the aiming in any bad way at all

what is the AIM OFFSETS’ value?

aimincf value
didnt you see what ive typed?

uh ye i see, also uh if u remove FP_OFFSET, and it works, then why dont u remove it? ( oh ye i feel more stupid now )