Jump to content
  • 0

[FROZEN] Hopzote AutoVote system problem


Question

Posted

hello i`ve got problem with a automatic vote system for hopzone. It worked at my last server but now... Sh1t happends... 

Topzone and l2network works fine but hopzone is not.

Got all the time: image.thumb.png.c04f1418bc73e7de2ed6c9680a928b4b.png

I am trying to put every url`s what i can ito a powerpark config, this one is most close to be fine:

# Hopzone: http://l2.hopzone.net
VotesSiteHopZoneUrl =   https://api.hopzone.net/lineage2/votes?token=UscplMw9V7DSTok3
# Topzone: http://l2topzone.com
VotesSiteTopZoneUrl =   http://l2topzone.com/tv.php?id=15459
# ---------------------------------------
VotesSystemNetworkDelay = 300000
# L2Network: http://l2network.eu
VotesSiteL2NetworkUrl = https://l2network.eu/details/L2TimeMachine/

Can someone help me with it?

Recommended Posts

  • 0
Posted
3 minutes ago, SweeTs said:

Long story short, you should trash that code. It's old and shitty using gargoyle, lol.

True, but it still works with another vote sites so with hopzone should not?

  • 0
Posted
1 minute ago, L2TimeMachine said:

I am using Windows Server 2016

Check your votefile.properties file encoding.

  • 0
Posted (edited)
5 minutes ago, L2TimeMachine said:

True, but it still works with another vote sites so with hopzone should not?

Depends. Like i said HtmlUnit looks for classes or attributes right?

 

Let's say, the class the hopzone stores its votes, is named like <div class="voteclass">1500</div> right?

Then you will set HtmlUnit look for voteclass and u get the votes.

 

But when you mess with Kadar (hopzone owner) he is changing the class name every now and then, just to mess with people vote reward systems.

So the class is named, lets say, voteclas now.

 

You must change Html Unit Configuration, to search for voteclas, instead of voteclass.

 

l2 network and topzone didnt change so often, so...reward systems are still working

Edited by Solomun
  • 0
Posted
1 minute ago, L2TimeMachine said:

Encoding in ANSI -_-

Change it to UTF-8 and re-paste the URL of your server's details.

  • 0
Posted
4 minutes ago, Solomun said:

Depends. Like i said HtmlUnit looks for classes or attributes right?

 

Let's say, the class the hopzone stores its votes, is named like <div class="voteclass">1500</div> right?

Then you will set HtmlUnit look for voteclass and u get the votes.

 

But when you mess with Kadar (hopzone owner) he is changing the class name every now and then, just to mess with people vote reward systems.

So the class is named, lets say, voteclas now.

 

You must change Html Unit Configuration, to search for voteclas, instead of voteclass.

 

l2 network and topzone didnt change so often, so...reward systems are still working

ahhh i understund

  • 0
Posted
8 minutes ago, L2TimeMachine said:

i did. Same problem... Loks like i must to change a diff ;/

 

Can you show us the code you read the votes of the link?

  • 0
Posted (edited)
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;
    }

Edited... Was wrong

Edited by L2TimeMachine
  • 0
Posted (edited)

Try to change

Quote

try (BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream())))

to:

Quote

try (BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream(),StandardCharsets.UTF_8)))

 

Edited by Solomun
  • 0
Posted (edited)
public static void main(String[] args)
{
	System.out.println(getHopZoneVotes());
}

public static int getHopZoneVotes()
{
	int votes = 0;
	boolean lineFound = false;
	try
	{
		URL url = new URL("https://l2.hopzone.net/lineage2/details/102978/L2TimeMachine");
		InputStream is = url.openStream();
		try (BufferedReader br = new BufferedReader(new InputStreamReader(is)))
		{
			String line;
			while ((line = br.readLine()) != null)
			{
				if (line.contains("<span class=\"rank tooltip\" title"))
				{
					lineFound = true;
					votes = Integer.valueOf(line.split(">")[2].replace("</span", ""));
				}
			}
		}
	}
	catch (IOException e)
	{
		System.out.println("Something went wrong while trying get votes from HopZone");
	}
	if (!lineFound)
		System.out.println("The line wasn't found in HopZone, check site in case they updated.");
	return votes;
}

 

