Is it possible the awful follow system could finally get an overhaul? It's annoying how pretty much every other post an NPC starts following you, which completely breaks any sort of conversation or roleplay. It's getting extra obnoxious now because the newer models take longer to process requests on top of how incredibly slow even already processed text crawls onto the text box. Please, please fix the annoying follow behavior. At the very least a solution would be to remove it from chat entirely and just add it to the ... menu where leave, give item, and give gold is, just add it as "ask to follow you" and remove it happening during conversations.
I should clarify, it isn't the dialogue that takes a long time to generate, that only takes 5-10 seconds, however the text speed on already generated dialogue is painfully slow and often takes longer then the actual generation did. But whenever a character starts to follow me, if I want to continue the conversation, I have to end the dialogue and then talk to them, but they get stuck "thinking" for 40 seconds to a minute or two.
You can semi speed up the text speed by holding down the left mouse button.
The follow mechanic is yeah, sometimes a big hit or miss. We're having a party and I say: "let's get this party started" suddenly everyone wants to follow me, but when I talk to X and they say let's go to Rosy's place, even after saying for the fifth time, come on, let's go follow me, nothing happens...
The "ask to follow you" button is a great idea, and I second it.
That is quite annoying for me as well. Looking at the console while playing, i see a lot of those situation come form misinterpreting "follow" by the AI. Instead of "In this excerpt, is Mirel currently following Sybil somewhere?" I'd try "... did Mirel agree to physically follow Sybil somewhere?" because I sometimes see that the logic is sound, just the question asked was not precise enough.
In my example below, the reasoning for starting the follow routine was just talking by the crate: "Mirel is actively engaging Sybil with playful banter and offers to show her around, indicating she wants to continue the interaction." - and they would still be talking if the dialogue was not terminated due to following. Above that there is a check if the location changed, which seems to confirm that the AI knows what is happening: "The conversation does not mention a change in location; it focuses on the crate and tools."
Actually, maybe it would be best to just remove the part of the procedure that terminates the dialogue? That way we could role play our way out of it - I told NPCs to stop following me many times, just to start a new conversation to stop the follow behavior.
It's difficult to see the whole picture by just looking at the API calls, because you're not seeing the decision trees that trigger them in the first place. There are many hours of trial and error, and sometimes performance implications, behind why these things are worded in the strange way they are.
As for your suggestion, it opens up other creative ways of misinterpretation. "Sure, I'll take the road to the capital with you later tonight." -> Clearly she agreed! -> Following you! You could add more layers of various checks to account for this kind of misinterpretation here, but at some point you have to, again, start thinking about performance. I still believe it's a decent suggestion, and I will try replacing the already existing double checks with it.
Starting at 1.6.2d, this also no longer forcibly ends the dialog, and works the same as it does when talking to multiple NPCs.