I'm all for changing something if adding a var to everything in obj/item isn't viable. Originally, in obj/item, I had put  IsReflect() and ReflectChance(), and the way it calculated reflect was under reflect_check(), in the following statement:

if(IsReflect() && prob(ReflectChance()))
   return 1, etc

The main problem with making all reflect chance uniform...is that reflect chance is uniform. the base for ablative is 40, and dualswords with this change would be 100 when wielded. Changing it to 50 on both is an unnecessary buff (Why does it randomly reflect tasers even when the person is on the ground, the item is stupid and poorly thought out but I didnt change any values on it because it was already in). The fact that IsShield() is uniform is a reason why people (me included) think it's stupid. Do we really want another IsShield()?