Addition of VIP system.

Contributed by marciox25.
This commit is contained in:
MobiusDevelopment
2021-04-30 16:29:22 +00:00
parent f7b82e35b9
commit 1acb57e53f
331 changed files with 16039 additions and 487 deletions

View File

@@ -1,3 +1,61 @@
<?xml version="1.0" encoding="UTF-8"?>
<list enabled="false" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="xsd/PrimeShop.xsd">
<list enabled="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="xsd/PrimeShop.xsd">
<!--
cat 11 = supplies
cat 12 = Equipment/outfit
cat 13 = VIP
cat 14 = Event
cat 15 = Reward Coins
On Cat 15, golden coins use the same value as "price" and silver uses the value from silverCoin node. -> paymenttype = 0
for the price to be used as golden or silver, vipTier needs to be > 0
-->
<item id="2090044" cat="11" paymentType="0" price="30" recommended="4" startSale="315558000" endSale="2127452400" dayOfWeek="127" startHour="0" startMinute="0" stopHour="23" stopMinute="59" stock="-1" maxStock="-1" salePercent="0" minLevel="0" maxLevel="0" minBirthday="0" maxBirthday="0" restrictionDay="0" availableCount="0">
<item itemId="29505" count="1" /> <!-- Normal VIP Gain Scroll -->
</item>
<item id="2090045" cat="12" paymentType="0" price="60" recommended="4" startSale="315558000" endSale="2127452400" dayOfWeek="127" startHour="0" startMinute="0" stopHour="23" stopMinute="59" stock="-1" maxStock="-1" salePercent="0" minLevel="0" maxLevel="0" minBirthday="0" maxBirthday="0" restrictionDay="0" availableCount="0">
<item itemId="29506" count="1" /> <!-- Medium VIP Gain Scroll -->
</item>
<item id="2090046" cat="13" paymentType="0" price="50" recommended="4" startSale="315558000" endSale="2127452400" dayOfWeek="127" startHour="0" startMinute="0" stopHour="23" stopMinute="59" stock="-1" maxStock="-1" salePercent="0" minLevel="0" maxLevel="0" minBirthday="0" maxBirthday="0" restrictionDay="0" availableCount="0">
<item itemId="29507" count="1" /> <!-- Good VIP Gain Scroll -->
</item>
<item id="2090047" cat="14" paymentType="0" price="100" recommended="4" startSale="315558000" endSale="2127452400" dayOfWeek="127" startHour="0" startMinute="0" stopHour="23" stopMinute="59" stock="-1" maxStock="-1" salePercent="0" minLevel="0" maxLevel="0" minBirthday="0" maxBirthday="0" restrictionDay="0" availableCount="0">
<item itemId="29508" count="1" /> <!-- Perfect VIP Gain Scroll -->
</item>
<item id="2090048" cat="15" paymentType="0" price="0" silverCoin="100" recommended="4" vipTier="7" startSale="315558000" endSale="2127452400" dayOfWeek="127" startHour="0" startMinute="0" stopHour="23" stopMinute="59" stock="-1" maxStock="-1" salePercent="0" minLevel="0" maxLevel="0" minBirthday="0" maxBirthday="0" restrictionDay="0" availableCount="0">
<item itemId="29505" count="1" /> <!-- Normal VIP Gain Scroll -->
</item>
<item id="2090049" cat="15" paymentType="0" price="0" silverCoin="200" recommended="4" vipTier="7" startSale="315558000" endSale="2127452400" dayOfWeek="127" startHour="0" startMinute="0" stopHour="23" stopMinute="59" stock="-1" maxStock="-1" salePercent="0" minLevel="0" maxLevel="0" minBirthday="0" maxBirthday="0" restrictionDay="0" availableCount="0">
<item itemId="29506" count="1" /> <!-- Medium VIP Gain Scroll -->
</item>
<item id="2090050" cat="15" paymentType="0" price="50" silverCoin="0" recommended="4" vipTier="7" startSale="315558000" endSale="2127452400" dayOfWeek="127" startHour="0" startMinute="0" stopHour="23" stopMinute="59" stock="-1" maxStock="-1" salePercent="0" minLevel="0" maxLevel="0" minBirthday="0" maxBirthday="0" restrictionDay="0" availableCount="0">
<item itemId="29507" count="1" /> <!-- Good VIP Gain Scroll -->
</item>
<item id="2090051" cat="15" paymentType="0" price="100" silverCoin="0" recommended="4" vipTier="7" startSale="315558000" endSale="2127452400" dayOfWeek="127" startHour="0" startMinute="0" stopHour="23" stopMinute="59" stock="-1" maxStock="-1" salePercent="0" minLevel="0" maxLevel="0" minBirthday="0" maxBirthday="0" restrictionDay="0" availableCount="0">
<item itemId="29508" count="1" /> <!-- Perfect VIP Gain Scroll -->
</item>
<item id="100001" cat="13" paymentType="0" price="0" recommended="4" startSale="315558000" endSale="2127452400" dayOfWeek="127" startHour="0" startMinute="0" stopHour="23" stopMinute="59" stock="-1" maxStock="-1" salePercent="0" minLevel="0" maxLevel="0" minBirthday="0" maxBirthday="0" restrictionDay="0" availableCount="0" isVipGift="true" vipTier="1">
<item itemId="29001" count="1" /> <!-- Daily Present - VIP 1 -->
</item>
<item id="100002" cat="13" paymentType="0" price="0" recommended="4" startSale="315558000" endSale="2127452400" dayOfWeek="127" startHour="0" startMinute="0" stopHour="23" stopMinute="59" stock="-1" maxStock="-1" salePercent="0" minLevel="0" maxLevel="0" minBirthday="0" maxBirthday="0" restrictionDay="0" availableCount="0" isVipGift="true" vipTier="2">
<item itemId="29002" count="1" /> <!-- Daily Present - VIP 2 -->
</item>
<item id="100003" cat="13" paymentType="0" price="0" recommended="4" startSale="315558000" endSale="2127452400" dayOfWeek="127" startHour="0" startMinute="0" stopHour="23" stopMinute="59" stock="-1" maxStock="-1" salePercent="0" minLevel="0" maxLevel="0" minBirthday="0" maxBirthday="0" restrictionDay="0" availableCount="0" isVipGift="true" vipTier="3">
<item itemId="29003" count="1" /> <!-- Daily Present - VIP 3 -->
</item>
<item id="100004" cat="13" paymentType="0" price="0" recommended="4" startSale="315558000" endSale="2127452400" dayOfWeek="127" startHour="0" startMinute="0" stopHour="23" stopMinute="59" stock="-1" maxStock="-1" salePercent="0" minLevel="0" maxLevel="0" minBirthday="0" maxBirthday="0" restrictionDay="0" availableCount="0" isVipGift="true" vipTier="4">
<item itemId="29004" count="1" /> <!-- Daily Present - VIP 4 -->
</item>
<item id="100005" cat="13" paymentType="0" price="0" recommended="4" startSale="315558000" endSale="2127452400" dayOfWeek="127" startHour="0" startMinute="0" stopHour="23" stopMinute="59" stock="-1" maxStock="-1" salePercent="0" minLevel="0" maxLevel="0" minBirthday="0" maxBirthday="0" restrictionDay="0" availableCount="0" isVipGift="true" vipTier="5">
<item itemId="29005" count="1" /> <!-- Daily Present - VIP 5 -->
</item>
<item id="100006" cat="13" paymentType="0" price="0" recommended="4" startSale="315558000" endSale="2127452400" dayOfWeek="127" startHour="0" startMinute="0" stopHour="23" stopMinute="59" stock="-1" maxStock="-1" salePercent="0" minLevel="0" maxLevel="0" minBirthday="0" maxBirthday="0" restrictionDay="0" availableCount="0" isVipGift="true" vipTier="6">
<item itemId="29006" count="1" /> <!-- Daily Present - VIP 6 -->
</item>
<item id="100007" cat="13" paymentType="0" price="0" recommended="4" startSale="315558000" endSale="2127452400" dayOfWeek="127" startHour="0" startMinute="0" stopHour="23" stopMinute="59" stock="-1" maxStock="-1" salePercent="0" minLevel="0" maxLevel="0" minBirthday="0" maxBirthday="0" restrictionDay="0" availableCount="0" isVipGift="true" vipTier="7">
<item itemId="29007" count="1" /> <!-- Daily Present - VIP 7 -->
</item>
</list>

