Jump to content
  • Action class="WaitForDead" and Wait Classes don't function properly.


    ZombieINC
    • Version: Alpha 21 b324

    Summary: (A short description of the bug)
     

    Game Version: Alpha 21 b324 and Alpha 21.1 b12

    OS/Version: (Windows)

    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)

     

    EAC off

     

    Status: NEW

     

    Bug Description:

     

    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 :

     

          <wait class="Until">
                <property name="phase" value="2" />
                <requirement class="HasBuff">
                    <property name="buff_name" value="ZombieINC_ArrowLandingSuccess" />
                    <property name="target_group" value="party" />                
                </requirement>
            </wait>

     

    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

                                   Or

                                  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:


    User Feedback

    Recommended Comments

    There are no comments to display.



    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now

×
×
  • Create New...