🚀 **TOMORROW – GRAND OPENING!** 🚀
📅 **Grand Opening Date:** 5 December 2025
⏰ **Time:** 20:00 GMT+2
🎫 **BONUS CODE:** `WELCOME-TO-L2MID`
⚠️ Limited to the **first 100 players** only!
🖥️ **Server Info:**
- 🕒 The server will open **1 hour earlier (19:00 GMT+2)** so you can create your characters.
- 🧍 All important **NPCs will appear at 20:00 GMT+2** for the official **GRAND OPENING**.
💡 **How to redeem the bonus code:**
- After you create your character, log in to the **L2Mid Panel** and redeem your bonus here:
🔗 https://l2mid.com/account.php#dash-promocode
🎁 **BONUS CODE REWARDS:**
🧪 Mana Drug × 50
🛡️ Greater CP Potion × 50
❤️ Greater Healing Potion × 50
📜 Blessed Scroll of Escape × 5
⭐ Bonus Rune – 3 Hours × 1
⚔️ Get ready for the start of your new adventure on **L2Mid**!
Question
demianhu
Hy!
I have working on a vote reward system and i have a problem.
I have l2j freya system and in when I build i receive an error:
And this is my AutoVoteRewardHandler.java file:
package com.l2jserver.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.l2jserver.Config; import com.l2jserver.L2DatabaseFactory; import com.l2jserver.gameserver.Announcements; import com.l2jserver.gameserver.ThreadPoolManager; import com.l2jserver.gameserver.model.L2ItemInstance; import com.l2jserver.gameserver.model.L2World; import com.l2jserver.gameserver.model.actor.instance.L2PcInstance; /** * @author Issle - Updater Kinho! V1.0 * */ 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.Reward_Item_Id}; private final int[] itemCount = {Config.Reward_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" + " characters.charId," + " characters.char_name" + "FROM" + " characters.account_name = accounts.login" + "WHERE" + " characters.onlinetime > 0" + "GROUP BY" + " accounts.lastIP" + "ORDER BY" + " characters.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, 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(); } }Please somebody help me if can!
Thanks a lot!
11 answers to this question
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now