As with most of my questions, this is more of a general "how to handle a special situation" and not a plea to solve an existing problem.
What is the best way to handle story deadlocks (as in: The story can't progress as originally planned and possibly even not at all)?
For example:
- The PCs have killed a crucial NPC, or gotten him killed or "unavailable" through other means (Starting a battle, betraying him to the city guard if he's a criminal, ...)
- The PCs have made enemies with a faction they need to continue the (original) story
- ...
Aside from the obvious advice "don't let it come to that", "plan ahead for those situations" and so on, what can I do if I am surprised by an unexpected action of a PC that makes the original arc unviable?
The things I thought about are all pretty boring:
- Divine intervention. The worst thing you can do as a DM, in my opinion, unless there is absolutely no other way.
- Adding a new NPC to replace the old one and going on as planned. Will create nasty plot holes (How did that guy find out about what you are doing, why was he never mentioned before, ...). Depending on the situation, this might be viable, but sometimes it makes too big of a plot hole (For example if you accidentally betrayed the local crime lord, who was the only one who had the exact plans you needed).
- Rollback. Pretty much equals divine intervention, with the added bonus that the PCs now know that the NPC is important, which might give away important plot twists. Depending on how good the players are at seperating player knowledge from character knowledge, this may sometimes be the best solution, but I'm still not satisfied, it feels like cheating to me.
- Improvising and discarding the original story. Makes for some great adventures, as I know first hand, but can be frustrating if you had an entire campaign planned that has become obsolete in its current form.
I have only been DM for two or three times yet, so I don't feel ready to improvise an entire adventure, like our old GM used to.
So, the question is: what have I missed? What other ways are there to rescue the story without (obvious) cheating?