Jump to content

Recommended Posts

Posted

Hello this code was taken from extreme i made it for interlude and putted some configs it has been tested on a live server everything works fine!

 

Index: java/com/l2jmoxos12/gameserver/instancemanager/AutoVoteRewardHandler.java
===================================================================
--- java/com/l2jmoxos12/gameserver/instancemanager/AutoVoteRewardHandler.java	(revision 0)
+++ java/com/l2jmoxos12/gameserver/instancemanager/AutoVoteRewardHandler.java	(revision 0)
@@ -0,0 +1,162 @@
+package com.l2jmoxos12.gameserver.instancemanager;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.net.URL;
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+
+import com.l2jmoxos12.Config;
+import com.l2jmoxos12.L2DatabaseFactory;
+import com.l2jmoxos12.gameserver.Announcements;
+import com.l2jmoxos12.gameserver.ThreadPoolManager;
+import com.l2jmoxos12.gameserver.model.L2ItemInstance;
+import com.l2jmoxos12.gameserver.model.L2World;
+import com.l2jmoxos12.gameserver.model.actor.instance.L2PcInstance;
+
+public class AutoVoteRewardHandler
+{
+	private final String HOPZONE = "Config.HopZone_ID";
+	// 60 * 1000(1000milliseconds = 1 second) = 60seconds
+	private final int initialCheck = 60 * 1000;
+	// 1800 * 1000(1000milliseconds = 1 second) = 1800seconds = 30minutes
+	private final int delayForCheck = Config.Delay_for_check * 1000;
+	private final int[] itemId = {Config.Item_ID};
+	private final int[] itemCount = {Config.Item_Count};
+	private final int[] maxStack = {Config.Max_Stack};
+	private final int votesRequiredForReward = Config.Votes_Required;
+	// do not change
+	private int lastVoteCount = 0;
+	
+	private AutoVoteRewardHandler()
+	{
+		System.out.println("Vote Reward System Initiated.");
+		ThreadPoolManager.getInstance().scheduleGeneralAtFixedRate(new AutoReward(), initialCheck, delayForCheck);
+	}
+	
+	private class AutoReward implements Runnable
+	{
+		public void run()
+		{
+			int votes = getVotes();
+			System.out.println("Server Votes: " + votes);
+			if (votes != 0 && getLastVoteCount() != 0 && votes >= getLastVoteCount() + votesRequiredForReward)
+			{
+				Connection con = null;
+				try
+				{
+					con = L2DatabaseFactory.getInstance().getConnection();
+					PreparedStatement statement = con.prepareStatement("" +
+							"SELECT" +
+							"	c.charId," +
+							"	c.char_name" +
+							"FROM" +
+							"	characters AS c" +
+							"LEFT JOIN" +
+							"	accounts AS a" +
+							"ON" +
+							"	c.account_name = a.login" +
+							"WHERE" +
+							"	c.online > 0" +
+							"GROUP BY" +
+							"	a.lastIP" +
+							"ORDER BY" +
+							"	c.level" +
+							"DESC");
+					ResultSet rset = statement.executeQuery();
+					L2PcInstance player = null;
+					L2ItemInstance item = null;
+					while (rset.next())
+					{
+						player = L2World.getInstance().getPlayer("charId");
+						if (player != null && !player.getClient().isDetached())
+						{
+							for (int i = 0; i < itemId.length; i++)
+							{
+								item = player.getInventory().getItemByItemId(itemId[i]);
+								if (item == null || item.getCount() < maxStack[i])
+									player.addItem("reward", itemId[i], itemCount[i], player, true);
+							}
+						}
+					}
+					statement.close();
+				}
+				catch (SQLException e)
+				{
+					e.printStackTrace();
+				}
+				finally
+				{
+                           try { if (con != null) con.close(); } catch (SQLException e) { e.printStackTrace(); }
+				}
+				
+				setLastVoteCount(getLastVoteCount() + votesRequiredForReward);
+			}
+			Announcements.getInstance().announceToAll("Server Votes: " + votes + " | Next Reward on " + (getLastVoteCount() + votesRequiredForReward) + " Votes.");
+			if (getLastVoteCount() == 0)
+				setLastVoteCount(votes);
+		}
+	}
+	
+	private int getVotes()
+	{
+		URL url = null;
+		InputStreamReader isr = null;
+		BufferedReader in = null;
+		try
+		{
+			url = new URL(HOPZONE);
+			isr = new InputStreamReader(url.openStream());
+			in = new BufferedReader(isr);
+			String inputLine;
+			while ((inputLine = in.readLine()) != null)
+			{
+				if (inputLine.contains("moreinfo_total_rank_text"))
+					return Integer.valueOf(inputLine.split(">")[2].replace("</div", ""));
+			}
+		}
+		catch (IOException e)
+		{
+			e.printStackTrace();
+		}
+		finally
+		{
+			try
+			{
+				in.close();
+			}
+			catch (IOException e)
+			{}
+			try
+			{
+				isr.close();
+			}
+			catch (IOException e)
+			{}
+		}
+		return 0;
+	}
+	
+	private void setLastVoteCount(int voteCount)
+	{
+		lastVoteCount = voteCount;
+	}
+	
+	private int getLastVoteCount()
+	{
+		return lastVoteCount;
+	}
+	
+	public static AutoVoteRewardHandler getInstance()
+	{
+		return SingletonHolder._instance;
+	}
+	
+	@SuppressWarnings("synthetic-access")
+	private static class SingletonHolder
+	{
+		protected static final AutoVoteRewardHandler _instance = new AutoVoteRewardHandler();
+	}
+}
Index: java/com/l2jmoxos12/gameserver/GameServer.java
===================================================================
--- java/com/l2jmoxos12/gameserver/GameServer.java	(revision 4407)
+++ java/com/l2jmoxos12/gameserver/GameServer.java	(working copy)
@@ -83,6 +83,7 @@
import com.l2jmoxos12.gameserver.idfactory.IdFactory;
import com.l2jmoxos12.gameserver.instancemanager.AirShipManager;
import com.l2jmoxos12.gameserver.instancemanager.AuctionManager;
+import com.l2jmoxos12.gameserver.instancemanager.AutoVoteRewardHandler;
import com.l2jmoxos12.gameserver.instancemanager.BoatManager;
import com.l2jmoxos12.gameserver.instancemanager.CastleManager;
import com.l2jmoxos12.gameserver.instancemanager.CastleManorManager;
@@ -406,6 +407,8 @@
		if ((Config.OFFLINE_TRADE_ENABLE || Config.OFFLINE_CRAFT_ENABLE) && Config.RESTORE_OFFLINERS)
			OfflineTradersTable.restoreOfflineTraders(); 

