About performance of dialogue lookup in always running quest

Post » Sun Jan 12, 2014 6:52 am

I don't know exactly by the book how the game decides what dialogues to show but I assume it iterates trough the running quests then checks conditions and stuff. Am I far off?

In that case, or otherwise, if I want to make some dialogues that would be needed in certain areas should I have an always running quest and conditions on dialogue? (and as a note I can't have them conditioned on voice type but on context like location and presence of the NPCs in aliases) Or the performance impact would be considerable and I should consider start my quest only when player enters those areas?

User avatar
Vincent Joe
 
Posts: 3370
Joined: Wed Sep 26, 2007 1:13 pm

Post » Sun Jan 12, 2014 2:30 pm

I think the performance impact is negligible. The vanilla game itself has easily hundreds of dialogue quests running 24/7 that controls all the dialogue. You can click on what lines each NPC can say and it loads instantly, so I almost think the game creates a list for each form, or voicetype or something. Then, when an NPC needs to say dialogue, it simply searches that list instead of searching ALL quests every single time.

After all, you cannot edit the game and change who can say what WHILE you're playing it, so why waste the power searching all dialogue? Just educated guesses, but I'd say don't worry about performance at all. Scripts that constantly run are often cause for alarm, but quests are so minute I bet the game could easily have twice as many running without causing extra issues. (Falskaar alone initially has around 40 quests running all at once. This is eventually trimmed down to something closer to 5-10, but still; it gets away with it just fine)

User avatar
Gwen
 
Posts: 3367
Joined: Sun Apr 01, 2007 3:34 am


Return to V - Skyrim