Summary: (A short description of the bug)
Game Version: Alpha 21 b324 and Alpha 21.1 b12
CPU Model: (AMD Ryzen 7 1800x )
System Memory: (16 GB )
GPU Model and VRAM: (nVidia GTX 1060 6 GB )
Screen Resolution: (1920x1080)
Video Settings: (High)
Game mode: (MP host / MP client / SP)
Did you wipe old saves? (Yes)
Did you start a new game? (Yes)
Did you validate your files? (Yes)
Are you using any mods? (Yes)
Action class="WaitForDead" and Wait Classes don't function properly(after about 70 seconds stops working). I created a quest mod(ZombieINC Apocalyptic Jobs) that relies on gameobjectives = "GameEvents". I used a lot Action class="WaitForDead" to check if all the zombies are dead and so progress the Action_sequence and therefore Objectives phases. But after 60 seconds, if the zombies were not killed within 60- 70 seconds, the "WaitForDead" stops working. The same occurs with the others Wait Classes (While and Until). For exemple :
<property name="phase" value="2" />
<property name="buff_name" value="ZombieINC_ArrowLandingSuccess" />
<property name="target_group" value="party" />
If the buff don't occurs within 60 - 70 Seconds, the wait classes stops to recognize the buff. The gameevent get stuck and never progress.
I also notice that this behavior occurs with almost all Gameevents actions for exemple: If <action class="SpawnEntity"> don't find any spot to spawn the zombies within 60 seconds, it stops working and get the whole action_sequence stuck. I guess that is to prevent from multiple actions keeps trying to act and don't succeed forever. But I think that is essential to Wait Functions have more flexiblility.
My suggestion is : 1. create a property like : phase_on_failed. To ensure that if a <action class> don't execute well, don't get the whole action_sequence stuck
1.create a property like: remove_time_limit and quest_bound. To remove this time limit that actions has and quest_bound to ensure that after the gameObjective ="GameEvent" is done, all gameevents actions with quest_bound are removed (So Actions never accumulate)
2. For <wait classes> and Action class="WaitForDead" create a property like : max_time, to set a max time that this actions can wait.
English is not my main language, sorry for any mistakes or misleadings.
Detailed steps to reproduce the bug:
1)Use Action class="WaitForDead" or <wait classes> to trigger a message in the chat
2)Wait for more than 70 Seconds to complete the requirements
Actual result: (description of what is occurring)
GameEvents that was started from gameObjective ="GameEvent" Gets stuck and stops progressing
Expected result: (what you expect to occur)
Even after 70 seconds, completing the requirements for a certain <wait class> or Action class="WaitForDead" should proceed the phases.
Link to Pastebin Output Log: