From 361b25ceae5e89a5b9d53b068188994f8c176a6e Mon Sep 17 00:00:00 2001
From: Zoey76 <zoey_76@msn.com>
Date: Tue, 21 May 2013 04:11:52 +0000
Subject: [PATCH] BETA: Skill fixes: 	* Only passive Buff effect can't be
 stolen. 	* Passive Buff effect last indefinitely. 	* Implemented
 Cubic Mastery effect. 		* Fixed Cubic Mastery skill to use effect,
 please no more COREDONE skills! 	* Implemented Summon Cubic effect. 
 	* Removed custom system messages and restrictions. 		* If
 cubic is already present it's replaced. 		* If maximum cubic
 count is reached (related to Cubic Mastery effect), '''a random cubic is
 removed and the new cubic is added last, retail like'''. 		
 * No more custom restrictions. 		* Fixed all cubic power
 enchant broken in [9230]. 	* Passive skills with stats need to be wrapped
 into Buff effect. 		* Fixed some skills, the rest will be fixed
 soon. 			* Added missing MP regeneration to Armor Mastery. 
 * Fixed High Five Arena buffs, they shouldn't stack with normal buffs! 
 	* Reported by: nBd 	* Fixing Petrify (6882) with missing abnormal
 time. 		* Reported by: blacksea

---
 .../scripts/handlers/EffectMasterHandler.java |   2 +
 .../scripts/handlers/effecthandlers/Buff.java |   8 +-
 .../handlers/effecthandlers/CubicMastery.java |  36 +++++
 .../handlers/effecthandlers/SummonCubic.java  | 124 ++++++++++++++++++
 .../game/data/stats/skills/00000-00099.xml    |  86 ++++++------
 .../game/data/stats/skills/00100-00199.xml    |  55 +++++---
 .../game/data/stats/skills/00200-00299.xml    |  20 +--
 .../game/data/stats/skills/00400-00499.xml    |  25 ++--
 .../game/data/stats/skills/00700-00799.xml    |  90 +++++--------
 .../game/data/stats/skills/01200-01299.xml    |  60 ++++-----
 .../game/data/stats/skills/01300-01399.xml    |  65 +++++----
 .../game/data/stats/skills/04300-04399.xml    |  17 +--
 .../game/data/stats/skills/06800-06899.xml    |  35 ++++-
 13 files changed, 398 insertions(+), 225 deletions(-)
 create mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/CubicMastery.java
 create mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/SummonCubic.java

diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/handlers/EffectMasterHandler.java b/L2J_DataPack_BETA/dist/game/data/scripts/handlers/EffectMasterHandler.java
index 54fa592790..1b9cbdd15f 100644
--- a/L2J_DataPack_BETA/dist/game/data/scripts/handlers/EffectMasterHandler.java
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/handlers/EffectMasterHandler.java
@@ -67,6 +67,7 @@ public final class EffectMasterHandler
 		CpHealPercent.class,
 		CrystalGradeModify.class,
 		CpDamPercent.class,
+		CubicMastery.class,
 		DamOverTime.class,
 		DamOverTimePercent.class,
 		DeathLink.class,
@@ -143,6 +144,7 @@ public final class EffectMasterHandler
 		StealAbnormal.class,
 		Stun.class,
 		SummonAgathion.class,
+		SummonCubic.class,
 		SummonNpc.class,
 		SummonPet.class,
 		SummonTrap.class,
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/Buff.java b/L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/Buff.java
index 9dbc7e3767..7b7d78a48c 100644
--- a/L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/Buff.java
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/Buff.java
@@ -42,7 +42,7 @@ public class Buff extends L2Effect
 	@Override
 	public boolean canBeStolen()
 	{
-		return true;
+		return !getSkill().isPassive();
 	}
 	
 	@Override
@@ -50,4 +50,10 @@ public class Buff extends L2Effect
 	{
 		return L2EffectType.BUFF;
 	}
