I have a local script in the starterpack that puts a random weapon from a folder in replicated storage called "Weapons" but the weapons don't work when you spawn, the problem isn't in the weapon script because they do work when they are just in the starterpack
code:
Weapons = game.ReplicatedStorage.Weapons:GetChildren() local Weapon = Weapons[math.random(1,#Weapons)]:Clone() Weapon.Parent = game.Players.LocalPlayer.Backpack
you're using local script, which is works only on "client" not on server, you better use remove events to make it work. The clone is not actually clone, it is just visual try to do this > create event named "WeaponEvent" and move it in repStorage
-- local script (in starter pack/starter gui) local Event = game.ReplicatedStorage:WaitForChild("WeaponEvent") Event:FireServer() -- script (in serverscriptservice) local ReplicatedStorage = game:GetService("ReplicatedStorage") local Event = ReplicatedStorage:WaitForChild("WeaponEvent") local function RWeapon(player) Weapons = game.ReplicatedStorage.Weapons:GetChildren() local Weapon = Weapons[math.random(1,#Weapons)]:Clone() Weapon.Parent = game.Players:FindFirstChild(player.Name).Backpack Event.OnServerEvent:Connect(RWeapon)