Jump to content
  • 0

Help..Error compiling l2jfree core after patching..pls help...


Question

Posted

Hello...i compile my l2jfree core(exactly:1.2.11) succesfuly by deafault but i have a problem compiling l2jfree core after applying patches...it says that cannot find symbols(at my .java files)...also at the files i have modified,there is a red exclamation point and in .java files for example my Buffs.java there is a qestion mark...can anyone help me with this? :-\

14 answers to this question

Recommended Posts

  • 0
Posted

Hello...i compile my l2jfree core(exactly:1.2.11) succesfuly by deafault but i have a problem compiling l2jfree core after applying patches...it says that cannot find symbols(at my .java files)...also at the files i have modified,there is a red exclamation point and in .java files for example my Buffs.java there is a qestion mark...can anyone help me with this? :-\

Symbols mean that there are missing things or wrongly defined. The errors are very specific, just read them and you'll easely solve them.

  • 0
Posted

Here is the problem exactly:

C:\Users\kostas\Desktop\workspace2\Core Version 1.2.11\src\main\java\com\l2jfree

\gameserver\handler\VoicedCommandHandler.java:[23,59] cannot find symbol

symbol  : class Buffs

location: package com.l2jfree.gameserver.handler.voicedcommandhandlers

 

C:\Users\kostas\Desktop\workspace2\Core Version 1.2.11\src\main\java\com\l2jfree

\gameserver\handler\VoicedCommandHandler.java:[51,35] cannot find symbol

symbol  : class Buffs

location: class com.l2jfree.gameserver.handler.VoicedCommandHandler

 

Here is my Buffs.java:

/* This program is free software; you can redistribute it and/or modify */

package com.l2jfree.gameserver.handler.voicedcommandhandlers;

 

import javolution.util.FastList;

import com.l2jfree.gameserver.datatables.BuffTemplateTable;

import com.l2jfree.gameserver.handler.IVoicedCommandHandler;

import com.l2jfree.gameserver.model.L2Skill.SkillType;

import com.l2jfree.gameserver.model.actor.instance.L2PcInstance;

import com.l2jfree.gameserver.network.SystemMessageId;

import com.l2jfree.gameserver.network.serverpackets.MagicSkillUse;

import com.l2jfree.gameserver.network.serverpackets.SystemMessage;

import com.l2jfree.gameserver.templates.L2BuffTemplate;

 

/**

* @author v

*

*/

public class Buffz implements IVoicedCommandHandler

{

    //private static final Log _log = LogFactory.getLog(Wedding.class);

    private static String[] _voicedCommands = { "fighterbuff","magebuff" };

 

    /* (non-Javadoc)

    * @see com.l2jfree.gameserver.handler.IUserCommandHandler#useUserCommand(int, com.l2jfree.gameserver.model.L2PcInstance)

    */