+	
+	@Override
+	public boolean onActionTime()
+	{
+		return getSkill().isPassive();
+	}
 }
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/CubicMastery.java b/L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/CubicMastery.java
new file mode 100644
index 0000000000..75843b9eda
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/CubicMastery.java
@@ -0,0 +1,36 @@
+package handlers.effecthandlers;
+
+import com.l2jserver.gameserver.model.effects.EffectTemplate;
+import com.l2jserver.gameserver.model.effects.L2Effect;
+import com.l2jserver.gameserver.model.effects.L2EffectType;
+import com.l2jserver.gameserver.model.stats.Env;
+
+/**
+ * Cubic Mastery effect implementation.
+ * @author Zoey76
+ */
+public class CubicMastery extends L2Effect
+{
+	public CubicMastery(Env env, EffectTemplate template)
+	{
+		super(env, template);
+	}
+	
+	@Override
+	public L2EffectType getEffectType()
+	{
+		return L2EffectType.CUBIC_MASTERY;
+	}
+	
+	@Override
+	public boolean onActionTime()
+	{
+		return getSkill().isPassive();
+	}
+	
+	@Override
+	public boolean onStart()
+	{
+		return (getEffector() != null) && (getEffected() != null) && getEffected().isPlayer();
+	}
+}
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/SummonCubic.java b/L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/SummonCubic.java
new file mode 100644
index 0000000000..bce11fdfc4
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/SummonCubic.java
@@ -0,0 +1,124 @@
+/*
+ * Copyright (C) 2004-2013 L2J DataPack
+ * 
+ * This file is part of L2J DataPack.
+ * 
+ * L2J DataPack is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ * 
+ * L2J DataPack is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package handlers.effecthandlers;
+
+import com.l2jserver.gameserver.model.actor.instance.L2CubicInstance;
+import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
+import com.l2jserver.gameserver.model.effects.EffectTemplate;
+import com.l2jserver.gameserver.model.effects.L2Effect;
+import com.l2jserver.gameserver.model.effects.L2EffectType;
+import com.l2jserver.gameserver.model.stats.Env;
+import com.l2jserver.util.Rnd;
+
+/**
+ * Summon Cubic effect implementation.
+ * @author Zoey76
+ */
+public class SummonCubic extends L2Effect
+{
+	private final int _npcId;
+	/** Cubic power. */
+	private final int _cubicPower;
+	/** Cubic duration. */
+	private final int _cubicDuration;
+	/** Cubic activation delay. */
+	private final int _cubicDelay;
+	/** Cubic maximum casts before going idle. */
+	private final int _cubicMaxCount;
+	/** Cubic activation chance. */
+	private final int _cubicSkillChance;
+	
+	public SummonCubic(Env env, EffectTemplate template)
+	{
+		super(env, template);
+		_npcId = template.getParameters().getInteger("npcId", 0);
+		// Custom AI data.
+		_cubicPower = template.getParameters().getInteger("cubicPower", 0);
+		_cubicDuration = template.getParameters().getInteger("cubicDuration", 0);
+		_cubicDelay = template.getParameters().getInteger("cubicDelay", 0);
+		_cubicMaxCount = template.getParameters().getInteger("cubicMaxCount", -1);
+		_cubicSkillChance = template.getParameters().getInteger("cubicSkillChance", 0);
+	}
+	
+	@Override
+	public L2EffectType getEffectType()
+	{
+		return L2EffectType.NONE;
+	}
+	
+	@Override
+	public boolean isInstant()
+	{
+		return true;
+	}
+	
+	@Override
+	public boolean onStart()
+	{
+		if ((getEffected() == null) || !getEffected().isPlayer() || getEffected().isAlikeDead() || getEffected().getActingPlayer().inObserverMode())
+		{
+			return false;
+		}
+		
+		if (_npcId <= 0)
+		{
+			_log.warning(SummonCubic.class.getSimpleName() + ": Invalid NPC Id:" + _npcId + " in skill Id: " + getSkill().getId());
+			return false;
+		}
+		
+		final L2PcInstance player = getEffected().getActingPlayer();
+		if (player.inObserverMode() || player.isMounted())
+		{
+			return false;
+		}
+		
+		// Gnacik: TODO: Make better method of calculation.
+		// If skill is enchanted calculate cubic skill level based on enchant
+		// 8 at 101 (+1 Power)
+		// 12 at 130 (+30 Power)
+		// Because 12 is max 5115-5117 skills
+		int _cubicSkillLevel = getSkill().getLevel();
+		if (_cubicSkillLevel > 100)
+		{
+			_cubicSkillLevel = ((getSkill().getLevel() - 100) / 7) + 8;
+		}
+		
+		// If cubic is already present, it's replaced.
+		final L2CubicInstance cubic = player.getCubicById(_npcId);
+		if (cubic != null)
+		{
+			cubic.stopAction();
+			cubic.cancelDisappear();
+			player.getCubics().remove(cubic);
+		}
+		else
+		{
+			// If maximum amount is reached, random cubic is removed.
+			final L2Effect cubicMastery = player.getFirstPassiveEffect(L2EffectType.CUBIC_MASTERY);
+			final int cubicCount = (int) (cubicMastery != null ? cubicMastery.calc() : 0);
+			if (player.getCubics().size() >= cubicCount)
+			{
+				player.getCubics().remove(Rnd.get(player.getCubics().size()));
+			}
+		}
+		player.addCubic(_npcId, _cubicSkillLevel, _cubicPower, _cubicDelay, _cubicSkillChance, _cubicMaxCount, _cubicDuration, getEffected() != getEffector());
+		player.broadcastUserInfo();
+		return true;
+	}
+}
diff --git a/L2J_DataPack_BETA/dist/game/data/stats/skills/00000-00099.xml b/L2J_DataPack_BETA/dist/game/data/stats/skills/00000-00099.xml
index b7afec7407..6a5bf730e0 100644
--- a/L2J_DataPack_BETA/dist/game/data/stats/skills/00000-00099.xml
+++ b/L2J_DataPack_BETA/dist/game/data/stats/skills/00000-00099.xml
@@ -377,18 +377,18 @@
 		<set name="mpInitialConsume" val="#mpInitialConsume" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="5000" />
-		<set name="skillType" val="SUMMON" />
 		<set name="targetType" val="SELF" />
-		<!-- Cubic-Specific -->
-		<set name="cubicDelay" val="10" />
-		<set name="cubicDuration" val="900" />
-		<set name="cubicMaxCount" val="30" />
-		<set name="cubicPower" val="#cubicPower" />
-		<set name="cubicSkillChance" val="12" />
-		<set name="isCubic" val="true" />
-		<set name="npcId" val="1" /> <!-- Cubic Id -->
 		<enchant1 name="magicLvl" val="#enchMagicLvl" />
-		<enchant1 name="power" val="#ench1Power" />
+		<for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="1" cubicDelay="10" cubicDuration="900" cubicMaxCount="30" cubicSkillChance="12" cubicPower="#cubicPower" />
+			</effect>
+		</for>
+		<enchant1for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="1" cubicDelay="10" cubicDuration="900" cubicMaxCount="30" cubicSkillChance="12" cubicPower="#ench1Power" />
+			</effect>
+		</enchant1for>
 	</skill>
 	<skill id="11" levels="12" name="Trick">
 		<!-- Confirmed CT2.5 -->
@@ -684,18 +684,18 @@
 		<set name="mpInitialConsume" val="#mpInitialConsume" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="5000" />
-		<set name="skillType" val="SUMMON" />
 		<set name="targetType" val="SELF" />
-		<!-- Cubic-Specific -->
-		<set name="cubicDelay" val="15" />
-		<set name="cubicDuration" val="900" />
-		<set name="cubicMaxCount" val="20" />
-		<set name="cubicPower" val="#cubicPower" />
-		<set name="cubicSkillChance" val="8" />
-		<set name="isCubic" val="true" />
-		<set name="npcId" val="2" /> <!-- Cubic Id -->
 		<enchant1 name="magicLvl" val="#enchMagicLvl" />
-		<enchant1 name="power" val="#ench1Power" />
+		<for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="2" cubicDelay="15" cubicDuration="900" cubicMaxCount="20" cubicSkillChance="8" cubicPower="#cubicPower" />
+			</effect>
+		</for>
+		<enchant1for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="2" cubicDelay="15" cubicDuration="900" cubicMaxCount="20" cubicSkillChance="8" cubicPower="#ench1Power" />
+			</effect>
+		</enchant1for>
 	</skill>
 	<skill id="24" levels="31" name="Burst Shot" enchantGroup1="2" enchantGroup2="2" enchantGroup3="2">
 		<table name="#magicLvl"> 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 </table>
