Jump to content
  • 0

Help With Auto Vote Reward Or Individual (Npc)


hunterl2

Question

Hello everyone . I need some help with my sever  autovote reward code and i want to install an npc votemanager from this forum.

If there are people that can help me please  let me your skype or something

Link to comment
Share on other sites

Recommended Posts

  • 0

I would rape you both but i'm good so i won't.

 

This is not a forum so people add you on skype and enter in your PC to add your codes no matter what.

Here is a section that we help people. If you can't add your code, watch a tutorial. If you have problem with methods or e.t.c

post the code and photos and we help you.

 

You want someone enter your pc and add the code? Pay. You want do it on your own with our help? Post me the code in pastebin, post images and then we talk.

 

Also you come with a topic and no code saying the code doesnt read votes, let me smell my nails to detect the proble,

 

This topic went so far as i see........ Wanted some help but instead i get my world on my head. Tell me where is the rulle saying that if i want help i must copy/paste codes...errors /videos PAY  or something?

Ignore my thread and go to your cave but stop talking  bulls.hits . Who want's to help me he help me who not not.Simple right?

If i want help to move something in my house and i go to someone  and ask i must give details why i want help? ..when for example i have one hand ? NO

Maybe i am NOOB ... how many  PRO  DEV'S call some people but i'm not that stupid as you think i am .

 

 """""" Also you come with a topic and no code saying the code doesnt read votes, let me smell my nails to detect the problem """"""""   Did i say that .lol mans i have autocode and server not reading votes...what is problem? NO

So stop talking bullshits. With this atitude you won't go so far. Be a pro for yourself cause for us your nothing....

Link to comment
Share on other sites

  • 0


/*

*

* 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 Extensions.Vote;

 

import java.io.BufferedReader;

import java.io.InputStreamReader;

import java.net.URL;

import java.net.URLConnection;

import java.util.ArrayList;

import java.util.List;

import java.util.logging.Logger;

 

import com.l2jhellas.Config;

import com.l2jhellas.gameserver.Announcements;

import com.l2jhellas.gameserver.Gui;

import com.l2jhellas.gameserver.ThreadPoolManager;

import com.l2jhellas.gameserver.model.L2World;

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

import com.l2jhellas.gameserver.network.serverpackets.ExShowScreenMessage;

import com.l2jhellas.gameserver.network.serverpackets.ExShowScreenMessage.SMPOS;

 

/**

* @author Boorinio

*/

public class VoteRewardHopzone

{

private static Logger _log = Logger.getLogger(VoteRewardHopzone.class.getName());

public static int HLastVotes = 0, HCurrentVotes = 0, HGoalVotes = 0, HAllowedRewards = Config.HOPZONE_BOXES_ALLOWED;

public static List<String> HBoxes = new ArrayList<>();

 

public static void LoadHopZone()

{

int delay;

if (Config.ALLOW_TOPZONE_VOTE_REWARD)

delay = 60 * 1000 * Config.HOPZONE_REWARD_CHECK_TIME;

else

delay = 0;

HCurrentVotes = getVotes();

if (HCurrentVotes == -1)

{

if (HCurrentVotes == -1)

_log.warning(VoteRewardHopzone.class.getSimpleName() + ": There was a problem on getting Hopzone server votes.");

return;

}

HLastVotes = HCurrentVotes;

HGoalVotes = HCurrentVotes + Config.HOPZONE_VOTES_DIFFERENCE;

_log.info(VoteRewardHopzone.class.getName() + "Hopzone - Vote reward system initialized.");

ThreadPoolManager.getInstance().scheduleGeneralAtFixedRate(new Runnable()

{

@Override

public void run()

{

RunEngine();

}

}, 60 * 1000 * Config.HOPZONE_REWARD_CHECK_TIME + delay, 60 * 1000 * Config.HOPZONE_REWARD_CHECK_TIME);

}

 

static void RunEngine()

{

HCurrentVotes = getVotes();

if (HCurrentVotes == -1)

{

if (HCurrentVotes == -1)

_log.warning(VoteRewardHopzone.class.getSimpleName() + ": There was a problem on getting Hopzone server votes.");

return;

}

if ((HCurrentVotes >= HLastVotes && HCurrentVotes < HGoalVotes) || HCurrentVotes == HLastVotes)

{

for (L2PcInstance player : L2World.getInstance().getAllPlayers().values())

player.sendPacket(new ExShowScreenMessage("HopZone Votes: " + HCurrentVotes, 4000, SMPOS.BOTTOM_RIGHT, true));

Announcements.getInstance().announceToAll("HopZone Votes: " + HCurrentVotes);

Announcements.getInstance().announceToAll("Next Reward in: " + HGoalVotes + " Votes.");

waitSecs(5);

for (L2PcInstance player : L2World.getInstance().getAllPlayers().values())

player.sendPacket(new ExShowScreenMessage("Next Reward in: " + HGoalVotes + " Votes.", 4000, SMPOS.BOTTOM_RIGHT, true));

}

if (HCurrentVotes >= HGoalVotes)

{

RewardPlayers();

for (L2PcInstance player : L2World.getInstance().getAllPlayers().values())

player.sendPacket(new ExShowScreenMessage("HopZone Rewarded!", 4000, SMPOS.BOTTOM_RIGHT, true));

Announcements.getInstance().announceToAll("All players Rewarded!");

HGoalVotes = HCurrentVotes + Config.HOPZONE_VOTES_DIFFERENCE;

Announcements.getInstance().announceToAll("HopZone Votes: " + HCurrentVotes);

Announcements.getInstance().announceToAll("Next Reward in : " + HGoalVotes + " Votes.");

waitSecs(5);

for (L2PcInstance player : L2World.getInstance().getAllPlayers().values())

player.sendPacket(new ExShowScreenMessage("Next Reward in: " + HGoalVotes + " Votes.", 4000, SMPOS.BOTTOM_RIGHT, true));

}

HLastVotes = HCurrentVotes;

}

 

public static int countNumberEqual(String itemToCheck)

{

int count = 0;

for (String i : HBoxes)

if (i.equals(itemToCheck))

count++;

return count;

}

 

public static void RewardPlayers()

{

for (L2PcInstance player : L2World.getInstance().getAllPlayers().values())

{

String temp = player.getClient().getConnection().getInetAddress().getHostAddress();

if (Config.HOPZONE_BOXES_ALLOWED != 0 && HBoxes.contains(temp))

{

int count1 = countNumberEqual(temp);

if (count1 >= Config.HOPZONE_BOXES_ALLOWED)

{

player.sendMessage("You have already been rewarded more than the admin wants!");

}

else

{

for (int i = 0; i < Config.HOPZONE_REWARD.length; i++)

{

player.addItem("Vote reward.", Config.HOPZONE_REWARD[0], Config.HOPZONE_REWARD[1], player, true);

player.sendMessage("You have been rewarded check your inventory");

}

HBoxes.add(temp);

}

}

else

{

HBoxes.add(temp);

for (int i = 0; i < Config.HOPZONE_REWARD.length; i++)

{

player.addItem("Vote reward.", Config.HOPZONE_REWARD[0], Config.HOPZONE_REWARD[1], player, true);

player.sendMessage("You have been rewarded check your inventory");

}

}

}

HBoxes.clear();

 

}

 

public static void waitSecs(int i)

{

try

{

Thread.sleep(i * 1000);

}

catch (InterruptedException ie)

{

if (Config.DEVELOPER)

ie.printStackTrace();

}

}

 

private static int getVotes()

{

try

{

if(!Config.HOPZONE_SERVER_LINK.endsWith(".html"))

Config.HOPZONE_SERVER_LINK+=".html";

 

URLConnection con = new URL(Config.HOPZONE_SERVER_LINK).openConnection();

con.addRequestProperty("User-Agent", "Mozilla/5.0");

//con.addRequestProperty("User-L2Hopzone", "Mozilla/4.76");

BufferedReader br = new BufferedReader(new InputStreamReader(con.getInputStream()));

String line;

while ((line = br.readLine()) != null)

{

if (line.contains("Total Votes") || line.contains("no steal make love")||line.contains("no votes here")||line.contains("bang, you don't have votes")|| line.contains("la vita e bella"))

{

int votes = Integer.valueOf(line.split(">")[2].replace("</span", ""));

Gui.hopzone.setText("HopZone Votes: " + votes);

return votes;

}

}

br.close();

}

catch (Exception e)

{

_log.warning(VoteRewardHopzone.class.getSimpleName() + ": Error while getting server vote count.");

}

return -1;

}

}

 

