Aggressive players who publicly disagree with you:
This is their game as much as it's yours. Without them, it's not happening. Without you, it's not happening. It's a mutual thing, and it's a difficult line to draw. Essentially, in that game, you had two conflicts: a disagreement in terms of IC content, and a disagreement in terms of OoC discussion. I rarely find that it's difficult to resolve IC content disputes, especially if both players have a similar idea of where things should go.
The problem was OoC communication. To an outsider, it looks as though the player was overly aggressive in general and you were overly tenacious in trying to prove your point. As a GM, I don't deal with aggressive players, in the same way that I don't work with aggressive people in real life. They're, by definition, negative, whether they mean to be or not. Anger and frustration are fine, but talking to other people with respect is a basic, and you shouldn't have to deal with anything less. When faced with that, you have two alternatives; try to get them on-side, or kick them. There's no point dragging along somebody who is resentful. They are dead weight and have to either carry themselves or be left behind because they're only going to leave sooner or later, and it might as well be sooner. This has to be a judgement call on whether they have a point, basically. Regardless of who was 'right' or not, it's pretty clear that the player was being aggressive in the OoC, including using formatting to literally underline their irritation and referring to you and making assumptions about you directly. You shouldn't have to deal with that. In this instance, I would have had my finger on the kick button the moment that the player made their dissatisfaction personal and accused you of not caring.
At the same time, be aware that being overly tenacious to prove your point is never going to win over somebody who is an unreasonable state of mind. A large deconstructed multi-quote post talking somebody through something is great in an academic setting or in a reasonable dispute; it's clear, and gives you lots of time to make your point eloquently and in detail for their perusal and assessment. In conflict, however, it only gives them things to pick at and makes you surer that you are right, and therefore less likely to compromise and more likely to be aggressive yourself.
This is fiction, after all, and there are edit buttons if necessary. If you have a working relationship, any IC content-issue can be fixed. I'm not too familiar with this kind of game, which seems to be the kind in which GM's will expressly and actively punish or reward players based on their actions, so perhaps that's not in the spirit of the thing, but, still; if you want to keep a dissatisfied player on board, and, frankly, if they deserve it, you have all the tools at your disposal to give them a better experience. That is part of your duty as a GM; keep your game viable, and the satisfaction of the players is one of the most fundamental cornerstones.
Going dark:
It happens. It does. It sucks. There's nothing you can do. You can't compete with RL for attention, and, frankly, if you try, you're not being fair (not that I'm saying you are doing that).
What you
can do is invite an honest and open environment and leave yourself options for compromise. In the game I'm running, Wolf Manor, we have cast members who have had finals, theatrical tours, job-hunting, and, in my own case, a mini-breakdown. However, we communicate well, we warn each other if there's going to be some no-show, and we trust them when they say they'll be back, and they are. The game's therefore slow, but still going. Meanwhile, when one player was struggling, I made it clear that if RL was going to be a problem, we would understand, but if they could give some notice and maybe be in it for one or two more posts to tidy up before their exit, that would be really helpful on our end.
What I try really hard
not to do is to probe. If a player has decided to leave your game, or you suspect they might, 'why are you leaving?' is pressurising and invasive; if they don't like the game any more, they might feel bad about it or shy (but who hasn't been there?), and that information is of no use to you; if they have RL issues, they may be private. They may volunteer that information, but you almost certainly can't help them if they've just lost interest or the free time they were using. The information that you need is;
- Whether they're leaving. It's their choice, and you have to react to it.
- If there's anything you can do to make the game better for them.
The first one is pretty easy to ask. Be tactful and non-aggressive and use PM's. The second one requires a bit more nuance, because you can't just do whatever one player wants every time they're inactive, but if there's something you can tweak that will increase your players' satisfaction generally, you're going to want to tweak it. However, this is almost impossible to do if a player has already decided that they want out, so you really want to foster an open atmosphere in your OoC where people can suggest things and you can be positive about them. Although the player was being aggressive in the OoC (and let's discount that), that was a pretty clear indicator that they weren't happy with a decision that was made; this was as big a clue as you can get, and steadfastly sticking to your guns, even if you think you were right, does not present you as an open-minded person interested in their players' enjoyment. It's a balancing act. You won't make all the right calls for all the right people, but you're (presumably) human, and other reasonable humans will understand that - but if you always stick with your original plan and always make the calls
you think are best or because 'rules is rules' (either in terms of IC content or OoC discussion), your players won't feel valuable to you.
The easiest way of doing this, by the way, is pre-emptively rather than retrospectively. Making sure there is a steady supply of goodies to enjoy and meaningful stuff to actually do in the game for every character is going to keep the interest that was, by definition, there when they first posted in your interest check. If you let the interest wane, you might be able to jump-start it by working out what they want and offering it to them, but sometimes, as I'm sure we've all experienced first-hand, when it's gone, it's gone. In Wolf Manor, one player wanted to have their character pursue an NPC (controlled by me) romantically. It wasn't what I had in mind for that NPC, but, sure, what the hell? She gets the game she wants, has the freedom to explore the game her way, and it does precisely no harm whatsoever. I have absolute faith that that player won't leave unless she has to, because the game is built in part for and by her, and I think that's the feeling players want. At the same time, before we start each new section, I let the players decide what kind of section they wanted; whether they wanted plot progression or to slow down. This isn't always possible in larger groups, but in smaller groups (Wolf has six players, plus me as GM), it's more than manageable.
Be clear; be open; be positive; be trusting; and be understanding. If you look after your players, the game will take care of itself. They will tell you up-front what they need if you ask and you foster the kind of relaxed OoC environment that allows for it. If your game is GM-led with a clear plot, make this unbelievably clear from the outset, so people understand what it's going to be like. If your game is going to be player-led, with lots of freedom, you can still be pro-active by giving players options to choose from (including forging their own path) rather than just leaving it up to them.
Incidentally, while many other GM's might disagree with this, only accept players that you think you can work with. If somebody sends to me a character sheet that shows they don't understand the source material, I probably can't work with that person. If I've seen somebody on the board be aggressive and difficult, I definitely can't work with that person. As far as I'm concerned, they're ticking time-bombs. It's much easier to be clear, open, positive and understanding with people who will extend those courtesies to you.
Ultimately, my advice is that by the time you have a problem, it's probably too late to fix it. Shut the stable door
before the horse bolts. If you've allowed interest to wane, you're probably not getting it back. If you've allowed somebody aggressive in, it's only a matter of time before they'll kick off.