@@ -921,21 +921,20 @@
 		<set name="mpInitialConsume" val="#mpInitialConsume" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="5000" />
-		<set name="skillType" val="SUMMON" />
 		<set name="targetType" val="SELF" />
-		<!-- Cubic-Specific -->
-		<!-- set name="cubicSkill1Chance" val="33" / TODO: needs support -->
-		<!-- set name="cubicSkill2Chance" val="33" / TODO: needs support -->
-		<!-- set name="cubicSkill3Chance" val="33" / TODO: needs support -->
-		<set name="cubicDelay" val="8" />
-		<set name="cubicDuration" val="900" />
-		<set name="cubicMaxCount" val="30" />
-		<set name="cubicPower" val="#cubicPower" />
-		<set name="cubicSkillChance" val="30" />
-		<set name="isCubic" val="true" />
-		<set name="npcId" val="5" /> <!-- Cubic Id -->
 		<enchant1 name="magicLvl" val="#enchMagicLvl" />
-		<enchant1 name="power" val="#ench1Power" />
+		<for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="5" cubicDelay="8" cubicDuration="900" cubicMaxCount="30" cubicSkillChance="30" cubicPower="#cubicPower" />
+				<param cubicSkill1Chance="33" cubicSkill2Chance="33" cubicSkill3Chance="33" />
+			</effect>
+		</for>
+		<enchant1for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="5" cubicDelay="8" cubicDuration="900" cubicMaxCount="30" cubicSkillChance="30" cubicPower="#ench1Power" />
+				<param cubicSkill1Chance="33" cubicSkill2Chance="33" cubicSkill3Chance="33" />
+			</effect>
+		</enchant1for>
 	</skill>
 	<skill id="34" levels="3" name="Bandage">
 		<table name="#aggro"> 204 438 582 </table>
@@ -1470,7 +1469,7 @@
 		<table name="#magicLvl"> 42 49 55 60 64 68 72 </table>
 		<table name="#mpConsume"> 30 35 40 44 48 51 53 </table>
 		<table name="#mpInitialConsume"> 8 9 10 11 12 13 14 </table>
-		<table name="#ench1Power"> 76 76 76 77 77 77 78 78 78 79 79 79 80 80 80 81 81 81 82 82 82 83 83 83 84 84 84 85 85 85 </table>
+		<table name="#enchMagicLvl"> 76 76 76 77 77 77 78 78 78 79 79 79 80 80 80 81 81 81 82 82 82 83 83 83 84 84 84 85 85 85 </table>
 		<set name="hitTime" val="6000" />
 		<set name="isMagic" val="1" /> <!-- Magic Skill -->
 		<set name="itemConsumeCount" val="#itemConsumeCount" />
@@ -1480,19 +1479,14 @@
 		<set name="mpInitialConsume" val="#mpInitialConsume" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="5000" />
-		<set name="skillType" val="SUMMON" />
 		<set name="targetType" val="SELF" />
-		<!-- Cubic-Specific -->
-		<!-- set name="cubicSkill1Chance" val="13" / TODO: this is chance when HP is at 90% or less -->
-		<!-- set name="cubicSkill2Chance" val="33" / TODO: this is chance when HP is at 60% or less -->
-		<!-- set name="cubicSkill3Chance" val="53" / TODO: this is chance when HP is at 30% or less -->
-		<set name="cubicDelay" val="13" />
-		<set name="cubicDuration" val="900" />
-		<set name="cubicMaxCount" val="20" />
-		<set name="cubicSkillChance" val="0" /> <!-- FIXME: hardcoded in core, unhardcode plz -->
-		<set name="isCubic" val="true" />
-		<set name="npcId" val="3" /> <!-- Cubic Id -->
-		<enchant1 name="magicLvl" val="#ench1Power" />
+		<enchant1 name="magicLvl" val="#enchMagicLvl" />
+		<for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="3" cubicDelay="13" cubicDuration="900" cubicMaxCount="20" cubicSkillChance="0" />
+				<param cubicSkill1Chance="33" cubicSkill2Chance="33" cubicSkill3Chance="33" />
+			</effect>
+		</for>
 	</skill>
 	<skill id="69" levels="25" name="Sacrifice" enchantGroup1="2" enchantGroup2="2" enchantGroup3="2" enchantGroup4="2">
 		<table name="#aggro"> 494 508 521 535 548 562 575 588 602 615 627 640 653 665 677 689 700 711 722 733 743 753 763 772 780 </table>
diff --git a/L2J_DataPack_BETA/dist/game/data/stats/skills/00100-00199.xml b/L2J_DataPack_BETA/dist/game/data/stats/skills/00100-00199.xml
index 2b1214d732..5c42858cf0 100644
--- a/L2J_DataPack_BETA/dist/game/data/stats/skills/00100-00199.xml
+++ b/L2J_DataPack_BETA/dist/game/data/stats/skills/00100-00199.xml
@@ -970,17 +970,21 @@
 		</for>
 	</skill>
 	<skill id="141" levels="3" name="Weapon Mastery">
+		<!-- Confirmed CT2.5 -->
 		<table name="#magicLvl"> 5 10 15 </table>
 		<table name="#pAtk"> 2 3 4 </table>
 		<set name="magicLvl" val="#magicLvl" />
 		<set name="operateType" val="P" />
 		<set name="targetType" val="SELF" />
 		<for>
-			<mul order="0x30" stat="pAtk" val="1.085" />
-			<add order="0x40" stat="pAtk" val="#pAtk" />
+			<effect name="Buff" val="0">
+				<mul order="0x30" stat="pAtk" val="1.085" />
+				<add order="0x40" stat="pAtk" val="#pAtk" />
+			</effect>
 		</for>
 	</skill>
 	<skill id="142" levels="5" name="Armor Mastery">
+		<!-- Confirmed CT2.5 -->
 		<table name="#magicLvl"> 5 8 10 13 15 </table>
 		<table name="#pDef"> 9 11 12 13 14 </table>
 		<table name="#rEvas"> 0 0 0 3 3 </table>
@@ -988,18 +992,25 @@
 		<set name="operateType" val="P" />
 		<set name="targetType" val="SELF" />
 		<for>
