How can I handle critical failure without slowing down the action?

In my last session, my group had in a single encounter over 8 botches, I lost count in fact!

At first, I was statistically amazed at how our ranger botched 4 rounds in a row (in-game interpretation would equal to a birth-deficient kobold with cataracts trying to throw a rock point-blank at a boulder and missing), but then it became agitating coming up with ideas on how to “punish” a botch.

Normally our DM says: “On 1 your bow string snaps, on 2 your arrow hits the fighter adjacent to the enemy, on 3… blah blah blah” and rolls 1d4 to determine the outcome, which in my opinion slows down the fight and does not add to the role-playing experience at all, not to mention each class requires different actions, while AoE attacks can critical hit one target but botch on another… However, I feel critical failure should exist as a means of balancing natural 20 and making multiple attacks during a turn more risky. Being under constant life-threatening stress, even a master would make a mistake, or grow reluctant not knowing his enemies’ traits.

All of the above led to one rational question: how can I introduce critical failure in a way that doesn’t slow down the action?