    public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target)

    {

        if(activeChar!=null)

        {

        FastList<L2BuffTemplate> _templateBuffs = new FastList<L2BuffTemplate>();

           

            boolean _wasInvul=false;

           

            if(command.startsWith("fighterbuff"))

            _templateBuffs = BuffTemplateTable.getInstance().getBuffTemplate(98);

            else

            _templateBuffs = BuffTemplateTable.getInstance().getBuffTemplate(99);

           

    if (_templateBuffs == null || _templateBuffs.size() == 0)

    return false;

           

    activeChar.setTarget(activeChar);

           

    //is this really need?

    double _mp=activeChar.getStatus().getCurrentMp(); //to disable mp consuming

   

    // for those who is invulnerable

    if(activeChar.isInvul()&&activeChar.isGM())

        {

        _wasInvul=true;

        activeChar.setIsInvul(false);

        }

   

            for (L2BuffTemplate _buff:_templateBuffs)

            {

                if ( _buff.checkPlayer(activeChar))

                {

               

                    // regeneration ^^ //is this really need?

                activeChar.getStatus().setCurrentMp(_mp);

                    String _name="";

                   

                    // some more functions depending on _buff name

                    if(_buff.getName().equalsIgnoreCase("RestoreHpMp")) {

                      MagicSkillUse msu = new MagicSkillUse(activeChar, activeChar, _buff.getSkillId(), _buff.getSkillLevel(), 110, 0);

                      activeChar.broadcastPacket(msu);

                      activeChar.getStatus().setCurrentHpMp(activeChar.getMaxHp(), activeChar.getMaxMp());

                      _name="Health and Mana Restoration";

                    }

                    else if(_buff.getName().equalsIgnoreCase("Heal")) {

                    MagicSkillUse msu = new MagicSkillUse(activeChar, activeChar, _buff.getSkillId(), _buff.getSkillLevel(), 110, 0);

                    activeChar.broadcastPacket(msu);

                    activeChar.getStatus().setCurrentHp(activeChar.getMaxHp());

                    _name="Health Restoration";

                    }

                    else if(_buff.getName().equalsIgnoreCase("Mana"))

                    {

                    MagicSkillUse msu = new MagicSkillUse(activeChar, activeChar, _buff.getSkillId(), _buff.getSkillLevel(), 110, 0);

                    activeChar.broadcastPacket(msu);

                    activeChar.getStatus().setCurrentMp(activeChar.getMaxMp());

                    _name="Mana Restoration";

                    }

                    else if(_buff.getName().equalsIgnoreCase("CP"))

                    {

                    MagicSkillUse msu = new MagicSkillUse(activeChar, activeChar, _buff.getSkillId(), _buff.getSkillLevel(), 110, 0);

                    activeChar.broadcastPacket(msu);

                    activeChar.getStatus().setCurrentCp(activeChar.getMaxCp());

                    _name="Combat Points Restoration";

                    }

                    else if (_buff.getSkill().getSkillType() == SkillType.SUMMON)

                    activeChar.doCast(_buff.getSkill());

                       

                    else

                    { 

                    // if this buff is first buff of this category - show animation

                    if(_templateBuffs.getFirst()==_buff){

                    MagicSkillUse msu = new MagicSkillUse(activeChar, activeChar, _buff.getSkillId(), _buff.getSkillLevel(), 200, 0);

                    activeChar.broadcastPacket(msu);

                    try{

                    Thread.sleep(200);//is this really need?

                    }catch (Exception f) {}

                    }

                    // buff process :D

                    _buff.getSkill().getEffects(activeChar, activeChar);

                    }

                    //text part

                    SystemMessage sm = new SystemMessage(SystemMessageId.YOU_FEEL_S1_EFFECT);

                    if (_name.equalsIgnoreCase("")||_name==null)

                    sm.addSkillName(_buff.getSkill().getId());

                    else sm.addString(_name);

                    activeChar.sendPacket(sm);

                    sm = null;

                }

                else return false;

            }

            if(_wasInvul&&activeChar.isGM())

            {

            activeChar.setIsInvul(true);

            _wasInvul=false;

            } 

            return true;

        }

        else

            return false;

    }

   

    /* (non-Javadoc)

    * @see com.l2jfree.gameserver.handler.IUserCommandHandler#getUserCommandList()

    */

    public String[] getVoicedCommandList()

    {

        return _voicedCommands;

    }

}   

 

 

 

and my VoicedCommandHandler.java:

/*

* 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.l2jfree.gameserver.handler;

 

import javolution.util.FastMap;

 

import org.apache.commons.logging.Log;

import org.apache.commons.logging.LogFactory;

import com.l2jfree.Config;

import com.l2jfree.gameserver.handler.voicedcommandhandlers.*;

import com.l2jfree.gameserver.handler.voicedcommandhandlers.Buffs;

/**

* This class ...

*

* @version $Revision: 1.1.4.5 $ $Date: 2005/03/27 15:30:09 $

*/

public class VoicedCommandHandler

{

private final static Log _log = LogFactory.getLog(ItemHandler.class.getName());

 

private static VoicedCommandHandler _instance;

 

private FastMap<String, IVoicedCommandHandler> _datatable;

 

public static VoicedCommandHandler getInstance()

{

if (_instance == null)

_instance = new VoicedCommandHandler();

return _instance;

}

 

private VoicedCommandHandler()

{

_datatable = new FastMap<String, IVoicedCommandHandler>();

registerVoicedCommandHandler(new CastleDoors());

registerVoicedCommandHandler(new Hellbound());

registerVoicedCommandHandler(new Banking());

registerVoicedCommandHandler(new VersionInfo());

registerVoicedCommandHandler(new Buffs());       

if (Config.ALLOW_WEDDING)

{

registerVoicedCommandHandler(new Wedding());

 

}

             

 

_log.info("VoicedCommandHandler: Loaded " + _datatable.size() + " handlers.");

}

 

public void registerVoicedCommandHandler(IVoicedCommandHandler handler)

{

String[] ids = handler.getVoicedCommandList();

for (String element : ids)

{

if (_log.isDebugEnabled())

_log.debug("Adding handler for command " + element);

_datatable.put(element, handler);

}

}

 

public IVoicedCommandHandler getVoicedCommandHandler(String voicedCommand)

{

String command = voicedCommand;

if (voicedCommand.indexOf(" ") != -1)

{

command = voicedCommand.substring(0, voicedCommand.indexOf(" "));

}

if (_log.isDebugEnabled())

_log.debug("getting handler for command: " + command + " -> " + (_datatable.get(command) != null));

return _datatable.get(command);

}

 

/**

* @return

*/

public int size()

{

return _datatable.size();

}

}

 

 

 

  • 0
