
Regarding asshole characters and not echoing the sentiments about ooc communication: use your surroundings.
Whenever someone showed up to rp with Zhi, I'd give them a reason other than her to stick around. NPCs, spilled drinks, a moral quandary, money, something related to their characters' interests. That way, even though they might be put off by Zhavi's behavior (and questioning whether I, as the player, really wanted to rp), there would be clear signs saying PLEASE STAY AND RP WITH ME OMG I WILL THROW ALL THE THINGS AT YOU IF YOU JUST STICK AROUND I PROMISE YOU'LL HAVE FUN.
And then if I doubted that they were actually having fun I might send a little check up ooc message -- "zhi can be such a butt, but I really like __ about this setup, are you okay if I push with ___ happening?
"
Drag 'em on an adventure (or, at the least, present the opportunity). Don't just expect them to sit there wallowing in passive aggressive asshole.
EDIT (because I can't post without 'em):
Also, personally, when building an asshole character I think it's wisest to give them reason to move. Zhavi was never just sitting around in a tavern, she was always in the middle of something, regardless of whether or not I was emoting about it. Therefore it was always easy for me to pick up and go, drag someone, whatever.
I aligned her weaknesses (and relative arrogant youth) to make it easy for her to make mistakes (GUESS WHAT WALKUP FRIEND, MISTAKEN IDENTITY TIME LET'S GO ON A HEIST), or to just have her not give a shit when a convenient person presented themselves to be used in one of her schemes.
You know, you judge the walkup character, wait a few posts to get a feel for them, then tailor something to them so you can give them something to enjoy other than a bad or standoffish personality. Create the circumstances that force the interaction that gives them something to react to and act with so they don't feel like they're forced to carry the interaction.
Whenever someone showed up to rp with Zhi, I'd give them a reason other than her to stick around. NPCs, spilled drinks, a moral quandary, money, something related to their characters' interests. That way, even though they might be put off by Zhavi's behavior (and questioning whether I, as the player, really wanted to rp), there would be clear signs saying PLEASE STAY AND RP WITH ME OMG I WILL THROW ALL THE THINGS AT YOU IF YOU JUST STICK AROUND I PROMISE YOU'LL HAVE FUN.
And then if I doubted that they were actually having fun I might send a little check up ooc message -- "zhi can be such a butt, but I really like __ about this setup, are you okay if I push with ___ happening?

Drag 'em on an adventure (or, at the least, present the opportunity). Don't just expect them to sit there wallowing in passive aggressive asshole.
EDIT (because I can't post without 'em):
Also, personally, when building an asshole character I think it's wisest to give them reason to move. Zhavi was never just sitting around in a tavern, she was always in the middle of something, regardless of whether or not I was emoting about it. Therefore it was always easy for me to pick up and go, drag someone, whatever.
I aligned her weaknesses (and relative arrogant youth) to make it easy for her to make mistakes (GUESS WHAT WALKUP FRIEND, MISTAKEN IDENTITY TIME LET'S GO ON A HEIST), or to just have her not give a shit when a convenient person presented themselves to be used in one of her schemes.
You know, you judge the walkup character, wait a few posts to get a feel for them, then tailor something to them so you can give them something to enjoy other than a bad or standoffish personality. Create the circumstances that force the interaction that gives them something to react to and act with so they don't feel like they're forced to carry the interaction.