+		AutoVoteRewardHandler.getInstance();
+		
		if (Config.DEADLOCK_DETECTOR)
		{
			_deadDetectThread = new DeadLockDetector();

Index: java/com/l2jmoxos12/gameserver/Config.java
===================================================================
--- java/com/l2jmoxos12/gameserver/Config.java	(revision 0)
+++ java/com/l2jmoxos12/gameserver/Config.java	(revision 0)
@@ -0,0 +1,162 @@
public static int Random_Of_Sailren_Spawn;

	//Vote Reward by Boorinio
+	public static int HopZone_ID;  
+	public static int  Delay_for_check; 
+	public static int  Item_ID; 
+	public static int  Item_Count; 
+	public static int  Max_Stack;
+	public static int Votes_Required;
@@ -32,4 +4,153 @@
CLAN_LEADER_COLOR_CLAN_LEVEL = Integer.parseInt(L2jMoxos12Settings.getProperty("ClanLeaderColorAtClanLevel", "1"));
+
+HopZone_ID =  Integer.parseInt(L2jMoxos12Settings.getProperty("HopZoneID", "www.google.com"));
+Delay_for_check =  Integer.parseInt(L2jMoxos12Settings.getProperty("Delayforcheck", "600"));
+Item_ID =  Integer.parseInt(L2jMoxos12Settings.getProperty("ItemID", "3470"));
+Item_Count =  Integer.parseInt(L2jMoxos12Settings.getProperty("ItemCount", "1"));
+Max_Stack =  Integer.parseInt(L2jMoxos12Settings.getProperty("MaxStack", "1"));
+Votes_Required =  Integer.parseInt(L2jMoxos12Settings.getProperty("VotesRequired", "10"));

Index: L2jMoxos12/config/l2jmoxos12.properties
===================================================================
--- L2jMoxos12/config/l2jmoxos12.properties	(revision 0)
+++ L2jMoxos12/config/l2jmoxos12.properties	(revision 0)
@@ -39,6 +39,9 @@
+# ============================= #             
+#L2jMoxos12 HopZone Java Vote Reward 
+# ============================= #
+# Hopzone Url
+#For example http://l2.hopzone.net/lineage2/moreinfo/L2Gang/82066.html
+HopZoneID = www.google.com
+
+# Dealy Check
+#This means in every x seconds the Handler will check for vote count
+Delayforcheck = 600
+
+# Item id
+# The reward of your choice 
+ItemID = 3470
+
+# Item Count
+# The Count of your choice
+ItemCount = 1
+
+# MaxStack
+# Recommended 1
+MaxStack = 1
+
+# Votes Required
+# Votes required between rewards
+VotesRequired = 10

Posted

    [javac] C:\Users\Florin\Desktop\java\Promisance\L2_GameServer_It\java\net\sf\l2j\gameserver\instancemanager\AutoVoteRewardHandler.java:179: illegal start of expression

    [javac] private void setLastVoteCount(int voteCount)

    [javac] ^

    [javac] C:\Users\Florin\Desktop\java\Promisance\L2_GameServer_It\java\net\sf\l2j\gameserver\instancemanager\AutoVoteRewardHandler.java:179: illegal start of expression

    [javac] private void setLastVoteCount(int voteCount)

    [javac]         ^

    [javac] C:\Users\Florin\Desktop\java\Promisance\L2_GameServer_It\java\net\sf\l2j\gameserver\instancemanager\AutoVoteRewardHandler.java:179: ';' expected

    [javac] private void setLastVoteCount(int voteCount)

    [javac]                             ^

    [javac] C:\Users\Florin\Desktop\java\Promisance\L2_GameServer_It\java\net\sf\l2j\gameserver\instancemanager\AutoVoteRewardHandler.java:179: ';' expected

    [javac] private void setLastVoteCount(int voteCount)

    [javac]                                           ^

    [javac] C:\Users\Florin\Desktop\java\Promisance\L2_GameServer_It\java\net\sf\l2j\gameserver\instancemanager\AutoVoteRewardHandler.java:184: illegal start of expression

    [javac] private int getLastVoteCount()

    [javac] ^

    [javac] C:\Users\Florin\Desktop\java\Promisance\L2_GameServer_It\java\net\sf\l2j\gameserver\instancemanager\AutoVoteRewardHandler.java:184: ';' expected

    [javac] private int getLastVoteCount()

    [javac]                             ^

    [javac] C:\Users\Florin\Desktop\java\Promisance\L2_GameServer_It\java\net\sf\l2j\gameserver\instancemanager\AutoVoteRewardHandler.java:189: illegal start of expression

    [javac] public static AutoVoteRewardHandler getInstance()

    [javac] ^

    [javac] C:\Users\Florin\Desktop\java\Promisance\L2_GameServer_It\java\net\sf\l2j\gameserver\instancemanager\AutoVoteRewardHandler.java:189: illegal start of expression

    [javac] public static AutoVoteRewardHandler getInstance()

    [javac]       ^

    [javac] C:\Users\Florin\Desktop\java\Promisance\L2_GameServer_It\java\net\sf\l2j\gameserver\instancemanager\AutoVoteRewardHandler.java:189: ';' expected

    [javac] public static AutoVoteRewardHandler getInstance()

    [javac]                                   ^

    [javac] C:\Users\Florin\Desktop\java\Promisance\L2_GameServer_It\java\net\sf\l2j\gameserver\instancemanager\AutoVoteRewardHandler.java:189: ';' expected

    [javac] public static AutoVoteRewardHandler getInstance()

    [javac]                                                 ^

    [javac] C:\Users\Florin\Desktop\java\Promisance\L2_GameServer_It\java\net\sf\l2j\gameserver\instancemanager\AutoVoteRewardHandler.java:200: reached end of file while parsing

    [javac] }

    [javac]  ^

    [javac] 11 errors

