Jump to content

Question

Posted (edited)

hello there i just download the last rev of l2jfrozen 

i enable from powerpak autovotereward and i get this error cant you tell me how to fix it?
 
Exception in thread "main" java.lang.NoClassDefFoundError: com/gargoylesoftware/
htmlunit/WebClient
        at com.l2jfrozen.gameserver.handler.AutoVoteRewardHandler.getHopZoneVote
s(AutoVoteRewardHandler.java:290)
        at com.l2jfrozen.gameserver.handler.AutoVoteRewardHandler.<init>(AutoVot
eRewardHandler.java:57)
        at com.l2jfrozen.gameserver.handler.AutoVoteRewardHandler.<init>(AutoVot
eRewardHandler.java:36)
        at com.l2jfrozen.gameserver.handler.AutoVoteRewardHandler$SingletonHolde
r.<clinit>(AutoVoteRewardHandler.java:502)
        at com.l2jfrozen.gameserver.handler.AutoVoteRewardHandler.getInstance(Au
toVoteRewardHandler.java:494)
        at com.l2jfrozen.gameserver.powerpak.PowerPak.<init>(PowerPak.java:154)
        at com.l2jfrozen.gameserver.powerpak.PowerPak.getInstance(PowerPak.java:
55)
        at com.l2jfrozen.gameserver.GameServer.main(GameServer.java:557)
Caused by: java.lang.ClassNotFoundException: com.gargoylesoftware.htmlunit.WebCl
ient
        at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
        ... 8 more

 

Edited by haskovo

7 answers to this question

Recommended Posts

  • 0
Posted


#==============================================================#

# Powerpack Properties #

#==============================================================#

# Pack: l2jfrozen Site: www.l2jfrozen.com #

#==============================================================#

 

# Do you want enable powerpack?

PowerPakEnabled = False

 

# Repair same account character

# for continuos crashes: .repair Voice Command

CharacterRepair = True

 

# Like lol, hi, haha, yes, no the char does a Social Action

# You can mody the words here:

# gameserver/network/clientpackets/Say2.java

EnableSocialSayActions = False

 

# Automatic Vote Reward System

VoteRewardSystem= False

VotesRequiredForReward = 50

VotesSystemInitialDelay= 60000

VotesSystemStepDelay= 1800000

VotesRewards= 6392,20;

 

# Leave empty to disable one site

#

# Hopzone: http://l2.hopzone.net

VotesSiteHopZoneUrl = http://l2.hopzone.net/lineage2/details/97478/L2-Sanity-Network

# Topzone: http://l2topzone.com

VotesSiteTopZoneUrl = http://l2topzone.com/lineage2/server-info/8703/L2EXCUSTOMPVP800.html

# L2Network: http://l2network.eu

VotesSiteL2NetworkUrl = http://l2network.eu/?a=details&u=l2cyberserver

# Put your website url

ServerWebSite = http://www.website.com

 

EngraveEnabled = False

EngravePriceItem = 57

EngravePrice = 10000

EngraveMaxItemsPerChar = 0

EngraveClearLostItems = False

EngraveAllowGrades = a b c s

EngraveExcludeItems =

EngraveSpawnNpc = False

EngraveNpcLocation = 82270 149660 -3495

EngraveAllowDestroy = False

 

# Npc Buffer - scheme buffer - set buffs - single buffs

BufferNpcId = 50019

BufferEnabled = False

BufferUseCommand = False

BufferCommand = buffs

BufferPrice = 1000

BufferUseBBS = False

BufferExcludeOn = RB OLYMPIAD PVP SIEGE EVENT ATTACK

#list = skillId,skillLvl;skillId,skillLvl;....

FighterSkillList = 1204,2;1035,3;1036,2;4344,3;1045,6;1048,6;1068,3;1077,3;1086,2;1259,3;1268,3;271,1;274,1;275,1;310,1;264,1;269,1;304,1;268,1;1356,1;1388,3;

