L2JMobius
Free Users => Bug Reports => Topic started by: bloodzy on April 29, 2020, 11:15:02 PM
-
In a sea of spores, mobs give you a raid curse, it does not matter if they are normal or raidboss (Orfen) mobs, if you take them more than 9 levels.
I leave attached images.
https://imgur.com/tc8JiIr (https://imgur.com/tc8JiIr)
https://imgur.com/KOsWHXf (https://imgur.com/KOsWHXf)
-
Hi,
I know this is an older post, but I have the same issue. In the Sea of Spores area, near Orfen, if the character attacks, uses any type of skill (even activating GM Haste), it receives the Raid Curse. I have tested it with different classes/races; GM's, normal characters, the outcome is the same. There is no error in the db, nothing to go on.
-
Fixed:
In Creature.java (or old L2Character.java) change these values:
++ protected void onHitTimer(Creature target, int damage, boolean crit, boolean miss, boolean soulshot, boolean shld) ++
.
.
.
// max allowed rage into take cursed is 3000
if ((boss_instance != null) && boss_instance.isInsideRadius(this, 3000, false, false))
{
to_be_cursed = true;
}
To:
// max allowed rage into take cursed is 300
if ((boss_instance != null) && boss_instance.isInsideRadius(this, 300, false, false))
{
to_be_cursed = true;
}
And
++ public void callSkill(Skill skill, WorldObject[] targets)++
.
.
.
// max allowed rage into take cursed is 3000
if ((boss_instance != null/* && alive */) && boss_instance.isInsideRadius(this, 3000, false, false))
{
to_be_cursed = true;
}
to:
// max allowed rage into take cursed is 300
if ((boss_instance != null/* && alive */) && boss_instance.isInsideRadius(this, 300, false, false))
{
to_be_cursed = true;
}
I hope its understandable.
-
300 is very low, ranged characters whould be able to hit boss from distance.
Try this.
Index: java/org/l2jmobius/gameserver/model/actor/Creature.java
===================================================================
--- java/org/l2jmobius/gameserver/model/actor/Creature.java (revision 7463)
+++ java/org/l2jmobius/gameserver/model/actor/Creature.java (working copy)
@@ -6240,8 +6240,8 @@
}
}
- // max allowed rage into take cursed is 3000
- if ((bossInstance != null) && bossInstance.isInsideRadius(this, 3000, false, false))
+ // Raid curse check.
+ if ((bossInstance != null) && !bossInstance.isDead() && bossInstance.isVisible() && bossInstance.isInsideRadius(this, 1500, false, false))
{
toBeCursed = true;
}
@@ -7990,8 +7990,8 @@
}
}
- // max allowed rage into take cursed is 3000
- if ((bossInstance != null/* && alive */) && bossInstance.isInsideRadius(this, 3000, false, false))
+ // Raid curse check.
+ if ((bossInstance != null) && !bossInstance.isDead() && bossInstance.isVisible() && bossInstance.isInsideRadius(this, 1500, false, false))
{
toBeCursed = true;
}
-
1500 wont work, you still get Raid Cursed from the nearby mobs. I tried with 1000, 500 same problem.
What I noticed is this. If the player is casting a skill and it doesn't have itself or another target selected, the Raid Curse effect is applied to the caster. If it has a target other than itself, it will get the Raid Curse Silence.
Also in the gameserver i noticed this whenever the player gets the Raid Curse:
com.l2jmobius.gameserver.model.actor.instance.L2PcInstance cannot be cast to com.l2jmobius.gameserver.model.actor.L2Attackable
Something about Orfen that bugs out the player, because if I kill him, and restart the server, if hes not spawned, the problem disappears.