View File

@@ -377,6 +377,7 @@ public class EffectMasterHandler
EffectHandler.getInstance().registerHandler("Untargetable", Untargetable::new);
EffectHandler.getInstance().registerHandler("VampiricAttack", VampiricAttack::new);
EffectHandler.getInstance().registerHandler("VampiricDefence", VampiricDefence::new);
EffectHandler.getInstance().registerHandler("VipUp", VipUp::new);
EffectHandler.getInstance().registerHandler("VitalityExpRate", VitalityExpRate::new);
EffectHandler.getInstance().registerHandler("VitalityPointsRate", VitalityPointsRate::new);
EffectHandler.getInstance().registerHandler("VitalityPointUp", VitalityPointUp::new);

View File

@@ -0,0 +1,60 @@
/*
* This file is part of the L2J Mobius project.
*
* This program 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.
*
* This program 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 org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
import org.l2jmobius.gameserver.model.skills.Skill;
/**
* @author Gabriel Costa Souza
*/
public class VipUp extends AbstractEffect
{
private final long _amount;
public VipUp(StatSet params)
{
_amount = params.getLong("amount", 0L);
}
@Override
public boolean isInstant()
{
return true;
}
@Override
public void instant(Creature effector, Creature effected, Skill skill, ItemInstance item)
{
if (effected == null)
{
return;
}
final PlayerInstance player = effected.getActingPlayer();
if (player == null)
{
return;
}
player.updateVipPoints(_amount);
}
}

View File

@@ -73,46 +73,70 @@
<item id="29505" name="Normal VIP Gain Scroll" type="EtcItem">
<!-- Allows to regain 1 VIP Point when used. Cannot be exchanged, dropped or sold in a private store. Can be stored in a private warehouse. -->
<set name="icon" val="BranchIcon.Icon.g_bm_vip_potion_i00" />
<set name="default_action" val="SKILL_REDUCE" />
<set name="material" val="PAPER" />
<set name="weight" val="5" />
<set name="is_stackable" val="true" />
<set name="is_tradable" val="false" />
<set name="is_dropable" val="false" />
<set name="is_sellable" val="false" />
<set name="is_stackable" val="true" />
<set name="is_oly_restricted" val="true" />
<set name="default_action" val="SKILL_REDUCE" />
<set name="etcitem_type" val="SCROLL" />
<set name="handler" val="ItemSkills" />
<set name="commissionItemType" val="SCROLL_OTHER" />
<set name="material" val="PAPER" />
<skills>
<skill id="55322" level="1" /> <!-- Normal VIP Gain Scroll -->
</skills>
</item>
<item id="29506" name="Medium VIP Gain Scroll" type="EtcItem">
<!-- Allows to regain 10 VIP Points when used. Cannot be exchanged, dropped or sold in a private store. Can be stored in a private warehouse. -->
<set name="icon" val="BranchIcon.Icon.g_bm_vip_potion_i00" />
<set name="default_action" val="SKILL_REDUCE" />
<set name="material" val="PAPER" />
<set name="weight" val="5" />
<set name="is_stackable" val="true" />
<set name="is_tradable" val="false" />
<set name="is_dropable" val="false" />
<set name="is_sellable" val="false" />
<set name="is_stackable" val="true" />
<set name="is_oly_restricted" val="true" />
<set name="default_action" val="SKILL_REDUCE" />
<set name="etcitem_type" val="SCROLL" />
<set name="handler" val="ItemSkills" />
<set name="commissionItemType" val="SCROLL_OTHER" />
<set name="material" val="PAPER" />
<skills>
<skill id="55323" level="1" /> <!-- Medium VIP Gain Scroll -->
</skills>
</item>
<item id="29507" name="Good VIP Gain Scroll" type="EtcItem">
<!-- Allows to regain 100 VIP Points when used. Cannot be exchanged, dropped or sold in a private store. Can be stored in a private warehouse. -->
<set name="icon" val="BranchIcon.Icon.g_bm_vip_potion_i00" />
<set name="default_action" val="SKILL_REDUCE" />
<set name="material" val="PAPER" />
<set name="weight" val="5" />
<set name="is_stackable" val="true" />
<set name="is_tradable" val="false" />
<set name="is_dropable" val="false" />
<set name="is_sellable" val="false" />
<set name="is_stackable" val="true" />
<set name="is_oly_restricted" val="true" />
<set name="default_action" val="SKILL_REDUCE" />
<set name="etcitem_type" val="SCROLL" />
<set name="handler" val="ItemSkills" />
<set name="commissionItemType" val="SCROLL_OTHER" />
<set name="material" val="PAPER" />
<skills>
<skill id="55324" level="1" /> <!-- Good VIP Gain Scroll -->
</skills>
</item>
<item id="29508" name="Perfect VIP Gain Scroll" type="EtcItem">
<!-- Allows to regain 280 VIP Points when used. Cannot be exchanged, dropped or sold in a private store. Can be stored in a private warehouse. -->
<set name="icon" val="BranchIcon.Icon.g_bm_vip_potion_i00" />
<set name="default_action" val="SKILL_REDUCE" />
<set name="material" val="PAPER" />
<set name="weight" val="5" />
<set name="is_stackable" val="true" />
<set name="is_tradable" val="false" />
<set name="is_dropable" val="false" />
<set name="is_sellable" val="false" />
<set name="is_stackable" val="true" />
<set name="is_oly_restricted" val="true" />
<set name="default_action" val="SKILL_REDUCE" />
<set name="etcitem_type" val="SCROLL" />
<set name="handler" val="ItemSkills" />
<set name="commissionItemType" val="SCROLL_OTHER" />
<set name="material" val="PAPER" />
<skills>
<skill id="55325" level="1" /> <!-- Perfect VIP Gain Scroll -->
</skills>
</item>
<item id="29509" name="Feather of Blessing (temporary used by NPC)" type="EtcItem">
<!-- Dimensional item. Blessed feather that allows to resurrect right in the place of death. -->