-			<add order="0x40" stat="pDef" val="#pDef" />
-			<add order="0x40" stat="rEvas" val="#rEvas">
-				<using kind="Light" />
-			</add>
+			<effect name="Buff" val="0">
+				<add order="0x40" stat="pDef" val="#pDef" />
+				<mul order="0x30" stat="regMp" val="1.1" />
+				<add order="0x40" stat="rEvas" val="#rEvas">
+					<using kind="Light" />
+				</add>
+			</effect>
 		</for>
 	</skill>
 	<skill id="143" levels="2" name="Cubic Mastery">
+		<!-- Confirmed CT2.5 -->
 		<table name="#magicLvl"> 43 55 </table>
+		<table name="#cubicCount"> 2 3 </table>
 		<set name="magicLvl" val="#magicLvl" />
 		<set name="operateType" val="P" />
-		<set name="skillType" val="COREDONE" />
 		<set name="targetType" val="SELF" />
+		<for>
+			<effect name="CubicMastery" val="#cubicCount" />
+		</for>
 	</skill>
 	<skill id="144" levels="37" name="Dual Weapon Mastery" enchantGroup1="1" enchantGroup2="1">
 		<table name="#magicLvl"> 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 </table>
@@ -1010,22 +1021,28 @@
 		<set name="operateType" val="P" />
 		<set name="targetType" val="SELF" />
 		<for>
-			<add order="0x40" stat="pAtk" val="#pAtk">
-				<using kind="Dual Sword" />
-			</add>
+			<effect name="Buff" val="0">
+				<add order="0x40" stat="pAtk" val="#pAtk">
+					<using kind="Dual Sword" />
+				</add>
+			</effect>
 		</for>
 		<enchant1for>
-			<add order="0x40" stat="pAtk" val="#ench1pAtk">
-				<using kind="Dual Sword" />
-			</add>
+			<effect name="Buff" val="0">
+				<add order="0x40" stat="pAtk" val="#ench1pAtk">
+					<using kind="Dual Sword" />
+				</add>
+			</effect>
 		</enchant1for>
 		<enchant2for>
-			<add order="0x40" stat="pAtk" val="129.3">
-				<using kind="Dual Sword" />
-			</add>
-			<mul order="0x30" stat="pAtkSpd" val="#ench2pAtkSpd">
-				<using kind="Dual Sword" />
-			</mul>
+			<effect name="Buff" val="0">
+				<add order="0x40" stat="pAtk" val="129.3">
+					<using kind="Dual Sword" />
+				</add>
+				<mul order="0x30" stat="pAtkSpd" val="#ench2pAtkSpd">
+					<using kind="Dual Sword" />
+				</mul>
+			</effect>
 		</enchant2for>
 	</skill>
 	<skill id="146" levels="45" name="Anti Magic" enchantGroup1="1">
diff --git a/L2J_DataPack_BETA/dist/game/data/stats/skills/00200-00299.xml b/L2J_DataPack_BETA/dist/game/data/stats/skills/00200-00299.xml
index 5fc4fe7cea..686a19fe19 100644
--- a/L2J_DataPack_BETA/dist/game/data/stats/skills/00200-00299.xml
+++ b/L2J_DataPack_BETA/dist/game/data/stats/skills/00200-00299.xml
@@ -2047,18 +2047,18 @@
 		<set name="mpInitialConsume" val="#mpInitialConsume" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="5000" />
-		<set name="skillType" val="SUMMON" />
 		<set name="targetType" val="SELF" />
-		<!-- Cubic-Specific -->
-		<set name="cubicDelay" val="20" />
-		<set name="cubicDuration" val="900" />
-		<set name="cubicMaxCount" val="15" />
-		<set name="cubicPower" val="#cubicPower" />
-		<set name="cubicSkillChance" val="20" />
-		<set name="isCubic" val="true" />
-		<set name="npcId" val="4" /> <!-- Cubic Id -->
 		<enchant1 name="magicLvl" val="#enchMagicLvl" />
-		<enchant1 name="power" val="#ench1Power" />
+		<for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="4" cubicDelay="20" cubicDuration="900" cubicMaxCount="15" cubicSkillChance="20" cubicPower="#cubicPower" />
+			</effect>
+		</for>
+		<enchant1for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="4" cubicDelay="20" cubicDuration="900" cubicMaxCount="15" cubicSkillChance="20" cubicPower="#ench1Power" />
+			</effect>
+		</enchant1for>
 	</skill>
 	<skill id="279" levels="5" name="Lightning Strike" enchantGroup1="2" enchantGroup2="2" enchantGroup3="2">
 		<!-- Confirmed CT2.5 -->
diff --git a/L2J_DataPack_BETA/dist/game/data/stats/skills/00400-00499.xml b/L2J_DataPack_BETA/dist/game/data/stats/skills/00400-00499.xml
index 8ceac2c370..0dc1d7813d 100644
--- a/L2J_DataPack_BETA/dist/game/data/stats/skills/00400-00499.xml
+++ b/L2J_DataPack_BETA/dist/game/data/stats/skills/00400-00499.xml
@@ -1668,21 +1668,20 @@
 		<set name="mpConsume" val="#mpConsume" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="5000" />
-		<set name="skillType" val="SUMMON" />
 		<set name="targetType" val="SELF" />
-		<!-- Cubic-Specific -->
-		<!-- set name="cubicSkill1Chance" val="33" / TODO: needs support -->
-		<!-- set name="cubicSkill2Chance" val="33" / TODO: needs support -->
-		<!-- set name="cubicSkill3Chance" val="33" / TODO: needs support -->
-		<set name="cubicDelay" val="8" />
-		<set name="cubicDuration" val="900" />
-		<set name="cubicMaxCount" val="300" />
-		<set name="cubicPower" val="#cubicPower" />
-		<set name="cubicSkillChance" val="50" />
-		<set name="isCubic" val="true" />
-		<set name="npcId" val="9" /> <!-- Cubic Id -->
 		<enchant1 name="magicLvl" val="#enchMagicLvl" />
-		<enchant1 name="power" val="#ench1Power" />
+		<for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="9" cubicDelay="8" cubicDuration="900" cubicMaxCount="300" cubicSkillChance="50" cubicPower="#cubicPower" />
+				<param cubicSkill1Chance="33" cubicSkill2Chance="33" cubicSkill3Chance="33" />
+			</effect>
+		</for>
+		<enchant1for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="9" cubicDelay="8" cubicDuration="900" cubicMaxCount="300" cubicSkillChance="50" cubicPower="#ench1Power" />
+				<param cubicSkill1Chance="33" cubicSkill2Chance="33" cubicSkill3Chance="33" />
+			</effect>
+		</enchant1for>
 	</skill>
 	<skill id="450" levels="10" name="Banish Seraph" enchantGroup1="1" enchantGroup2="1" enchantGroup3="1" enchantGroup4="1">
 		<!-- Confirmed CT2.5 -->
diff --git a/L2J_DataPack_BETA/dist/game/data/stats/skills/00700-00799.xml b/L2J_DataPack_BETA/dist/game/data/stats/skills/00700-00799.xml
index c36ed35d1a..7f2bc2bd37 100644
--- a/L2J_DataPack_BETA/dist/game/data/stats/skills/00700-00799.xml
+++ b/L2J_DataPack_BETA/dist/game/data/stats/skills/00700-00799.xml
@@ -1814,19 +1814,13 @@
 		<set name="mpInitialConsume" val="14" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="5000" />
-		<set name="skillType" val="SUMMON" />
 		<set name="targetType" val="SELF" />
-		<!-- Cubic-Specific -->
-		<!-- set name="cubicSkill1Chance" val="25" / TODO: needs support -->
-		<!-- set name="cubicSkill2Chance" val="25" / TODO: needs support -->
-		<!-- set name="cubicSkill3Chance" val="50" / TODO: needs support -->
-		<set name="cubicDelay" val="10" />
-		<set name="cubicDuration" val="900" />
-		<set name="cubicMaxCount" val="50" />
-		<set name="cubicPower" val="2106" />
-		<set name="cubicSkillChance" val="30" />
-		<set name="isCubic" val="true" />
-		<set name="npcId" val="10" /> <!-- Cubic Id -->
+		<for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="10" cubicDelay="10" cubicDuration="900" cubicMaxCount="50" cubicSkillChance="30" cubicPower="2106" />
+				<param cubicSkill1Chance="33" cubicSkill2Chance="33" cubicSkill3Chance="33" />
+			</effect>
+		</for>
 	</skill>
 	<skill id="780" levels="1" name="Summon Smart Cubic">
 		<!-- Shillien Templar's Smart Cubic -->
@@ -1839,19 +1833,13 @@
 		<set name="mpInitialConsume" val="14" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="5000" />
-		<set name="skillType" val="SUMMON" />
 		<set name="targetType" val="SELF" />
-		<!-- Cubic-Specific -->
-		<!-- set name="cubicSkill1Chance" val="40" / TODO: needs support -->
-		<!-- set name="cubicSkill2Chance" val="15" / TODO: needs support -->
-		<!-- set name="cubicSkill3Chance" val="45" / TODO: needs support -->
-		<set name="cubicDelay" val="10" />
-		<set name="cubicDuration" val="900" />
-		<set name="cubicMaxCount" val="50" />
-		<set name="cubicPower" val="2106" />
-		<set name="cubicSkillChance" val="30" />
-		<set name="isCubic" val="true" />
-		<set name="npcId" val="11" /> <!-- Cubic Id -->
+		<for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="11" cubicDelay="10" cubicDuration="900" cubicMaxCount="50" cubicSkillChance="30" cubicPower="2106" />
+				<param cubicSkill1Chance="33" cubicSkill2Chance="33" cubicSkill3Chance="33" />
+			</effect>
+		</for>
 	</skill>
 	<skill id="781" levels="1" name="Summon Smart Cubic">
 		<!-- Arcana Lord's Smart Cubic -->
@@ -1864,19 +1852,13 @@
 		<set name="mpInitialConsume" val="14" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="5000" />
-		<set name="skillType" val="SUMMON" />
 		<set name="targetType" val="SELF" />
-		<!-- Cubic-Specific -->
-		<!-- set name="cubicSkill1Chance" val="20" / TODO: needs support -->
-		<!-- set name="cubicSkill2Chance" val="30" / TODO: needs support -->
-		<!-- set name="cubicSkill3Chance" val="50" / TODO: needs support -->
-		<set name="cubicDelay" val="13" />
-		<set name="cubicDuration" val="900" />
-		<set name="cubicMaxCount" val="50" />
-		<set name="cubicPower" val="2106" />
-		<set name="cubicSkillChance" val="30" />
-		<set name="isCubic" val="true" />
-		<set name="npcId" val="12" /> <!-- Cubic Id -->
+		<for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="12" cubicDelay="10" cubicDuration="900" cubicMaxCount="50" cubicSkillChance="30" cubicPower="2106" />
+				<param cubicSkill1Chance="33" cubicSkill2Chance="33" cubicSkill3Chance="33" />
+			</effect>
+		</for>
 	</skill>
 	<skill id="782" levels="1" name="Summon Smart Cubic">
 		<!-- Elemental Master's Smart Cubic -->
@@ -1889,19 +1871,13 @@
 		<set name="mpInitialConsume" val="14" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="5000" />
-		<set name="skillType" val="SUMMON" />
 		<set name="targetType" val="SELF" />
-		<!-- Cubic-Specific -->
-		<!-- set name="cubicSkill1Chance" val="25" / TODO: needs support -->
-		<!-- set name="cubicSkill2Chance" val="25" / TODO: needs support -->
-		<!-- set name="cubicSkill3Chance" val="50" / TODO: needs support -->
-		<set name="cubicDelay" val="13" />
-		<set name="cubicDuration" val="900" />
-		<set name="cubicMaxCount" val="50" />
-		<set name="cubicPower" val="2106" />
-		<set name="cubicSkillChance" val="30" />
-		<set name="isCubic" val="true" />
-		<set name="npcId" val="13" /> <!-- Cubic Id -->
+		<for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="13" cubicDelay="10" cubicDuration="900" cubicMaxCount="50" cubicSkillChance="30" cubicPower="2106" />
+				<param cubicSkill1Chance="33" cubicSkill2Chance="33" cubicSkill3Chance="33" />
+			</effect>
+		</for>
 	</skill>
 	<skill id="783" levels="1" name="Summon Smart Cubic">
 		<!-- Spectral Master's Smart Cubic -->
@@ -1914,19 +1890,13 @@
 		<set name="mpInitialConsume" val="14" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="5000" />
-		<set name="skillType" val="SUMMON" />
 		<set name="targetType" val="SELF" />
-		<!-- Cubic-Specific -->
-		<!-- set name="cubicSkill1Chance" val="30" / TODO: needs support -->
-		<!-- set name="cubicSkill2Chance" val="20" / TODO: needs support -->
-		<!-- set name="cubicSkill3Chance" val="50" / TODO: needs support -->
-		<set name="cubicDelay" val="13" />
-		<set name="cubicDuration" val="900" />
-		<set name="cubicMaxCount" val="50" />
-		<set name="cubicPower" val="2106" />
-		<set name="cubicSkillChance" val="30" />
-		<set name="isCubic" val="true" />
-		<set name="npcId" val="14" /> <!-- Cubic Id -->
+		<for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="14" cubicDelay="10" cubicDuration="900" cubicMaxCount="50" cubicSkillChance="30" cubicPower="2106" />
+				<param cubicSkill1Chance="33" cubicSkill2Chance="33" cubicSkill3Chance="33" />
+			</effect>
+		</for>
 	</skill>
 	<skill id="784" levels="1" name="Spirit of Phoenix">
 		<!-- Confirmed CT2.5 -->
diff --git a/L2J_DataPack_BETA/dist/game/data/stats/skills/01200-01299.xml b/L2J_DataPack_BETA/dist/game/data/stats/skills/01200-01299.xml
index 8b8cd93954..7b6f756b31 100644
--- a/L2J_DataPack_BETA/dist/game/data/stats/skills/01200-01299.xml
+++ b/L2J_DataPack_BETA/dist/game/data/stats/skills/01200-01299.xml
@@ -2598,18 +2598,18 @@
 		<set name="mpInitialConsume" val="#mpInitialConsume" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="5000" />
-		<set name="skillType" val="SUMMON" />
 		<set name="targetType" val="SELF" />
-		<!-- Cubic-Specific -->
-		<set name="cubicDelay" val="30" />
-		<set name="cubicDuration" val="900" />
-		<set name="cubicMaxCount" val="10" />
-		<set name="cubicPower" val="#cubicPower" />
-		<set name="cubicSkillChance" val="12" />
-		<set name="isCubic" val="true" />
-		<set name="npcId" val="6" /> <!-- Cubic Id -->
 		<enchant1 name="magicLvl" val="#enchMagicLvl" />
-		<enchant1 name="power" val="#ench1Power" />
+		<for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="6" cubicDelay="30" cubicDuration="900" cubicMaxCount="10" cubicSkillChance="12" cubicPower="#cubicPower" />
+			</effect>
+		</for>
+		<enchant1for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="6" cubicDelay="30" cubicDuration="900" cubicMaxCount="10" cubicSkillChance="12" cubicPower="#ench1Power" />
+			</effect>
+		</enchant1for>
 	</skill>
 	<skill id="1280" levels="9" name="Summon Aqua Cubic" enchantGroup1="2">
 		<!-- Confirmed CT2.5 -->
@@ -2629,18 +2629,18 @@
 		<set name="mpInitialConsume" val="#mpInitialConsume" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="5000" />
-		<set name="skillType" val="SUMMON" />
 		<set name="targetType" val="SELF" />
-		<!-- Cubic-Specific -->
-		<set name="cubicDelay" val="30" />
-		<set name="cubicDuration" val="900" />
-		<set name="cubicMaxCount" val="10" />
-		<set name="cubicPower" val="#cubicPower" />
-		<set name="cubicSkillChance" val="30" />
-		<set name="isCubic" val="true" />
-		<set name="npcId" val="7" /> <!-- Cubic Id -->
 		<enchant1 name="magicLvl" val="#enchMagicLvl" />
-		<enchant1 name="power" val="#ench1Power" />
+		<for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="7" cubicDelay="30" cubicDuration="900" cubicMaxCount="10" cubicSkillChance="30" cubicPower="#cubicPower" />
+			</effect>
+		</for>
+		<enchant1for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="7" cubicDelay="30" cubicDuration="900" cubicMaxCount="10" cubicSkillChance="30" cubicPower="#ench1Power" />
+			</effect>
+		</enchant1for>
 	</skill>
 	<skill id="1281" levels="9" name="Summon Spark Cubic" enchantGroup1="2">
 		<!-- Confirmed CT2.5 -->
@@ -2660,18 +2660,18 @@
 		<set name="mpInitialConsume" val="#mpInitialConsume" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="5000" />
-		<set name="skillType" val="SUMMON" />
 		<set name="targetType" val="SELF" />
-		<!-- Cubic-Specific -->
-		<set name="cubicDelay" val="30" />
-		<set name="cubicDuration" val="900" />
-		<set name="cubicMaxCount" val="10" />
-		<set name="cubicPower" val="#cubicPower" />
-		<set name="cubicSkillChance" val="12" />
-		<set name="isCubic" val="true" />
-		<set name="npcId" val="8" /> <!-- Cubic Id -->
 		<enchant1 name="magicLvl" val="#enchMagicLvl" />
-		<enchant1 name="power" val="#ench1Power" />
+		<for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="8" cubicDelay="30" cubicDuration="900" cubicMaxCount="10" cubicSkillChance="12" cubicPower="#cubicPower" />
+			</effect>
+		</for>
+		<enchant1for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="8" cubicDelay="30" cubicDuration="900" cubicMaxCount="10" cubicSkillChance="12" cubicPower="#ench1Power" />
+			</effect>
+		</enchant1for>
 	</skill>
 	<skill id="1282" levels="2" name="Pa'agrian Haste" enchantGroup1="1" enchantGroup2="1">
 		<table name="#abnormalLvls"> 1 2 </table>
diff --git a/L2J_DataPack_BETA/dist/game/data/stats/skills/01300-01399.xml b/L2J_DataPack_BETA/dist/game/data/stats/skills/01300-01399.xml
index 7fa577cbaf..26556f997d 100644
--- a/L2J_DataPack_BETA/dist/game/data/stats/skills/01300-01399.xml
+++ b/L2J_DataPack_BETA/dist/game/data/stats/skills/01300-01399.xml
@@ -641,18 +641,18 @@
 		<set name="mpInitialConsume" val="#mpInitialConsume" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="5000" />
-		<set name="skillType" val="SUMMON" />
 		<set name="targetType" val="PARTY" />
