I guess you have to manually set the talkpositions for eachs scene to prevent the chasing char running to invalid places...
My idea is that you could call the action (which you set and name them always the same in each scene) by the talk-action for the charactar via lua.
So when using "talk"/"interact"/... on the chase-char you execute the a script like
scene = game:getLink(VGameCurrentScene)
startAction("scene.SceneActions[interact_chase]") *
*I did not tested this
Inside the "interact_chase" action for each scene you could tell the characters to go to different places. After they went to the correct place you can call another action which is the same for every "interact_chase" scene action to proceed further stuff