Critical hit isn't implemented (possible idea for the future, though) and might be tough (impossible?) to do with a "conditions" tag without some really complicated setup. The other two should be doable. I'm not in a position to test them this minute, but try these.
condition=speaker.isStateAffected(###) (Replace the "###" with the ID of the Sleep state)
condition=$gameTroop.turnCount() >= ### (Replace the "###" with the number of turns you want to check for. Make the >= into == if you want it to ONLY be a specific number of turns - like 5, not 6 or 7.)