Jump to content

Blast0

Banned
  • Posts

    104
  • Credits

  • Joined

  • Last visited

  • Feedback

    0%

About Blast0

Profile Information

  • Current Mood
    Busy
  • Gender
    Male
  • Country
    Lithuania

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

Blast0's Achievements

Newbie

Newbie (1/16)

0

Reputation

  1. Join http://line2age.net Interlude No Custom PvP Server 2014.04.18 17:00 GMT +2 this FRIDAY!!
  2. Join http://line2age.net Interlude No Custom PvP Server 2014.04.18 17:00 GMT +2 this FRIDAY!!
  3. Trusted, and nice files, also nice developer.
  4. Fixed, just deleted the place, where system is looking for top page..
  5. Sweet I'm not saying that is not working, but as I said before, I'm not good at working with java.. Thx, Chuncky for reply, I'll test in a momment.
  6. Hello guys, can you say what the problem is with that? I have updated all the system, and implemented anarchy latest updates+system, but anyway there is an error in gameserver: there was a problem on getting for getting votes from server with rank 78.. Hmm, maybe my configs are bad?: # Vote reward for Topzone. AllowTopzoneVoteReward = True # Vote reward server link. Put your server link instead of this one. TopzoneServerLink = http://l2topzone.com/lineage2/server-info/10815/Line2agenetNetwork.html/ # First page of servers list link. TopzoneFirstPageLink = http://l2topzone.com/lineage2/server-list/top.html/ # Votes for next reward needed. TopzoneVotesDifference = 1 # Rank needed for server to be on first page. TopzoneFirstPageRankNeeded = 78 # Minutes between rewards. # Eg. You put 5 it checks every 5 minutes for reward. TopzoneRewardCheckTime = 1 # Small reward(s). TopzoneSmallReward = 57,100000000; # Big reward(s). TopzoneBigReward = 3470,1; # Hopzone reward max dual boxes reward. # For example if you put 2 and someone has 3 boxes open 2 will be rewarded. TopzoneDuaboxesAllowed = 1 # Game server console report. # If set to true, game server console will get a report of # current vote count, votes needed for next reward and votes needed for first page. AllowTopzoneGameServerReport = True I think they are good.. Can you guys help me and suggest what to do? That's the code: /* * 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 net.sf.l2j.gameserver.model.entity; import java.io.BufferedReader; import java.io.InputStreamReader; import java.net.URL; import java.net.URLConnection; import java.util.Collection; import java.util.HashMap; import java.util.Map; import net.sf.l2j.Config; import net.sf.l2j.gameserver.Announcements; import net.sf.l2j.gameserver.ThreadPoolManager; import net.sf.l2j.gameserver.model.L2World; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; /** * @author Anarchy * */ public class VoteRewardTopzone { // Configurations. private static String topzoneUrl = Config.TOPZONE_SERVER_LINK; private static String page1Url = Config.TOPZONE_FIRST_PAGE_LINK; private static int voteRewardVotesDifference = Config.TOPZONE_VOTES_DIFFERENCE; private static int firstPageRankNeeded = Config.TOPZONE_FIRST_PAGE_RANK_NEEDED; private static int checkTime = 60*1000*Config.TOPZONE_REWARD_CHECK_TIME; // Don't-touch variables. private static int lastVotes = 0; private static Map<String, Integer> playerIps = new HashMap<>(); public static void updateConfigurations() { topzoneUrl = Config.TOPZONE_SERVER_LINK; page1Url = Config.TOPZONE_FIRST_PAGE_LINK; voteRewardVotesDifference = Config.TOPZONE_VOTES_DIFFERENCE; firstPageRankNeeded = Config.TOPZONE_FIRST_PAGE_RANK_NEEDED; checkTime = 60*1000*Config.TOPZONE_REWARD_CHECK_TIME; } public static void getInstance() { System.out.println("Vote reward system initialized."); ThreadPoolManager.getInstance().scheduleGeneralAtFixedRate(new Runnable() { @Override public void run() { if (Config.ALLOW_TOPZONE_VOTE_REWARD) { reward(); } else { return; } } }, checkTime/2, checkTime); } static void reward() { int firstPageVotes = getFirstPageRankVotes(); int currentVotes = getVotes(); if (firstPageVotes == -1 || currentVotes == -1) { if (firstPageVotes == -1) { System.out.println("There was a problem on getting votes from server with rank "+firstPageRankNeeded+"."); } if (currentVotes == -1) { System.out.println("There was a problem on getting server votes."); } return; } if (lastVotes == 0) { lastVotes = currentVotes; Announcements.announceToAll("Vote reward: Current vote count is "+currentVotes+"."); Announcements.announceToAll("Vote reward: We need "+((lastVotes+voteRewardVotesDifference)-currentVotes)+" vote(s) for reward."); if (Config.ALLOW_TOPZONE_GAME_SERVER_REPORT) { System.out.println("Server votes on topzone: "+currentVotes); System.out.println("Votes needed for reward: "+((lastVotes+voteRewardVotesDifference)-currentVotes)); } if (firstPageVotes-lastVotes <= 0) { Announcements.announceToAll("Vote reward: We are in the first page of topzone, so the reward will be big."); if (Config.ALLOW_TOPZONE_GAME_SERVER_REPORT) { System.out.println("Server is on the first page of topzone."); } } else { Announcements.announceToAll("Vote reward: We need "+(firstPageVotes-lastVotes)+" vote(s) to get to the first page of topzone for big reward."); if (Config.ALLOW_TOPZONE_GAME_SERVER_REPORT) { System.out.println("Server votes needed for first page: "+(firstPageVotes-lastVotes)); } } Announcements.announceToAll("Vote reward: Type .menu to see what the big and what the small reward is."); return; } if (currentVotes >= lastVotes+voteRewardVotesDifference) { Collection<L2PcInstance> pls = L2World.getInstance().getAllPlayers().values(); if (firstPageVotes-currentVotes <= 0) { if (Config.ALLOW_TOPZONE_GAME_SERVER_REPORT) { System.out.println("Server votes on topzone: "+currentVotes); System.out.println("Server is on the first page of topzone."); System.out.println("Votes needed for next reward: "+((currentVotes+voteRewardVotesDifference)-currentVotes)); } Announcements.announceToAll("Vote reward: Everyone has been rewarded with big reward."); Announcements.announceToAll("Vote reward: Current vote count is "+currentVotes+"."); Announcements.announceToAll("Vote reward: Type .menu to see what the big and what the small reward is."); for (L2PcInstance p : pls) { boolean canReward = false; String pIp = p.getClient().getConnection().getInetAddress().getHostAddress(); if (playerIps.containsKey(pIp)) { int count = playerIps.get(pIp); if (count < Config.TOPZONE_DUALBOXES_ALLOWED) { playerIps.remove(pIp); playerIps.put(pIp, count+1); canReward = true; } } else { canReward = true; playerIps.put(pIp, 1); } if (canReward) { for (int i : Config.TOPZONE_BIG_REWARD.keySet()) { p.addItem("Vote reward.", i, Config.TOPZONE_BIG_REWARD.get(i), p, true); } } else { p.sendMessage("Already "+Config.TOPZONE_DUALBOXES_ALLOWED+" character(s) of your ip have been rewarded, so this character won't be rewarded."); } } playerIps.clear(); } else { if (Config.ALLOW_TOPZONE_GAME_SERVER_REPORT) { System.out.println("Server votes on topzone: "+currentVotes); System.out.println("Server votes needed for first page: "+(firstPageVotes-lastVotes)); System.out.println("Votes needed for next reward: "+((currentVotes+voteRewardVotesDifference)-currentVotes)); } Announcements.announceToAll("Vote reward: Everyone has been rewarded with small reward."); Announcements.announceToAll("Vote reward: Current vote count is "+currentVotes+"."); Announcements.announceToAll("Vote reward: We need "+(firstPageVotes-currentVotes)+" vote(s) to get to the first page of topzone for big reward."); Announcements.announceToAll("Vote reward: Type .menu to see what the big and what the small reward is."); for (L2PcInstance p : pls) { boolean canReward = false; String pIp = p.getClient().getConnection().getInetAddress().getHostAddress(); if (playerIps.containsKey(pIp)) { int count = playerIps.get(pIp); if (count < Config.TOPZONE_DUALBOXES_ALLOWED) { playerIps.remove(pIp); playerIps.put(pIp, count+1); canReward = true; } } else { canReward = true; playerIps.put(pIp, 1); } if (canReward) { for (int i : Config.TOPZONE_SMALL_REWARD.keySet()) { p.addItem("Vote reward.", i, Config.TOPZONE_SMALL_REWARD.get(i), p, true); } } else { p.sendMessage("Already "+Config.TOPZONE_DUALBOXES_ALLOWED+" character(s) of your ip have been rewarded, so this character won't be rewarded."); } } playerIps.clear(); } lastVotes = currentVotes; } else { if (firstPageVotes-currentVotes <= 0) { if (Config.ALLOW_TOPZONE_GAME_SERVER_REPORT) { System.out.println("Server votes on topzone: "+currentVotes); System.out.println("Server is on the first page of topzone."); System.out.println("Votes needed for next reward: "+((lastVotes+voteRewardVotesDifference)-currentVotes)); } Announcements.announceToAll("Vote reward: Current vote count is "+currentVotes+"."); Announcements.announceToAll("Vote reward: We need "+((lastVotes+voteRewardVotesDifference)-currentVotes)+" vote(s) for big reward."); Announcements.announceToAll("Vote reward: Type .menu to see what the big and what the small reward is."); } else { if (Config.ALLOW_TOPZONE_GAME_SERVER_REPORT) { System.out.println("Server votes on topzone: "+currentVotes); System.out.println("Server votes needed for first page: "+(firstPageVotes-lastVotes)); System.out.println("Votes needed for next reward: "+((lastVotes+voteRewardVotesDifference)-currentVotes)); } Announcements.announceToAll("Vote reward: Current vote count is "+currentVotes+"."); Announcements.announceToAll("Vote reward: We need "+((lastVotes+voteRewardVotesDifference)-currentVotes)+" vote(s) for small reward."); Announcements.announceToAll("Vote reward: We need "+(firstPageVotes-currentVotes)+" vote(s) to get to the first page of topzone for big reward."); Announcements.announceToAll("Vote reward: Type .menu to see what the big and what the small reward is."); } } } private static int getFirstPageRankVotes() { InputStreamReader isr = null; BufferedReader br = null; try { URLConnection con = new URL(page1Url).openConnection(); con.addRequestProperty("User-Agent", "Mozilla/4.76"); isr = new InputStreamReader(con.getInputStream()); br = new BufferedReader(isr); String line; int i = 0; while ((line = br.readLine()) != null) { if (line.contains("<td><div align=\"center\">"+firstPageRankNeeded+"</div></td>")) { i++; } if (line.contains("<td><div align=\"center\">") && i == 1) { i++; } if (line.contains("<td><div align=\"center\">") && i == 2) { i = 0; int votes = Integer.valueOf(line.split(">")[2].replace("</div", "")); return votes; } } br.close(); isr.close(); } catch (Exception e) { System.out.println(e); System.out.println("Error while getting server vote count."); } return -1; } private static int getVotes() { InputStreamReader isr = null; BufferedReader br = null; try { URLConnection con = new URL(topzoneUrl).openConnection(); con.addRequestProperty("User-Agent", "Mozilla/4.76"); isr = new InputStreamReader(con.getInputStream()); br = new BufferedReader(isr); boolean got = false; String line; while ((line = br.readLine()) != null) { if (line.contains("<tr><td><div align=\"center\"><b><font style=\"font-size:14px;color:#018BC1;\"") && !got) { got = true; int votes = Integer.valueOf(line.split("=\"font-size:14px;color:#018BC1;\">")[1].replace("</font></b></div></td></tr>", "")); return votes; } } br.close(); isr.close(); } catch (Exception e) { System.out.println(e); System.out.println("Error while getting server vote count."); } return -1; } } Please can someone help me with that?
  7. Updater is uploaded, you can download it from there: http://line2age.net/Line2age.net%20UPDATER.rar
×
×
  • Create New...