L2JMobius

Public Development => Solved/Invalid Bug Reports => Topic started by: gugukin on February 04, 2022, 02:20:45 PM

Title: l2 day error
Post by: gugukin on February 04, 2022, 02:20:45 PM
Hello, I am testing the l2day event and I get this error when you receive the reward, and it does not appear in the inventory until restarting pj.

Code: [Select]
[04/02 13:16:16] F:\l2jmobius c6 java 17\game\data\scripts\events\L2Day\L2Day.java
java.lang.NullPointerException: Cannot invoke "java.util.List.add(Object)" because "this._attributes" is null
at org.l2jmobius.gameserver.network.serverpackets.StatusUpdate.addAttribute(StatusUpdate.java:103)
at org.l2jmobius.gameserver.model.quest.Quest.sendItemGetMessage(Quest.java:2183)
at org.l2jmobius.gameserver.model.quest.Quest.giveItems(Quest.java:2234)
at org.l2jmobius.gameserver.model.quest.Quest.giveItems(Quest.java:2195)
at org.l2jmobius.gameserver.model.quest.Quest.giveItems(Quest.java:2205)
at events.L2Day.L2Day.onAdvEvent(L2Day.java:154)
at org.l2jmobius.gameserver.model.quest.Quest.notifyEvent(Quest.java:520)
at org.l2jmobius.gameserver.model.actor.instance.PlayerInstance.processQuestEvent(PlayerInstance.java:1641)
at org.l2jmobius.gameserver.network.clientpackets.RequestBypassToServer.run(RequestBypassToServer.java:246)
at org.l2jmobius.gameserver.network.clientpackets.RequestBypassToServer.run(RequestBypassToServer.java:42)
at org.l2jmobius.gameserver.network.GameClient.channelRead0(GameClient.java:120)
at org.l2jmobius.gameserver.network.GameClient.channelRead0(GameClient.java:64)
at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:99)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296)
at io.netty.handler.codec.ByteToMessageCodec.channelRead(ByteToMessageCodec.java:103)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919)
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166)
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:719)
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:655)
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:581)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:493)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Thread.java:833)
Title: Re: l2 day error
Post by: Index on February 04, 2022, 03:00:08 PM
(https://www.meme-arsenal.com/memes/c492b1490e310a6a175833cd7f08aef2.jpg)
Title: Re: l2 day error
Post by: Mobius on February 04, 2022, 03:06:19 PM
Try this.
Code: (diff) [Select]
Index: java/org/l2jmobius/gameserver/model/quest/Quest.java
===================================================================
--- java/org/l2jmobius/gameserver/model/quest/Quest.java (revision 9829)
+++ java/org/l2jmobius/gameserver/model/quest/Quest.java (working copy)
@@ -2160,7 +2160,7 @@
  }
  }
  // send packets
- final StatusUpdate su = new StatusUpdate(player);
+ final StatusUpdate su = new StatusUpdate(player.getObjectId());
  su.addAttribute(StatusUpdate.CUR_LOAD, player.getCurrentLoad());
  player.sendPacket(su);
  }
Title: Re: l2 day error
Post by: Index on February 04, 2022, 03:07:41 PM
Try to update your files, because in last updates mobius remove take quest item on better solution.
Title: Re: l2 day error
Post by: nasseka on February 04, 2022, 04:30:50 PM
Ain't that sub rev?
Try to update your files, because in last updates mobius remove take quest item on better solution.
Title: Re: l2 day error
Post by: gugukin on February 04, 2022, 04:51:18 PM
Try to update your files, because in last updates mobius remove take quest item on better solution.

As far as I know I have the latest version uploaded for free download.
Title: Re: l2 day error
Post by: gugukin on February 04, 2022, 05:00:28 PM
Try this.
Code: (diff) [Select]
Index: java/org/l2jmobius/gameserver/model/quest/Quest.java
===================================================================
--- java/org/l2jmobius/gameserver/model/quest/Quest.java (revision 9829)
+++ java/org/l2jmobius/gameserver/model/quest/Quest.java (working copy)
@@ -2160,7 +2160,7 @@
  }
  }
  // send packets
- final StatusUpdate su = new StatusUpdate(player);
+ final StatusUpdate su = new StatusUpdate(player.getObjectId());
  su.addAttribute(StatusUpdate.CUR_LOAD, player.getCurrentLoad());
  player.sendPacket(su);
  }

the error is eliminated but the object still does not appear until pj is restarted
Title: Re: l2 day error
Post by: Mobius on February 04, 2022, 05:17:26 PM
Code: (diff) [Select]
Index: java/org/l2jmobius/gameserver/model/quest/Quest.java
===================================================================
--- java/org/l2jmobius/gameserver/model/quest/Quest.java (revision 9829)
+++ java/org/l2jmobius/gameserver/model/quest/Quest.java (working copy)
@@ -55,6 +55,7 @@
 import org.l2jmobius.gameserver.network.SystemMessageId;
 import org.l2jmobius.gameserver.network.serverpackets.ConfirmDlg;
 import org.l2jmobius.gameserver.network.serverpackets.InventoryUpdate;
+import org.l2jmobius.gameserver.network.serverpackets.ItemList;
 import org.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
 import org.l2jmobius.gameserver.network.serverpackets.StatusUpdate;
 import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
@@ -2159,8 +2160,10 @@
  player.sendPacket(smsg);
  }
  }
+
  // send packets
- final StatusUpdate su = new StatusUpdate(player);
+ player.sendPacket(new ItemList(player, false));
+ final StatusUpdate su = new StatusUpdate(player.getObjectId());
  su.addAttribute(StatusUpdate.CUR_LOAD, player.getCurrentLoad());
  player.sendPacket(su);
  }
Title: Re: l2 day error
Post by: gugukin on February 04, 2022, 05:46:32 PM
Code: (diff) [Select]
Index: java/org/l2jmobius/gameserver/model/quest/Quest.java
===================================================================
--- java/org/l2jmobius/gameserver/model/quest/Quest.java (revision 9829)
+++ java/org/l2jmobius/gameserver/model/quest/Quest.java (working copy)
@@ -55,6 +55,7 @@
 import org.l2jmobius.gameserver.network.SystemMessageId;
 import org.l2jmobius.gameserver.network.serverpackets.ConfirmDlg;
 import org.l2jmobius.gameserver.network.serverpackets.InventoryUpdate;
+import org.l2jmobius.gameserver.network.serverpackets.ItemList;
 import org.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
 import org.l2jmobius.gameserver.network.serverpackets.StatusUpdate;
 import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
@@ -2159,8 +2160,10 @@
  player.sendPacket(smsg);
  }
  }
+
  // send packets
- final StatusUpdate su = new StatusUpdate(player);
+ player.sendPacket(new ItemList(player, false));
+ final StatusUpdate su = new StatusUpdate(player.getObjectId());
  su.addAttribute(StatusUpdate.CUR_LOAD, player.getCurrentLoad());
  player.sendPacket(su);
  }

perfect mobius you are the best
Title: Re: l2 day error
Post by: Mobius on February 05, 2022, 04:35:29 AM
Fixed with https://bitbucket.org/MobiusDev/l2j_mobius/commits/7e7a5f4d4d361f7d114d5ecb6a1a2db651c30f96