View File

@@ -283,36 +283,327 @@
<!-- The right to VIP 1st level chest. XP/SP gain +3%, item drop rate +3%. -->
<icon>BranchIcon.Icon.g_skill_vip1</icon>
<operateType>P</operateType>
<hitTime>500</hitTime>
<effects>
<effect name="ExpModify">
<amount>3</amount>
</effect>
<effect name="SpModify">
<amount>3</amount>
</effect>
<effect name="BonusDropRate">
<amount>50</amount>
<mode>PER</mode>
</effect>
</effects>
</skill>
<skill id="55025" toLevel="1" name="VIP Level 2">
<!-- The right to VIP 2nd level chest. XP/SP gain +7%, item drop rate +7%. World chat on any level, number of usage attempts +10. -->
<icon>BranchIcon.Icon.g_skill_vip2</icon>
<operateType>P</operateType>
<hitTime>500</hitTime>
<effects>
<effect name="ExpModify">
<amount>7</amount>
</effect>
<effect name="SpModify">
<amount>7</amount>
</effect>
<effect name="BonusDropRate">
<amount>150</amount>
<mode>PER</mode>
</effect>
<effect name="WorldChatPoints">
<amount>3</amount>
<mode>DIFF</mode>
</effect>
</effects>
</skill>
<skill id="55026" toLevel="1" name="VIP Level 3">
<!-- The right to VIP 3rd level chest. XP/SP gain +15%, item drop rate +15%. Experience loss and chance to lose items upon death is decreased by 10%. World chat on any level, number of usage attempts +10. -->
<icon>BranchIcon.Icon.g_skill_vip3</icon>
<operateType>P</operateType>
<hitTime>500</hitTime>
<effects>
<effect name="ExpModify">
<amount>15</amount>
</effect>
<effect name="SpModify">
<amount>15</amount>
</effect>
<effect name="BonusDropRate">
<amount>200</amount>
<mode>PER</mode>
</effect>
<effect name="WorldChatPoints">
<amount>3</amount>
<mode>DIFF</mode>
</effect>
</effects>
</skill>
<skill id="55027" toLevel="1" name="VIP Level 4">
<!-- The right to VIP 4th level chest. XP/SP gain +25%, item drop rate +15%. Experience loss and chance to lose items upon death is decreased by 15%. World chat on any level, number of usage attempts +10. -->
<icon>BranchIcon.Icon.g_skill_vip4</icon>
<operateType>P</operateType>
<hitTime>500</hitTime>
<effects>
<effect name="ExpModify">
<amount>25</amount>
</effect>
<effect name="SpModify">
<amount>25</amount>
</effect>
<effect name="FishingExpSpBonus">
<amount>20</amount>
<mode>PER</mode>
</effect>
<effect name="BonusDropRate">
<amount>250</amount>
<mode>PER</mode>
</effect>
<effect name="WorldChatPoints">
<amount>5</amount>
<mode>DIFF</mode>
</effect>
<effect name="ReduceDropPenalty">
<deathPenalty>-15</deathPenalty>
<mode>PER</mode>
</effect>
</effects>
</skill>
<skill id="55028" toLevel="1" name="VIP Level 5">
<!-- The right to VIP 5th level chest. XP/SP gain +30%, item drop rate +30%. Experience loss and chance to lose items upon death is decreased by 20%. PvE damage is increased. World chat on any level, number of usage attempts +10. -->
<icon>BranchIcon.Icon.g_skill_vip5</icon>
<operateType>P</operateType>
<hitTime>500</hitTime>
<effects>
<effect name="ExpModify">
<amount>30</amount>
</effect>
<effect name="SpModify">
<amount>30</amount>
</effect>
<effect name="BonusDropRate">
<amount>250</amount>
<mode>PER</mode>
</effect>
<effect name="WorldChatPoints">
<amount>10</amount>
<mode>DIFF</mode>
</effect>
<effect name="ReduceDropPenalty">
<deathPenalty>-20</deathPenalty>
<mode>PER</mode>
</effect>
<effect name="PveMagicalSkillDamageBonus">
<amount>10</amount>
<mode>PER</mode>
</effect>
<effect name="PvePhysicalAttackDamageBonus">
<amount>10</amount>
<mode>PER</mode>
</effect>
<effect name="PvePhysicalSkillDamageBonus">
<amount>10</amount>
<mode>PER</mode>
</effect>
<effect name="PvePhysicalSkillDamageBonus">
<amount>10</amount>
<mode>PER</mode>
</effect>
<effect name="PveRaidMagicalSkillDamageBonus">
<amount>10</amount>
<mode>PER</mode>
</effect>
<effect name="PveRaidPhysicalAttackDamageBonus">
<amount>10</amount>
<mode>PER</mode>
</effect>
<effect name="PveRaidPhysicalSkillDamageBonus">
<amount>10</amount>
<mode>PER</mode>
</effect>
<effect name="FishingExpSpBonus">
<amount>20</amount>
<mode>PER</mode>
</effect>
</effects>
</skill>
<skill id="55029" toLevel="1" name="VIP Level 6">
<!-- The right to VIP 6th level chest. XP/SP gain +30%, item drop rate +30%. Experience loss and chance to lose items upon death is decreased by 20%. PvE damage is increased, STR/DEX/CON/INT/WIT/MEN +2. World chat on any level, number of usage attempts +10. -->
<icon>BranchIcon.Icon.g_skill_vip6</icon>
<operateType>P</operateType>
<hitTime>500</hitTime>
<effects>
<effect name="ExpModify">
<amount>30</amount>
</effect>
<effect name="SpModify">
<amount>30</amount>
</effect>
<effect name="BonusDropRate">
<amount>250</amount>
<mode>PER</mode>
</effect>
<effect name="WorldChatPoints">
<amount>10</amount>
<mode>DIFF</mode>
</effect>
<effect name="ReduceDropPenalty">
<deathPenalty>-20</deathPenalty>
<mode>PER</mode>
</effect>
<effect name="PveMagicalSkillDamageBonus">
<amount>15</amount>
<mode>PER</mode>
</effect>
<effect name="PvePhysicalAttackDamageBonus">
<amount>15</amount>
<mode>PER</mode>
</effect>
<effect name="PvePhysicalSkillDamageBonus">
<amount>15</amount>
<mode>PER</mode>
</effect>
<effect name="PvePhysicalSkillDamageBonus">
<amount>15</amount>
<mode>PER</mode>
</effect>
<effect name="PveRaidMagicalSkillDamageBonus">
<amount>15</amount>
<mode>PER</mode>
</effect>
<effect name="PveRaidPhysicalAttackDamageBonus">
<amount>15</amount>
<mode>PER</mode>
</effect>
<effect name="PveRaidPhysicalSkillDamageBonus">
<amount>15</amount>
<mode>PER</mode>
</effect>
<effect name="FishingExpSpBonus">
<amount>20</amount>
<mode>PER</mode>
</effect>
<effect name="StatUp">
<amount>1</amount>
<stat>STR</stat>
</effect>
<effect name="StatUp">
<amount>1</amount>
<stat>INT</stat>
</effect>
<effect name="StatUp">
<amount>1</amount>
<stat>CON</stat>
</effect>
<effect name="StatUp">
<amount>1</amount>
<stat>DEX</stat>
</effect>
<effect name="StatUp">
<amount>1</amount>
<stat>MEN</stat>
</effect>
<effect name="StatUp">
<amount>1</amount>
<stat>WIT</stat>
</effect>
</effects>
</skill>
<skill id="55030" toLevel="1" name="VIP Level 7">
<!-- The right to VIP 7th level chest. XP/SP gain +30%, item drop rate +30%. Experience loss and chance to lose items upon death is decreased by 20%. PvE/PvP damage is increased, STR/DEX/CON/INT/WIT/MEN +2. World chat on any level, number of usage attempts +10. -->
<icon>BranchIcon.Icon.g_skill_vip7</icon>
<operateType>P</operateType>
<hitTime>500</hitTime>
<effects>
<effect name="ExpModify">
<amount>30</amount>
</effect>
<effect name="SpModify">
<amount>30</amount>
</effect>
<effect name="BonusDropRate">
<amount>250</amount>
<mode>PER</mode>
</effect>
<effect name="WorldChatPoints">
<amount>10</amount>
<mode>DIFF</mode>
</effect>
<effect name="ReduceDropPenalty">
<deathPenalty>-20</deathPenalty>
<mode>PER</mode>
</effect>
<effect name="PveMagicalSkillDamageBonus">
<amount>15</amount>
<mode>PER</mode>
</effect>
<effect name="PvePhysicalAttackDamageBonus">
<amount>15</amount>
<mode>PER</mode>
</effect>
<effect name="PvePhysicalSkillDamageBonus">
<amount>15</amount>
<mode>PER</mode>
</effect>
<effect name="PvePhysicalSkillDamageBonus">
<amount>15</amount>
<mode>PER</mode>
</effect>
<effect name="PveRaidMagicalSkillDamageBonus">
<amount>15</amount>
<mode>PER</mode>
</effect>
<effect name="PveRaidPhysicalAttackDamageBonus">
<amount>15</amount>
<mode>PER</mode>
</effect>
<effect name="PveRaidPhysicalSkillDamageBonus">
<amount>15</amount>
<mode>PER</mode>
</effect>
<effect name="PvpMagicalSkillDamageBonus">
<amount>5</amount>
<mode>PER</mode>
</effect>
<effect name="PvpPhysicalAttackDamageBonus">
<amount>5</amount>
<mode>PER</mode>
</effect>
<effect name="PvpPhysicalSkillDamageBonus">
<amount>5</amount>
<mode>PER</mode>
</effect>
<effect name="FishingExpSpBonus">
<amount>20</amount>
<mode>PER</mode>
</effect>
<effect name="StatUp">
<amount>2</amount>
<stat>STR</stat>
</effect>
<effect name="StatUp">
<amount>2</amount>
<stat>INT</stat>
</effect>
<effect name="StatUp">
<amount>2</amount>
<stat>CON</stat>
</effect>
<effect name="StatUp">
<amount>2</amount>
<stat>DEX</stat>
</effect>
<effect name="StatUp">
<amount>2</amount>
<stat>MEN</stat>
</effect>
<effect name="StatUp">
<amount>2</amount>
<stat>WIT</stat>
</effect>
</effects>
</skill>
<skill id="55031" toLevel="1" name="Report Status">
<!-- You are under suspicion of using this program illegally. Your actions have been restricted. -->