MageSkillList = 1204,2;1035,3;1036,2;4344,3;1045,6;1048,6;1078,6;1085,3;1062,2;1259,3;1059,3;273,1;276,1;365,1;264,1;268,1;304,1;267,1;1389,3;1355,1;

# Max schemes that a player can store. Please, do not use too big values

# Default value: 4 (one per subclass...)

NPCBufferMaxSchemesPerChar = 4

# Max skills that a player can store in each scheme. Please, do not use too big values.

# This value should match to max buffs a player can carry

# Default value: 24 (max buffs are 20+4 in retail)

NPCBufferMaxSkllsperScheme = 24

# This enables/disables storing character schemes at server shutdown to database

# Default = True

NPCBufferStoreSchemes = True

# This is to bypasss SQL Adena amount reference so that you can set the same cost for all

# or even setting them for free.

# Free = 0

# Disabled = -1 (if you want to read adena from SQL)

# Default value: -1

NPCBufferStaticCostPerBuff = -1

 

# Npc Gatekeeper - Global Teleport

GKNpcId = 7077

GKEnabled = False

GKCommand = globalgk

GKUseCommand = False

GKUseBBS = False

GKExcludeOn = RB OLYMPIAD PVP SIEGE EVENT ATTACK

GKTimeout = 10

GKPrice = -1

 

# Npc GmShop

GMShopNpcId = 53

GMShopEnabled = False

GMShopUseBBS = False

GMShopUseCommand = False

GMShopCommand = gmshop

GMShopExcludeOn = RB OLYMPIAD PVP SIEGE EVENT ATTACK

 

#ATTENTION: Enabling XML RPC Server you are going to open a server port to possible XML RPC Clients

#that can use exposed services from remote host if configured XMLRPCHost is visible. List of

#available XML Services is available in xmlrpc.service configuration file: remember to remove unuseful services.

XMLRPCEnabled = False

XMLRPCHost = localhost

XMLRPCPort = 7000

XMLRPCKeys = KEY1 KEY2 KEY3

 

L2TopDeamonEnabled = False

L2TopDeamonPollInterval = 5

L2TopDeamonURL = http://

L2TopDeamonPrefix =

L2TopDeamonRewardItem = 57

L2TopDeamonMin = 1

L2TopDeamonMax = 10

L2TopDeamonMessage = Thanks for voting!

L2TopDeamonDoNotRewardAtFirstTime = False

  • 0
Posted

NoClassDefFoundError usually is appearing when you edit/change the jar while the server is online.

 

re-compile,close the gs console,and replace the jar.

  • 0
Posted (edited)

no effect and its only when autovotereward is on :C

INFO  Vote Reward System Initiated.
Exception in thread "main" java.lang.NoClassDefFoundError: com/gargoylesoftware/
htmlunit/WebClient
        at com.l2jfrozen.gameserver.handler.AutoVoteRewardHandler.getHopZoneVote
s(AutoVoteRewardHandler.java:290)
        at com.l2jfrozen.gameserver.handler.AutoVoteRewardHandler.<init>(AutoVot
eRewardHandler.java:57)
        at com.l2jfrozen.gameserver.handler.AutoVoteRewardHandler.<init>(AutoVot
eRewardHandler.java:36)
        at com.l2jfrozen.gameserver.handler.AutoVoteRewardHandler$SingletonHolde
r.<clinit>(AutoVoteRewardHandler.java:502)
        at com.l2jfrozen.gameserver.handler.AutoVoteRewardHandler.getInstance(Au
toVoteRewardHandler.java:494)
        at com.l2jfrozen.gameserver.powerpak.PowerPak.<init>(PowerPak.java:154)
        at com.l2jfrozen.gameserver.powerpak.PowerPak.getInstance(PowerPak.java:
55)
        at com.l2jfrozen.gameserver.GameServer.main(GameServer.java:557)
Caused by: java.lang.ClassNotFoundException: com.gargoylesoftware.htmlunit.WebCl
ient
        at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
        ... 8 
package com.l2jfrozen.gameserver.handler;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Set;

import org.apache.log4j.Level;
import org.apache.log4j.Logger;

import com.gargoylesoftware.htmlunit.BrowserVersion;
import com.gargoylesoftware.htmlunit.WebClient;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
import com.l2jfrozen.Config;
import com.l2jfrozen.gameserver.model.L2World;
import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance;
import com.l2jfrozen.gameserver.model.entity.Announcements;
import com.l2jfrozen.gameserver.powerpak.PowerPakConfig;
import com.l2jfrozen.gameserver.thread.ThreadPoolManager;

/**
 * @author L2jFrozen <br>
 * <br>
 *         Network working with L2jFrozen AutoVoteReward: <br>
 *         Hopzone -> http://l2.hopzone.net/ <br>
 *         Topzone -> http://l2topzone.com/ <br>
 *         L2network -> http://l2network.eu/ <br>
 */

public class AutoVoteRewardHandler
{
	protected static final Logger LOGGER = Logger.getLogger(AutoVoteRewardHandler.class);
	
	protected List<String> already_rewarded;
	
	private int _l2networkVotesCount = 0;
	private int _hopzoneVotesCount = 0;
	private int _topzoneVotesCount = 0;
	protected List<String> _already_rewarded;
	
	protected static boolean _l2network = false;
	protected static boolean _topzone = false;
	protected static boolean _hopzone = false;
	
	private AutoVoteRewardHandler()
	{
		LOGGER.info("Vote Reward System Initiated.");
		
		if (_hopzone)
		{
			int hopzone_votes = getHopZoneVotes();
			
			if (hopzone_votes == -1)
			{
				hopzone_votes = 0;
			}
			
			setHopZoneVoteCount(hopzone_votes);
		}
		
		if (_l2network)
		{
			int l2network_votes = getL2NetworkVotes();
			
			if (l2network_votes == -1)
			{
				l2network_votes = 0;
			}
			
			setL2NetworkVoteCount(l2network_votes);
		}
		
		if (_topzone)
		{
			int topzone_votes = getTopZoneVotes();
			
			if (topzone_votes == -1)
			{
				topzone_votes = 0;
			}
			
			setTopZoneVoteCount(topzone_votes);
		}
		
		ThreadPoolManager.getInstance().scheduleGeneralAtFixedRate(new AutoReward(), PowerPakConfig.VOTES_SYSYEM_INITIAL_DELAY, PowerPakConfig.VOTES_SYSYEM_STEP_DELAY);
	}
	
