Wish to contribute to the project by donating? Heads up to our Patreon -> https://www.patreon.com/skylordsreborn

Jump to content
BEWARE: Multiaccounting Will Cause Permabans! Read more... ×
Mynoduesp

Ascension map 2 - looping outcry

Recommended Posts

Posted (edited)

DESCRIPTION: On Ascension map 2 on advanced and expert difficutly there is a possibility an outcry from Viridya gets looped endless. She'll say "The giant king shall fall!" (mf_OCViridyaTeleporting03) all couple of seconds, quite annoying after a while.

Looking through the scripts told me when, as long as the endfight isn't triggered (mf_EndfightStart) the Viridyas try count (mv_ViridyaTryCounter) will infinitly increase with each try she starts to escape the map (to kill Jorne in map 1). After the third try starts mf_ViridyaTryCounter will be greater than 2 and set mf_OCViridyaTeleporting03 on repeat to true which triggers the annoying outcry.

REPRODUCIBILITY: As long as the endfight (have to figure out what actualy triggers it) isn't triggered, this should occur every single time.

SCREENSHOT: None.

LOG: None unfortunatly.

ADDITIONAL INFORMATION: I've got a simple fix right here which prevents repeatingly setting the outcry flag as true. Note: This will stop any outcries to be played after the 3rd attempt starts.

viridyatry.lua line 128:

Original:

Spoiler

  OnEvent({
    Conditions = {
      MapValueIsGreater({
        Name = "mv_ViridyaTryCounter",
        Value = 2
      }),
      MapFlagIsFalse({
        Name = "mf_EndfightStart"
      })
    },
    Actions = {
      MapFlagSetTrue({
        Name = "mf_OCViridyaTeleporting03"
      })
    }
  }),

Edited replacement:

Spoiler

  OnOneTimeEvent({
    Conditions = {
      MapValueIsEqual
({
        Name = "mv_ViridyaTryCounter",
        Value = 3
      }),
      MapFlagIsFalse({
        Name = "mf_EndfightStart"
      })
    },
    Actions = {
      MapFlagSetTrue({
        Name = "mf_OCViridyaTeleporting03"
      })
    }
  }),

 

Edited by Mynoduesp
cleaner solution posted below

Share this post


Link to post
Share on other sites
Posted (edited)

I've made a cleaner solution now which resets mv_ViridyaTryCounter (isn't used in any other way than this in the whole script). She would always do the same outcry on her first try, always the same on her second try and always the same on her third try.

New code is from line 96 to 210 which would replace old code from line 96 to 144.

viridyatry.lua

Edited by Mynoduesp
Karl Lavafeld likes this

Share this post


Link to post
Share on other sites
Posted (edited)

@Mynoduesp Thanks for the report and a possible solution for the problem. As this is a client-side bug, I will move it to the appropriate section.

Edited by Ladadoos

Share this post


Link to post
Share on other sites

After checking how the "outcries"-script functions, this is a better solution: 

 

Instead of the original two OnOneTimeEvent for setting Outcrie-flags true when mv_ViridyaTryCounter increased are now two OnToggleEvents which trigger their OnCondition when the counter reaches 1, 2 or 3. OnAction they set the respective Outcrie-flag true which plays Viridyas voicline. The only OffCondition is the counter moving away from its triggervalue, thus making the Eventblock reusable.
The third Event which originaly made the bug occure stays a OnEvent block which additionaly to before resets mv_ViridyaTryCounter to 0.

viridyatry.lua

Edited by Mynoduesp

Share this post


Link to post
Share on other sites

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

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.