He is good. He has shown that he is able to deliver great (and even Academy Award winning) performances if the movie deserves it. It's just that he is taking lots and lots of B-movie rolls and playing batshit crazy because he knows his fans love him for it (and maybe he doesn't give a fuck).
Every bad movie gets better with him in it (except maybe for Left Behind).