Posted

It says that when you build it? Go with ecplipse in The red errors and eclipse will help you to fix it..

  • 0
Posted

click there where is red in the java file or right click and eclipse will say you possible solutions..

  • 0
Posted

click there where is red in the java file or right click and eclipse will say you possible solutions..

yea do quick fix

also if you can't manage to make it give us a screenshot on the java files

  • 0
Posted

Are you kidding?

The problem is written in there loool. The class is named "Buffz" not "Buffs" either change the pointer from "Buffs" -> "Buffz" or rename "Buffz" -> "Buffs"

  • 0
Posted

i did it...the same error...(It does not only happen with those codes...i cant put other codes too ex: online playets commands,commands for tvt and others...all of them say that cannot find symbol....

I tried to fix it with eclipse by going to red marks but it doesnt say anything that can help me...

  • 0
Posted

ya u are kidding lol... if its the same error than  u dont changed anything

 

public class Buffz implements IVoicedCommandHandler

 

to

 

 

public class Buffs implements IVoicedCommandHandler

  • 0
Posted

i did it...the same error...(It does not only happen with those codes...i cant put other codes too ex: online playets commands,commands for tvt and others...all of them say that cannot find symbol....

I tried to fix it with eclipse by going to red marks but it doesnt say anything that can help me...

Errors are there for some reason. If they're still there than you haven't modified what I told you to.

Anyway don't forget to install the commons.

  • 0
Posted

i changed buffz to buffs...the same..:/..i forgot to mention that I am using tags not trunk...in tags,eclipse doesnt help me to fix the errors...in trunk it helps me but i cant compile trunk cause it says that [iNFO] Unable to find resource 'l2jfree:l2j-commons:pom:1.3.0' in repository cen

tral (http://repo1.maven.org/maven2)

Downloading: http://www.l2jfree.com:8080/archiva/repository/internal//l2jfree/l2

j-mmocore/1.3.0/l2j-mmocore-1.3.0.pom

and it continues say thinks like that..:/...

there is the error again:

C:\Users\kostas\Desktop\workspace2\Core Version 1.2.11\src\main\java\com\l2jfree

\gameserver\handler\voicedcommandhandlers\Buffs.java:[7,43] cannot find symbol

symbol  : class SkillType

location: class com.l2jfree.gameserver.model.L2Skill

 

C:\Users\kostas\Desktop\workspace2\Core Version 1.2.11\src\main\java\com\l2jfree

\gameserver\handler\voicedcommandhandlers\Buffs.java:[12,39] cannot find symbol

symbol  : class L2BuffTemplate

location: package com.l2jfree.gameserver.templates

 

C:\Users\kostas\Desktop\workspace2\Core Version 1.2.11\src\main\java\com\l2jfree

\gameserver\handler\voicedcommandhandlers\Buffs.java:[30,18] cannot find symbol

symbol  : class L2BuffTemplate

location: class com.l2jfree.gameserver.handler.voicedcommandhandlers.Buffs

 

C:\Users\kostas\Desktop\workspace2\Core Version 1.2.11\src\main\java\com\l2jfree

\gameserver\handler\voicedcommandhandlers\Buffs.java:[30,64] cannot find symbol

symbol  : class L2BuffTemplate

location: class com.l2jfree.gameserver.handler.voicedcommandhandlers.Buffs

 

C:\Users\kostas\Desktop\workspace2\Core Version 1.2.11\src\main\java\com\l2jfree

\gameserver\handler\voicedcommandhandlers\Buffs.java:[54,17] cannot find symbol

symbol  : class L2BuffTemplate

location: class com.l2jfree.gameserver.handler.voicedcommandhandlers.Buffs

 

C:\Users\kostas\Desktop\workspace2\Core Version 1.2.11\src\main\java\com\l2jfree

\gameserver\handler\voicedcommandhandlers\Buffs.java:[90,64] cannot find symbol

symbol  : variable SkillType

location: class com.l2jfree.gameserver.handler.voicedcommandhandlers.Buffs

 

and as i told you it doesnt happen only with this voice command....it happens with all voice commands and i am making the changes correctly!!:/

  • 0
Posted

Read the damn errors. SkillType isn't a method in L2Skill, L2SkillType is.

Just pay attention to the errors and you'll work it out :)

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Posts

    • Hi, I'm selling Interface sources. I was working with one of bigger Essence projects (for ±1 year) delivering them Interface source KR. Per this period gathered knowledge about UE, UE Scripting, saw a lot of tools and their progression. So finally I decided that I can open up my own sales topic. I'm selling source for any protocol - If I don't have source, I will need you to provide whole system folder or for Essence/main - provide me protocol number. Sources are acquired by my OWN decompiler - written in Java, so we're not using popular UEExplorer upgraded by anyone. Decompiler extracts already compile ready sources. It outputs clean code, however constants are mapped 60-70%. Why only 60-70%? Well tl;dr when you compile any sources, they take at that time constant value and place it instead of = CONST_NAME to = THAT_CONST_NAME_VALUE, so it's not possible to have const name instead of value. Example of output: https://pastebin.com/cjyXcJvT for bigger .uc class (557p). p.s pastebin messed up encoding, but KR symbols are preserved - you won't see "?" symbols, rather you will see proper original korean text. I will give you guide as well, how not to mess it up with your editor VS Code/Notepad++ or what you use it to make them preserve it. You will get source + my compiler wrapper (written in java) - works on Windows/Mac/Linux - it has small GUI but supports CLI. Small notice, who thinks 'this is decompiled source' - basically all sources that are on sale are made by decompiling .u and applying changes. I think powerhouse few years ago was ArtToKill/kick (kick added support for INT64 to the publicly available compiler sources) etc. So no - there are no straight from 'creator' sources anywhere, all sellers offer the same - just the quality is different. UEExplorer upgraded was a big step, however, it introduces still a lot of nesting, if statements wrapping incorrectly which could lead to bugs. There are many things how to identify poor quality sources, as if the seller tries to sell 'out-of-box' when they see it compiles - sad news, some bugs are in the logic due to seller focusing only on 'it compiles' rather than issues that their decompiler is not capable so solve. On request I can restore ±100% const mapping.   Later I can attach compiled .u to try. Price is 400EUR. Payment methods USDT (Crypto). I'm still in debate with myself, wether to start selling XDat Editor with structures and ClientDat with 100% all files openings (no unk namings) and improved experience (such as comments support in .dat files, mass sync, improved performance and so on). P.s. If you ask me to give you some project's custom interface - the price may vary - there are couple things per project that need to be hand checked and adjusted (for example Innadril completely changes tokens which then I need to adjust my program to their token Ids). So it might take more time = more money. P.s.s. I have more things in the garage, like my own dsetup source that can allow you 'unlocking' system with your desired encrypting - you don't need to wait till 'patched' systems start appearing and so on, but I think at this time everyone who needs it make them selves it. AAC crypt removals and so on, BuildZone, everything that 'unlocks' client, however, I don't plan to make them on sale as mentioned, everyone can do them.  
    • It has been a while since I updated this thread. I am currently actively working on a full-scale port of the shader library to ensure the fast and accurate transfer of all effects. I have decompiled the original game and created a tool that fully logs the entire *Lineage 2 Interlude* particle system. This allows me to extract the original formulas hardcoded into the game, resulting in a high-fidelity port. For instance, *Lineage 2* uses an `appRnd` system that generates unique randomization patterns for different skills, giving them distinct visual characteristics; there are countless formulas and technical nuances like this. Ultimately, I will derive all the key formulas and replicate the geometry with high precision. Twelve basic geometry formulas have already been ported. The effect was created in 10 minutes using a .uc file, HLSL formulas, and SpriteEmitter particle blending formulas.   https://prnt.sc/_3UDLQVX_Y-_
  • Topics

×
×
  • Create New...

Important Information

This community uses essential cookies to function properly. Non-essential cookies and third-party services are used only with your consent. Read our Privacy Policy and We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue..