You can always use peasants to slow down the advance of shock units. They'll get bogged down due to the vast numbers of infantry (peasants) they have to pass through. Whilst the shock units are tied-up, use your skirmishers to hit them repeatedly. It doesn't matter if the peasants take heavy casualties due to their low upkeep / recruitment costs - you can cost effectively retrain them or recruit replacements for next to nothing.