Jump to content
  • 0

"Improved buffs" problem


Question

Posted

interlude/L2jfrozen 1004

 

Hello I created a skill that combines buffs together into one , like improved buffs, but doesnt work correctly.
When I use it , it replaced the buffs but instead of one slot it takes all the slots  of the previous ones.

Example:
image.png.31c53bbda610c48c79984beb920abe77.png

This is my skill :

 


<skill id="7159" levels="1" name="Harmony of the Horn">
  <set name="mpInitialConsume" val="20"/>
  <set name="mpConsume" val="60"/>
  <set name="target" val="TARGET_PARTY"/>
  <set name="reuseDelay" val="6000"/>
  <set name="hitTime" val="4000"/>
  <set name="skillType" val="BUFF"/>
  <set name="isMagic" val="true"/>
  <set name="operateType" val="OP_ACTIVE"/>
  <set name="castRange" val="400"/>
  <set name="effectRange" val="900"/>
  <for>
    <effect count="1" name="Buff" time="10800" val="0" stackOrder="1.35" stackType="MaxHPUp">
      <mul order="0x30" stat="maxHp" val="1.35"/>
    </effect>
    <effect count="1" name="Buff" time="10800" val="0" stackOrder="1.35" stackType="MaxMPUp">
      <mul order="0x30" stat="maxMp" val="1.35"/>
    </effect>
    <effect count="1" name="Buff" time="10800" val="0" stackOrder="33" stackType="SpeedUp">
      <add order="0x40" stat="runSpd" val="33"/>
    </effect>
  </for>
 </skill>

 

13 answers to this question

Recommended Posts

  • 0
Posted

Make the buff like this to work, also check the stackType from other buffs, and replace it.


<effect count="1" name="Buff" time="10800" val="0" stackOrder="1.35" stackType="MaxHPUp">      <mul order="0x30" stat="maxHp" val="1.35"/>      <add order="0x40" stat="runSpd" val="33"/>      <mul order="0x30" stat="maxMp" val="1.35"/></effect>
	

  • 0
Posted

Thanks Kara, and yes the buff combines the stats of the other 3 buffs, but for some reason it doesnt  replace them into one but three different for some reason

*Of Topic*
Detroit become human, what a game!

  • 0
Posted

Sinister , If I do it like that it will only replace bless the body, Ive tried.
Can I add multiple stacktypes into one? maybe thats why it does that.

Ive tried with coma but doesnt work , maybe there is another way?

 stackType="MaxHPUp,MaxMPUP,SpeedUp">
  • 0
Posted
1 hour ago, sotid said:

Sinister , If I do it like that it will only replace bless the body, Ive tried.
Can I add multiple stacktypes into one? maybe thats why it does that.

Ive tried with coma but doesnt work , maybe there is another way?


 stackType="MaxHPUp,MaxMPUP,SpeedUp">

For example take the stackType from Dance, or song and try. Dont use 1,2,3 It need to be a single stackType

  • 0
Posted (edited)

If there is a single stacktype how will it replace all three buffs with different stacktypes, it wont work unless you mean something else?

 

Edited by sotid
  • 0
Posted

<skill id="7159" levels="1" name="Harmony of the Horn">
  <set name="mpInitialConsume" val="20"/>
  <set name="mpConsume" val="60"/>
  <set name="target" val="TARGET_PARTY"/>
  <set name="reuseDelay" val="6000"/>
  <set name="hitTime" val="4000"/>
  <set name="skillType" val="BUFF"/>
  <set name="isMagic" val="true"/>
  <set name="operateType" val="OP_ACTIVE"/>
  <set name="castRange" val="400"/>
  <set name="effectRange" val="900"/>
  <for>
    <effect count="1" name="Buff" time="10800" val="0" stackOrder="1.35" stackType="Here is new stack type">
      <mul order="0x30" stat="maxHp" val="1.35"/>
      <mul order="0x30" stat="maxMp" val="1.35"/>
      <add order="0x40" stat="runSpd" val="33"/>
    </effect>
  </for>
 </skill>

Just check the stackOrder and stackStype from dance or songs or Chant of Victory.

  • 0
Posted

Atm you expect miracles. You won't do it with xml. Making all buffs the same stack type stack order, will replace buffs, so you can have only one at a time. I believe you have to hard-code that behavior. 

  • 0
Posted

Sinister I want to replace the buffs I dont want a different stacktype.

Thanks sweets , dont lock the topic maybe someone will give a different answer.

  • 0
Posted

It's the skeletor of anti-buff. The real skill restriction is located in Continuous.java#useSkill#case BUFF

if (skill.getId() == skill_id_to_check)

   continue; // skip the skill

Guest
This topic is now closed to further replies.
×
×
  • Create New...