L2JLisvus

Would you like to react to this message? Create an account in a few clicks or log in to continue.

3 posters

    Retail like ss/bss "recharge" [COMMITED]

    Karakan
    Karakan


    Posts : 756
    Join date : 2013-10-04

    Retail like ss/bss "recharge" [COMMITED] Empty Retail like ss/bss "recharge" [COMMITED]

    Post  Karakan 15th June 2019, 23:02

    Here is another minor/cosmetic contribution regarding -> More retail like gameplay.

    On L2Off shots getting used AFTER an attack/cast.
    On L2j they getting used DURING an attack/cast.

    This one bugged me for a while now.  Cool



    Other differences i noticed :

    Retail/L2Off -> activate auto-ss/sps -> ss/sps gets used -> attack mob -> shot consumed (if you don't miss) -> ss/sps gets used again. (even if you´re not attacking anymore).


    L2j -> activate auto-ss/sps -> nothing happens -> attack mob -> ss/sps gets used -> ss/sps gets consumed (if you don't miss) -> nothing happens. (only consumes again if you start attacking again.)


    The following code fixes the "after attack/cast recharge" part.



    L2Charakter.java


    Code:

    @@ -746,14 +742,14 @@
           }
     
    -      // Recharge any active auto soulshot tasks for player (or player's summon if one exists).
    -      if (this instanceof L2PcInstance)
    -      {
    -         ((L2PcInstance) this).rechargeAutoSoulShot(true, false, false);
    -      }
    -      else if (this instanceof L2Summon)
    -      {
    -         ((L2Summon) this).getOwner().rechargeAutoSoulShot(true, false, true);
    -      }


    @@ -1234,32 +1414,32 @@
           }
     
    -      // Recharge AutoSoulShot
    -      if (skill.useSoulShot())
    -      {
    -         if (this instanceof L2PcInstance)
    -         {
    -            ((L2PcInstance) this).rechargeAutoSoulShot(true, false, false);
    -         }
    -         else if (this instanceof L2Summon)
    -         {
    -            ((L2Summon) this).getOwner().rechargeAutoSoulShot(true, false, true);
    -         }
    -         else if (this instanceof L2NpcInstance)
    -         {
    -            ((L2NpcInstance) this).rechargeAutoSoulShot(true, false);
    -         }
    -      }
    -      else if (skill.useSpiritShot())
    -      {
    -         if (this instanceof L2PcInstance)
    -         {
    -            ((L2PcInstance) this).rechargeAutoSoulShot(false, true, false);
    -         }
    -         else if (this instanceof L2Summon)
    -         {
    -            ((L2Summon) this).getOwner().rechargeAutoSoulShot(false, true, true);
    -         }
    -      }
     
           // Get all possible targets of the skill in a table in function of the skill target type
           L2Object[] targets = skill.getTargetList(this);


    @@ -5031,52 +5217,81 @@
                   // Launch weapon Special ability effect if available
                   L2Weapon activeWeapon = getActiveWeaponItem();
                   if (activeWeapon != null)
                   {
                      activeWeapon.getSkillEffects(this, target);
                   }
                }
    +            
    +            // Recharge any active auto soulshot tasks for player (or player's summon if one exists).
    +            if (this instanceof L2PcInstance)
    +            {
    +               ((L2PcInstance) this).rechargeAutoSoulShot(true, false, false);
    +            }
    +            else if (this instanceof L2Summon)
    +            {
    +               ((L2Summon) this).getOwner().rechargeAutoSoulShot(true, false, true);
    +            }


    @@ -5692,7 +5907,35 @@
              {
                 consumeItem(skill.getItemConsumeId(), skill.getItemConsume());
              }
    +        
    +         // Recharge AutoSoulShot
    +         if (skill.useSoulShot())
    +         {
    +            if (this instanceof L2PcInstance)
    +            {
    +               ((L2PcInstance) this).rechargeAutoSoulShot(true, false, false);
    +            }
    +            else if (this instanceof L2Summon)
    +            {
    +               ((L2Summon) this).getOwner().rechargeAutoSoulShot(true, false, true);
    +            }
    +            else if (this instanceof L2NpcInstance)
    +            {
    +               ((L2NpcInstance) this).rechargeAutoSoulShot(true, false);
    +            }
    +         }
    +         else if (skill.useSpiritShot())
    +         {
    +            if (this instanceof L2PcInstance)
    +            {
    +               ((L2PcInstance) this).rechargeAutoSoulShot(false, true, false);
    +            }
    +            else if (this instanceof L2Summon)
    +            {
    +               ((L2Summon) this).getOwner().rechargeAutoSoulShot(false, true, true);
    +            }
    +         }        
    +        
              // Launch the magic skill in order to calculate its effects
              callSkill(skill, targets, status);



    Last edited by Karakan on 12th July 2019, 15:31; edited 1 time in total
    avatar
    confejulian


    Posts : 254
    Join date : 2016-08-27

    Retail like ss/bss "recharge" [COMMITED] Empty Re: Retail like ss/bss "recharge" [COMMITED]

    Post  confejulian 16th June 2019, 03:15

    Karakan wrote:Here is another minor/cosmetic contribution regarding -> More retail like gameplay.

    On L2Off shots getting used AFTER an attack/cast.
    On L2j they getting used DURING an attack/cast.

    This one bugged me for a while now.  Cool



    Other differences i noticed :

    Retail/L2Off -> activate auto-ss/sps -> ss/sps gets used -> attack mob -> shot consumed (if you don't miss) -> ss/sps gets used again. (even if you´re not attacking anymore).


    L2j -> activate auto-ss/sps -> nothing happens -> attack mob -> ss/sps gets used -> ss/sps gets consumed (if you don't miss) -> nothing happens. (only consumes again if you start attacking again.)


    The following code fixes the "after attack/cast recharge" part.



    L2Charakter.java


    Code:

    @@ -746,14 +742,14 @@
           }
     
    -      // Recharge any active auto soulshot tasks for player (or player's summon if one exists).
    -      if (this instanceof L2PcInstance)
    -      {
    -         ((L2PcInstance) this).rechargeAutoSoulShot(true, false, false);
    -      }
    -      else if (this instanceof L2Summon)
    -      {
    -         ((L2Summon) this).getOwner().rechargeAutoSoulShot(true, false, true);
    -      }


    @@ -1234,32 +1414,32 @@
           }
     
    -      // Recharge AutoSoulShot
    -      if (skill.useSoulShot())
    -      {
    -         if (this instanceof L2PcInstance)
    -         {
    -            ((L2PcInstance) this).rechargeAutoSoulShot(true, false, false);
    -         }
    -         else if (this instanceof L2Summon)
    -         {
    -            ((L2Summon) this).getOwner().rechargeAutoSoulShot(true, false, true);
    -         }
    -         else if (this instanceof L2NpcInstance)
    -         {
    -            ((L2NpcInstance) this).rechargeAutoSoulShot(true, false);
    -         }
    -      }
    -      else if (skill.useSpiritShot())
    -      {
    -         if (this instanceof L2PcInstance)
    -         {
    -            ((L2PcInstance) this).rechargeAutoSoulShot(false, true, false);
    -         }
    -         else if (this instanceof L2Summon)
    -         {
    -            ((L2Summon) this).getOwner().rechargeAutoSoulShot(false, true, true);
    -         }
    -      }
     
           // Get all possible targets of the skill in a table in function of the skill target type
           L2Object[] targets = skill.getTargetList(this);


    @@ -5031,52 +5217,81 @@
                   // Launch weapon Special ability effect if available
                   L2Weapon activeWeapon = getActiveWeaponItem();
                   if (activeWeapon != null)
                   {
                      activeWeapon.getSkillEffects(this, target);
                   }
                }
    +            
    +            // Recharge any active auto soulshot tasks for player (or player's summon if one exists).
    +            if (this instanceof L2PcInstance)
    +            {
    +               ((L2PcInstance) this).rechargeAutoSoulShot(true, false, false);
    +            }
    +            else if (this instanceof L2Summon)
    +            {
    +               ((L2Summon) this).getOwner().rechargeAutoSoulShot(true, false, true);
    +            }


    @@ -5692,7 +5907,35 @@
              {
                 consumeItem(skill.getItemConsumeId(), skill.getItemConsume());
              }
    +        
    +         // Recharge AutoSoulShot
    +         if (skill.useSoulShot())
    +         {
    +            if (this instanceof L2PcInstance)
    +            {
    +               ((L2PcInstance) this).rechargeAutoSoulShot(true, false, false);
    +            }
    +            else if (this instanceof L2Summon)
    +            {
    +               ((L2Summon) this).getOwner().rechargeAutoSoulShot(true, false, true);
    +            }
    +            else if (this instanceof L2NpcInstance)
    +            {
    +               ((L2NpcInstance) this).rechargeAutoSoulShot(true, false);
    +            }
    +         }
    +         else if (skill.useSpiritShot())
    +         {
    +            if (this instanceof L2PcInstance)
    +            {
    +               ((L2PcInstance) this).rechargeAutoSoulShot(false, true, false);
    +            }
    +            else if (this instanceof L2Summon)
    +            {
    +               ((L2Summon) this).getOwner().rechargeAutoSoulShot(false, true, true);
    +            }
    +         }        
    +        
              // Launch the magic skill in order to calculate its effects
              callSkill(skill, targets, status);


    I remember, the skill recharge, for heal MP, don't consume bss, and i don't rembeber if DNR fixed it. On my server was fixed but not rembember how.

    PD: Nice contribution dude.
    Karakan
    Karakan


    Posts : 756
    Join date : 2013-10-04

    Retail like ss/bss "recharge" [COMMITED] Empty Re: Retail like ss/bss "recharge" [COMMITED]

    Post  Karakan 16th June 2019, 03:33

    Im pretty sure DnR fixed that, but ill double check tomorrow.


    About the recharge power....
    As far as I know ,the Recharge skill is one of the few skills ,which doesnt get a boost from spiritshots.
    Spiritshots will only increase the cast time.

    I remember many players who played SE/EE were searching for Spiritshots (not blessed) because those were cheaper. cheers


    Thanks Cool
    avatar
    confejulian


    Posts : 254
    Join date : 2016-08-27

    Retail like ss/bss "recharge" [COMMITED] Empty Re: Retail like ss/bss "recharge" [COMMITED]

    Post  confejulian 16th June 2019, 03:50

    Karakan wrote:Im pretty sure DnR fixed that, but ill double check tomorrow.


    About the recharge power....
    As far as I know ,the Recharge skill is one of the few skills ,which doesnt get a boost from spiritshots.
    Spiritshots will only increase the cast time.

    I remember many players who played SE/EE were searching for Spiritshots (not blessed) because those were cheaper.   cheers


    Thanks Cool

    Yes, thats right, the recharge using spirishot or blessed spirishot not increased the power on l2off. But the castingspeed is increased if you use blessed spirishot to casting recharge. but, i'm not shure if my modification solved this last item.
    DnR
    DnR
    Admin
    Admin


    Posts : 1475
    Join date : 2012-12-03
    Age : 34

    Retail like ss/bss "recharge" [COMMITED] Empty Re: Retail like ss/bss "recharge" [COMMITED]

    Post  DnR 17th June 2019, 01:38

    Yes, Mana Recharge not consuming ss was fixed in the past few months.
    About patch, once I also take a good look at it, I'm going to merge it with project. Wink
    DnR
    DnR
    Admin
    Admin


    Posts : 1475
    Join date : 2012-12-03
    Age : 34

    Retail like ss/bss "recharge" [COMMITED] Empty Re: Retail like ss/bss "recharge" [COMMITED]

    Post  DnR 22nd June 2019, 17:45

    After taking a look at both this patch and L2J latest version, I added these changes and improved old code quality at the same time.
    Also, after testing it I really liked it that it works like retail. Smile
    Thank you for this share. Wink

    BR,
    DnR
    Karakan
    Karakan


    Posts : 756
    Join date : 2013-10-04

    Retail like ss/bss "recharge" [COMMITED] Empty Re: Retail like ss/bss "recharge" [COMMITED]

    Post  Karakan 23rd June 2019, 03:53

    Thank you. Cool

    Sponsored content


    Retail like ss/bss "recharge" [COMMITED] Empty Re: Retail like ss/bss "recharge" [COMMITED]

    Post  Sponsored content


      Current date/time is 19th May 2024, 09:23