Yeah, I'm in a pickle. Doing fps framework is hard and I only began to do testing with a test script and got this error now I'm confused at this point.
-- Variables
local PLR = game.Players.LocalPlayer
local runS = game:GetService("RunService")
local Camera = workspace.CurrentCamera
-- Gun setup
local gun = game.ReplicatedFirst.Guns.UMP45:Clone()
local Settings = require(game.ReplicatedStorage.GunModules[gun.Name])
local WeaponPos = Vector3.new(0,-0.5,0)
-- Loads run service
runS.RenderStepped:Connect(function()
gun:SetPrimaryPartCFrame(CFrame.new() * WeaponPos)
end)
gun.Parent = Camera
local idle = gun.Humanoid:LoadAnimation(game.ReplicatedStorage.GunModules[gun.Name].Animations.Idle)
idle:Play()
Any help is needed

10 comments
Before you ask the module script just has gun settings like RPM, Mag size and Spare ammo
CFrame.Position will return Vector3, so you can do CFrame.Position = Vector3 to cast CFrame to Vector3 and vice versa. Credit to @TheDeadlyPanther ;) https://scriptinghelpers.org/questions/25247/vector3-and-cframe-conversion
@Block_manvn can you give me an example of how can it be used so I don't mess up as I'm an experienced coder
edit: not experienced!
In line 13, do like this instead gun:SetPrimaryPartCFrame(cframe.Position * WeaponPos) --make a variable of CFrame.new() first Note: Im not experienced coder!
Thanks mate
Ill try this out
Error: 10:12:46.981 - attempt to multiply a Vector3 with an incompatible value type or nil
Do you make the variable first?
variable?