I have found a small bug in file : HCFire.lua function DoDamage(hBurnType, bBurnType, h, b, player)
you are not using bProt when you apply the damage to the torso, you check the hProt.
Original:
if bBurnType == 0 then
player:getBodyDamage():getBodyPart(BodyPartType.Torso_Upper):AddDamage(5-(5*hProt));
player:getBodyDamage():getBodyPart(BodyPartType.Torso_Upper):setBurned();
elseif bBurnType == 1 then
player:getBodyDamage():getBodyPart(BodyPartType.Torso_Upper):AddDamage(10-(10*hProt));
player:getBodyDamage():getBodyPart(BodyPartType.Torso_Upper):setBurned();
elseif bBurnType == 2 then
player:getBodyDamage():getBodyPart(BodyPartType.Torso_Upper):AddDamage(15-(15*hProt));
player:getBodyDamage():getBodyPart(BodyPartType.Torso_Upper):setBurned();
elseif bBurnType == 3 and hBurnType ~= 3 then
player:setOnFire(true);
end
Change to:
if bBurnType == 0 then
player:getBodyDamage():getBodyPart(BodyPartType.Torso_Upper):AddDamage(5-(5*bProt));
player:getBodyDamage():getBodyPart(BodyPartType.Torso_Upper):setBurned();
elseif bBurnType == 1 then
player:getBodyDamage():getBodyPart(BodyPartType.Torso_Upper):AddDamage(10-(10*bProt));
player:getBodyDamage():getBodyPart(BodyPartType.Torso_Upper):setBurned();
elseif bBurnType == 2 then
player:getBodyDamage():getBodyPart(BodyPartType.Torso_Upper):AddDamage(15-(15*bProt));
player:getBodyDamage():getBodyPart(BodyPartType.Torso_Upper):setBurned();
elseif bBurnType == 3 and hBurnType ~= 3 then
player:setOnFire(true);
end