Firstly, I'm trying to create a scene in my quest where the player enters a room and a ghost appears, who then walks up to the player and starts a conversation with them - a perfectly standard forcegreet package/scene. However, when tested in-game, the ghost appears and walks toward the player, stopping a short distance from them, but refusing to start a conversation. If you then move away, they continue to follow after you and wait at a certain distance, but still without talking to you. If you then decide to talk to him manually, he starts conversation with the topic he was meant to forcegreet with, and the quest continues as expected.
I have tried to enact the forcegreet by a simple AI package on the ghost with a condition of the quest stage being a certain value, and I have also tried a scene. Both have exactly the same result, leading me to believe that it is a dialogue issue. I have tried adding a 'hello' topic that is the first part of the conversation and the topic the forcegreet enacts, and I have also tried creating an actual topic to have the forcegreet being with - neither works. Making the branch a blocking branch does nothing to fix the issue except skip over the 'hello' topic and move straight onto the next one.
Secondly, in the same quest, the quest-giver gives the player three tasks, that the player can either succeed in or fail in. I want to declare some kind of global variable in the quest script that keeps track of how many tasks the player has failed, and to be able to increment this value by 1 at certain quest stages. Simply declaring an Int Property in the main quest script doesn't work, it continually gets deleted and cannot be reference from stage fragments either. I realise there is a GlobalVariable type, but I couldn't get that to work in the way I wanted, although I may just be doing something hopelessly wrong.
Apologies if I missed out any important details anywhere.