Rewrite weapon class detection to use default effect instead of effect id list