1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Bug False-SkillEvent?

Discussion in 'Developer Support' started by Party, Jun 18, 2016.

  1. Party

    Party Client Developer

    Joined:
    Oct 12, 2015
    Messages:
    3,708
    Likes Received:
    1,606
    I've noticed that my UI will sometimes add random skills, which should not happen.

    My implementation is something like this:

    Code (Text):
    1. //Using list of (untrained) skills
    2. for (Skill skill : skills) {
    3.     if(skill.equals(e.getSkill()) && e.getChange() >= 5){
    4.         //Remove untrained skill
    5.         //Lazy instantiate a new skill pane
    6.         break;
    7.     }
    8. }
    Sometimes I will get random ones added with varying data:

    [​IMG]
    [​IMG]

    I can't see how it can be possible (using my implementation) that these can happen, given no actions were taken that gain exp in those skills? Each skill pane has a separate listener and a new controller instance so I can understand why the XPGain shown on the pane would be zero, but I can't understand why it would be added in the first place.

    @Cloud @SlashnHax @Arbiter able to shine any light?
     
  2. Arbiter

    Arbiter Mod Automation

    Joined:
    Jul 26, 2013
    Messages:
    2,938
    Likes Received:
    1,266
    Likely caused by logout when it went from your current exp to 0.
     
  3. Party

    Party Client Developer

    Joined:
    Oct 12, 2015
    Messages:
    3,708
    Likes Received:
    1,606
    I've seen it happen as I change planes. Even so, should the check >= 5 not take that possibility out...? Doesn't explain both scenarios.
     
  4. Arbiter

    Arbiter Mod Automation

    Joined:
    Jul 26, 2013
    Messages:
    2,938
    Likes Received:
    1,266
    The change is negative, so it doesn't break. @Cloud can we just suppress negative exp changes? It's impossible.
    --- Double Post Merged, Jun 18, 2016, Original Post Date: Jun 18, 2016 ---
    @Party you can do an absolute value check.
     
  5. Party

    Party Client Developer

    Joined:
    Oct 12, 2015
    Messages:
    3,708
    Likes Received:
    1,606
    Would that not just mean a negative exp gain would return as a positive exp gain and make my logic return true anyway....?

    Also I understand how a login could cause an new one to be instantiated because it could just remove 100,000 exp on logout, and re-add it on login to equal zero and still work with my logic, I just can't think of a way around it :'(
     
  6. Cloud

    Cloud Engineer

    Joined:
    Jul 28, 2013
    Messages:
    2,777
    Likes Received:
    1,124
    I feel like it's necessary if they logout to switch to a new account.
     
  7. Arbiter

    Arbiter Mod Automation

    Joined:
    Jul 26, 2013
    Messages:
    2,938
    Likes Received:
    1,266
    We don't support multiple accounts, and even if we did the only metric of interest is exp over time. If the author was interested in current exp they could always query for that. We can't count on authors to be smart and filter out negative changes. We have to appeal to the lowest common denominator or we're going to end up with a shit UX of broken skill trackers. A strong vote from me for filtering out negatives for them as well as exp jumps on login.


    Sent from my iPhone using Tapatalk
     
  8. Cloud

    Cloud Engineer

    Joined:
    Jul 28, 2013
    Messages:
    2,777
    Likes Received:
    1,124
    Negatives are filtered out in the next release.
     
  9. Party

    Party Client Developer

    Joined:
    Oct 12, 2015
    Messages:
    3,708
    Likes Received:
    1,606
    Would this mean a user with 1mil Attack exp would have a filtered out -1mil on logout, and a +1mil on login, meaning a ridiculous SkillEvent on login?
    --- Double Post Merged, Jul 1, 2016, Original Post Date: Jun 22, 2016 ---
    Is this a related issue @Arbiter? (It's a gif, just in case you glanced it and didn't see anything happening)
    [​IMG]
    --- Double Post Merged, Jul 1, 2016 ---
    Yeah there is absolutely something wrong here, this is OSRS:
    [​IMG]
    --- Double Post Merged, Jul 1, 2016 ---
    Also, blocking the negative skillevents means that when you log out and log back in you get an insane amount of exp added in SkillEvents (no longer removes exp on logout and adds it back on login).
     
  10. Arbiter

    Arbiter Mod Automation

    Joined:
    Jul 26, 2013
    Messages:
    2,938
    Likes Received:
    1,266
    @Cloud we need to remove the incorrect jump during login.
     
  11. SlashnHax

    Joined:
    Dec 10, 2014
    Messages:
    3,212
    Likes Received:
    1,042
    Could be as easy as checking the previousValue and filtering that out if the logged out value is something identifiable (e.g. -1). Might give it a look after I vote today.
     
  12. Arbiter

    Arbiter Mod Automation

    Joined:
    Jul 26, 2013
    Messages:
    2,938
    Likes Received:
    1,266
    This is actually a perfect one for you to handle.


    Sent from my iPhone using Tapatalk
     

Share This Page

Loading...