-		<!-- Cubic-Specific -->
-		<set name="cubicDelay" val="10" />
-		<set name="cubicDuration" val="900" />
-		<set name="cubicMaxCount" val="30" />
-		<set name="cubicPower" val="#cubicPower" />
-		<set name="cubicSkillChance" val="12" />
-		<set name="isCubic" val="true" />
-		<set name="npcId" val="1" /> <!-- Cubic Id -->
 		<enchant1 name="magicLvl" val="#enchMagicLvl" />
-		<enchant1 name="power" val="#ench1Power" />
+		<for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="1" cubicDelay="10" cubicDuration="900" cubicMaxCount="30" cubicSkillChance="12" cubicPower="#cubicPower" />
+			</effect>
+		</for>
+		<enchant1for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="1" cubicDelay="10" cubicDuration="900" cubicMaxCount="30" cubicSkillChance="12" cubicPower="#ench1Power" />
+			</effect>
+		</enchant1for>
 	</skill>
 	<skill id="1329" levels="9" name="Mass Summon Aqua Cubic" enchantGroup1="2">
 		<!-- Confirmed CT2.5 -->
@@ -673,18 +673,18 @@
 		<set name="mpInitialConsume" val="#mpInitialConsume" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="5000" />
-		<set name="skillType" val="SUMMON" />
 		<set name="targetType" val="PARTY" />
-		<!-- Cubic-Specific -->
-		<set name="cubicDelay" val="30" />
-		<set name="cubicDuration" val="900" />
-		<set name="cubicMaxCount" val="10" />
-		<set name="cubicPower" val="#cubicPower" />
-		<set name="cubicSkillChance" val="30" />
-		<set name="isCubic" val="true" />
-		<set name="npcId" val="7" /> <!-- Cubic Id -->
 		<enchant1 name="magicLvl" val="#enchMagicLvl" />
-		<enchant1 name="power" val="#ench1Power" />
+		<for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="7" cubicDelay="30" cubicDuration="900" cubicMaxCount="10" cubicSkillChance="30" cubicPower="#cubicPower" />
+			</effect>
+		</for>
+		<enchant1for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="7" cubicDelay="30" cubicDuration="900" cubicMaxCount="10" cubicSkillChance="30" cubicPower="#ench1Power" />
+			</effect>
+		</enchant1for>
 	</skill>
 	<skill id="1330" levels="8" name="Mass Summon Phantom Cubic" enchantGroup1="2">
 		<!-- Confirmed CT2.5 -->
@@ -705,21 +705,20 @@
 		<set name="mpInitialConsume" val="#mpInitialConsume" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="5000" />
-		<set name="skillType" val="SUMMON" />
 		<set name="targetType" val="PARTY" />
-		<!-- Cubic-Specific -->
-		<!-- set name="cubicSkill1Chance" val="33" / TODO: needs support -->
-		<!-- set name="cubicSkill2Chance" val="33" / TODO: needs support -->
-		<!-- set name="cubicSkill3Chance" val="33" / TODO: needs support -->
-		<set name="cubicDelay" val="8" />
-		<set name="cubicDuration" val="900" />
-		<set name="cubicMaxCount" val="30" />
-		<set name="cubicPower" val="#cubicPower" />
-		<set name="cubicSkillChance" val="30" />
-		<set name="isCubic" val="true" />
-		<set name="npcId" val="5" /> <!-- Cubic Id -->
 		<enchant1 name="magicLvl" val="#enchMagicLvl" />
-		<enchant1 name="power" val="#ench1Power" />
+		<for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="5" cubicDelay="8" cubicDuration="900" cubicMaxCount="30" cubicSkillChance="30" cubicPower="#cubicPower" />
+				<param cubicSkill1Chance="33" cubicSkill2Chance="33" cubicSkill3Chance="33" />
+			</effect>
+		</for>
+		<enchant1for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="5" cubicDelay="8" cubicDuration="900" cubicMaxCount="30" cubicSkillChance="30" cubicPower="#ench1Power" />
+				<param cubicSkill1Chance="33" cubicSkill2Chance="33" cubicSkill3Chance="33" />
+			</effect>
+		</enchant1for>
 	</skill>
 	<skill id="1331" levels="10" name="Summon Feline Queen" enchantGroup1="1">
 		<table name="#itemConsumeCount"> 1 1 2 2 4 1 1 4 1 2 </table>
diff --git a/L2J_DataPack_BETA/dist/game/data/stats/skills/04300-04399.xml b/L2J_DataPack_BETA/dist/game/data/stats/skills/04300-04399.xml
index 0c3ae1ce4e..24c2ba6a18 100644
--- a/L2J_DataPack_BETA/dist/game/data/stats/skills/04300-04399.xml
+++ b/L2J_DataPack_BETA/dist/game/data/stats/skills/04300-04399.xml
@@ -504,18 +504,13 @@
 		<set name="isMagic" val="1" /> <!-- Magic Skill -->
 		<set name="magicLvl" val="18" />
 		<set name="operateType" val="A1" />
-		<set name="skillType" val="SUMMON" />
 		<set name="targetType" val="SELF" />
-		<!-- Cubic-Specific -->
-		<!-- set name="cubicSkill1Chance" val="13" / TODO: this is chance when HP is at 90% or less -->
-		<!-- set name="cubicSkill2Chance" val="33" / TODO: this is chance when HP is at 60% or less -->
-		<!-- set name="cubicSkill3Chance" val="53" / TODO: this is chance when HP is at 30% or less -->
-		<set name="cubicDelay" val="13" />
-		<set name="cubicDuration" val="3600" />
-		<set name="cubicMaxCount" val="20" />
-		<set name="cubicSkillChance" val="0" /> <!-- FIXME: hardcoded in core, unhardcode plz -->
-		<set name="isCubic" val="true" />
-		<set name="npcId" val="3" /> <!-- Cubic Id -->
+		<for>
+			<effect name="SummonCubic" noicon="1" val="0">
+				<param npcId="3" cubicDelay="13" cubicDuration="3600" cubicMaxCount="20" />
+				<param cubicSkill1Chance="13" cubicSkill2Chance="33" cubicSkill3Chance="53" />
+			</effect>
+		</for>
 	</skill>
 	<skill id="4339" levels="1" name="Mimir's Elixir">
 		<!-- Freya retail confirmed -->