View File

@@ -741,21 +741,41 @@
<icon>BranchIcon.Icon.g_bm_vip_potion_i00</icon>
<operateType>A1</operateType>
<reuseDelay>1000</reuseDelay>
<effects>
<effect name="VipUp">
<amount>1</amount>
</effect>
</effects>
</skill>
<skill id="55323" toLevel="1" name="Medium VIP Gain Scroll">
<icon>BranchIcon.Icon.g_bm_vip_potion_i00</icon>
<operateType>A1</operateType>
<reuseDelay>1000</reuseDelay>
<effects>
<effect name="VipUp">
<amount>10</amount>
</effect>
</effects>
</skill>
<skill id="55324" toLevel="1" name="Good VIP Gain Scroll">
<icon>BranchIcon.Icon.g_bm_vip_potion_i00</icon>
<operateType>A1</operateType>
<reuseDelay>1000</reuseDelay>
<effects>
<effect name="VipUp">
<amount>100</amount>
</effect>
</effects>
</skill>
<skill id="55325" toLevel="1" name="Perfect VIP Gain Scroll">
<icon>BranchIcon.Icon.g_bm_vip_potion_i00</icon>
<operateType>A1</operateType>
<reuseDelay>1000</reuseDelay>
<effects>
<effect name="VipUp">
<amount>280</amount>
</effect>
</effects>
</skill>
<skill id="55326" toLevel="1" name="Gold Fishing Shot">
<operateType>A1</operateType>

View File

@@ -0,0 +1,58 @@
<?xml version='1.0' encoding='utf-8'?>
<list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="xsd/vip.xsd">
<!--
tier: tier of the vip
points-requires: points required to get to that tier
points-lose: points player will lose after a while.
PS. Client data made for Sylph! Probably works on essence aswell! Might need to check for classic!.
l2.ini
[VipSystem]
UseVipInfoWnd=false
-> needs to be true
# Prime shop needs to be true aswell!
ProductName_Classic-eu.dat
44-47 -> L2 Point purchases
product_name_begin id=2090044 outer_name=[Normal VIP Gain Scroll] description=[] icon=[BranchIcon.Icon.g_bm_vip_potion_i00] icon_panel=[None] mainsubject=[] product_name_end
product_name_begin id=2090045 outer_name=[Medium VIP Gain Scroll] description=[] icon=[BranchIcon.Icon.g_bm_vip_potion_i00] icon_panel=[None] mainsubject=[] product_name_end
product_name_begin id=2090046 outer_name=[Good VIP Gain Scroll] description=[] icon=[BranchIcon.Icon.g_bm_vip_potion_i00] icon_panel=[None] mainsubject=[] product_name_end
product_name_begin id=2090047 outer_name=[Perfect VIP Gain Scroll] description=[] icon=[BranchIcon.Icon.g_bm_vip_potion_i00] icon_panel=[None] mainsubject=[] product_name_end
48-51 -> VIP Coin purchases
product_name_begin id=2090048 outer_name=[Normal VIP Gain Scroll] description=[] icon=[BranchIcon.Icon.g_bm_vip_potion_i00] icon_panel=[None] mainsubject=[] product_name_end
product_name_begin id=2090049 outer_name=[Medium VIP Gain Scroll] description=[] icon=[BranchIcon.Icon.g_bm_vip_potion_i00] icon_panel=[None] mainsubject=[] product_name_end
product_name_begin id=2090050 outer_name=[Good VIP Gain Scroll] description=[] icon=[BranchIcon.Icon.g_bm_vip_potion_i00] icon_panel=[None] mainsubject=[] product_name_end
product_name_begin id=2090051 outer_name=[Perfect VIP Gain Scroll] description=[] icon=[BranchIcon.Icon.g_bm_vip_potion_i00] icon_panel=[None] mainsubject=[] product_name_end
-->
<vip tier="0" points-required="0" points-lose="0">
<bonus/>
</vip>
<vip tier="1" points-required="300" points-lose="300">
<bonus skill="55024"/>
</vip>
<vip tier="2" points-required="1000" points-lose="600">
<bonus skill="55025"/>
</vip>
<vip tier="3" points-required="2000" points-lose="660">
<bonus skill="55026" silverChance="1.0" goldChance="1.0"/>
</vip>
<vip tier="4" points-required="3500" points-lose="1320">
<bonus skill="55027" silverChance="2.0" goldChance="2.0"/>
</vip>
<vip tier="5" points-required="7000" points-lose="2640">
<bonus skill="55028" silverChance="3.5" goldChance="3.5"/>
</vip>
<vip tier="6" points-required="20000" points-lose="5280">
<bonus skill="55029" silverChance="5.0" goldChance="5.0"/>
</vip>
<vip tier="7" points-required="40000" points-lose="10560">
<bonus skill="55030" silverChance="7.0" goldChance="7.0"/>
</vip>
</list>

View File

@@ -34,6 +34,9 @@
<xs:attribute type="xs:byte" name="maxBirthday" use="optional" />
<xs:attribute type="xs:byte" name="restrictionDay" use="optional" />
<xs:attribute type="xs:byte" name="availableCount" use="optional" />
<xs:attribute type="xs:boolean" name="isVipGift" use="optional" />
<xs:attribute type="xs:byte" name="vipTier" use="optional" />
<xs:attribute type="xs:int" name="silverCoin" use="optional" />
</xs:complexType>
</xs:element>
</xs:sequence>

View File

@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="list">
<xs:complexType>
<xs:sequence>
<xs:element name="vip" type="TierInfo" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="TierInfo">
<xs:sequence>
<xs:element name="bonus" type="TierBonusInfo"/>
</xs:sequence>
<xs:attribute name="tier" type="xs:byte" use="required"/>
<xs:attribute name="points-required" type="xs:long" use="required"/>
<xs:attribute name="points-lose" type="xs:long" use="required"/>
</xs:complexType>
<xs:complexType name="TierBonusInfo">
<xs:attribute name="silverChance" type="xs:float" default="0"/>
<xs:attribute name="goldChance" type="xs:float" default="0"/>
<xs:attribute name="skill" type="xs:int" default="0"/>
</xs:complexType>
</xs:schema>