• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

Tibia - Who is Banned?

EvulMastah

๏̯͡๏﴿
Premium User
Joined
Aug 19, 2007
Messages
4,941
Solutions
11
Reaction score
352
Im giving away my tool that can check who is banned from certain guild on any tibia server. Of course it will not count the hidden characters, but it will list them. I know it is noob written, but I dont feel like rewritting it, cause it works -.^.
I had some help from Macroman (makr0mango) with listing guilds players.

bans.php:
PHP:
<html>
	<head>
		<title>
			Check guild.
		</title>
		<style>
			body { background-color: gray; color: goldenrod }
			a { color: gold; text-decoration: none }
			a:visited { color: gold; text-decoration: none }
			a:hover { color: gold; text-decoration: underline }
			.error { color: gold; font-weight: bold }
			.small { color: gold; font-size: 10 }
		</style>
	</head>
	<body>
		<div align="center">
			<form action="bans.php?action=check" method="post" autocomplete="off">
				Guild Name: <input type="text" name="guild" size="20"></input>
				<input type="submit" value="Check!"/>
			</form>
			<span class="small">this tools result is <u>not</u> precise<br />(hidden characters are not detected)<br /></span>
			<hr>
			<?
				/*** TO-DO ***
				* Rewrite using cURL extension *
				***/
				$action = $_GET['action'];
				if($action == 'check'):
					$guild = $_POST['guild'];
					$g_link = 'http://www.tibia.com/community/?subtopic=guilds&page=view&GuildName='.urlencode($guild);	// Tibia.com guilds URL		
					
					if(strpos(file_get_contents($g_link), "Error") || is_numeric($guild) || empty($guild)): // Verifying input...
						echo '<span class="error">Guild does not exist!</span>';
						return false;
					endif;
					
					set_time_limit(0); // Let the script end its job
					ini_set('default_socket_timeout', 240); // Somewhat protection agains HTTP Request Failed
					$player_link = 'http://www.tibia.com/community/?subtopic=characters&name='; // Tibia.com players URL
					$content = file_get_contents($g_link); // Getting players from guild...
					$characters = explode("<TD WIDTH=30%><B>Joining Date</B></TD></TR>", $content); // Getting players from guild...
					$characters = explode("</TABLE>", $characters[1]); // Getting players from guild...
					$characters = str_ireplace("*", " ", $characters); // Getting players from guild...
					$link = explode("</A>", $characters[0]); // Getting players from guild...
					$players = array(); // Array with players from guild
					$banned = array(); // Array with banished players from guild
					$hidden = array(); // Array with hidden characters
					$lastLogin = array(); // Array with last-login info
					$banishedUntil = array(); // Array with banishment ending-time
					
					foreach($link as $char): // Getting players from guild...
						$char = explode('">', $char);
						$char = explode('<TD>', $char[1]);
						if(!empty($char[0]))
							$players[] = $char[0]; // Inserting player into table...
							
					endforeach;
					
					foreach($players as $player): // Getting players info...
						$player_content = file_get_contents($player_link.''.urlencode($player)); // Getting players info...
						if(strpos($player_content, "Banished:")): // Checking if player is banished (account info must be unhidden)
							$banned[] = $player; // Inserting banished player into table
							$until = explode('<TD CLASS=red>until ', $player_content);
							$until = explode('</TD>', $until[1]);
							$until = str_ireplace('*', ' ', $until[0]);
							$banishedUntil[] = $until;
						endif;
							
						if(!strpos($player_content, "Account Information")):
							$hidden[] = $player;
							$login = explode('<TD>Last login:</TD><TD>', $player_content);
							$login = explode('</TD>', $login[1]);
							$login = str_ireplace("*", " ", $login[0]);
							$lastLogin[] = $login;
						endif;
					endforeach;

					if(count($banned)) // Checking if anyone is banished...
						echo 'Banished player(s) (<strong>'.count($banned).'</strong>/'.count($players).') from <a href='.$g_link.'>'.$guild.'</a>:<br />'; // Informations
					else
						echo 'No one out of '.count($players).' member(s) is banished in the guild <a href='.$g_link.'>'.$guild.'</a>.<br />'; // Informations
						
					for($i = 0; $i < count($banned); $i++) // Showing banished players
						echo '<a href='.$player_link.''.urlencode($banned[$i]).'>'.$banned[$i].'</a> (Until: '.$banishedUntil[$i].')<br />';	
						
					if(count($hidden))
						echo '<hr>Could not check '.count($hidden).' character(s):<br />';
						
					for($i = 0; $i < count($hidden); $i++) // Showing hidden players list
						echo '<a href='.$player_link.''.urlencode($hidden[$i]).'>'.$hidden[$i].'</a> (Last Login: '.$lastLogin[$i].')<br />';
						
					echo '<hr>';
				endif;
			?>
		</div>
	</body>
</html>

Here is the example output:
Code:
Banished player(s) (1/64) from Arise:
Maxa Blarta (Until: Jul 03 2009, 15:47:07 CEST because of using unofficial software to play)
Could not check 28 character(s):
Crispt (Last Login: Jun 02 2009, 09:04:32 CEST)
Eplicor (Last Login: Jun 13 2009, 10:05:21 CEST)
Maaiste (Last Login: Jun 13 2009, 10:05:16 CEST)
Anathorn of trimera (Last Login: Jun 09 2009, 17:46:08 CEST)
Avenge Saga (Last Login: Jun 02 2009, 21:14:17 CEST)
Barjus De Algre (Last Login: Jun 11 2009, 07:04:03 CEST)
Fire Burner (Last Login: Jun 13 2009, 09:59:34 CEST)
Gixen (Last Login: Jun 11 2009, 23:43:40 CEST)
Trovaz (Last Login: May 15 2009, 12:30:28 CEST)
Von Ulryk (Last Login: Jun 11 2009, 16:47:25 CEST)
Cupido Sniper (Last Login: Jun 13 2009, 01:57:53 CEST)
Fuu'Djitsu (Last Login: Jun 13 2009, 10:05:42 CEST)
Insurgent (Last Login: Jun 13 2009, 09:59:32 CEST)
Razileon (Last Login: Jun 13 2009, 09:59:43 CEST)
Anxs (Last Login: Jun 13 2009, 09:52:08 CEST)
Bloppy (Last Login: Jun 13 2009, 10:05:34 CEST)
Bronek gonzalez (Last Login: Jun 12 2009, 23:00:18 CEST)
Maurice The Druid (Last Login: Jun 13 2009, 09:59:35 CEST)
Maylinha (Last Login: Jun 10 2009, 06:58:50 CEST)
Sharinhaa (Last Login: May 26 2009, 02:10:18 CEST)
Zaind Artel (Last Login: Jun 08 2009, 03:26:14 CEST)
Dekrepit (Last Login: Jun 10 2009, 09:39:25 CEST)
Dinho Maluko (Last Login: Jun 10 2009, 07:36:44 CEST)
Donote (Last Login: Jun 13 2009, 07:21:44 CEST)
Nanlaw (Last Login: Jun 11 2009, 13:09:50 CEST)
Neo Artemis (Last Login: Jun 13 2009, 09:59:44 CEST)
Odius Hard (Last Login: Jun 13 2009, 10:00:38 CEST)
Vozzy (Last Login: Jun 13 2009, 05:13:14 CEST)
 
that would be a pretty sweet script for a Tibia fansite

Im currently rewriting it with cURL and class, that way you will be able to put an array with guilds you want to check or with worlds - so you will be able to see who is banned from the top experience table, but it will take some time.
 
Back
Top