From 4baa29f4a04f73ac63245cce1934a026286f2b77 Mon Sep 17 00:00:00 2001
From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com>
Date: Mon, 13 Sep 2021 13:08:53 +0000
Subject: [PATCH] Addition of BonusRaidPoints effect handler.
---
.../scripts/handlers/EffectMasterHandler.java | 1 +
.../effecthandlers/BonusRaidPoints.java | 31 +++++++++++++++++++
.../game/data/stats/items/48300-48399.xml | 9 ++++++
.../game/data/stats/skills/39100-39199.xml | 7 +++++
.../game/data/stats/skills/documentation.txt | 1 +
.../gameserver/model/actor/Attackable.java | 4 +--
.../gameserver/model/stats/Stat.java | 1 +
.../scripts/handlers/EffectMasterHandler.java | 1 +
.../effecthandlers/BonusRaidPoints.java | 31 +++++++++++++++++++
.../game/data/stats/items/48300-48399.xml | 9 ++++++
.../game/data/stats/skills/39100-39199.xml | 7 +++++
.../game/data/stats/skills/documentation.txt | 1 +
.../gameserver/model/actor/Attackable.java | 4 +--
.../gameserver/model/stats/Stat.java | 1 +
.../scripts/handlers/EffectMasterHandler.java | 1 +
.../effecthandlers/BonusRaidPoints.java | 31 +++++++++++++++++++
.../game/data/stats/items/48300-48399.xml | 9 ++++++
.../game/data/stats/skills/39100-39199.xml | 7 +++++
.../game/data/stats/skills/documentation.txt | 1 +
.../gameserver/model/actor/Attackable.java | 4 +--
.../gameserver/model/stats/Stat.java | 1 +
.../scripts/handlers/EffectMasterHandler.java | 1 +
.../effecthandlers/BonusRaidPoints.java | 31 +++++++++++++++++++
.../game/data/stats/items/48300-48399.xml | 9 ++++++
.../game/data/stats/skills/39100-39199.xml | 7 +++++
.../game/data/stats/skills/documentation.txt | 1 +
.../gameserver/model/actor/Attackable.java | 4 +--
.../gameserver/model/stats/Stat.java | 1 +
.../scripts/handlers/EffectMasterHandler.java | 1 +
.../effecthandlers/BonusRaidPoints.java | 31 +++++++++++++++++++
.../game/data/stats/items/48300-48399.xml | 9 ++++++
.../game/data/stats/skills/39100-39199.xml | 7 +++++
.../game/data/stats/skills/documentation.txt | 1 +
.../gameserver/model/actor/Attackable.java | 4 +--
.../gameserver/model/stats/Stat.java | 1 +
.../scripts/handlers/EffectMasterHandler.java | 1 +
.../effecthandlers/BonusRaidPoints.java | 31 +++++++++++++++++++
.../game/data/stats/items/48300-48399.xml | 9 ++++++
.../game/data/stats/skills/39100-39199.xml | 7 +++++
.../game/data/stats/skills/documentation.txt | 1 +
.../gameserver/model/actor/Attackable.java | 4 +--
.../gameserver/model/stats/Stat.java | 1 +
.../scripts/handlers/EffectMasterHandler.java | 1 +
.../effecthandlers/BonusRaidPoints.java | 31 +++++++++++++++++++
.../game/data/stats/skills/documentation.txt | 1 +
.../gameserver/model/actor/Attackable.java | 4 +--
.../gameserver/model/stats/Stat.java | 1 +
.../scripts/handlers/EffectMasterHandler.java | 1 +
.../effecthandlers/BonusRaidPoints.java | 31 +++++++++++++++++++
.../game/data/stats/skills/documentation.txt | 1 +
.../gameserver/model/actor/Attackable.java | 4 +--
.../gameserver/model/stats/Stat.java | 1 +
.../scripts/handlers/EffectMasterHandler.java | 1 +
.../effecthandlers/BonusRaidPoints.java | 31 +++++++++++++++++++
.../game/data/stats/skills/documentation.txt | 1 +
.../gameserver/model/actor/Attackable.java | 4 +--
.../gameserver/model/stats/Stat.java | 1 +
.../scripts/handlers/EffectMasterHandler.java | 1 +
.../effecthandlers/BonusRaidPoints.java | 31 +++++++++++++++++++
.../game/data/stats/skills/documentation.txt | 1 +
.../gameserver/model/actor/Attackable.java | 4 +--
.../gameserver/model/stats/Stat.java | 1 +
.../scripts/handlers/EffectMasterHandler.java | 1 +
.../effecthandlers/BonusRaidPoints.java | 31 +++++++++++++++++++
.../game/data/stats/skills/documentation.txt | 1 +
.../gameserver/model/actor/Attackable.java | 4 +--
.../gameserver/model/stats/Stat.java | 1 +
.../scripts/handlers/EffectMasterHandler.java | 1 +
.../effecthandlers/BonusRaidPoints.java | 31 +++++++++++++++++++
.../game/data/stats/skills/documentation.txt | 1 +
.../gameserver/model/actor/Attackable.java | 4 +--
.../gameserver/model/stats/Stat.java | 1 +
72 files changed, 528 insertions(+), 24 deletions(-)
create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
create mode 100644 L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
create mode 100644 L2J_Mobius_8.2_Homunculus/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
create mode 100644 L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
create mode 100644 L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
create mode 100644 L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
create mode 100644 L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
create mode 100644 L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
create mode 100644 L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
create mode 100644 L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/EffectMasterHandler.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/EffectMasterHandler.java
index 6e0c52680c..0b8fbe9320 100644
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/EffectMasterHandler.java
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/EffectMasterHandler.java
@@ -68,6 +68,7 @@ public class EffectMasterHandler
EffectHandler.getInstance().registerHandler("BonusDropAdena", BonusDropAdena::new);
EffectHandler.getInstance().registerHandler("BonusDropAmount", BonusDropAmount::new);
EffectHandler.getInstance().registerHandler("BonusDropRate", BonusDropRate::new);
+ EffectHandler.getInstance().registerHandler("BonusRaidPoints", BonusRaidPoints::new);
EffectHandler.getInstance().registerHandler("BonusSpoilRate", BonusSpoilRate::new);
EffectHandler.getInstance().registerHandler("Breath", Breath::new);
EffectHandler.getInstance().registerHandler("BuffBlock", BuffBlock::new);
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
new file mode 100644
index 0000000000..7b79ba2ebb
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
@@ -0,0 +1,31 @@
+/*
+ * 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 .
+ */
+package handlers.effecthandlers;
+
+import org.l2jmobius.gameserver.model.StatSet;
+import org.l2jmobius.gameserver.model.stats.Stat;
+
+/**
+ * @author Mobius
+ */
+public class BonusRaidPoints extends AbstractStatPercentEffect
+{
+ public BonusRaidPoints(StatSet params)
+ {
+ super(params, Stat.BONUS_RAID_POINTS);
+ }
+}
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/stats/items/48300-48399.xml b/L2J_Mobius_5.0_Salvation/dist/game/data/stats/items/48300-48399.xml
index 2cacd285fb..f57842dd3e 100644
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/stats/items/48300-48399.xml
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/stats/items/48300-48399.xml
@@ -34,6 +34,10 @@
+
+
+
+
-
@@ -42,6 +46,11 @@
+
+
+
+
+
-
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/39100-39199.xml b/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/39100-39199.xml
index 082c52c22f..c38b7611e1 100644
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/39100-39199.xml
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/39100-39199.xml
@@ -195,6 +195,13 @@
icon.etc_i.etc_rp_point_i00
P
+ 5
+ 1
+
+
+ 100
+
+
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/documentation.txt b/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/documentation.txt
index 15cf881a69..2927b02836 100644
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/documentation.txt
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/stats/skills/documentation.txt
@@ -38,6 +38,7 @@ Bluff: Rotates the target so you face its back.
BonusDropAdena: Bonus amount for dropped adena. (l2jmobius)
BonusDropAmount: Bonus amount for dropped items. (l2jmobius)
BonusDropRate: Bonus chance for dropping items. (l2jmobius)
+BonusRaidPoints: Bonus amount for raid points. (l2jmobius)
BonusSpoilRate: Bonus chance for acquiring spoil items. (l2jmobius)
Breath: Underwater breathing stat.
BuffBlock: Blocks target from receiving buffs.
diff --git a/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/actor/Attackable.java b/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/actor/Attackable.java
index 597b0fd60d..83dfb25fcb 100644
--- a/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/actor/Attackable.java
+++ b/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/actor/Attackable.java
@@ -481,7 +481,7 @@ public class Attackable extends Npc
members.forEach(p ->
{
- final int points = Math.max(raidbossPoints / members.size(), 1);
+ final int points = (int) (Math.max(raidbossPoints / members.size(), 1) * p.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
p.increaseRaidbossPoints(points);
p.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (p.getNobleLevel() > 0)
@@ -492,7 +492,7 @@ public class Attackable extends Npc
}
else
{
- final int points = Math.max(raidbossPoints, 1);
+ final int points = (int) (Math.max(raidbossPoints, 1) * player.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
player.increaseRaidbossPoints(points);
player.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (player.getNobleLevel() > 0)
diff --git a/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/stats/Stat.java b/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/stats/Stat.java
index 6098657149..8ddf4b571d 100644
--- a/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/stats/Stat.java
+++ b/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/stats/Stat.java
@@ -150,6 +150,7 @@ public enum Stat
BONUS_DROP_AMOUNT("bonusDropAmount"),
BONUS_DROP_RATE("bonusDropRate"),
BONUS_SPOIL_RATE("bonusSpoilRate"),
+ BONUS_RAID_POINTS("bonusRaidPoints"),
ATTACK_CANCEL("cancel"),
// ACCURACY & RANGE
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/EffectMasterHandler.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/EffectMasterHandler.java
index 03cea40e60..44c76dafdc 100644
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/EffectMasterHandler.java
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/EffectMasterHandler.java
@@ -69,6 +69,7 @@ public class EffectMasterHandler
EffectHandler.getInstance().registerHandler("BonusDropAdena", BonusDropAdena::new);
EffectHandler.getInstance().registerHandler("BonusDropAmount", BonusDropAmount::new);
EffectHandler.getInstance().registerHandler("BonusDropRate", BonusDropRate::new);
+ EffectHandler.getInstance().registerHandler("BonusRaidPoints", BonusRaidPoints::new);
EffectHandler.getInstance().registerHandler("BonusSpoilRate", BonusSpoilRate::new);
EffectHandler.getInstance().registerHandler("Breath", Breath::new);
EffectHandler.getInstance().registerHandler("BuffBlock", BuffBlock::new);
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
new file mode 100644
index 0000000000..7b79ba2ebb
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
@@ -0,0 +1,31 @@
+/*
+ * 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 .
+ */
+package handlers.effecthandlers;
+
+import org.l2jmobius.gameserver.model.StatSet;
+import org.l2jmobius.gameserver.model.stats.Stat;
+
+/**
+ * @author Mobius
+ */
+public class BonusRaidPoints extends AbstractStatPercentEffect
+{
+ public BonusRaidPoints(StatSet params)
+ {
+ super(params, Stat.BONUS_RAID_POINTS);
+ }
+}
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/items/48300-48399.xml b/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/items/48300-48399.xml
index 0280bdd17a..1804ca66e6 100644
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/items/48300-48399.xml
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/items/48300-48399.xml
@@ -34,6 +34,10 @@
+
+
+
+
-
@@ -42,6 +46,11 @@
+
+
+
+
+
-
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/39100-39199.xml b/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/39100-39199.xml
index 5e3e628322..ab272e87c3 100644
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/39100-39199.xml
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/39100-39199.xml
@@ -196,6 +196,13 @@
icon.etc_i.etc_rp_point_i00
P
+ 5
+ 1
+
+
+ 100
+
+
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/documentation.txt b/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/documentation.txt
index d366b28b34..6ef0530a5b 100644
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/documentation.txt
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/skills/documentation.txt
@@ -39,6 +39,7 @@ Bluff: Rotates the target so you face its back.
BonusDropAdena: Bonus amount for dropped adena. (l2jmobius)
BonusDropAmount: Bonus amount for dropped items. (l2jmobius)
BonusDropRate: Bonus chance for dropping items. (l2jmobius)
+BonusRaidPoints: Bonus amount for raid points. (l2jmobius)
BonusSpoilRate: Bonus chance for acquiring spoil items. (l2jmobius)
Breath: Underwater breathing stat.
BuffBlock: Blocks target from receiving buffs.
diff --git a/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/actor/Attackable.java b/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/actor/Attackable.java
index 597b0fd60d..83dfb25fcb 100644
--- a/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/actor/Attackable.java
+++ b/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/actor/Attackable.java
@@ -481,7 +481,7 @@ public class Attackable extends Npc
members.forEach(p ->
{
- final int points = Math.max(raidbossPoints / members.size(), 1);
+ final int points = (int) (Math.max(raidbossPoints / members.size(), 1) * p.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
p.increaseRaidbossPoints(points);
p.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (p.getNobleLevel() > 0)
@@ -492,7 +492,7 @@ public class Attackable extends Npc
}
else
{
- final int points = Math.max(raidbossPoints, 1);
+ final int points = (int) (Math.max(raidbossPoints, 1) * player.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
player.increaseRaidbossPoints(points);
player.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (player.getNobleLevel() > 0)
diff --git a/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/stats/Stat.java b/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/stats/Stat.java
index 6d01f22316..c88dca5498 100644
--- a/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/stats/Stat.java
+++ b/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/stats/Stat.java
@@ -150,6 +150,7 @@ public enum Stat
BONUS_DROP_AMOUNT("bonusDropAmount"),
BONUS_DROP_RATE("bonusDropRate"),
BONUS_SPOIL_RATE("bonusSpoilRate"),
+ BONUS_RAID_POINTS("bonusRaidPoints"),
ATTACK_CANCEL("cancel"),
// ACCURACY & RANGE
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/handlers/EffectMasterHandler.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/handlers/EffectMasterHandler.java
index 03cea40e60..44c76dafdc 100644
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/handlers/EffectMasterHandler.java
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/handlers/EffectMasterHandler.java
@@ -69,6 +69,7 @@ public class EffectMasterHandler
EffectHandler.getInstance().registerHandler("BonusDropAdena", BonusDropAdena::new);
EffectHandler.getInstance().registerHandler("BonusDropAmount", BonusDropAmount::new);
EffectHandler.getInstance().registerHandler("BonusDropRate", BonusDropRate::new);
+ EffectHandler.getInstance().registerHandler("BonusRaidPoints", BonusRaidPoints::new);
EffectHandler.getInstance().registerHandler("BonusSpoilRate", BonusSpoilRate::new);
EffectHandler.getInstance().registerHandler("Breath", Breath::new);
EffectHandler.getInstance().registerHandler("BuffBlock", BuffBlock::new);
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
new file mode 100644
index 0000000000..7b79ba2ebb
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
@@ -0,0 +1,31 @@
+/*
+ * 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 .
+ */
+package handlers.effecthandlers;
+
+import org.l2jmobius.gameserver.model.StatSet;
+import org.l2jmobius.gameserver.model.stats.Stat;
+
+/**
+ * @author Mobius
+ */
+public class BonusRaidPoints extends AbstractStatPercentEffect
+{
+ public BonusRaidPoints(StatSet params)
+ {
+ super(params, Stat.BONUS_RAID_POINTS);
+ }
+}
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/items/48300-48399.xml b/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/items/48300-48399.xml
index a8e98b470c..ea7891ec40 100644
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/items/48300-48399.xml
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/items/48300-48399.xml
@@ -34,6 +34,10 @@
+
+
+
+
-
@@ -42,6 +46,11 @@
+
+
+
+
+
-
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/39100-39199.xml b/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/39100-39199.xml
index c41f8009a1..546113b55b 100644
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/39100-39199.xml
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/39100-39199.xml
@@ -197,6 +197,13 @@
icon.etc_i.etc_rp_point_i00
P
+ 5
+ 1
+
+
+ 100
+
+
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/documentation.txt b/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/documentation.txt
index d366b28b34..6ef0530a5b 100644
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/documentation.txt
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/skills/documentation.txt
@@ -39,6 +39,7 @@ Bluff: Rotates the target so you face its back.
BonusDropAdena: Bonus amount for dropped adena. (l2jmobius)
BonusDropAmount: Bonus amount for dropped items. (l2jmobius)
BonusDropRate: Bonus chance for dropping items. (l2jmobius)
+BonusRaidPoints: Bonus amount for raid points. (l2jmobius)
BonusSpoilRate: Bonus chance for acquiring spoil items. (l2jmobius)
Breath: Underwater breathing stat.
BuffBlock: Blocks target from receiving buffs.
diff --git a/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/actor/Attackable.java b/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/actor/Attackable.java
index 597b0fd60d..83dfb25fcb 100644
--- a/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/actor/Attackable.java
+++ b/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/actor/Attackable.java
@@ -481,7 +481,7 @@ public class Attackable extends Npc
members.forEach(p ->
{
- final int points = Math.max(raidbossPoints / members.size(), 1);
+ final int points = (int) (Math.max(raidbossPoints / members.size(), 1) * p.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
p.increaseRaidbossPoints(points);
p.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (p.getNobleLevel() > 0)
@@ -492,7 +492,7 @@ public class Attackable extends Npc
}
else
{
- final int points = Math.max(raidbossPoints, 1);
+ final int points = (int) (Math.max(raidbossPoints, 1) * player.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
player.increaseRaidbossPoints(points);
player.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (player.getNobleLevel() > 0)
diff --git a/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/stats/Stat.java b/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/stats/Stat.java
index 6d01f22316..c88dca5498 100644
--- a/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/stats/Stat.java
+++ b/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/stats/Stat.java
@@ -150,6 +150,7 @@ public enum Stat
BONUS_DROP_AMOUNT("bonusDropAmount"),
BONUS_DROP_RATE("bonusDropRate"),
BONUS_SPOIL_RATE("bonusSpoilRate"),
+ BONUS_RAID_POINTS("bonusRaidPoints"),
ATTACK_CANCEL("cancel"),
// ACCURACY & RANGE
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/handlers/EffectMasterHandler.java b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/handlers/EffectMasterHandler.java
index 88c55db086..251ff38471 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/handlers/EffectMasterHandler.java
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/handlers/EffectMasterHandler.java
@@ -70,6 +70,7 @@ public class EffectMasterHandler
EffectHandler.getInstance().registerHandler("BonusDropAdena", BonusDropAdena::new);
EffectHandler.getInstance().registerHandler("BonusDropAmount", BonusDropAmount::new);
EffectHandler.getInstance().registerHandler("BonusDropRate", BonusDropRate::new);
+ EffectHandler.getInstance().registerHandler("BonusRaidPoints", BonusRaidPoints::new);
EffectHandler.getInstance().registerHandler("BonusSpoilRate", BonusSpoilRate::new);
EffectHandler.getInstance().registerHandler("Breath", Breath::new);
EffectHandler.getInstance().registerHandler("BuffBlock", BuffBlock::new);
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
new file mode 100644
index 0000000000..7b79ba2ebb
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
@@ -0,0 +1,31 @@
+/*
+ * 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 .
+ */
+package handlers.effecthandlers;
+
+import org.l2jmobius.gameserver.model.StatSet;
+import org.l2jmobius.gameserver.model.stats.Stat;
+
+/**
+ * @author Mobius
+ */
+public class BonusRaidPoints extends AbstractStatPercentEffect
+{
+ public BonusRaidPoints(StatSet params)
+ {
+ super(params, Stat.BONUS_RAID_POINTS);
+ }
+}
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/items/48300-48399.xml b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/items/48300-48399.xml
index a8e98b470c..ea7891ec40 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/items/48300-48399.xml
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/items/48300-48399.xml
@@ -34,6 +34,10 @@
+
+
+
+
-
@@ -42,6 +46,11 @@
+
+
+
+
+
-
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/39100-39199.xml b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/39100-39199.xml
index 2dbf8c7919..910f5e2e21 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/39100-39199.xml
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/39100-39199.xml
@@ -197,6 +197,13 @@
icon.etc_i.etc_rp_point_i00
P
+ 5
+ 1
+
+
+ 100
+
+
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/documentation.txt b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/documentation.txt
index 9a447a29fd..573a1b0d1c 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/documentation.txt
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/skills/documentation.txt
@@ -40,6 +40,7 @@ Bluff: Rotates the target so you face its back.
BonusDropAdena: Bonus amount for dropped adena. (l2jmobius)
BonusDropAmount: Bonus amount for dropped items. (l2jmobius)
BonusDropRate: Bonus chance for dropping items. (l2jmobius)
+BonusRaidPoints: Bonus amount for raid points. (l2jmobius)
BonusSpoilRate: Bonus chance for acquiring spoil items. (l2jmobius)
Breath: Underwater breathing stat.
BuffBlock: Blocks target from receiving buffs.
diff --git a/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/actor/Attackable.java b/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/actor/Attackable.java
index 1e19fc85cf..12aea5249f 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/actor/Attackable.java
+++ b/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/actor/Attackable.java
@@ -481,7 +481,7 @@ public class Attackable extends Npc
members.forEach(p ->
{
- final int points = Math.max(raidbossPoints / members.size(), 1);
+ final int points = (int) (Math.max(raidbossPoints / members.size(), 1) * p.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
p.increaseRaidbossPoints(points);
p.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (p.getNobleLevel() > 0)
@@ -492,7 +492,7 @@ public class Attackable extends Npc
}
else
{
- final int points = Math.max(raidbossPoints, 1);
+ final int points = (int) (Math.max(raidbossPoints, 1) * player.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
player.increaseRaidbossPoints(points);
player.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (player.getNobleLevel() > 0)
diff --git a/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/stats/Stat.java b/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/stats/Stat.java
index 6d01f22316..c88dca5498 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/stats/Stat.java
+++ b/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/stats/Stat.java
@@ -150,6 +150,7 @@ public enum Stat
BONUS_DROP_AMOUNT("bonusDropAmount"),
BONUS_DROP_RATE("bonusDropRate"),
BONUS_SPOIL_RATE("bonusSpoilRate"),
+ BONUS_RAID_POINTS("bonusRaidPoints"),
ATTACK_CANCEL("cancel"),
// ACCURACY & RANGE
diff --git a/L2J_Mobius_8.2_Homunculus/dist/game/data/scripts/handlers/EffectMasterHandler.java b/L2J_Mobius_8.2_Homunculus/dist/game/data/scripts/handlers/EffectMasterHandler.java
index f027134b2d..fad0c9ef0a 100644
--- a/L2J_Mobius_8.2_Homunculus/dist/game/data/scripts/handlers/EffectMasterHandler.java
+++ b/L2J_Mobius_8.2_Homunculus/dist/game/data/scripts/handlers/EffectMasterHandler.java
@@ -70,6 +70,7 @@ public class EffectMasterHandler
EffectHandler.getInstance().registerHandler("BonusDropAdena", BonusDropAdena::new);
EffectHandler.getInstance().registerHandler("BonusDropAmount", BonusDropAmount::new);
EffectHandler.getInstance().registerHandler("BonusDropRate", BonusDropRate::new);
+ EffectHandler.getInstance().registerHandler("BonusRaidPoints", BonusRaidPoints::new);
EffectHandler.getInstance().registerHandler("BonusSpoilRate", BonusSpoilRate::new);
EffectHandler.getInstance().registerHandler("Breath", Breath::new);
EffectHandler.getInstance().registerHandler("BuffBlock", BuffBlock::new);
diff --git a/L2J_Mobius_8.2_Homunculus/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java b/L2J_Mobius_8.2_Homunculus/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
new file mode 100644
index 0000000000..7b79ba2ebb
--- /dev/null
+++ b/L2J_Mobius_8.2_Homunculus/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
@@ -0,0 +1,31 @@
+/*
+ * 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 .
+ */
+package handlers.effecthandlers;
+
+import org.l2jmobius.gameserver.model.StatSet;
+import org.l2jmobius.gameserver.model.stats.Stat;
+
+/**
+ * @author Mobius
+ */
+public class BonusRaidPoints extends AbstractStatPercentEffect
+{
+ public BonusRaidPoints(StatSet params)
+ {
+ super(params, Stat.BONUS_RAID_POINTS);
+ }
+}
diff --git a/L2J_Mobius_8.2_Homunculus/dist/game/data/stats/items/48300-48399.xml b/L2J_Mobius_8.2_Homunculus/dist/game/data/stats/items/48300-48399.xml
index f7126444c1..f002290844 100644
--- a/L2J_Mobius_8.2_Homunculus/dist/game/data/stats/items/48300-48399.xml
+++ b/L2J_Mobius_8.2_Homunculus/dist/game/data/stats/items/48300-48399.xml
@@ -34,6 +34,10 @@
+
+
+
+
-
@@ -42,6 +46,11 @@
+
+
+
+
+
-
diff --git a/L2J_Mobius_8.2_Homunculus/dist/game/data/stats/skills/39100-39199.xml b/L2J_Mobius_8.2_Homunculus/dist/game/data/stats/skills/39100-39199.xml
index 3dfd1463b8..45e1056dda 100644
--- a/L2J_Mobius_8.2_Homunculus/dist/game/data/stats/skills/39100-39199.xml
+++ b/L2J_Mobius_8.2_Homunculus/dist/game/data/stats/skills/39100-39199.xml
@@ -203,6 +203,13 @@
icon.etc_i.etc_rp_point_i00
P
+ 5
+ 1
+
+
+ 100
+
+
diff --git a/L2J_Mobius_8.2_Homunculus/dist/game/data/stats/skills/documentation.txt b/L2J_Mobius_8.2_Homunculus/dist/game/data/stats/skills/documentation.txt
index 05f003ff0a..04ff56bebf 100644
--- a/L2J_Mobius_8.2_Homunculus/dist/game/data/stats/skills/documentation.txt
+++ b/L2J_Mobius_8.2_Homunculus/dist/game/data/stats/skills/documentation.txt
@@ -40,6 +40,7 @@ Bluff: Rotates the target so you face its back.
BonusDropAdena: Bonus amount for dropped adena. (l2jmobius)
BonusDropAmount: Bonus amount for dropped items. (l2jmobius)
BonusDropRate: Bonus chance for dropping items. (l2jmobius)
+BonusRaidPoints: Bonus amount for raid points. (l2jmobius)
BonusSpoilRate: Bonus chance for acquiring spoil items. (l2jmobius)
Breath: Underwater breathing stat.
BuffBlock: Blocks target from receiving buffs.
diff --git a/L2J_Mobius_8.2_Homunculus/java/org/l2jmobius/gameserver/model/actor/Attackable.java b/L2J_Mobius_8.2_Homunculus/java/org/l2jmobius/gameserver/model/actor/Attackable.java
index 1e19fc85cf..12aea5249f 100644
--- a/L2J_Mobius_8.2_Homunculus/java/org/l2jmobius/gameserver/model/actor/Attackable.java
+++ b/L2J_Mobius_8.2_Homunculus/java/org/l2jmobius/gameserver/model/actor/Attackable.java
@@ -481,7 +481,7 @@ public class Attackable extends Npc
members.forEach(p ->
{
- final int points = Math.max(raidbossPoints / members.size(), 1);
+ final int points = (int) (Math.max(raidbossPoints / members.size(), 1) * p.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
p.increaseRaidbossPoints(points);
p.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (p.getNobleLevel() > 0)
@@ -492,7 +492,7 @@ public class Attackable extends Npc
}
else
{
- final int points = Math.max(raidbossPoints, 1);
+ final int points = (int) (Math.max(raidbossPoints, 1) * player.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
player.increaseRaidbossPoints(points);
player.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (player.getNobleLevel() > 0)
diff --git a/L2J_Mobius_8.2_Homunculus/java/org/l2jmobius/gameserver/model/stats/Stat.java b/L2J_Mobius_8.2_Homunculus/java/org/l2jmobius/gameserver/model/stats/Stat.java
index 6d01f22316..c88dca5498 100644
--- a/L2J_Mobius_8.2_Homunculus/java/org/l2jmobius/gameserver/model/stats/Stat.java
+++ b/L2J_Mobius_8.2_Homunculus/java/org/l2jmobius/gameserver/model/stats/Stat.java
@@ -150,6 +150,7 @@ public enum Stat
BONUS_DROP_AMOUNT("bonusDropAmount"),
BONUS_DROP_RATE("bonusDropRate"),
BONUS_SPOIL_RATE("bonusSpoilRate"),
+ BONUS_RAID_POINTS("bonusRaidPoints"),
ATTACK_CANCEL("cancel"),
// ACCURACY & RANGE
diff --git a/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/EffectMasterHandler.java b/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/EffectMasterHandler.java
index f130ad51cf..a766823722 100644
--- a/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/EffectMasterHandler.java
+++ b/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/EffectMasterHandler.java
@@ -71,6 +71,7 @@ public class EffectMasterHandler
EffectHandler.getInstance().registerHandler("BonusDropAdena", BonusDropAdena::new);
EffectHandler.getInstance().registerHandler("BonusDropAmount", BonusDropAmount::new);
EffectHandler.getInstance().registerHandler("BonusDropRate", BonusDropRate::new);
+ EffectHandler.getInstance().registerHandler("BonusRaidPoints", BonusRaidPoints::new);
EffectHandler.getInstance().registerHandler("BonusSpoilRate", BonusSpoilRate::new);
EffectHandler.getInstance().registerHandler("Breath", Breath::new);
EffectHandler.getInstance().registerHandler("BuffBlock", BuffBlock::new);
diff --git a/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java b/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
new file mode 100644
index 0000000000..7b79ba2ebb
--- /dev/null
+++ b/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
@@ -0,0 +1,31 @@
+/*
+ * 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 .
+ */
+package handlers.effecthandlers;
+
+import org.l2jmobius.gameserver.model.StatSet;
+import org.l2jmobius.gameserver.model.stats.Stat;
+
+/**
+ * @author Mobius
+ */
+public class BonusRaidPoints extends AbstractStatPercentEffect
+{
+ public BonusRaidPoints(StatSet params)
+ {
+ super(params, Stat.BONUS_RAID_POINTS);
+ }
+}
diff --git a/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/stats/items/48300-48399.xml b/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/stats/items/48300-48399.xml
index 3ea5304efd..e06c1c92a1 100644
--- a/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/stats/items/48300-48399.xml
+++ b/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/stats/items/48300-48399.xml
@@ -34,6 +34,10 @@
+
+
+
+
-
@@ -42,6 +46,11 @@
+
+
+
+
+
-
diff --git a/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/stats/skills/39100-39199.xml b/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/stats/skills/39100-39199.xml
index 17f7fe6b80..0378ab51f9 100644
--- a/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/stats/skills/39100-39199.xml
+++ b/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/stats/skills/39100-39199.xml
@@ -203,6 +203,13 @@
icon.etc_i.etc_rp_point_i00
P
+ 5
+ 1
+
+
+ 100
+
+
diff --git a/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/stats/skills/documentation.txt b/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/stats/skills/documentation.txt
index 514f744eb1..294a95eb2c 100644
--- a/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/stats/skills/documentation.txt
+++ b/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/stats/skills/documentation.txt
@@ -40,6 +40,7 @@ Bluff: Rotates the target so you face its back.
BonusDropAdena: Bonus amount for dropped adena. (l2jmobius)
BonusDropAmount: Bonus amount for dropped items. (l2jmobius)
BonusDropRate: Bonus chance for dropping items. (l2jmobius)
+BonusRaidPoints: Bonus amount for raid points. (l2jmobius)
BonusSpoilRate: Bonus chance for acquiring spoil items. (l2jmobius)
Breath: Underwater breathing stat.
BuffBlock: Blocks target from receiving buffs.
diff --git a/L2J_Mobius_9.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/actor/Attackable.java b/L2J_Mobius_9.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/actor/Attackable.java
index 1e19fc85cf..12aea5249f 100644
--- a/L2J_Mobius_9.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/actor/Attackable.java
+++ b/L2J_Mobius_9.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/actor/Attackable.java
@@ -481,7 +481,7 @@ public class Attackable extends Npc
members.forEach(p ->
{
- final int points = Math.max(raidbossPoints / members.size(), 1);
+ final int points = (int) (Math.max(raidbossPoints / members.size(), 1) * p.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
p.increaseRaidbossPoints(points);
p.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (p.getNobleLevel() > 0)
@@ -492,7 +492,7 @@ public class Attackable extends Npc
}
else
{
- final int points = Math.max(raidbossPoints, 1);
+ final int points = (int) (Math.max(raidbossPoints, 1) * player.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
player.increaseRaidbossPoints(points);
player.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (player.getNobleLevel() > 0)
diff --git a/L2J_Mobius_9.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/stats/Stat.java b/L2J_Mobius_9.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/stats/Stat.java
index 6d01f22316..c88dca5498 100644
--- a/L2J_Mobius_9.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/stats/Stat.java
+++ b/L2J_Mobius_9.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/stats/Stat.java
@@ -150,6 +150,7 @@ public enum Stat
BONUS_DROP_AMOUNT("bonusDropAmount"),
BONUS_DROP_RATE("bonusDropRate"),
BONUS_SPOIL_RATE("bonusSpoilRate"),
+ BONUS_RAID_POINTS("bonusRaidPoints"),
ATTACK_CANCEL("cancel"),
// ACCURACY & RANGE
diff --git a/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/EffectMasterHandler.java b/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/EffectMasterHandler.java
index 00880eb01e..8c21773ae6 100644
--- a/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/EffectMasterHandler.java
+++ b/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/EffectMasterHandler.java
@@ -67,6 +67,7 @@ public class EffectMasterHandler
EffectHandler.getInstance().registerHandler("BonusDropAdena", BonusDropAdena::new);
EffectHandler.getInstance().registerHandler("BonusDropAmount", BonusDropAmount::new);
EffectHandler.getInstance().registerHandler("BonusDropRate", BonusDropRate::new);
+ EffectHandler.getInstance().registerHandler("BonusRaidPoints", BonusRaidPoints::new);
EffectHandler.getInstance().registerHandler("BonusSpoilRate", BonusSpoilRate::new);
EffectHandler.getInstance().registerHandler("Breath", Breath::new);
EffectHandler.getInstance().registerHandler("BuffBlock", BuffBlock::new);
diff --git a/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java b/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
new file mode 100644
index 0000000000..7b79ba2ebb
--- /dev/null
+++ b/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
@@ -0,0 +1,31 @@
+/*
+ * 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 .
+ */
+package handlers.effecthandlers;
+
+import org.l2jmobius.gameserver.model.StatSet;
+import org.l2jmobius.gameserver.model.stats.Stat;
+
+/**
+ * @author Mobius
+ */
+public class BonusRaidPoints extends AbstractStatPercentEffect
+{
+ public BonusRaidPoints(StatSet params)
+ {
+ super(params, Stat.BONUS_RAID_POINTS);
+ }
+}
diff --git a/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/stats/skills/documentation.txt b/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/stats/skills/documentation.txt
index 51d044b9d2..f7732b1920 100644
--- a/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/stats/skills/documentation.txt
+++ b/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/stats/skills/documentation.txt
@@ -37,6 +37,7 @@ Bluff: Rotates the target so you face its back.
BonusDropAdena: Bonus amount for dropped adena. (l2jmobius)
BonusDropAmount: Bonus amount for dropped items. (l2jmobius)
BonusDropRate: Bonus chance for dropping items. (l2jmobius)
+BonusRaidPoints: Bonus amount for raid points. (l2jmobius)
BonusSpoilRate: Bonus chance for acquiring spoil items. (l2jmobius)
Breath: Underwater breathing stat.
BuffBlock: Blocks target from receiving buffs.
diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/Attackable.java b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/Attackable.java
index 6763b71d25..7229823e3b 100644
--- a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/Attackable.java
+++ b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/Attackable.java
@@ -482,7 +482,7 @@ public class Attackable extends Npc
members.forEach(p ->
{
- final int points = Math.max(raidbossPoints / members.size(), 1);
+ final int points = (int) (Math.max(raidbossPoints / members.size(), 1) * p.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
p.increaseRaidbossPoints(points);
p.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (p.isNoble())
@@ -493,7 +493,7 @@ public class Attackable extends Npc
}
else
{
- final int points = Math.max(raidbossPoints, 1);
+ final int points = (int) (Math.max(raidbossPoints, 1) * player.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
player.increaseRaidbossPoints(points);
player.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (player.isNoble())
diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/stats/Stat.java b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/stats/Stat.java
index 3fb09f4d4c..d97a0bb172 100644
--- a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/stats/Stat.java
+++ b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/stats/Stat.java
@@ -149,6 +149,7 @@ public enum Stat
BONUS_DROP_AMOUNT("bonusDropAmount"),
BONUS_DROP_RATE("bonusDropRate"),
BONUS_SPOIL_RATE("bonusSpoilRate"),
+ BONUS_RAID_POINTS("bonusRaidPoints"),
ATTACK_CANCEL("cancel"),
// ACCURACY & RANGE
diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/EffectMasterHandler.java b/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/EffectMasterHandler.java
index 9db86e23f8..d6dfbd2dbc 100644
--- a/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/EffectMasterHandler.java
+++ b/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/EffectMasterHandler.java
@@ -68,6 +68,7 @@ public class EffectMasterHandler
EffectHandler.getInstance().registerHandler("BonusDropAdena", BonusDropAdena::new);
EffectHandler.getInstance().registerHandler("BonusDropAmount", BonusDropAmount::new);
EffectHandler.getInstance().registerHandler("BonusDropRate", BonusDropRate::new);
+ EffectHandler.getInstance().registerHandler("BonusRaidPoints", BonusRaidPoints::new);
EffectHandler.getInstance().registerHandler("BonusSpoilRate", BonusSpoilRate::new);
EffectHandler.getInstance().registerHandler("Breath", Breath::new);
EffectHandler.getInstance().registerHandler("BuffBlock", BuffBlock::new);
diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java b/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
new file mode 100644
index 0000000000..7b79ba2ebb
--- /dev/null
+++ b/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
@@ -0,0 +1,31 @@
+/*
+ * 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 .
+ */
+package handlers.effecthandlers;
+
+import org.l2jmobius.gameserver.model.StatSet;
+import org.l2jmobius.gameserver.model.stats.Stat;
+
+/**
+ * @author Mobius
+ */
+public class BonusRaidPoints extends AbstractStatPercentEffect
+{
+ public BonusRaidPoints(StatSet params)
+ {
+ super(params, Stat.BONUS_RAID_POINTS);
+ }
+}
diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/stats/skills/documentation.txt b/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/stats/skills/documentation.txt
index 8ee5827d54..5216f9f97f 100644
--- a/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/stats/skills/documentation.txt
+++ b/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/stats/skills/documentation.txt
@@ -38,6 +38,7 @@ Bluff: Rotates the target so you face its back.
BonusDropAdena: Bonus amount for dropped adena. (l2jmobius)
BonusDropAmount: Bonus amount for dropped items. (l2jmobius)
BonusDropRate: Bonus chance for dropping items. (l2jmobius)
+BonusRaidPoints: Bonus amount for raid points. (l2jmobius)
BonusSpoilRate: Bonus chance for acquiring spoil items. (l2jmobius)
Breath: Underwater breathing stat.
BuffBlock: Blocks target from receiving buffs.
diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/Attackable.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/Attackable.java
index 4f6cd738e1..42117c0eb3 100644
--- a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/Attackable.java
+++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/Attackable.java
@@ -484,7 +484,7 @@ public class Attackable extends Npc
members.forEach(p ->
{
- final int points = Math.max(raidbossPoints / members.size(), 1);
+ final int points = (int) (Math.max(raidbossPoints / members.size(), 1) * p.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
p.increaseRaidbossPoints(points);
p.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (p.isNoble())
@@ -495,7 +495,7 @@ public class Attackable extends Npc
}
else
{
- final int points = Math.max(raidbossPoints, 1);
+ final int points = (int) (Math.max(raidbossPoints, 1) * player.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
player.increaseRaidbossPoints(points);
player.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (player.isNoble())
diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/stats/Stat.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/stats/Stat.java
index 21e6bae309..e80f792ed8 100644
--- a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/stats/Stat.java
+++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/stats/Stat.java
@@ -162,6 +162,7 @@ public enum Stat
BONUS_DROP_AMOUNT("bonusDropAmount"),
BONUS_DROP_RATE("bonusDropRate"),
BONUS_SPOIL_RATE("bonusSpoilRate"),
+ BONUS_RAID_POINTS("bonusRaidPoints"),
ATTACK_CANCEL("cancel"),
// ACCURACY & RANGE
diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/EffectMasterHandler.java b/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/EffectMasterHandler.java
index 9db86e23f8..d6dfbd2dbc 100644
--- a/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/EffectMasterHandler.java
+++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/EffectMasterHandler.java
@@ -68,6 +68,7 @@ public class EffectMasterHandler
EffectHandler.getInstance().registerHandler("BonusDropAdena", BonusDropAdena::new);
EffectHandler.getInstance().registerHandler("BonusDropAmount", BonusDropAmount::new);
EffectHandler.getInstance().registerHandler("BonusDropRate", BonusDropRate::new);
+ EffectHandler.getInstance().registerHandler("BonusRaidPoints", BonusRaidPoints::new);
EffectHandler.getInstance().registerHandler("BonusSpoilRate", BonusSpoilRate::new);
EffectHandler.getInstance().registerHandler("Breath", Breath::new);
EffectHandler.getInstance().registerHandler("BuffBlock", BuffBlock::new);
diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java b/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
new file mode 100644
index 0000000000..7b79ba2ebb
--- /dev/null
+++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
@@ -0,0 +1,31 @@
+/*
+ * 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 .
+ */
+package handlers.effecthandlers;
+
+import org.l2jmobius.gameserver.model.StatSet;
+import org.l2jmobius.gameserver.model.stats.Stat;
+
+/**
+ * @author Mobius
+ */
+public class BonusRaidPoints extends AbstractStatPercentEffect
+{
+ public BonusRaidPoints(StatSet params)
+ {
+ super(params, Stat.BONUS_RAID_POINTS);
+ }
+}
diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/stats/skills/documentation.txt b/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/stats/skills/documentation.txt
index 8ee5827d54..5216f9f97f 100644
--- a/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/stats/skills/documentation.txt
+++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/stats/skills/documentation.txt
@@ -38,6 +38,7 @@ Bluff: Rotates the target so you face its back.
BonusDropAdena: Bonus amount for dropped adena. (l2jmobius)
BonusDropAmount: Bonus amount for dropped items. (l2jmobius)
BonusDropRate: Bonus chance for dropping items. (l2jmobius)
+BonusRaidPoints: Bonus amount for raid points. (l2jmobius)
BonusSpoilRate: Bonus chance for acquiring spoil items. (l2jmobius)
Breath: Underwater breathing stat.
BuffBlock: Blocks target from receiving buffs.
diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/Attackable.java b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/Attackable.java
index 4f6cd738e1..42117c0eb3 100644
--- a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/Attackable.java
+++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/Attackable.java
@@ -484,7 +484,7 @@ public class Attackable extends Npc
members.forEach(p ->
{
- final int points = Math.max(raidbossPoints / members.size(), 1);
+ final int points = (int) (Math.max(raidbossPoints / members.size(), 1) * p.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
p.increaseRaidbossPoints(points);
p.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (p.isNoble())
@@ -495,7 +495,7 @@ public class Attackable extends Npc
}
else
{
- final int points = Math.max(raidbossPoints, 1);
+ final int points = (int) (Math.max(raidbossPoints, 1) * player.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
player.increaseRaidbossPoints(points);
player.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (player.isNoble())
diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/stats/Stat.java b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/stats/Stat.java
index 21e6bae309..e80f792ed8 100644
--- a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/stats/Stat.java
+++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/stats/Stat.java
@@ -162,6 +162,7 @@ public enum Stat
BONUS_DROP_AMOUNT("bonusDropAmount"),
BONUS_DROP_RATE("bonusDropRate"),
BONUS_SPOIL_RATE("bonusSpoilRate"),
+ BONUS_RAID_POINTS("bonusRaidPoints"),
ATTACK_CANCEL("cancel"),
// ACCURACY & RANGE
diff --git a/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/EffectMasterHandler.java b/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/EffectMasterHandler.java
index 61d2c5c6aa..61c8a724a0 100644
--- a/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/EffectMasterHandler.java
+++ b/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/EffectMasterHandler.java
@@ -69,6 +69,7 @@ public class EffectMasterHandler
EffectHandler.getInstance().registerHandler("BonusDropAdena", BonusDropAdena::new);
EffectHandler.getInstance().registerHandler("BonusDropAmount", BonusDropAmount::new);
EffectHandler.getInstance().registerHandler("BonusDropRate", BonusDropRate::new);
+ EffectHandler.getInstance().registerHandler("BonusRaidPoints", BonusRaidPoints::new);
EffectHandler.getInstance().registerHandler("BonusSpoilRate", BonusSpoilRate::new);
EffectHandler.getInstance().registerHandler("Breath", Breath::new);
EffectHandler.getInstance().registerHandler("BuffBlock", BuffBlock::new);
diff --git a/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java b/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
new file mode 100644
index 0000000000..7b79ba2ebb
--- /dev/null
+++ b/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
@@ -0,0 +1,31 @@
+/*
+ * 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 .
+ */
+package handlers.effecthandlers;
+
+import org.l2jmobius.gameserver.model.StatSet;
+import org.l2jmobius.gameserver.model.stats.Stat;
+
+/**
+ * @author Mobius
+ */
+public class BonusRaidPoints extends AbstractStatPercentEffect
+{
+ public BonusRaidPoints(StatSet params)
+ {
+ super(params, Stat.BONUS_RAID_POINTS);
+ }
+}
diff --git a/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/stats/skills/documentation.txt b/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/stats/skills/documentation.txt
index 75db5eb6ad..1136325ee2 100644
--- a/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/stats/skills/documentation.txt
+++ b/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/stats/skills/documentation.txt
@@ -39,6 +39,7 @@ Bluff: Rotates the target so you face its back.
BonusDropAdena: Bonus amount for dropped adena. (l2jmobius)
BonusDropAmount: Bonus amount for dropped items. (l2jmobius)
BonusDropRate: Bonus chance for dropping items. (l2jmobius)
+BonusRaidPoints: Bonus amount for raid points. (l2jmobius)
BonusSpoilRate: Bonus chance for acquiring spoil items. (l2jmobius)
Breath: Underwater breathing stat.
BuffBlock: Blocks target from receiving buffs.
diff --git a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/actor/Attackable.java b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/actor/Attackable.java
index 4f6cd738e1..42117c0eb3 100644
--- a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/actor/Attackable.java
+++ b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/actor/Attackable.java
@@ -484,7 +484,7 @@ public class Attackable extends Npc
members.forEach(p ->
{
- final int points = Math.max(raidbossPoints / members.size(), 1);
+ final int points = (int) (Math.max(raidbossPoints / members.size(), 1) * p.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
p.increaseRaidbossPoints(points);
p.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (p.isNoble())
@@ -495,7 +495,7 @@ public class Attackable extends Npc
}
else
{
- final int points = Math.max(raidbossPoints, 1);
+ final int points = (int) (Math.max(raidbossPoints, 1) * player.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
player.increaseRaidbossPoints(points);
player.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (player.isNoble())
diff --git a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/stats/Stat.java b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/stats/Stat.java
index 6a70134d8a..0bd507a8d6 100644
--- a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/stats/Stat.java
+++ b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/stats/Stat.java
@@ -164,6 +164,7 @@ public enum Stat
BONUS_DROP_AMOUNT("bonusDropAmount"),
BONUS_DROP_RATE("bonusDropRate"),
BONUS_SPOIL_RATE("bonusSpoilRate"),
+ BONUS_RAID_POINTS("bonusRaidPoints"),
ATTACK_CANCEL("cancel"),
// ACCURACY & RANGE
diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/EffectMasterHandler.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/EffectMasterHandler.java
index fc731b9c56..da78aaa3e8 100644
--- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/EffectMasterHandler.java
+++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/EffectMasterHandler.java
@@ -69,6 +69,7 @@ public class EffectMasterHandler
EffectHandler.getInstance().registerHandler("BonusDropAdena", BonusDropAdena::new);
EffectHandler.getInstance().registerHandler("BonusDropAmount", BonusDropAmount::new);
EffectHandler.getInstance().registerHandler("BonusDropRate", BonusDropRate::new);
+ EffectHandler.getInstance().registerHandler("BonusRaidPoints", BonusRaidPoints::new);
EffectHandler.getInstance().registerHandler("BonusSpoilRate", BonusSpoilRate::new);
EffectHandler.getInstance().registerHandler("Breath", Breath::new);
EffectHandler.getInstance().registerHandler("BuffBlock", BuffBlock::new);
diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
new file mode 100644
index 0000000000..7b79ba2ebb
--- /dev/null
+++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
@@ -0,0 +1,31 @@
+/*
+ * 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 .
+ */
+package handlers.effecthandlers;
+
+import org.l2jmobius.gameserver.model.StatSet;
+import org.l2jmobius.gameserver.model.stats.Stat;
+
+/**
+ * @author Mobius
+ */
+public class BonusRaidPoints extends AbstractStatPercentEffect
+{
+ public BonusRaidPoints(StatSet params)
+ {
+ super(params, Stat.BONUS_RAID_POINTS);
+ }
+}
diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/stats/skills/documentation.txt b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/stats/skills/documentation.txt
index 1aaeb92359..cbc90524bf 100644
--- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/stats/skills/documentation.txt
+++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/stats/skills/documentation.txt
@@ -39,6 +39,7 @@ Bluff: Rotates the target so you face its back.
BonusDropAdena: Bonus amount for dropped adena. (l2jmobius)
BonusDropAmount: Bonus amount for dropped items. (l2jmobius)
BonusDropRate: Bonus chance for dropping items. (l2jmobius)
+BonusRaidPoints: Bonus amount for raid points. (l2jmobius)
BonusSpoilRate: Bonus chance for acquiring spoil items. (l2jmobius)
Breath: Underwater breathing stat.
BuffBlock: Blocks target from receiving buffs.
diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/Attackable.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/Attackable.java
index 5c2034e701..2a6831ec2f 100644
--- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/Attackable.java
+++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/Attackable.java
@@ -485,7 +485,7 @@ public class Attackable extends Npc
members.forEach(p ->
{
- final int points = Math.max(raidbossPoints / members.size(), 1);
+ final int points = (int) (Math.max(raidbossPoints / members.size(), 1) * p.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
p.increaseRaidbossPoints(points);
p.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (p.isNoble())
@@ -496,7 +496,7 @@ public class Attackable extends Npc
}
else
{
- final int points = Math.max(raidbossPoints, 1);
+ final int points = (int) (Math.max(raidbossPoints, 1) * player.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
player.increaseRaidbossPoints(points);
player.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (player.isNoble())
diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/stats/Stat.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/stats/Stat.java
index e1cecee703..a36d2045f6 100644
--- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/stats/Stat.java
+++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/stats/Stat.java
@@ -164,6 +164,7 @@ public enum Stat
BONUS_DROP_AMOUNT("bonusDropAmount"),
BONUS_DROP_RATE("bonusDropRate"),
BONUS_SPOIL_RATE("bonusSpoilRate"),
+ BONUS_RAID_POINTS("bonusRaidPoints"),
ATTACK_CANCEL("cancel"),
// ACCURACY & RANGE
diff --git a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/EffectMasterHandler.java b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/EffectMasterHandler.java
index 08b434bd6a..367e688017 100644
--- a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/EffectMasterHandler.java
+++ b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/EffectMasterHandler.java
@@ -69,6 +69,7 @@ public class EffectMasterHandler
EffectHandler.getInstance().registerHandler("BonusDropAdena", BonusDropAdena::new);
EffectHandler.getInstance().registerHandler("BonusDropAmount", BonusDropAmount::new);
EffectHandler.getInstance().registerHandler("BonusDropRate", BonusDropRate::new);
+ EffectHandler.getInstance().registerHandler("BonusRaidPoints", BonusRaidPoints::new);
EffectHandler.getInstance().registerHandler("BonusSpoilRate", BonusSpoilRate::new);
EffectHandler.getInstance().registerHandler("Breath", Breath::new);
EffectHandler.getInstance().registerHandler("BuffBlock", BuffBlock::new);
diff --git a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
new file mode 100644
index 0000000000..7b79ba2ebb
--- /dev/null
+++ b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/effecthandlers/BonusRaidPoints.java
@@ -0,0 +1,31 @@
+/*
+ * 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 .
+ */
+package handlers.effecthandlers;
+
+import org.l2jmobius.gameserver.model.StatSet;
+import org.l2jmobius.gameserver.model.stats.Stat;
+
+/**
+ * @author Mobius
+ */
+public class BonusRaidPoints extends AbstractStatPercentEffect
+{
+ public BonusRaidPoints(StatSet params)
+ {
+ super(params, Stat.BONUS_RAID_POINTS);
+ }
+}
diff --git a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/stats/skills/documentation.txt b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/stats/skills/documentation.txt
index 980503867d..d3048d3c5a 100644
--- a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/stats/skills/documentation.txt
+++ b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/stats/skills/documentation.txt
@@ -39,6 +39,7 @@ Bluff: Rotates the target so you face its back.
BonusDropAdena: Bonus amount for dropped adena. (l2jmobius)
BonusDropAmount: Bonus amount for dropped items. (l2jmobius)
BonusDropRate: Bonus chance for dropping items. (l2jmobius)
+BonusRaidPoints: Bonus amount for raid points. (l2jmobius)
BonusSpoilRate: Bonus chance for acquiring spoil items. (l2jmobius)
Breath: Underwater breathing stat.
BuffBlock: Blocks target from receiving buffs.
diff --git a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/Attackable.java b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/Attackable.java
index b3d855380d..c25d223ae1 100644
--- a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/Attackable.java
+++ b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/Attackable.java
@@ -490,7 +490,7 @@ public class Attackable extends Npc
members.forEach(p ->
{
- final int points = Math.max(raidbossPoints / members.size(), 1);
+ final int points = (int) (Math.max(raidbossPoints / members.size(), 1) * p.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
p.increaseRaidbossPoints(points);
p.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (p.isNoble())
@@ -501,7 +501,7 @@ public class Attackable extends Npc
}
else
{
- final int points = Math.max(raidbossPoints, 1);
+ final int points = (int) (Math.max(raidbossPoints, 1) * player.getStat().getValue(Stat.BONUS_RAID_POINTS, 1));
player.increaseRaidbossPoints(points);
player.sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EARNED_S1_RAID_POINT_S).addInt(points));
if (player.isNoble())
diff --git a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/stats/Stat.java b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/stats/Stat.java
index e1cecee703..a36d2045f6 100644
--- a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/stats/Stat.java
+++ b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/stats/Stat.java
@@ -164,6 +164,7 @@ public enum Stat
BONUS_DROP_AMOUNT("bonusDropAmount"),
BONUS_DROP_RATE("bonusDropRate"),
BONUS_SPOIL_RATE("bonusSpoilRate"),
+ BONUS_RAID_POINTS("bonusRaidPoints"),
ATTACK_CANCEL("cancel"),
// ACCURACY & RANGE