Despite never actually having finished a game (<sob>), in my efforts to try and get there, I have realized some things that, at least to me, were interesting and caused a shift in how I looked at my approach to IF. Since I actually have all three in my head at the moment, I thought I'd get them down in case anyone else finds them interesting as well. (Keep in mind that these are just how I look at things. If your view is different, that's fine. Nothing is absolute.)
An IF game is a conversationI covered this in my earlier "Conversations" thread, so I'll distill it down. In an IF game, the player enters text, and the game responds with text. This back and forth (ideally) is more than just static descriptions of rooms and objects, rather verging on a dynamic conversation with a counterpart sitting in the game world and relaying information back to player queries. And the varied, engaging responses you'd want with any in-game character applies to the main in-game narrator as well. Instead of looking at it as room descriptions, object descriptions, character dialogue, etc, we can look at it all as the same sort of thing and, in an ideal world, apply the same tools to them all, creating a truly interactive experience.
The progression of game responses should form a narrativeIf you imagine the game responses as being someone sitting on the other end of the screen, sending text back, then your expectations of the responses changes from just being canned responses to something much more dynamic and in tune with game world state. In particular, I always wanted my responses to seem like something someone would say (as much as reasonably possible), and one thing that people don't do is long-winded repetition.
Let's look at a canned response to a simple action, eating a candy at a party.
> eat candy
You eat a candy from the dish.
> eat candy
You eat a candy from the dish.
> eat candy
You eat a candy from the dish.
> eat candy
You can't eat any more.
Take the responses and put them together: "You eat a candy from the dish. You eat a candy from the dish. You eat a candy from the dish. You can't eat any more."
You would never see that in a book (I hope) nor would you expect someone to speak that way. Now here's another sequence, with more "progressive" text:
> eat candy
You eat a candy from the dish.
> eat candy
You eat another candy from the dish.
> eat candy
Looking around to be sure nobody is watching, you take a third candy from the dish and pop it in your mouth.
> eat candy
You can't eat any more.
Take these responses and put them together: "You eat a candy from the dish. You eat another candy from the dish. Looking around to be sure nobody is watching, you take a third candy from the dish and pop it in your mouth. You can't eat any more."
It's not the most exciting text, but the key thing in this to me is that the game responses are changing based on your actions and responding to what has occurred in the past. What I always wanted in my games was that level of responsiveness, where the game is "aware" of what has happened and makes intelligent responses based on that. What I noticed with that, though, is that the responses can end up being a narrative, where you could take the responses to the player's actions, string them together, and end up with what is nearly a story of what the player has done.
Here's another example. Let's say you have a door and a key. Depending on the order you encounter them, you'd want the text to be different:
> x door
The door is solid and, unfortunately, locked. There is a strange star shaped hole in the door that looks like it could take a key.
> x key
The key is star shaped. It looks like it would fit the hole in the door.
Other order:
> x key
The key is star shaped. You wonder what it might unlock.
> x door
The door is solid and, unfortunately, locked. There is a strange star shaped hole in the door that looks a lot like the key you found.
Now, you might not want to be so transparent in making connections for the player. But the key thing (no pun intended) is that the responses evolve based on what has happened. As your knowledge of the game world progresses, the responses progress in step with that knowledge.
Exploring conversation space can be analagous to exploring roomsIn a typical IF game, you explore rooms. You are here and then you go north and then you're somewhere else. And you can proceed from there and explore more rooms, or you can ask more about this room, or you can go back and explore where you were.
I began to see NPC conversation as following a similar pattern, where "room" can be replaced by "topic". You start off with a topic, and the associations from that topic lead you off to other topics, which lead you on to others. Or you can dwell on a topic or return to previously explored topics. But it's the associations and topic exploration that could make an NPC conversation seem like an actual conversation, and not just canned reponses to queries. (And, of course, you'd want the topical responses to change over time based on what you have already discussed. It doesn't make sense to me to ask a character about the murder, get a response like "She bursts into tears. 'He was a cruel man, but I loved him. I could never hurt him.'", and then when you ask about the murder *again*, get the exact same response "She bursts into tears. 'He was a cruel man, but I loved him. I could never hurt him.'")
Again, these are just some things that occurred to me as I explored making games. Various aesthetics that I couldn't put into words suddenly, at some point, crystalized into handy catch phrases.
Maybe they can be useful for someone else or just make you ponder things in a different way for a while (or maybe they all already make sense).