I am viewing the capture_wrapup_start scene multiple times by talking with Duncan again, resulting in viewing the guilds_meeting_start scene multiple times.
In ~/strive-conquest-linux/assets/data/events/caprute_wrapup.gd it is possible to talk to Duncan at the guild multiple times, and so the add_timed_event function of capture_wrapup_3 happens once for each conversation.
capture_wrapup_3 (also capture_wrapup_1 if that is your path) has the order to code = 'complete_quest', value = 'princess_search' which should mean talking to Duncan again starts the normal conversation, somewhere this is failing.
The capture_wrapup_start function is available in ~/strive-conquest-linux/assets/data/scenedata.gd. It is set to start the scene if the princess_quest is at stages 4 or 5.
capture_wrapup_3 = { image = null, tags = ['dialogue_scene'], reqs = [], character = 'duncan', text = [{text = "PRE_ANASTASIA_EXECUTION_9", reqs = [], previous_dialogue_option = 2}, {text = "PRE_ANASTASIA_EXECUTION_10", reqs = [], previous_dialogue_option = 3}], common_effects = [{code = 'add_timed_event', value = "guilds_meeting_start", args = [{type = 'add_to_date', date = [1,1], hour = 1}]}], options = [ { code = 'close', text = "DIALOGUECLOSE", reqs = [], dialogue_argument = 3, type = 'next_dialogue', bonus_effects = [{code = 'complete_quest', value = 'princess_search'}] } ], },
capture_wrapup_start = { variations = [ { reqs = [{type = 'decision', value = 'PrincessDead', check = true}], image = null, tags = ['dialogue_scene'], character = 'duncan', text = [{text = "PRE_ANASTASIA_EXECUTION_1", reqs = [], previous_dialogue_option = 0}, {text = "PRE_ANASTASIA_EXECUTION_2", reqs = [{type = 'decision', value = 'SiegeLostSupplies', check = true}], previous_dialogue_option = 1}, {text = "PRE_ANASTASIA_EXECUTION_3", reqs = [{type = 'decision', value = 'SiegeLostSupplies', check = false}], previous_dialogue_option = 1}], options = [ { code = 'capture_wrapup_start', text = "PRE_ANASTASIA_EXECUTION_OPTION_1", reqs = [{type = 'decision', value = 'aire_is_saved', check = true}], dialogue_argument = 1, remove_after_first_use = true, }, { code = 'capture_wrapup_1', text = "PRE_ANASTASIA_EXECUTION_OPTION_2", reqs = [], dialogue_argument = 2, type = 'next_dialogue' }, { code = 'capture_wrapup_1', text = "PRE_ANASTASIA_EXECUTION_OPTION_3", reqs = [], dialogue_argument = 3, type = 'next_dialogue' }], }, { reqs = [{type = 'decision', value = 'PrincessDead', check = false}], image = null, tags = ['dialogue_scene'], character = 'duncan', text = [{text = "PRE_ANASTASIA_EXECUTION_5", reqs = [], previous_dialogue_option = 0}, {text = "PRE_ANASTASIA_EXECUTION_7", reqs = [], previous_dialogue_option = 4}, {text = "PRE_ANASTASIA_EXECUTION_8", reqs = [], previous_dialogue_option = 5}], options = [ { code = 'capture_wrapup_2', text = "PRE_ANASTASIA_EXECUTION_OPTION_4", reqs = [], dialogue_argument = 1 }, { code = 'capture_wrapup_3', text = "PRE_ANASTASIA_EXECUTION_OPTION_5", reqs = [], dialogue_argument = 2, type = 'next_dialogue' }, { code = 'capture_wrapup_3', text = "PRE_ANASTASIA_EXECUTION_OPTION_6", reqs = [], dialogue_argument = 3, type = 'next_dialogue' }], } ] },
var dialogue_inits = { fighters_init = [ ##skipped the not relevant code { code = 'default', name = "Meet Leader", reqs = [{type = 'active_quest_stage', value = 'princess_search', stage = 'stage4'}], target = 'capture_wrapup_start', target_option = 0, }, { code = 'default', name = "Meet Leader", reqs = [{type = 'active_quest_stage', value = 'princess_search', stage = 'stage5'}], target = 'capture_wrapup_start', target_option = 0, },