9

 

Edited by melron
  • 0
Posted
5 minutes ago, melron said:

public static void main(String[] args)
{
	System.out.println(getHopZoneVotes());
}

public static int getHopZoneVotes()
{
	int votes = 0;
	boolean lineFound = false;
	try
	{
		URL url = new URL("https://l2.hopzone.net/lineage2/details/102978/L2TimeMachine");
		InputStream is = url.openStream();
		try (BufferedReader br = new BufferedReader(new InputStreamReader(is)))
		{
			String line;
			while ((line = br.readLine()) != null)
			{
				if (line.contains("<span class=\"rank tooltip\" title"))
				{
					lineFound = true;
					votes = Integer.valueOf(line.split(">")[2].replace("</span", ""));
				}
			}
		}
	}
	catch (IOException e)
	{
		System.out.println("Something went wrong while trying get votes from HopZone");
	}
	if (!lineFound)
		System.out.println("The line wasn't found in HopZone, check site in case they updated.");
	return votes;
}

 


9

 

It Willwork without config right?

 

  • 0
Posted
Just now, L2TimeMachine said:

It Willwork without config right?

 

you can replace the link with your config

Guest
This topic is now closed to further replies.



  • Posts

    • aCis (“another Crappy interlude server”) is a commercial project I would not use even if paid. l2jfrozen yes, a 10 year old, effectively dead project produces more reliable results and at least works. l2jhellas also works. aCis might as well be renamed KPMIS (“Keep Paying My Interlude Server”): endless fixes, freemium, and no realistic path to true L2OFF parity, but its recommended like hell. lucera is even better the downside is you just need to dive into code and no sources   lets leave it at that
    • Download Here: https://sitehunterus.blogspot.com/2025/12/exelo-combo-tool-v2.html VirusTotal https://www.virustotal.com/gui/file/2acd067847ee092c7986f55c9f77620d89505d1c0bda34a0ee8f55b9c2905c11?nocache=1 Visit my Blogger list to download 100% free software https://www.freetoolss.com/ https://blackhat8.blogspot.com/ https://hack-crack9.blogspot.com/ https://hackernoons.blogspot.com/ https://sharetools99.blogspot.com/
    • Care to detail why ?   L2JHellas probably got the same issue, it's inherent to L2J if you don't rework Player intentions (and solving it with a Config < 500 attack is stupid, if it works for attack it works for other types of desires), also last time I checked L2JHellas he was using my changesets to fix its own stuff (which is ok, copy-paste my knownlist system which is 10y old is fine, but don't say it will act different since it's literally the same sub-system).   About Lucera code source isn't available so it's easy to say it's better, internally you got no clue what is happening and RU forks got the "feeling" to get everything, but everything is half done, everytime I put an eye on such sources (whatever based on l2ru, they only know how to copy-paste each other).   In the other hand, you seem to use aCis since years (I think I see your name since a decade, and you still use it since you made this topic :   Be a little more appreciative about the work done, it's not only mine but my community aswell, and if you find something, consider to report rather than getting such an idiotic behavior.   I understand you're not forced to share any type of fixes, and than people tend to feel superior when they fix something than aCis didn't yet fix. The thing is, for each bug you found, I found and fixed 10x more than you.   409 is way beyond 382 in all possible ways, if you believe the versus good for you, but don't make ppl believe it's the case, because it's not. There's at least 400+ fixed issues (and that's counting 10 issues by revision, which is kinda low) and entire new systems (spawns, SCHs, pathfind, whole AI implemented, Desire system,...).
    • better than using 409... Search for L2jHellas or Lucera and you won't have any headaches.
  • Topics

×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock