Correct implementation of Mass Lightning Strike.

Contributed by Iris.
This commit is contained in:
MobiusDevelopment 2022-01-11 04:30:27 +00:00
parent 4fc9d70c1e
commit db8aa344f6
3 changed files with 44 additions and 76 deletions

View File

@ -45,27 +45,18 @@
<abnormalTime>5</abnormalTime> <abnormalTime>5</abnormalTime>
<abnormalType>PARALYZE</abnormalType> <abnormalType>PARALYZE</abnormalType>
<abnormalVisualEffect>PARALYZE</abnormalVisualEffect> <abnormalVisualEffect>PARALYZE</abnormalVisualEffect>
<activateRate> <activateRate>40</activateRate>
<value fromLevel="1" toLevel="1">40</value>
</activateRate>
<affectLimit>10-10</affectLimit> <affectLimit>10-10</affectLimit>
<affectRange>100</affectRange> <affectRange>150</affectRange>
<basicProperty>MAGIC</basicProperty> <!-- Guessed --> <basicProperty>PHYSICAL</basicProperty>
<itemConsumeId>1785</itemConsumeId> <icon>icon.skll10094</icon>
<itemConsumeCount> <itemConsumeId>1785</itemConsumeId> <!-- Soulstone -->
<value level="1">1</value> <itemConsumeCount>1</itemConsumeCount>
</itemConsumeCount> <lvlBonusRate>20</lvlBonusRate>
<lvlBonusRate>1</lvlBonusRate>
<operateType>A2</operateType> <operateType>A2</operateType>
<targetType>ENEMY_ONLY</targetType> <isMagic>0</isMagic>
<affectScope>RANGE</affectScope> <magicLevel>80</magicLevel>
<affectObject>NOT_FRIEND</affectObject> <mpConsume>140</mpConsume>
<magicLevel>
<value level="1">85</value>
</magicLevel>
<mpConsume>
<value level="1">140</value>
</mpConsume>
<nextAction>ATTACK</nextAction> <nextAction>ATTACK</nextAction>
<castRange>400</castRange> <castRange>400</castRange>
<hitTime>1500</hitTime> <hitTime>1500</hitTime>
@ -74,20 +65,15 @@
<effectPoint>-828</effectPoint> <effectPoint>-828</effectPoint>
<isDebuff>true</isDebuff> <isDebuff>true</isDebuff>
<trait>PARALYZE</trait> <trait>PARALYZE</trait>
<conditions> <targetType>ENEMY_ONLY</targetType>
<condition name="EquipShield" /> <affectScope>RANGE</affectScope>
</conditions> <affectObject>NOT_FRIEND</affectObject>
<effects> <effects>
<effect name="PhysicalAttack"> <effect name="PhysicalAttack">
<power> <power>1997</power>
<value level="1">11997</value>
</power>
</effect> </effect>
<effect name="BlockActions"> <effect name="BlockActions">
<allowedSkills>35016</allowedSkills> <allowedSkills>35016;35045;18103</allowedSkills>
</effect>
<effect name="DefenceTrait">
<PARALYZE>100</PARALYZE>
</effect> </effect>
</effects> </effects>
</skill> </skill>

View File

