Here’s something that bugs the hell out of me in books:
Say you have a character who is an experienced bad-guy-fighter. Also say your character is facing bad guys who are desperate or ruthless. Here’s a new rule: Don’t tell me your protagonist is shocked because the villain has done something that “breaks an unwritten rule.” Don’t tell me they’re outraged at the crossing of a line that “everyone knows” shouldn’t be crossed.
It makes them sound sheltered and naive. It makes them sound stupid.
Suppose two characters are fighting in an alley. One thinks the fight should be a fair one, following the rules of a boxing match. The second goes straight for a crotch-kick.
When that first guy is lying on the ground, covering his exploded balls with his hands, should he be griping about the unfairness of ti all? Well, maybe, if you want him to come across as a fool.
Most people are decent, but there are always a few who will do any damn thing at all. They beat their aged parents and steal their money to buy beer. They kidnap little girls off the street and hold them prisoner for decades. They lynch. They rape. They burn your house down.
So if your character is going to be shocked shocked that their drug dealer shows up at their day job for their money, or that the secret vampire arch-duke will try to get at them by biting their delightfully-quirky grandmother, I’m going to think they’re… well, see my comment above about “sheltered and naive.”
There are ways to make that work, of course. If the drug dealer is harassing you at work because your son owes him a lot of money–something you didn’t know about–that might work. If two brothers get into a fight over a woman, and one brother tries to avoid permanent harm right up until the other pulls a knife, that would work, too.
But that’s the context. If you’re writing about a vigilante, a cop, or some kind of hired muscle, they should be expecting their enemies to cross lines and break rules, unwritten or otherwise.