Hi,
Tried this to increase max level to 99, console error said that the value was out of bounds of experience.xsd, so I changed experience.xsd values but still not working. The error occur only when I try to add exp on adm panel, no error during server loading.
mai. 21, 2022 1:05:13 PM org.l2jmobius.gameserver.model.actor.Player restoreSubClassData
WARNING: Could not restore classes for Ikemen: Cannot invoke "java.lang.Long.longValue()" because the return value of "java.util.Map.get(Object)" is null
java.lang.NullPointerException: Cannot invoke "java.lang.Long.longValue()" because the return value of "java.util.Map.get(Object)" is null
at org.l2jmobius.gameserver.data.xml.ExperienceData.getExpForLevel(ExperienceData.java:105)
at org.l2jmobius.gameserver.model.holders.SubClassHolder.setExp(SubClassHolder.java:101)
at org.l2jmobius.gameserver.model.actor.Player.restoreSubClassData(Player.java:7103)
at org.l2jmobius.gameserver.model.actor.Player.restore(Player.java:6869)
at org.l2jmobius.gameserver.model.actor.Player.load(Player.java:1147)
at org.l2jmobius.gameserver.network.GameClient.load(GameClient.java:554)
at org.l2jmobius.gameserver.network.clientpackets.CharacterSelect.run(CharacterSelect.java:153)
at org.l2jmobius.gameserver.network.clientpackets.CharacterSelect.run(CharacterSelect.java:48)
at org.l2jmobius.gameserver.network.GameClient.channelRead0(GameClient.java:111)
at org.l2jmobius.gameserver.network.GameClient.channelRead0(GameClient.java:60)
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:722)
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:658)
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:584)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:496)
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)
mai. 21, 2022 1:05:35 PM org.l2jmobius.gameserver.handler.AdminCommandHandler lambda$useAdminCommand$0
WARNING: Exception during execution of admin_add_exp_sp 99999 9
java.lang.NullPointerException: Cannot invoke "java.lang.Long.longValue()" because the return value of "java.util.Map.get(Object)" is null
at org.l2jmobius.gameserver.data.xml.ExperienceData.getExpForLevel(ExperienceData.java:105)
at org.l2jmobius.gameserver.model.actor.stat.PlayerStat.getExpForLevel(PlayerStat.java:362)
at org.l2jmobius.gameserver.model.actor.stat.PlayableStat.addExp(PlayableStat.java:52)
at org.l2jmobius.gameserver.model.actor.stat.PlayerStat.addExp(PlayerStat.java:92)
at org.l2jmobius.gameserver.model.actor.stat.PlayerStat.addExpAndSp(PlayerStat.java:192)
at org.l2jmobius.gameserver.model.actor.Player.addExpAndSp(Player.java:10820)
at handlers.admincommandhandlers.AdminExpSp.adminAddExpSp(AdminExpSp.java:148)
at handlers.admincommandhandlers.AdminExpSp.useAdminCommand(AdminExpSp.java:54)
at org.l2jmobius.gameserver.handler.AdminCommandHandler.lambda$useAdminCommand$0(AdminCommandHandler.java:127)
at org.l2jmobius.commons.threads.RunnableWrapper.run(RunnableWrapper.java:35)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:833)
mai. 21, 2022 1:06:50 PM org.l2jmobius.gameserver.handler.AdminCommandHandler lambda$useAdminCommand$0
WARNING: Exception during execution of admin_add_exp_sp 999999999999 9999
java.lang.NullPointerException: Cannot invoke "java.lang.Long.longValue()" because the return value of "java.util.Map.get(Object)" is null
at org.l2jmobius.gameserver.data.xml.ExperienceData.getExpForLevel(ExperienceData.java:105)
at org.l2jmobius.gameserver.model.actor.stat.PlayerStat.getExpForLevel(PlayerStat.java:362)
at org.l2jmobius.gameserver.model.actor.stat.PlayableStat.addExp(PlayableStat.java:52)
at org.l2jmobius.gameserver.model.actor.stat.PlayerStat.addExp(PlayerStat.java:92)
at org.l2jmobius.gameserver.model.actor.stat.PlayerStat.addExpAndSp(PlayerStat.java:192)
at org.l2jmobius.gameserver.model.actor.Player.addExpAndSp(Player.java:10820)
at handlers.admincommandhandlers.AdminExpSp.adminAddExpSp(AdminExpSp.java:148)
at handlers.admincommandhandlers.AdminExpSp.useAdminCommand(AdminExpSp.java:54)
at org.l2jmobius.gameserver.handler.AdminCommandHandler.lambda$useAdminCommand$0(AdminCommandHandler.java:127)
at org.l2jmobius.commons.threads.RunnableWrapper.run(RunnableWrapper.java:35)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:833)
Character.ini
MaximumPlayerLevel = 99
# Maximum number of allowed subclasses for every player.
# Default: 3
MaxSubclass = 3
# Starting level for subclasses.
# Default: 40
BaseSubclassLevel = 40
# Maximum subclass level.
# Default: 80
MaxSubclassLevel = 99
experience.xml
<?xml version="1.0" encoding="UTF-8"?>
<table maxLevel="99" maxPetLevel="99" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/experience.xsd">
<experience level="1" tolevel="0" />
<experience level="2" tolevel="68" />
<experience level="3" tolevel="363" />
<experience level="4" tolevel="1168" />
<experience level="5" tolevel="2884" />
<experience level="6" tolevel="6038" />
<experience level="7" tolevel="11287" />
<experience level="8" tolevel="19423" />
<experience level="9" tolevel="31378" />
<experience level="10" tolevel="48229" />
<experience level="11" tolevel="71202" />
<experience level="12" tolevel="101677" />
<experience level="13" tolevel="141193" />
<experience level="14" tolevel="191454" />
<experience level="15" tolevel="254330" />
<experience level="16" tolevel="331867" />
<experience level="17" tolevel="426288" />
<experience level="18" tolevel="540000" />
<experience level="19" tolevel="675596" />
<experience level="20" tolevel="835862" />
<experience level="21" tolevel="1023784" />
<experience level="22" tolevel="1242546" />
<experience level="23" tolevel="1495543" />
<experience level="24" tolevel="1786379" />
<experience level="25" tolevel="2118876" />
<experience level="26" tolevel="2497077" />
<experience level="27" tolevel="2925250" />
<experience level="28" tolevel="3407897" />
<experience level="29" tolevel="3949754" />
<experience level="30" tolevel="4555796" />
<experience level="31" tolevel="5231246" />
<experience level="32" tolevel="5981576" />
<experience level="33" tolevel="6812513" />
<experience level="34" tolevel="7730044" />
<experience level="35" tolevel="8740422" />
<experience level="36" tolevel="9850166" />
<experience level="37" tolevel="11066072" />
<experience level="38" tolevel="12395215" />
<experience level="39" tolevel="13844951" />
<experience level="40" tolevel="15422929" />
<experience level="41" tolevel="17137087" />
<experience level="42" tolevel="18995665" />
<experience level="43" tolevel="21007203" />
<experience level="44" tolevel="23180550" />
<experience level="45" tolevel="25524868" />
<experience level="46" tolevel="28049635" />
<experience level="47" tolevel="30764654" />
<experience level="48" tolevel="33680052" />
<experience level="49" tolevel="36806289" />
<experience level="50" tolevel="40154162" />
<experience level="51" tolevel="45525133" />
<experience level="52" tolevel="51262490" />
<experience level="53" tolevel="57383988" />
<experience level="54" tolevel="63907911" />
<experience level="55" tolevel="70853089" />
<experience level="56" tolevel="80700831" />
<experience level="57" tolevel="91162654" />
<experience level="58" tolevel="102265881" />
<experience level="59" tolevel="114038596" />
<experience level="60" tolevel="126509653" />
<experience level="61" tolevel="146308200" />
<experience level="62" tolevel="167244337" />
<experience level="63" tolevel="189364894" />
<experience level="64" tolevel="212717908" />
<experience level="65" tolevel="237352644" />
<experience level="66" tolevel="271975263" />
<experience level="67" tolevel="308443198" />
<experience level="68" tolevel="346827154" />
<experience level="69" tolevel="387199547" />
<experience level="70" tolevel="429634523" />
<experience level="71" tolevel="474207979" />
<experience level="72" tolevel="532694979" />
<experience level="73" tolevel="606322775" />
<experience level="74" tolevel="696381369" />
<experience level="75" tolevel="804225364" />
<experience level="76" tolevel="931275828" />
<experience level="77" tolevel="1151275834" />
<experience level="78" tolevel="1511275834" />
<experience level="79" tolevel="2044287599" />
<experience level="80" tolevel="3075966164" />
<experience level="81" tolevel="4295351949" />
<experience level="82" tolevel="5766985062" />
<experience level="83" tolevel="7793077345" />
<experience level="84" tolevel="10235368963" />
<experience level="85" tolevel="13180481103" />
<experience level="86" tolevel="16890558728" />
<experience level="87" tolevel="21138534249" />
<experience level="88" tolevel="31138534249" />
<experience level="89" tolevel="41138534249" />
<experience level="90" tolevel="51138534249" />
<experience level="91" tolevel="61138534249" />
<experience level="92" tolevel="71138534249" />
<experience level="93" tolevel="81138534249" />
<experience level="94" tolevel="91138534249" />
<experience level="95" tolevel="101138534249" />
<experience level="96" tolevel="111138534249" />
<experience level="97" tolevel="121138534249" />
<experience level="98" tolevel="131138534249" />
<experience level="99" tolevel="141138534249" />
</table>
experience.xsd
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="table">
<xs:complexType>
<xs:sequence minOccurs="1" maxOccurs="1">
<xs:element name="experience" minOccurs="1" maxOccurs="99">
<xs:complexType>
<xs:attribute name="level" use="required">
<xs:simpleType>
<xs:restriction base="xs:positiveInteger">
<xs:minInclusive value="1" />
<xs:maxInclusive value="99" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="tolevel" type="xs:nonNegativeInteger" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="maxLevel" use="required">
<xs:simpleType>
<xs:restriction base="xs:positiveInteger">
<xs:minInclusive value="1" />
<xs:maxInclusive value="99" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="maxPetLevel" use="required">
<xs:simpleType>
<xs:restriction base="xs:positiveInteger">
<xs:minInclusive value="1" />
<xs:maxInclusive value="99" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>
Did I done something wrong?
EDIT: I changed Required experience, I'm testing right now
EDIT2: Didn't work.