@ -616,7 +616,7 @@
</xs:element> </xs:element>
<xs:element name="item" type="xs:string" /> <xs:element name="item" type="xs:string" />
<xs:element name="expMultiplier" type="xs:decimal" /> <xs:element name="expMultiplier" type="xs:decimal" />
<xs:element name="allowedSkills" type="xs:unsignedShort" /> <xs:element name="allowedSkills" type="xs:string" />
<xs:element name="ticks" type="xs:unsignedByte" /> <xs:element name="ticks" type="xs:unsignedByte" />
<xs:element name="percentage"> <xs:element name="percentage">
<xs:complexType mixed="true"> <xs:complexType mixed="true">
@ -836,12 +836,8 @@
<xs:element name="accuracyAmount" type="xs:unsignedByte" /> <xs:element name="accuracyAmount" type="xs:unsignedByte" />
<xs:element name="accuracyMode" type="xs:string" /> <xs:element name="accuracyMode" type="xs:string" />
<xs:element name="hpPercent" type="xs:unsignedByte" /> <xs:element name="hpPercent" type="xs:unsignedByte" />
<xs:element name="mpPercent" type="xs:unsignedByte" />
<xs:element name="cpPercent" type="xs:unsignedByte" />
<xs:element name="attribute" type="xs:string" /> <xs:element name="attribute" type="xs:string" />
<xs:element name="attackerType" type="xs:string" /> <xs:element name="attackerType" type="xs:string" />
<xs:element name="minAttackerLevel" type="xs:unsignedByte" />
<xs:element name="maxAttackerLevel" type="xs:unsignedByte" />
<xs:element name="minDamage"> <xs:element name="minDamage">
<xs:complexType mixed="true"> <xs:complexType mixed="true">
<xs:sequence minOccurs="0"> <xs:sequence minOccurs="0">
@ -1661,6 +1657,7 @@
<xs:element name="condition"> <xs:element name="condition">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element minOccurs="0" name="maxLevel" type="xs:unsignedByte" />
<xs:element minOccurs="0" name="alignment" type="xs:string" /> <xs:element minOccurs="0" name="alignment" type="xs:string" />
<xs:element minOccurs="0" name="classIds"> <xs:element minOccurs="0" name="classIds">
<xs:complexType> <xs:complexType>
@ -1669,6 +1666,8 @@
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element minOccurs="0" name="affectType" type="xs:string" />
<xs:element minOccurs="0" name="isWithin" type="xs:boolean" />
<xs:element minOccurs="0" name="armorType"> <xs:element minOccurs="0" name="armorType">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
@ -1677,9 +1676,6 @@
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element minOccurs="0" name="minLevel" type="xs:unsignedByte" /> <xs:element minOccurs="0" name="minLevel" type="xs:unsignedByte" />
<xs:element minOccurs="0" name="maxLevel" type="xs:unsignedByte" />
<xs:element minOccurs="0" name="affectType" type="xs:string" />
<xs:element minOccurs="0" name="isWithin" type="xs:boolean" />
<xs:element minOccurs="0" name="includeMe" type="xs:boolean" /> <xs:element minOccurs="0" name="includeMe" type="xs:boolean" />
<xs:element minOccurs="0" name="weaponType"> <xs:element minOccurs="0" name="weaponType">
<xs:complexType> <xs:complexType>
@ -1760,21 +1756,12 @@
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="blockedInOlympiad" type="xs:boolean" />
<xs:element name="channelingSkillId" type="xs:unsignedShort" />
<xs:element name="mpPerChanneling" type="xs:unsignedByte" />
<xs:element name="channelingStart" type="xs:decimal" />
<xs:element name="channelingTickInterval" type="xs:unsignedByte" />
<xs:element name="removedOnDamage" type="xs:boolean" />
<xs:element name="removedOnAnyActionExceptMove" type="xs:boolean" />
<xs:element name="itemConsumeSteps" type="xs:unsignedByte" />
<xs:element name="soulMaxConsumeCount" type="xs:unsignedByte" />
<xs:element name="targetConditions"> <xs:element name="targetConditions">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="condition"> <xs:element name="condition">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence minOccurs="0">
<xs:element minOccurs="0" name="distance" type="xs:unsignedByte" /> <xs:element minOccurs="0" name="distance" type="xs:unsignedByte" />
<xs:element minOccurs="0" name="classIds"> <xs:element minOccurs="0" name="classIds">
<xs:complexType> <xs:complexType>
@ -1797,6 +1784,15 @@
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="blockedInOlympiad" type="xs:boolean" />
<xs:element name="channelingSkillId" type="xs:unsignedShort" />
<xs:element name="mpPerChanneling" type="xs:unsignedByte" />
<xs:element name="channelingStart" type="xs:decimal" />
<xs:element name="channelingTickInterval" type="xs:unsignedByte" />
<xs:element name="removedOnDamage" type="xs:boolean" />
<xs:element name="removedOnAnyActionExceptMove" type="xs:boolean" />
<xs:element name="itemConsumeSteps" type="xs:unsignedByte" />
<xs:element name="soulMaxConsumeCount" type="xs:unsignedByte" />
<xs:element name="endEffects"> <xs:element name="endEffects">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>

View File

@ -45,27 +45,18 @@
<abnormalTime>5</abnormalTime> <abnormalTime>5</abnormalTime>
<abnormalType>PARALYZE</abnormalType> <abnormalType>PARALYZE</abnormalType>
<abnormalVisualEffect>PARALYZE</abnormalVisualEffect> <abnormalVisualEffect>PARALYZE</abnormalVisualEffect>
<activateRate> <activateRate>40</activateRate>
<value fromLevel="1" toLevel="1">40</value>
</activateRate>
<affectLimit>10-10</affectLimit> <affectLimit>10-10</affectLimit>
<affectRange>100</affectRange> <affectRange>150</affectRange>
<basicProperty>MAGIC</basicProperty> <!-- Guessed --> <basicProperty>PHYSICAL</basicProperty>
<itemConsumeId>1785</itemConsumeId> <icon>icon.skll10094</icon>
<itemConsumeCount> <itemConsumeId>1785</itemConsumeId> <!-- Soulstone -->
<value level="1">1</value> <itemConsumeCount>1</itemConsumeCount>
</itemConsumeCount> <lvlBonusRate>20</lvlBonusRate>
<lvlBonusRate>1</lvlBonusRate>
<operateType>A2</operateType> <operateType>A2</operateType>
<targetType>ENEMY_ONLY</targetType> <isMagic>0</isMagic>
<affectScope>RANGE</affectScope> <magicLevel>80</magicLevel>
<affectObject>NOT_FRIEND</affectObject> <mpConsume>140</mpConsume>
<magicLevel>
<value level="1">85</value>
</magicLevel>
<mpConsume>
<value level="1">140</value>
</mpConsume>
<nextAction>ATTACK</nextAction> <nextAction>ATTACK</nextAction>
<castRange>400</castRange> <castRange>400</castRange>
<hitTime>1500</hitTime> <hitTime>1500</hitTime>
@ -74,20 +65,15 @@
<effectPoint>-828</effectPoint> <effectPoint>-828</effectPoint>
<isDebuff>true</isDebuff> <isDebuff>true</isDebuff>
<trait>PARALYZE</trait> <trait>PARALYZE</trait>
<conditions> <targetType>ENEMY_ONLY</targetType>
<condition name="EquipShield" /> <affectScope>RANGE</affectScope>
</conditions> <affectObject>NOT_FRIEND</affectObject>
<effects> <effects>
<effect name="PhysicalAttack"> <effect name="PhysicalAttack">
<power> <power>1997</power>
<value level="1">11997</value>
</power>
</effect> </effect>
<effect name="BlockActions"> <effect name="BlockActions">
<allowedSkills>35016</allowedSkills> <allowedSkills>35016;35045;18103</allowedSkills>
</effect>
<effect name="DefenceTrait">
<PARALYZE>100</PARALYZE>
</effect> </effect>
</effects> </effects>
</skill> </skill>