I've worked around by commenting out this section of code in FPSWeapon.lua [edited to include commenting out the blood emitter.]:
--[[
--Blood emitter
e = self.emitter[2]:Instance()
e = tolua.cast(e,"Emitter")
e:Show()
e:SetLoopMode(false,true)
e:SetPosition(pickinfo.position+pickinfo.normal*0.1)
e:SetVelocity(0,0,0)
--]]
else
--[[
--Add a temporary particle emitter for bullet effects
local e
e = self.emitter[0]:Instance()
e = tolua.cast(e,"Emitter")
e:Show()
e:SetLoopMode(false,true)
e:SetPosition(pickinfo.position)
local v=3
e:SetVelocity(pickinfo.normal.x*v,pickinfo.normal.y*v,pickinfo.normal.z*v,0)
--Smoke emitter
e = self.emitter[1]:Instance()
e = tolua.cast(e,"Emitter")
e:Show()
e:SetLoopMode(false,true)
e:SetPosition(pickinfo.position+pickinfo.normal*0.1)
local v=0.2
e:SetVelocity(pickinfo.normal.x*v,pickinfo.normal.y*v,pickinfo.normal.z*v,0)
--Play bullet impact noise
e:EmitSound(self.sound.ricochet[math.random(#self.sound.ricochet)])