Jump to content

Recommended Posts

Posted (edited)

Hello everyone, I have this code with which I could put the character at level 90, but I also have a visual bug in the experience. Any way to fix it?

 

Quote
/*
 * 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 <http://www.gnu.org/licenses/>.
 */
package com.l2jfrozen.gameserver.datatables.xml;

import java.io.File;
import java.util.HashMap;
import java.util.Map;
import java.util.logging.Logger;

import javax.xml.parsers.DocumentBuilderFactory;

import org.w3c.dom.Document;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;

import com.l2jfrozen.Config;

/**
 * Based on mrTJO's implementation.
 * @author Zoey76
 */
public class ExperienceData
{
	 public final static long LEVEL[]=
		    {
		                  // level 0 (unreachable)
		                 0L,
		                68L,
		               363L,
		              1168L,
		              2884L,
		              6038L,
		             11287L,
		             19423L,
		             31378L,
		             48229L,  //level 10
		             71201L,
		            101676L,
		            141192L,
		            191452L,
		            254327L,
		            331864L,
		            426284L,
		            539995L,
		            675590L,
		            835854L,  //level 20
		           1023775L,
		           1242536L,
		           1495531L,
		           1786365L,
		           2118860L,
		           2497059L,
		           2925229L,
		           3407873L,
		           3949727L,
		           4555766L,  //level 30
		           5231213L,
		           5981539L,
		           6812472L,
		           7729999L,
		           8740372L,
		           9850111L,
		          11066012L,
		          12395149L,
		          13844879L,
		          15422851L,  //level 40
		          17137002L,
		          18995573L,
		          21007103L,
		          23180442L,
		          25524751L,
		          28049509L,
		          30764519L,
		          33679907L,
		          36806133L,
		          40153995L, //level 50
		          45524865L,
		          51262204L,
		          57383682L,
		          63907585L,
		          70852742L,
		          80700339L,
		          91162131L,
		         102265326L,
		         114038008L,
		         126509030L,  //level 60
		         146307211L,
		         167243291L,
		         189363788L,
		         212716741L,
		         237351413L,
		         271973532L,
		         308441375L,
		         346825235L,
		         387197529L,
		         429632402L,  //level 70
		         474205751L,
		         532692055L,
		         606319094L,
		         696376867L,
		         804219972L,
		         931269476L,
		        1151264834L,
		        1511257834L,
		        2099246434L,
		        4199894964L, //level 80 
		        6299894999L,
		        8399899123L,
		       10499898678L,
		       12599897167L,
		       14699896647L, //level 85
		       16799895345L,
		       18899893795L,
		       20999892567L,
		       23099891768L,
		       25199890178L, //level 90
		       27299899169L,
		       29399898927L,
		       31499897283L,
		       33599896891L,
		       35699895579L, //level 95
		       37799894755L,
		       39899893347L,
		       41999892825L,
		       44099891741L, //level 99
		    };
	private static Logger _log = Logger.getLogger(ExperienceData.class.getName());
	
	private byte MAX_LEVEL;
	private byte MAX_PET_LEVEL;
	
	private final Map<Integer, Long> _expTable = new HashMap<Integer, Long>();
	
	private ExperienceData()
	{
		loadData();
	}
	
	private void loadData()
	{
		final File xml = new File(Config.DATAPACK_ROOT, "data/stats/experience.xml");
		if (!xml.exists())
		{
			_log.warning(getClass().getSimpleName() + ": experience.xml not found!");
			return;
		}
		
		Document doc = null;
		final DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
		factory.setValidating(false);
		factory.setIgnoringComments(true);
		try
		{
			doc = factory.newDocumentBuilder().parse(xml);
		}
		catch (Exception e)
		{
			_log.warning("Could not parse experience.xml: " + e.getMessage());
			return;
		}
		
		final Node table = doc.getFirstChild();
		final NamedNodeMap tableAttr = table.getAttributes();
		
		MAX_LEVEL = (byte) (Byte.parseByte(tableAttr.getNamedItem("maxLevel").getNodeValue()) + 1);
		MAX_PET_LEVEL = (byte) (Byte.parseByte(tableAttr.getNamedItem("maxPetLevel").getNodeValue()) + 1);
		
		_expTable.clear();
		
		NamedNodeMap attrs;
		Integer level;
		Long exp;
		for (Node experience = table.getFirstChild(); experience != null; experience = experience.getNextSibling())
		{
			if (experience.getNodeName().equals("experience"))
			{
				attrs = experience.getAttributes();
				level = Integer.valueOf(attrs.getNamedItem("level").getNodeValue());
				exp = Long.valueOf(attrs.getNamedItem("tolevel").getNodeValue());
				_expTable.put(level, exp);
			}
		}
		
		_log.info(getClass().getSimpleName() + ": Loaded " + _expTable.size() + " levels");
		_log.info(getClass().getSimpleName() + ": Max Player Level is: " + (MAX_LEVEL - 1));
		_log.info(getClass().getSimpleName() + ": Max Pet Level is: " + (MAX_PET_LEVEL - 1));
	}
	
	public long getExpForLevel(int level)
	{
		return _expTable.get(level);
	}
	
	public byte getMaxLevel()
	{
		return MAX_LEVEL;
	}
	
	public byte getMaxPetLevel()
	{
		return MAX_PET_LEVEL;
	}
	
	public static ExperienceData getInstance()
	{
		return SingletonHolder._instance;
	}
	
	@SuppressWarnings("synthetic-access")
	private static class SingletonHolder
	{
		protected static final ExperienceData _instance = new ExperienceData();
	}
}
Quote
<?xml version="1.0" encoding="UTF-8"?>
<table maxLevel="90" maxPetLevel="80" 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="71201" />
	<experience level="12" tolevel="101676" />
	<experience level="13" tolevel="141192" />
	<experience level="14" tolevel="191452" />
	<experience level="15" tolevel="254327" />
	<experience level="16" tolevel="331864" />
	<experience level="17" tolevel="426284" />
	<experience level="18" tolevel="539995" />
	<experience level="19" tolevel="675590" />
	<experience level="20" tolevel="835854" />
	<experience level="21" tolevel="1023775" />
	<experience level="22" tolevel="1242536" />
	<experience level="23" tolevel="1495531" />
	<experience level="24" tolevel="1786365" />
	<experience level="25" tolevel="2118860" />
	<experience level="26" tolevel="2497059" />
	<experience level="27" tolevel="2925229" />
	<experience level="28" tolevel="3407873" />
	<experience level="29" tolevel="3949727" />
	<experience level="30" tolevel="4555766" />
	<experience level="31" tolevel="5231213" />
	<experience level="32" tolevel="5981539" />
	<experience level="33" tolevel="6812472" />
	<experience level="34" tolevel="7729999" />
	<experience level="35" tolevel="8740372" />
	<experience level="36" tolevel="9850111" />
	<experience level="37" tolevel="11066012" />
	<experience level="38" tolevel="12395149" />
	<experience level="39" tolevel="13844879" />
	<experience level="40" tolevel="15422851" />
	<experience level="41" tolevel="17137002" />
	<experience level="42" tolevel="18995573" />
	<experience level="43" tolevel="21007103" />
	<experience level="44" tolevel="23180442" />
	<experience level="45" tolevel="25524751" />
	<experience level="46" tolevel="28049509" />
	<experience level="47" tolevel="30764519" />
	<experience level="48" tolevel="33679907" />
	<experience level="49" tolevel="36806133" />
	<experience level="50" tolevel="40153995" />
	<experience level="51" tolevel="45524865" />
	<experience level="52" tolevel="51262204" />
	<experience level="53" tolevel="57383682" />
	<experience level="54" tolevel="63907585" />
	<experience level="55" tolevel="70852742" />
	<experience level="56" tolevel="80700339" />
	<experience level="57" tolevel="91162131" />
	<experience level="58" tolevel="102265326" />
	<experience level="59" tolevel="114038008" />
	<experience level="60" tolevel="126509030" />
	<experience level="61" tolevel="146307211" />
	<experience level="62" tolevel="167243291" />
	<experience level="63" tolevel="189363788" />
	<experience level="64" tolevel="212716741" />
	<experience level="65" tolevel="237351413" />
	<experience level="66" tolevel="271973532" />
	<experience level="67" tolevel="308441375" />
	<experience level="68" tolevel="346825235" />
	<experience level="69" tolevel="387197529" />
	<experience level="70" tolevel="429632402" />
	<experience level="71" tolevel="474205751" />
	<experience level="72" tolevel="532692055" />
	<experience level="73" tolevel="606319094" />
	<experience level="74" tolevel="696376867" />
	<experience level="75" tolevel="804219972" />
	<experience level="76" tolevel="931269476" />
	<experience level="77" tolevel="1151264834" />
	<experience level="78" tolevel="1511257834" />
	<experience level="79" tolevel="2099246434" />
	<experience level="80" tolevel="4199894964" />
	<experience level="81" tolevel="6299894999" />
	<experience level="82" tolevel="8399899123" />
	<experience level="83" tolevel="10499898678" />
	<experience level="84" tolevel="12599897167" />
	<experience level="85" tolevel="14699896647" />
	<experience level="86" tolevel="16799895345" />
	<experience level="87" tolevel="18899893795" />
	<experience level="88" tolevel="20999892567" />
	<experience level="89" tolevel="23099891768" />
	<experience level="90" tolevel="25199890178" />
	<experience level="91" tolevel="27299899169" />
	<experience level="92" tolevel="29399898927" />
	<experience level="93" tolevel="31499897283" />
	<experience level="94" tolevel="33599896891" />
	<experience level="95" tolevel="35699895579" />
	<experience level="96" tolevel="37799894755" />
	<experience level="97" tolevel="39899893347" />
	<experience level="98" tolevel="41999892825" />
	<experience level="99" tolevel="44099891741" />