diff --git a/L2J_DataPack_BETA/dist/game/data/stats/skills/06800-06899.xml b/L2J_DataPack_BETA/dist/game/data/stats/skills/06800-06899.xml
index a980e3b33d..e8164e8f75 100644
--- a/L2J_DataPack_BETA/dist/game/data/stats/skills/06800-06899.xml
+++ b/L2J_DataPack_BETA/dist/game/data/stats/skills/06800-06899.xml
@@ -19,8 +19,11 @@
 		<set name="targetType" val="NONE" />
 	</skill>
 	<skill id="6803" levels="1" name="Arena Haste">
+		<!-- High Five Skill -->
 		<!-- Arena Skill -->
+		<set name="abnormalLvl" val="2" />
 		<set name="abnormalTime" val="300" />
+		<set name="abnormalType" val="ATTACK_TIME_DOWN" />
 		<set name="castRange" val="400" />
 		<set name="effectRange" val="900" />
 		<set name="magicLvl" val="1" />
@@ -34,8 +37,11 @@
 		</for>
 	</skill>
 	<skill id="6804" levels="1" name="Arena Wind Walk">
+		<!-- High Five Skill -->
 		<!-- Arena Skill -->
+		<set name="abnormalLvl" val="2" />
 		<set name="abnormalTime" val="300" />
+		<set name="abnormalType" val="SPEED_UP" />
 		<set name="castRange" val="400" />
 		<set name="effectRange" val="900" />
 		<set name="magicLvl" val="1" />
@@ -49,8 +55,11 @@
 		</for>
 	</skill>
 	<skill id="6805" levels="1" name="Arena Empower">
+		<!-- High Five Skill -->
 		<!-- Arena Skill -->
+		<set name="abnormalLvl" val="3" />
 		<set name="abnormalTime" val="300" />
+		<set name="abnormalType" val="MA_UP" />
 		<set name="castRange" val="400" />
 		<set name="effectRange" val="900" />
 		<set name="magicLvl" val="1" />
@@ -64,8 +73,11 @@
 		</for>
 	</skill>
 	<skill id="6806" levels="1" name="Arena Acumen">
+		<!-- High Five Skill -->
 		<!-- Arena Skill -->
+		<set name="abnormalLvl" val="3" />
 		<set name="abnormalTime" val="300" />
+		<set name="abnormalType" val="CASTING_TIME_DOWN" />
 		<set name="castRange" val="400" />
 		<set name="effectRange" val="900" />
 		<set name="magicLvl" val="1" />
@@ -79,8 +91,11 @@
 		</for>
 	</skill>
 	<skill id="6807" levels="1" name="Arena Concentration">
+		<!-- High Five Skill -->
 		<!-- Arena Skill -->
+		<set name="abnormalLvl" val="6" />
 		<set name="abnormalTime" val="300" />
+		<set name="abnormalType" val="CANCEL_PROB_DOWN" />
 		<set name="castRange" val="400" />
 		<set name="effectRange" val="900" />
 		<set name="magicLvl" val="1" />
@@ -94,8 +109,11 @@
 		</for>
 	</skill>
 	<skill id="6808" levels="1" name="Arena Might">
+		<!-- High Five Skill -->
 		<!-- Arena Skill -->
+		<set name="abnormalLvl" val="3" />
 		<set name="abnormalTime" val="300" />
+		<set name="abnormalType" val="PA_UP" />
 		<set name="castRange" val="400" />
 		<set name="effectRange" val="900" />
 		<set name="magicLvl" val="1" />
@@ -109,8 +127,11 @@
 		</for>
 	</skill>
 	<skill id="6809" levels="1" name="Arena Guidance">
+		<!-- High Five Skill -->
 		<!-- Arena Skill -->
+		<set name="abnormalLvl" val="3" />
 		<set name="abnormalTime" val="300" />
+		<set name="abnormalType" val="HIT_UP" />
 		<set name="castRange" val="400" />
 		<set name="effectRange" val="900" />
 		<set name="magicLvl" val="1" />
@@ -124,8 +145,11 @@
 		</for>
 	</skill>
 	<skill id="6810" levels="1" name="Arena Focus">
+		<!-- High Five Skill -->
 		<!-- Arena Skill -->
+		<set name="abnormalLvl" val="3" />
 		<set name="abnormalTime" val="300" />
+		<set name="abnormalType" val="CRITICAL_PROB_UP" />
 		<set name="castRange" val="400" />
 		<set name="effectRange" val="900" />
 		<set name="magicLvl" val="1" />
@@ -139,12 +163,15 @@
 		</for>
 	</skill>
 	<skill id="6811" levels="1" name="Arena Death Whisper">
+		<!-- High Five Skill -->
 		<!-- Arena Skill -->
+		<set name="abnormalLvl" val="3" />
 		<set name="abnormalTime" val="300" />
+		<set name="abnormalType" val="CRITICAL_DMG_UP" />
 		<set name="castRange" val="400" />
 		<set name="effectRange" val="900" />
 		<set name="magicLvl" val="1" />
-		<set name="operateType" val="A1" /> <!-- FIXME: value unconfirmed -->
+		<set name="operateType" val="A2" />
 		<set name="skillType" val="BUFF" />
 		<set name="targetType" val="ONE" />
 		<for>
@@ -154,12 +181,15 @@
 		</for>
 	</skill>
 	<skill id="6812" levels="1" name="Arena Berserker Spirit">
+		<!-- High Five Skill -->
 		<!-- Arena Skill -->
+		<set name="abnormalLvl" val="2" />
 		<set name="abnormalTime" val="300" />
+		<set name="abnormalType" val="BERSERKER" />
 		<set name="castRange" val="400" />
 		<set name="effectRange" val="900" />
 		<set name="magicLvl" val="1" />
-		<set name="operateType" val="A1" /> <!-- FIXME: value unconfirmed -->
+		<set name="operateType" val="A2" />
 		<set name="skillType" val="BUFF" />
 		<set name="targetType" val="ONE" />
 		<for>
@@ -1154,6 +1184,7 @@
 		<!-- High Five Skill -->
 		<!-- FIXME: value unconfirmed -->
 		<set name="abnormalLvl" val="1" />
+		<set name="abnormalTime" val="30" />
 		<set name="abnormalType" val="TURN_STONE" />
 		<set name="castRange" val="40" />
 		<set name="effectRange" val="400" />
-- 
GitLab