Posted

0 to me and my friend too....are there any errors when you are putting  the code? do it manually not by applying the patch

I did it manually and same..

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.




  • Posts

    • whats password from the archivie ?
    • All that shit are false positives of the vanganth cliext, sources are well and who sell it is a big scammer
    • Information Selling a premium Lineage 2 High Five (L2J) project with active development, available by subscription. Includes Git support and access to compiled or full source code. Ideal for serious server owners seeking stability and performance, uniqueness and well-done features.   General Project Specifications: JDK Version: 23 -> 24 Chronicle: HighFive Structure: Core & Datapack merged into a single project Database: MariaDB Database Driver: HicariCP GIT Website: gitlab.com   Features include (but are not limited to):   1. Tournament Single & Party (Check Youtube Video) 2. Faction (Check Youtube Video) 3. Event Engine (Check Youtube Video) 4. Sell Buff System (Check Youtube Video) 5. Start UP System (Check Youtube Video) 6. User Panel 7. Visual - Dress me System 8. Donate Store 9. Automatic Farm System (Check Youtube Video) 10. Captcha (Anti-BOT) (Check Youtube Video) 11. Auction (Check Youtube Video) 12. Vote (API) 13. Admin Real Time Balance (Check Youtube Video) 14. Achievements (Check Youtube Video) 15. Daily Mission (Check Youtube Video) 16. A.I. Bot (Check Youtube Video) 17. Rebirth 18. Daily Reward  19. Skill Tree - Ability System 20. Craft System 21. Twitch Automatic Reward (Check Youtube Video) 22. Quiz Game (Check Youtube Video) 23. Automatic Item Enchant (Check Youtube Video) 24. Secondary Auth Using Google Authenticator (Check Youtube Video) 25. Gm Shop - Gatekeeper - Scheme Buffer   How to get Access (Payment Subscription): To get Access you either pay monthly subscription to GIT for source or Compiled. Project is currently active and has at least 1-2 commit / day.  Clients in both Compiled & Source subscription can request features or any addon in already existing mods inside discord.   Price per Month (Source) in GIT: 250 Eur Price per Month (Compiled) in GIT: 100 Eur   Contact: To get Access or ask further information join discord  https://discord.gg/gKAsAhJNuq      
    • We're officially closing the current season today. While we focus on refining the Essence project, our resources will temporarily shift toward supporting the Classic server.
  • Topics

×
×
  • Create New...