</table>

 

Quote
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema">
	<element name="table">
		<complexType>
			<sequence minOccurs="1" maxOccurs="1">
				<element name="experience" minOccurs="1" maxOccurs="90">
					<complexType>
						<attribute name="level" use="required">
							<simpleType>
								<restriction base="positiveInteger">
									<minInclusive value="1" />
									<maxInclusive value="90" />
								</restriction>
							</simpleType>
						</attribute>
						<attribute name="tolevel" type="nonNegativeInteger" use="required" />
					</complexType>
				</element>
			</sequence>
			<attribute name="maxLevel" use="required">
				<simpleType>
					<restriction base="positiveInteger">
						<minInclusive value="1" />
						<maxInclusive value="90" />
					</restriction>
				</simpleType>
			</attribute>
			<attribute name="maxPetLevel" use="required">
				<simpleType>
					<restriction base="positiveInteger">
						<minInclusive value="1" />
						<maxInclusive value="90" />
					</restriction>
				</simpleType>
			</attribute>
		</complexType>
	</element>
</schema>

 

ex.jpg

Edited by Kusaty
Posted

How many times you will create same topic bloody hell? People replied for u in previous topic. Stop spamming, if you need fast fix, hire a person who works with crappy frozen , simple 

Posted
1 hour ago, MrTitanas said:

How many times you will create same topic bloody hell? People replied for u in previous topic. Stop spamming, if you need fast fix, hire a person who works with crappy frozen , simple 

What spam are you talking about? Nobody gave me a solution, that's why I'm asking, because I know there are people who know and maybe they can give me a solution, what should I do? stay with that I can not just?

Posted

We try to help him but he wanna fix a server from our help .. all of his features that he ask he can pay max 50e to buy a ready pack with all of these features 

 

We can help but with some limits dude 

Should we answer u at every question?  What we are ? Lol 

Posted
7 minutes ago, GsL said:

We try to help him but he wanna fix a server from our help .. all of his features that he ask he can pay max 50e to buy a ready pack with all of these features 

 

We can help but with some limits dude 

Should we answer u at every question?  What we are ? Lol 

Friend, not everything in life is paying, I, like many of us want to learn first of all, the truth would not have a problem with paying for something done, but what would be the point? I prefer to learn to do it myself, knowledge is priceless friend. I let those who settle for something pay without making a minimum effort, I preferred to learn. Thanks for your input.

Posted
30 minutes ago, Kusaty said:

Friend, not everything in life is paying, I, like many of us want to learn first of all, the truth would not have a problem with paying for something done, but what would be the point? I prefer to learn to do it myself, knowledge is priceless friend. I let those who settle for something pay without making a minimum effort, I preferred to learn. Thanks for your input.

You don't learn when u ask for help for every single feature 

Posted
32 minutes ago, GsL said:

You don't learn when u ask for help for every single feature 

You are very toxic brother. And I learn like any person if it is taught. But in this matter nobody taught me anything functional, and neither did you, you only commented to add toxicity.

Posted
1 hour ago, Kusaty said:

You are very toxic brother. And I learn like any person if it is taught. But in this matter nobody taught me anything functional, and neither did you, you only commented to add toxicity.

I was like you and I m know only basic staff 

 

I learn alone with read my files ,asking never help me to learn how to fix my problems 

Posted
7 hours ago, GsL said:

I was like you and I m know only basic staff 

 

I learn alone with read my files ,asking never help me to learn how to fix my problems 

You're not like me at all, I never bother someone. Instead of contributing your great knowledge and helping on an issue, you are here bothering me, without contributing absolutely anything. Tell me do you really know? or are you presuming nothingness itself? and if you know everything, what are you doing here in this forum? are you to help? ask for help? learn? or disturb? I do not understand.

  • 4 weeks later...
Posted

Use this.
 

 com.l2jfrozen.gameserver.datatables.xml

        4200000000L, // level 80
        6299994999L, // level 81
        10499905559L, // level 82
        16800005559L, // level 83
        27299995559L, // level 84
        44100005559L, // level 85
        71400000000L, //level 86
        115500000000L, //level 87
        186900000000L, //level 88
        302400000000L, //level 89
        489300000000L, //level 90
        791690000000L, //level 91

 

<?xml version="1.0" encoding="UTF-8"?>
<table maxLevel="90" maxPetLevel="80" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/experience.xsd">
    
    <experience level="81" tolevel="6299994999" />
    <experience level="82" tolevel="10499905559" />
    <experience level="83" tolevel="16800005559" />
    <experience level="84" tolevel="27299995559" />
    <experience level="85" tolevel="44100005559" />
    <experience level="86" tolevel="71400000000" />
    <experience level="87" tolevel="115500000000" />
    <experience level="88" tolevel="186900000000" />
    <experience level="89" tolevel="302400000000" />
    <experience level="90" tolevel="489300000000" />
    <experience level="91" tolevel="791690000000" />

  • Thanks 1
Posted
On 1/30/2022 at 2:47 PM, PreciousGame said:

Use this.
 

 com.l2jfrozen.gameserver.datatables.xml

        4200000000L, // level 80
        6299994999L, // level 81
        10499905559L, // level 82
        16800005559L, // level 83
        27299995559L, // level 84
        44100005559L, // level 85
        71400000000L, //level 86
        115500000000L, //level 87
        186900000000L, //level 88
        302400000000L, //level 89
        489300000000L, //level 90
        791690000000L, //level 91

 

<?xml version="1.0" encoding="UTF-8"?>
<table maxLevel="90" maxPetLevel="80" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/experience.xsd">
    
    <experience level="81" tolevel="6299994999" />
    <experience level="82" tolevel="10499905559" />
    <experience level="83" tolevel="16800005559" />
    <experience level="84" tolevel="27299995559" />
    <experience level="85" tolevel="44100005559" />
    <experience level="86" tolevel="71400000000" />
    <experience level="87" tolevel="115500000000" />
    <experience level="88" tolevel="186900000000" />
    <experience level="89" tolevel="302400000000" />
    <experience level="90" tolevel="489300000000" />
    <experience level="91" tolevel="791690000000" />

It helped me, you are the only one who gave me a solution, thank you very much, really, thank you!

Guest
This topic is now closed to further replies.


×
×
  • Create New...