Stick player's HRP to wall

I’m having this problem, when player touches the yellow parts, start climbing, script makes him to “anchor” at it’s current position only with the part’s Y coordinate and part’s lookat cframe, how can i make the player to get more sticked to the part?

                -- Set BodyAlignOrientation to face the ClimbPart's LookVector
                BodyAlignOrientation.CFrame = CFrame.new(DefaultPositionVector, ClimbPart.CFrame.LookVector)
                BodyAlignOrientation.Enabled = true

                -- Align BodyAlignPosition with ClimbPart's Y position
                local HRP_Pos = PlayerHumanoidRootPart.Position
                BodyAlignPosition.Position = Vector3.new(HRP_Pos.X, ClimbPart.Position.Y - 1, HRP_Pos.Z)
                BodyAlignPosition.Enabled = true

I already see the problem, don’t know how to make it to attach more to the part, because if i place hrp on the part’s position, player will go to the center of the part and i don’t know about any function to solve this
image

3 Likes
BodyAlignPosition.Position = Vector3.new(HRP_Pos.X +/- (small number, experiment until it looks good to you), ClimbPart.Position.Y - 1, HRP_Pos.Z)type