	protected class AutoReward implements Runnable
	{
		@Override
		public void run()
		{
			final int minutes = (PowerPakConfig.VOTES_SYSYEM_STEP_DELAY / 1000) / 60;
			
			if (_hopzone)
			{
				final int hopzone_votes = getHopZoneVotes();
				
				if (hopzone_votes != -1)
				{
					LOGGER.info("[AutoVoteReward] Server HOPZONE Votes: " + hopzone_votes);
					Announcements.getInstance().gameAnnounceToAll("[AutoVoteReward] Actual HOPZONE Votes are " + hopzone_votes + "...");
					
					if (hopzone_votes != 0 && hopzone_votes >= getHopZoneVoteCount() + PowerPakConfig.VOTES_FOR_REWARD)
					{
						_already_rewarded = new ArrayList<>();
						
						final Collection<L2PcInstance> pls = L2World.getInstance().getAllPlayers();
						
						Announcements.getInstance().gameAnnounceToAll("[AutoVoteReward] Great Work! Check your inventory for Reward!!");
						
						// L2ItemInstance item;
						for (final L2PcInstance player : pls)
						{
							if (player != null && !player.isInOfflineMode() && player.isOnline() == 1)
							{
								if (player._active_boxes <= 1 || (player._active_boxes > 1 && checkSingleBox(player)))
								{
									
									final Set<Integer> items = PowerPakConfig.VOTES_REWARDS_LIST.keySet();
									for (final Integer i : items)
									{
										// item = player.getInventory().getItemByItemId(i);
										
										// TODO: check on maxstack for item
										player.addItem("reward", i, PowerPakConfig.VOTES_REWARDS_LIST.get(i), player, true);
										
									}
									
								}
							}
						}
						setHopZoneVoteCount(hopzone_votes);
					}
					Announcements.getInstance().gameAnnounceToAll("[AutoVoteReward] Next HOPZONE Reward in " + minutes + " minutes at " + (getHopZoneVoteCount() + PowerPakConfig.VOTES_FOR_REWARD) + " Votes!!");
					// site web
					Announcements.getInstance().gameAnnounceToAll("[SiteWeb] " + PowerPakConfig.SERVER_WEB_SITE);
					
				}
				
			}
			
			if (_topzone && _hopzone && PowerPakConfig.VOTES_SYSYEM_STEP_DELAY > 0)
			{
				try
				{
					Thread.sleep(PowerPakConfig.VOTES_SYSYEM_STEP_DELAY / 2);
				}
				catch (final InterruptedException e)
				{
					if (Config.ENABLE_ALL_EXCEPTIONS)
						e.printStackTrace();
				}
			}
			
			if (_topzone)
			{
				final int topzone_votes = getTopZoneVotes();
				
				if (topzone_votes != -1)
				{
					LOGGER.info("[AutoVoteReward] Server TOPZONE Votes: " + topzone_votes);
					Announcements.getInstance().gameAnnounceToAll("[AutoVoteReward] Actual TOPZONE Votes are " + topzone_votes + "...");
					
					if (topzone_votes != 0 && topzone_votes >= getTopZoneVoteCount() + PowerPakConfig.VOTES_FOR_REWARD)
					{
						_already_rewarded = new ArrayList<>();
						
						final Collection<L2PcInstance> pls = L2World.getInstance().getAllPlayers();
						
						Announcements.getInstance().gameAnnounceToAll("[AutoVoteReward] Great Work! Check your inventory for Reward!!");
						
						// L2ItemInstance item;
						for (final L2PcInstance player : pls)
						{
							if (player != null && !player.isInOfflineMode() && player.isOnline() == 1)
							{
								if (player._active_boxes <= 1 || (player._active_boxes > 1 && checkSingleBox(player)))
								{
									final Set<Integer> items = PowerPakConfig.VOTES_REWARDS_LIST.keySet();
									for (final Integer i : items)
									{
										// item = player.getInventory().getItemByItemId(i);
										
										// TODO: check on maxstack for item
										player.addItem("reward", i, PowerPakConfig.VOTES_REWARDS_LIST.get(i), player, true);
									}
								}
							}
						}
						setTopZoneVoteCount(topzone_votes);
					}
					
					Announcements.getInstance().gameAnnounceToAll("[AutoVoteReward] Next TOPZONE Reward in " + minutes + " minutes at " + (getTopZoneVoteCount() + PowerPakConfig.VOTES_FOR_REWARD) + " Votes!!");
					// site web
					Announcements.getInstance().gameAnnounceToAll("[SiteWeb] " + PowerPakConfig.SERVER_WEB_SITE);
				}
			}
			
			if (_topzone && _hopzone && _l2network && PowerPakConfig.VOTES_SYSYEM_STEP_DELAY > 0)
			{
				try
				{
					Thread.sleep(PowerPakConfig.VOTES_SYSYEM_STEP_DELAY / 2);
				}
				catch (final InterruptedException e)
				{
					if (Config.ENABLE_ALL_EXCEPTIONS)
						e.printStackTrace();
				}
			}
			
			if (_l2network)
			{
				final int l2network_votes = getL2NetworkVotes();
				
				if (l2network_votes != -1)
				{
					LOGGER.info("[AutoVoteReward] Server L2NETWORK Votes: " + l2network_votes);
					Announcements.getInstance().gameAnnounceToAll("[AutoVoteReward] Actual L2Network Votes are " + l2network_votes + "...");
					
					if (l2network_votes != 0 && l2network_votes >= getL2NetworkVoteCount() + PowerPakConfig.VOTES_FOR_REWARD)
					{
						already_rewarded = new ArrayList<>();
						
						final Collection<L2PcInstance> pls = L2World.getInstance().getAllPlayers();
						
						Announcements.getInstance().gameAnnounceToAll("[AutoVoteReward] Great Work! Check your inventory for Reward!!");
						
						// L2ItemInstance item;
						for (final L2PcInstance player : pls)
						{
							if (player != null && !player.isInOfflineMode() && player.isOnline() == 1)
							{
								if (player._active_boxes <= 1 || (player._active_boxes > 1 && checkSingleBox(player)))
								{
									final Set<Integer> items = PowerPakConfig.VOTES_REWARDS_LIST.keySet();
									for (final Integer i : items)
									{
										// item = player.getInventory().getItemByItemId(i);
										
										// TODO: check on maxstack for item
										player.addItem("reward", i, PowerPakConfig.VOTES_REWARDS_LIST.get(i), player, true);
									}
								}
							}
						}
						setL2NetworkVoteCount(l2network_votes);
					}
					Announcements.getInstance().gameAnnounceToAll("[AutoVoteReward] Next L2Network Reward in " + minutes + " minutes at " + (getL2NetworkVoteCount() + PowerPakConfig.VOTES_FOR_REWARD) + " Votes!!");
					// site web
					Announcements.getInstance().gameAnnounceToAll("[SiteWeb] " + PowerPakConfig.SERVER_WEB_SITE);
				}
			}
		}
	}
	
