The main difficulty in writing interactive fiction is how so many basic techniques of traditional fiction fail in the new medium. The player's need to examine the text for gameplay clues wrecks the emotional effects the author works to build. The author's multidimensional characters clouds the player's ability to see the game clearly enough to play it. The player's ability to choose alternate options wrecks the author's carefully orchestrated plot. All of these are large hurdles and we're all casting about for techniques to deal with them.
First comes control versus empathy. It is hard to empathize with a character when one is also scanning their dialogue for phrases relevant to gameplay. Any form of work that either grants true control or at least seems to can confuse the player with which mode he should be in at any given time. "Should I sit up and fix things, or sit back and feel things?"
The solution here is to aim at a different set of emotions entirely. Traditional narratives typically aim at basic emotions like fear, sadness, or happiness, but do so by empathy. The happy audience member is happy because the heroes are happy. Interactive fiction best aims at second-order emotions like guilt, pride, or guardianship. These emotions share a social component in that they are reactions to society's assumed reaction to one's own actions. For the interactive author their social basis is less important than their origin in one's own actions.
So the emotions an author should try to build in a player should be the ones which result from exerting control. The player shouldn't be made to feel sadness at a character's plight, but pride for fixing it, shame for ignoring it, or guilt for making it worse. First order emotions merely prod the player to act, and if the work doesn't support this desire it's seen as non-interactive in the ways that actually matter.
Our second problem, believability versus playability, exists in works with characters that are both interactive and will also influence or outright decide gameplay outcomes. Any author who has heard their players lament a lack of agency specifically because the NPCs are a blackbox or because it was never clear how to diplomatically control an NPC knows this problem. Believable characters aren't simple, but only simple characters can be manipulated for gameplay purposes.
The solutions here are stress and foreshadowing. Stress has a way of simplifying a person to their more basic selves by wearing down the less necessary parts of themselves. Fortunately, a story's rising action means the further a story progresses, the higher the stakes will be, and so the more stress everyone experiences. Believable characters matter most in the beginning of the story, when the player judges the work as worth playing or not. Pliable characters matter more near the end when the player executes his plans for a particular ending.
But if a player's early-game actions will have non-obvious long-term consequences due to its effect on an opaque character, then foreshadow it. Foreshadowing is purposefully vague, which helps when the exact trajectory of the story isn't known, but it serves a slightly different purpose here than in traditional fiction. Rather than creating mystery or anticipation, which a locked door or treasure chest do more directly, in interactive fiction it signals NPC agency. The NPC can bring up those actions later to justify their own.
Finally, agency versus plot seems an impasse impossible to reconcile. Plot is the series of events that is in many senses the story itself. It's the structure on which everything hangs. But being a sequence, it requires the player to play along with it and not break the sequence by choosing to do something else. So either the player has no real choices to make, or the author must write many, many plots branching out. It's one of the most fundamental problems in interactive fiction.
The solution here is already in many writing books. These books say plot emerges naturally from good characters. Game designers know about emergence, that thing which hides such strategic depth within the simple rules of Chess. These books say when a character acts it will affect other characters, whose reaction causes an act in response. Their counter-action affects others including the original character, who will act again in turn. Around and around it goes, actions causing reactions spawning more actions until something or someone irrevocably breaks. That cycle is plot, and the character who started it all is the antagonist.
With an appropriate cast of complex characters, plot writes itself as an almost infinite loop of reactions to reactions. Under this system whether the reactions of one of those characters comes from an actual human or not is irrelevant. The old alternative, writing several versions of the plot for each sequence of player choices, is like Chess defining rules for all manner of interactions and setups that occur throughout the game, rather than just defining how each piece moves. But in the conception phase of a work, events and locations spring forth most easily with the character specifics backfilled to support the action, so plot seems a basic construct rather than a derived one.
There are plenty more problems to solve in the interactive fiction space, and even when we know the answers conceptually is can still be very difficult to make progress on. Either our well-honed writing techniques need to be partially unlearned, or we have a large mass of "plumbing" code just to get off the ground, or our best story ideas reveal themselves to be as ill-suited toward interactivity as it is toward pantomime. But the more perspectives we gather on potential solutions or non-starters the easier it becomes. So here were mine.