What I would like to try is have one NPC talk to another NPC. Not sure if this has already been covered in the forum.
A possible situation might be having two NPCs, on separate agendas of different length but with one location the same, so that there is a certain randomness about when they meet. The puzzle for the PC would be to find the right place and the right time to meet the NPCs and hear them talking. What they say would be used to help solve another puzzle, or be used as a tell topic to another NPC.
Any ideas anybody?
Conrad Cook was working on a scheme like this for a while. You could look up his posts.
My suggestion to him was the same as what I’ll suggest to you: Don’t bother trying to code the simulation so that what happens in the model world is what would happen in the REAL world. Fake it.
If NPC 1 is on a 6-turn movement cycle and NPC 2 is on a 7-turn cycle, they will meet in room X once every 42 turns. If they are both in room X and the PC is not there, you don’t need any code to cause a conversation. They just move on on the next turn. If the PC is there and so are both NPCs, you can print their “conversation” from wherever you like. It’s pretty easy. Just have each character check the location after every movement from room to room. If the conditions are all met, print the conversation and set a flag so that it won’t happen again.
I would also suggest that this is likely to be a very frustrating puzzle for the player. Put yourself in the player’s shoes. First he has to watch the travel of NPC 1 for 10 or 15 turns, in order to be sure what that NPC is doing. Then he has to go watch NPC 2 for 10 or 15 turns. Then he has to figure out how their travel cycles relate to one another … or else, just go to room X and wait for about 30 turns, doing nothing, until they both arrive simultaneously.
And why should the player bother to do such a thing? What sort of clue will you give the player that this rather laborious sequence of actions will be useful? This bears thinking about.
Once again your reply, as usual, solve the problem. Almost. Would I use a roomBeforeAction one the location to check the characters for the conversation, or would the location check be on the agendas?
I fully accept your suggestion about faking it instead of trying to simulate the real world, this is a game after all!
The point about the laborious routine of following the NPC is a surveillance operation. The NPC is suspect, so the PC follows him to get the evidence required (the conversation topic) which he then gives to his boss. However, it would not be much of a puzzle if the agenda only lasted three or four turns. I’m converting a book, which although I have stripped it down, I am trying to follow the logical progression of the main character’s actions.
Thanks again for your help.