	// Check boxes
	protected boolean checkSingleBox(final L2PcInstance player)
	{
		if (player == null)
			return false;
		
		if (player.getClient() != null && player.getClient().getConnection() != null && !player.getClient().getConnection().isClosed() && player.isOnline() == 1 && !player.isInOfflineMode())
		{
			final String playerip = player.getClient().getConnection().getInetAddress().getHostAddress();
			
			if (_already_rewarded.contains(playerip))
				return false;
			_already_rewarded.add(playerip);
			return true;
		}
		
		// if no connection (maybe offline shop) dnt reward
		return false;
	}
	
	protected int getHopZoneVotes()
	{
		int votes = -1;
		
		try
		{
			final WebClient webClient = new WebClient(BrowserVersion.CHROME);
			webClient.getOptions().setThrowExceptionOnFailingStatusCode(false);
			webClient.getOptions().setThrowExceptionOnScriptError(false);
			webClient.getOptions().setPrintContentOnFailingStatusCode(false);
			
			final HtmlPage page = webClient.getPage(PowerPakConfig.VOTES_SITE_HOPZONE_URL);
			
			final String fullPage = page.asXml();
			final int constrainA = fullPage.indexOf("rank anonymous tooltip") + 24;
			String voteSection = fullPage.substring(constrainA);
			final int constrainB = voteSection.indexOf("span") - 2;
			voteSection = voteSection.substring(0, constrainB).trim();
			votes = Integer.parseInt(voteSection);
			
			// Try to free all the freaking resources
			page.cleanUp();
			webClient.getJavaScriptEngine().shutdown();
			webClient.closeAllWindows();
		}
		catch (final Exception e)
		{
			LOGGER.warn("[AutoVoteReward] Server HOPZONE is offline or something is wrong in link", e);
			Announcements.getInstance().gameAnnounceToAll("[AutoVoteReward] HOPZONE is offline. We will check reward as it will be online again");
		}
		
		return votes;
	}
	
	protected int getTopZoneVotes()
	{
		int votes = -1;
		URL url = null;
		URLConnection con = null;
		InputStream is = null;
		InputStreamReader isr = null;
		BufferedReader in = null;
		
		try
		{
			url = new URL(PowerPakConfig.VOTES_SITE_TOPZONE_URL);
			con = url.openConnection();
			con.addRequestProperty("User-Agent", "L2TopZone");
			is = con.getInputStream();
			isr = new InputStreamReader(is);
			in = new BufferedReader(isr);
			String inputLine;
			while ((inputLine = in.readLine()) != null)
			{
				if (inputLine.contains("Votes"))
				{
					votes = Integer.valueOf(inputLine.split(">")[3].replace("</div", ""));
					break;
				}
			}
		}
		catch (final Exception e)
		{
			LOGGER.warn("[AutoVoteReward] Server TOPZONE is offline or something is wrong in link");
			Announcements.getInstance().gameAnnounceToAll("[AutoVoteReward] TOPZONE is offline. We will check reward as it will be online again");
			// e.printStackTrace();
		}
		finally
		{
			if (in != null)
				try
				{
					in.close();
				}
				catch (final IOException e1)
				{
					e1.printStackTrace();
				}
			if (isr != null)
				try
				{
					isr.close();
				}
				catch (final IOException e1)
				{
					e1.printStackTrace();
				}
			if (is != null)
				try
				{
					is.close();
				}
				catch (final IOException e1)
				{
					e1.printStackTrace();
				}
		}
		return votes;
	}
	
	protected int getL2NetworkVotes()
	{
		int votes = -1;
		URL url = null;
		URLConnection con = null;
		InputStream is = null;
		InputStreamReader isr = null;
		BufferedReader in = null;
		
		try
		{
			url = new URL(PowerPakConfig.VOTES_SITE_L2NETWORK_URL);
			con = url.openConnection();
			con.addRequestProperty("User-Agent", "L2Network");
			is = con.getInputStream();
			isr = new InputStreamReader(is);
			in = new BufferedReader(isr);
			String inputLine;
			while ((inputLine = in.readLine()) != null)
			{
				if (inputLine.contains("color:#e7ebf2"))
				{
					votes = Integer.valueOf(inputLine.split(">")[2].replace("</b", ""));
					break;
				}
			}
		}
		catch (final Exception e)
		{
			LOGGER.warn("[AutoVoteReward] Server L2NETWORK is offline or something is wrong in link");
			Announcements.getInstance().gameAnnounceToAll("[AutoVoteReward] L2Network is offline. We will check reward as it will be online again");
			// e.printStackTrace();
		}
		finally
		{
			if (in != null)
				try
				{
					in.close();
				}
				catch (final IOException e1)
				{
					e1.printStackTrace();
				}
			if (isr != null)
				try
				{
					isr.close();
				}
				catch (final IOException e1)
				{
					e1.printStackTrace();
				}
			if (is != null)
				try
				{
					is.close();
				}
				catch (final IOException e1)
				{
					e1.printStackTrace();
				}
		}
		return votes;
	}
	
	protected void setHopZoneVoteCount(final int voteCount)
	{
		_hopzoneVotesCount = voteCount;
	}
	
	protected int getHopZoneVoteCount()
	{
		return _hopzoneVotesCount;
	}
	
	protected void setTopZoneVoteCount(final int voteCount)
	{
		_topzoneVotesCount = voteCount;
	}
	
	protected int getTopZoneVoteCount()
	{
		return _topzoneVotesCount;
	}
	
	protected void setL2NetworkVoteCount(final int voteCount)
	{
		_l2networkVotesCount = voteCount;
	}
	
	protected int getL2NetworkVoteCount()
	{
		return _l2networkVotesCount;
	}
	
	public static AutoVoteRewardHandler getInstance()
	{
		Logger.getLogger("com.gargoylesoftware").setLevel(Level.OFF);
		
		if (PowerPakConfig.VOTES_SITE_HOPZONE_URL != null && !PowerPakConfig.VOTES_SITE_HOPZONE_URL.equals(""))
			_hopzone = true;
		
		if (PowerPakConfig.VOTES_SITE_TOPZONE_URL != null && !PowerPakConfig.VOTES_SITE_TOPZONE_URL.equals(""))
			_topzone = true;
		
		if (PowerPakConfig.VOTES_SITE_L2NETWORK_URL != null && !PowerPakConfig.VOTES_SITE_L2NETWORK_URL.equals(""))
			_l2network = true;
		
		if (_topzone || _hopzone || _l2network)
			return SingletonHolder._instance;
		
		return null;
	}
	
	@SuppressWarnings("synthetic-access")
	private static class SingletonHolder
	{
		protected static final AutoVoteRewardHandler _instance = new AutoVoteRewardHandler();
	}
}
more
Edited by haskovo
Guest
This topic is now closed to further replies.


  • Posts

    • 𝐈𝐌𝐏𝐑𝐎𝐕𝐄𝐃 𝐂𝐋𝐀𝐒𝐒𝐈𝐂 𝟐.𝟓 - 𝐋𝐈𝐍𝐄𝐀𝐆𝐄 𝐈𝐈 𝐄𝐈𝐍𝐇𝐎𝐕𝐀𝐍𝐓 - Opening Date: 10th July 2026 - Time: 20:00 GMT+3 - Mid Rate x3 - Adena x3 - 100% Drop Rate - Quest Reward Adena x3 - Vitality System - Classic Zaken 2.5 Based - Improved Classic Gameplay - Improved Buff System - No Dual Box - No Pay to Win - 7 Members Party System - Dynamic Stages Progression - Reworked Support Classes - Reworked Skills & New Skills - New Skill Visual Effects - Improved Quests & Better Rewards - Daily Missions & Daily Quests - Weekly Solo Instances - In-Game Wiki with .wiki Command - Olympiad Rework - Castle Siege Improvements - Grand Boss & Raid Boss Progression ⚔ Designed to deliver a competitive, rewarding, and long-term Classic experience without destroying the original Lineage II feeling.   Don't forget to check the in-game wiki and discover all the unique features and gameplay improvements we prepared for you! Website: https://l2einhovant.net/en Discord: https://discord.gg/VfNngPrzaf Instagram: https://www.instagram.com/l2einhovant_classic/ Youtube: https://www.youtube.com/@L2Einhovant TikTok: https://www.tiktok.com/@vedi2300
    • Special summer offer, dm me for more information.
    • TG Support: https://t.me/buyingproxysup | Channel: https://t.me/buyingproxycom Discord support: #buyingproxy | Server: Join the BuyingProxy Discord Server!  Create your free account here
    • jajajajaj This can't be serious... Everything you've said to incorporate into the project are things that already existed. To say that it's Mobius free is extremely ignorant.  First, even a quick comparison shows it doesn't resemble the current free version of Mobius. Second, if you're referring to the Mobius version of Classic Interlude that was discontinued a year and a half ago... A quick comparison also shows that it doesn't either.  I wouldn't pay $500 for this, but saying it's something from the free version of Mobius... is ignorant. At a glance, you can see many things that weren't in the Mobius version of Classic Interlude but are here. I won't go into detail about how they're implemented, but they're there and they seem to work. - Fishing system as an interlude - Clan war as an interlude - Skills same as interlude - Skill enchant as an interlude - Olympiad same arena and work progress as interlude - Pet's same as interlude (with life time bar)  and surely many more things, I've only given a quick overview.  I find this post disrespectful to the server admin in question, but also to whoever the code author is in general. It's clearly a modification of the Mobius code from Classic Interlude or Grand Crusader, or something similar. But it's nowhere near something that was free. The simple fact that you can't see that shows your "level" as a developer. Anyone who applauds this type of post, I hope that tomorrow it will be their work that gets leaked and they enjoy it just the same.
  • 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..