Can a bullet have bullet drop and bullet reflection

The title might be a bit confusing so i will provide a demonstration:

the blue line is meant to be the bullet trayectory

this is the codei have so far:

	local ignore = {plr.Character}

	local params = RaycastParams.new()
	params.FilterDescendantsInstances = ignore
	params.FilterType = Enum.RaycastFilterType.Blacklist
	
	local connection

	connection = run.Heartbeat:Connect(function(dt)
		
		local hum
		local hat
		
		local newpos = bullet.CFrame.LookVector * 100
		local oldpos = bullet.Position
		local hite

		for i, v in pairs(bullet:GetChildren()) do
			if v:IsA("Attachment") and v.Name == "detector" then

				local oldpos = v.WorldPosition

				local newpos = v.WorldCFrame.LookVector * 100


				newpos = newpos - (Vector3.new(0, workspace.Gravity, 0) * dt)
				oldpos = oldpos + newpos * dt


				local hit = game.Workspace:Raycast(oldpos, newpos, params)
				
				hite = hit
				
				if hit then
					if hit.Instance.Parent:FindFirstChild("Humanoid") then
						hum = hit.Instance.Parent:FindFirstChild("Humanoid")
					else
						--print("rd")
						hat = true
					end
				end

			end
		end

		if hum == nil then

			newpos = newpos - (Vector3.new(0, workspace.Gravity, 0) * dt)
			oldpos = oldpos + newpos * dt
			bullet.Position = oldpos
			bullet.CFrame = CFrame.new(oldpos, newpos)
			
		elseif hat == true then
			local norm = hite.Normal
			
			local reflect = (newpos - (2 * newpos:Dot(norm) * norm))
			newpos = reflect
			
			oldpos = oldpos + newpos * dt
			
			bullet.CFrame = CFrame.new(oldpos, newpos)
			
			hat = false
					
		else
			connection:Disconnect()
			bullet:Destroy()
			
		end
	end)

try using :ApplyImpulse(). Here’s a video that can help you with this Projectile Physics - Roblox Scripting Tutorial - YouTube. What I did was clone the bullet and position it at the gun then I used :ApplyImpulse.
note: If the bullet is really small and traveling at high speeds it might phase through things.
Here’s a video of the gun I created:
Roblox Bullet Physics - YouTube

Well the thing is that if i were to use physics i would depend on touched events, these are very unreliable, thus why im using raycasts.

Im not very good at this type of stuff so I cant help you.