Edited by hunterl2
Link to comment
Share on other sites

  • 0

You have to change the method getvotes...

All the method.. leave only your config..and getvotes() method name

And use link without .htm

private static int getVotes()
{
 
int votes = -1;
try
{
final URL obj = new URL(Config.HOPZONE_SERVER_LINK);
final HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.addRequestProperty("User-Agent", "L2Hopzone");
            con.setConnectTimeout(5000);
 
final int responseCode = con.getResponseCode();
if (responseCode == 200)
{
try (BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream())))
{
String line;
           while ((line = in.readLine()) != null)
           {
               if (line.contains("Total Votes") || line.contains("rank tooltip") || line.contains("no steal make love") || line.contains("no votes here") || line.contains("bang, you don't have votes") || line.contains("la vita e bella") || line.contains("rank anonymous tooltip"))
               {
                   String inputLine = line.split(">")[2].replace("</span", "");
                   votes = Integer.parseInt(inputLine);
                   break;
}
}
}
}
}
catch (Exception e)
{
e.printStackTrace();
System.out.println("HOPZONE is offline. We will check reward as it will be online again.");
}
return votes;
}
Edited by Reborn12
Link to comment
Share on other sites

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
Answer this question...

×   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

    • Helly everyone . I use L2jmobius interlude , i did everything , installed the db compiled the Build in eclipse Gameserver seems to lead OK , but it fails to connect to loginserver When i click to start the loginserver it says  "Loginserver terminated abnormally" This is wheat gameserver shows me :    [05/10 17:25:12] LoginServerThread: Connecting to login on 127.0.0.1:9014 [05/10 17:25:12] LoginServerThread: LoginServer not available, trying to reconnect... [05/10 17:25:17] LoginServerThread: Connecting to login on 127.0.0.1:9014 [05/10 17:25:17] LoginServerThread: LoginServer not available, trying to reconnect... [05/10 17:25:22] LoginServerThread: Connecting to login on 127.0.0.1:9014 [05/10 17:25:22] LoginServerThread: LoginServer not available, trying to reconnect...   And This is my login config file:   # --------------------------------------------------------------------------- # Login Server Settings # --------------------------------------------------------------------------- # This is the server configuration file. Here you can set up the connection information for your server. # This was written with the assumption that you are behind a router. # Dumbed Down Definitions... # LAN (LOCAL area network) - typically consists of computers connected to the same router as you. # WAN (WIDE area network) - typically consists of computers OUTSIDE of your router (ie. the internet). # x.x.x.x - Format of an IP address. Do not include the x'es into settings. Must be real numbers. # --------------------------------------------------------------------------- # Networking # --------------------------------------------------------------------------- # Bind ip of the LoginServer, use 0.0.0.0 to bind on all available IPs # WARNING: <u><b><font color="red">Please don't change default IPs here if you don't know what are you doing!</font></b></u> # WARNING: <u><b><font color="red">External/Internal IPs are now inside "ipconfig.xml" file.</font></b></u> # Default: 0.0.0.0 LoginserverHostname = 0.0.0.0 # Default: 2106 LoginserverPort = 2106 # The address on which login will listen for GameServers, use * to bind on all available IPs # WARNING: <u><b><font color="red">Please don't change default IPs here if you don't know what are you doing!</font></b></u> # WARNING: <u><b><font color="red">External/Internal IPs are now inside "ipconfig.xml" file.</font></b></u> # Default: 127.0.0.1 LoginHostname = 127.0.0.1 # The port on which login will listen for GameServers # Default: 9014 LoginPort = 9014 # --------------------------------------------------------------------------- # Database # --------------------------------------------------------------------------- # Specify the JDBC driver class for your database. # Default: org.mariadb.jdbc.Driver Driver = org.mariadb.jdbc.Driver # Database URL # Default: jdbc:mariadb://localhost/l2jmobiusinterlude?useUnicode=true&characterEncoding=utf-8&useSSL=false&connectTimeout=10000&interactiveClient=true&sessionVariables=wait_timeout=600,interactive_timeout=600&autoReconnect=true URL = jdbc:mariadb://localhost/l2jmobiusinterlude?useUnicode=true&characterEncoding=utf-8&useSSL=false&connectTimeout=10000&interactiveClient=true&sessionVariables=wait_timeout=600,interactive_timeout=600&autoReconnect=true # Database user info. Default is "root" but it's not recommended. Login = root # Database user password, leave empty for no password. Password = root # Maximum number of database connections to maintain in the pool. # Default: 5 MaximumDatabaseConnections = 5 # Determine whether database connections should be tested for availability. # Default: False TestDatabaseConnections = False # --------------------------------------------------------------------------- # Automatic Database Backup Settings # --------------------------------------------------------------------------- # Generate database backups when server restarts or shuts down.  BackupDatabase = False # Path to MySQL bin folder. Only necessary on Windows. MySqlBinLocation = C:/xampp/mysql/bin/ # Path where MySQL backups are stored. BackupPath = ../backup/ # Maximum number of days that backups will be kept. # Old files in backup folder will be deleted. # Set to 0 to disable. BackupDays = 30 # --------------------------------------------------------------------------- # Thread Configuration # --------------------------------------------------------------------------- # Defines the number of threads in the scheduled thread pool. # If set to -1, this will be determined by available processors divided by 2. ScheduledThreadPoolSize = 2 # Defines the number of threads in the instant thread pool. # If set to -1, this will be determined by available processors divided by 2. InstantThreadPoolSize = 2 # --------------------------------------------------------------------------- # Security # --------------------------------------------------------------------------- # How many times you can provide an invalid account/pass before the IP gets banned. # Default: 5 LoginTryBeforeBan = 5 # Time you won't be able to login back again after LoginTryBeforeBan tries to login. # Default: 900 (15 minutes) LoginBlockAfterBan = 900 # If set to True any GameServer can register on your login's free slots # Default: True AcceptNewGameServer = True # Flood Protection. All values are in milliseconds. # Default: True EnableFloodProtection = True # Default: 15 FastConnectionLimit = 15 # Default: 700 NormalConnectionTime = 700 # Default: 350 FastConnectionTime = 350 # Default: 50 MaxConnectionPerIP = 50 # --------------------------------------------------------------------------- # Misc Login Settings # --------------------------------------------------------------------------- # If False, the license (after the login) will not be shown. # Default: True ShowLicence = True # Default: True AutoCreateAccounts = True # Datapack root directory. # Defaults to current directory from which the server is started. DatapackRoot = . # --------------------------------------------------------------------------- # Scheduled Login Restart # --------------------------------------------------------------------------- # Enable disable scheduled login restart. # Default: False LoginRestartSchedule = False # Time in hours. # Default: 24 LoginRestartTime = 24    
    • or at least to tell you an update that sorry but still not at home.. 10 days is suspisious.. but he is long time offline from discord indeed... maybe something happened?
    • I never had problems with him. Again, Im not sure if he scammed or not. But 10+ days without answering after we already paid, its a bit sus. If you know you wouldnt be able to answer for a few days, after receiving and confirming the amount, why dont keep in touch? or just say "hey, dont send now because I will only be available after day x.".  
    • i used to ask him for stuff etc, i dont think he scammed ... if he does i will be suprised...
  • Topics

×
×
  • Create New...