I guess this is because I haven't marked dirty fighting as melee. It can be applied to ranged or throwing attacks as well. I should disable the automatic update once the user has changed them once.