Junior Spellweaver
- Joined
- Jul 19, 2007
- Messages
- 142
- Reaction score
- 0
Ive decided to make this thread cuz theres allot of good servers out there with pages looking like something frontpage would spit out.. besides it was time to give something back to the rz community =)
I could post all scripts from castle sieges to clan hall owners lol.. but i will just post this 3 for example.. and ofcourse learning purposes..
Server Status:
anyway status script is the easyest thing to do with php.. and i wont even try to explain it since its mostly obvious..
Acc creation:
I wasted allot of time to get to know what encryption l2 uses for passwords.. anyway i wanted to spare you some time..
First create acc.php file in same directory as index.. and add this script to it
after that add this to index
Online Players:
This script connects to the database(that means you need to have php connected to sql.. if you need any help with it try searching with google for apache php mysql install guides and i bet first link will work). Ive explained some of the code.. so learning from it should be easy..
]sometimes you will only get for example clan id.. not the name of it.. and in that case i suggest you use 2 whiles (one inside the other) to check other tables for names...
hope it was helpful.. enjoy
I could post all scripts from castle sieges to clan hall owners lol.. but i will just post this 3 for example.. and ofcourse learning purposes..
Server Status:
anyway status script is the easyest thing to do with php.. and i wont even try to explain it since its mostly obvious..
PHP:
<?php print'<table width="150">'; $server = "127.0.0.1"; $portg = "7777"; $portl = "9014"; $timeout = "5"; if ($server and $port and $timeout) { $game = @fsockopen("$server", $portg, $errno, $errstr, $timeout); $login = @fsockopen("$server", $portl, $errno, $errstr, $timeout); } print'<tr><td align="center"><strong>Server Status</strong></td></tr>'; if($login) { print'<tr><td>Login:</td><td><font color="#00FF00"><strong> Online</strong></font><br><br></td></tr>'; } else { print'<tr><td>Login:</td><td><font color="#FF0000"><strong> Offline</strong></font><br><br></td></tr>'; } if($game) { print'<tr><td>Game:</td><td><font color="#00FF00"><strong> Online</strong></font></td></tr>'; } else { print'<tr><td>Game:</td><td"><font color="#FF0000"><strong> Offline</strong></td></tr>'; } print'</table>';?>
Acc creation:
I wasted allot of time to get to know what encryption l2 uses for passwords.. anyway i wanted to spare you some time..
First create acc.php file in same directory as index.. and add this script to it
PHP:
<?php define('mySQL_hostname', '127.0.0.1'); //database IP define('mySQL_database', 'Database'); //database name define('mySQL_username', 'User'); //database user define('mySQL_password', 'Pass'); //database password function l2j_encrypt($password) { return base64_encode(pack("H*", sha1(utf8_encode($password)))); } $str = l2j_encrypt($_POST['pass']); $user = $_POST["name"]; $db_link = mysql_pconnect( mySQL_hostname, mySQL_username, mySQL_password ) or die( 'Error connecting to mysql<br><br>'.mysql_error() ); $db_select = mysql_select_db( mySQL_database, $db_link ) or die( 'Error connecting to Database<br><br>'.mysql_error() ); if ($user == '') { print'Incorrect UserID'; mysql_close(); } else { $db_add = mysql_query( "INSERT INTO `accounts` VALUES ('$user', '$str', '0', '0', '')" ) or die( 'Error: '.mysql_error() ); } print 'Account Created<br><br>Enjoy youre gameplay.'; mysql_close();?>
Code:
<form action="acc.php" method=post> UserID:<input type="text" name="name" size 20><br><br> Password:<input type="password" name="pass" size 20><br><br> <input type=submit name="submit" value="Login"> </form>[/COLOR]
Online Players:
PHP:
//connects to mysql
$db = mysql_pconnect( '127.0.0.1', 'dbUsername', 'dbPassword');
mysql_select_db( 'l2jdatabaseName', $db ); // Change to your gameserver database name
// get number of online players (just the number) not all their data of each
$query_number = "SELECT COUNT(*) AS number FROM characters WHERE online='1'";
$result_number = mysql_query( $query_number ) or die ( mysql_error() );
$number = mysql_result(0, $result_number, 'number');
// Print the number
echo 'Players online :'.$number;
This script connects to the database(that means you need to have php connected to sql.. if you need any help with it try searching with google for apache php mysql install guides and i bet first link will work). Ive explained some of the code.. so learning from it should be easy..
]sometimes you will only get for example clan id.. not the name of it.. and in that case i suggest you use 2 whiles (one inside the other) to check other tables for names...
hope it was helpful.. enjoy
Last edited by a moderator: