L2JMobius

C6 Q501_ProofOfClanAlliance: null

JkDev · 4 · 6659

Offline JkDev

  • Heir
  • **
    • Posts: 12
  • I am JkDev i am Dino!
    • Arena Games Support and Developer
hello, today they were testing the quests when suddenly the server crashed and threw the following errors:

Code: [Select]
[05/10 21:54:42] /home/jkdev/game/data/scripts/quests/QuestMasterHandler.java
java.lang.NullPointerException
at quests.Q501_ProofOfClanAlliance.Q501_ProofOfClanAlliance.getClanLeaderQuestState(Q501_ProofOfClanAlliance.java:560)
at quests.Q501_ProofOfClanAlliance.Q501_ProofOfClanAlliance.onKill(Q501_ProofOfClanAlliance.java:448)
at org.l2jmobius.gameserver.model.quest.Quest.notifyKill(Quest.java:527)
at org.l2jmobius.gameserver.model.actor.Attackable.doDie(Attackable.java:536)
at org.l2jmobius.gameserver.model.actor.instance.MonsterInstance.doDie(MonsterInstance.java:191)
at org.l2jmobius.gameserver.model.actor.status.CreatureStatus.reduceHp(CreatureStatus.java:245)
at org.l2jmobius.gameserver.model.actor.status.NpcStatus.reduceHp(NpcStatus.java:49)
at org.l2jmobius.gameserver.model.actor.Creature.reduceCurrentHp(Creature.java:8996)
at org.l2jmobius.gameserver.model.actor.Attackable.reduceCurrentHp(Attackable.java:481)
at org.l2jmobius.gameserver.model.actor.Attackable.reduceCurrentHp(Attackable.java:414)
at org.l2jmobius.gameserver.handler.skillhandlers.Mdam.useSkill(Mdam.java:115)
at org.l2jmobius.gameserver.model.actor.Creature.callSkill(Creature.java:8110)
at org.l2jmobius.gameserver.model.actor.Creature.onMagicHitTimer(Creature.java:7484)
at org.l2jmobius.gameserver.model.actor.Creature$MagicUseTask.run(Creature.java:2900)
at org.l2jmobius.commons.concurrent.RunnableWrapper.run(RunnableWrapper.java:38)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
at java.base/java.lang.Thread.run(Thread.java:832)

[05/10 21:54:42] Q501_ProofOfClanAlliance: null

I wanted to know if there is a fix for this, in advance thanks!

I leave registration link:
https://pastebin.com/An7muVzj

java0.log
https://pastebin.com/Sj5T33Ur


Online Mobius

  • Distinguished King
  • *****
    • Posts: 16047
Try this.
Code: [Select]
Index: dist/game/data/scripts/quests/Q501_ProofOfClanAlliance/Q501_ProofOfClanAlliance.java
===================================================================
--- dist/game/data/scripts/quests/Q501_ProofOfClanAlliance/Q501_ProofOfClanAlliance.java (revision 7672)
+++ dist/game/data/scripts/quests/Q501_ProofOfClanAlliance/Q501_ProofOfClanAlliance.java (working copy)
@@ -557,11 +557,17 @@
  public QuestState getClanLeaderQuestState(PlayerInstance player, NpcInstance npc)
  {
  final Clan clan = player.getClan();
+ if (clan == null)
+ {
+ return null;
+ }
+
  final PlayerInstance leader = clan.getLeader().getPlayerInstance();
  if (leader == null)
  {
  return null;
  }
+
  return leader.getQuestState(getName());
  }
 }


Offline JkDev

  • Heir
  • **
    • Posts: 12
  • I am JkDev i am Dino!
    • Arena Games Support and Developer
Try this.
Code: [Select]
Index: dist/game/data/scripts/quests/Q501_ProofOfClanAlliance/Q501_ProofOfClanAlliance.java
===================================================================
--- dist/game/data/scripts/quests/Q501_ProofOfClanAlliance/Q501_ProofOfClanAlliance.java (revision 7672)
+++ dist/game/data/scripts/quests/Q501_ProofOfClanAlliance/Q501_ProofOfClanAlliance.java (working copy)
@@ -557,11 +557,17 @@
  public QuestState getClanLeaderQuestState(PlayerInstance player, NpcInstance npc)
  {
  final Clan clan = player.getClan();
+ if (clan == null)
+ {
+ return null;
+ }
+
  final PlayerInstance leader = clan.getLeader().getPlayerInstance();
  if (leader == null)
  {
  return null;
  }
+
  return leader.getQuestState(getName());
  }
 }

So far it works perfect, thanks!