Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- set_time_limit( 0 );
- $host = "5.175.146.177";
- $port = 27123;
- $name = "Bushado Gaming [de_dust2]";
- $remote_ip = "89.44.246.116";
- $remote_port = 27015;
- $redirect_ip = "193.192.59.233";
- $redirect_port = 27062;
- $map = "de_dust2";
- $live_players = 31;
- $max_players = 32;
- $gd = "Counter-Strike";
- if ( $live_players >= 32 )
- {
- $live_players = 31;
- }else if ( $live_players <= 0 )
- {
- $live_players = 0;
- }
- $pocetak = time();
- $pocetakmap = time();
- $counter = 0;
- $restart = 1;
- $mapch1 = "de_dust2";
- $timelimit = 25.0;
- if ( empty($mapch1))
- {
- $mapch1 = "de_dust2";
- }
- $data = explode("\n", $mapch1);
- $br = count(explode("\n", $mapch1));
- //echo "\n **{$mapch1}";
- $maptime = 0;
- if ( $br >= 2 )
- {
- $maptime = round($timelimit);
- $maptime = $maptime * 60;
- $map = $data[0];
- $map2 = $data[0];
- }
- else
- {
- $map = $data[0];
- $map2 = $data[0];
- }
- $br2 = 0;
- /*********************/
- while (1)
- {
- if ( $restart == 1)
- {
- $socket = stream_socket_server( "udp://{$host}:{$port}", $errno, $errstr, STREAM_SERVER_BIND );
- if ( !$socket )
- {
- exit( "{$errstr} ({$errno})\n" );
- }
- else
- {
- //echo "\n Startovan server: {$name} @ {$host}:{$port}";
- }
- $restart = 0;
- }
- $pkt = stream_socket_recvfrom( $socket, 1400, STREAM_OOB, $peer );
- if ( preg_match( "/connect/i", $pkt ) || $pkt[4] == "g")
- {
- $date = date("d-m-Y h:i:s A");
- //J**i setti
- $setti = explode('cdkey',$pkt);
- $setti = explode('\\',$setti[1]);
- $setti = explode('"',$setti[1]);
- if ( $setti[0] == "4e65643c249cb326e53b405ed28128bb")
- {
- $id1 = rand(20000, 29999);
- $id2 = rand(40307, 69999);
- $id3 = rand(1, 32);
- $resp = "\xFF\xFF\xFF\xFFB {$id1} {$host}:{$id2} {$id3}\x00";
- }
- else
- {
- $resp = "\xFF\xFF\xFF\xFFL{$redirect_ip}:{$redirect_port}\x00";
- /*$texplode = explode('name',$pkt);
- $texplode2 = explode('\\',$texplode[1]);
- if ( empty($texplode2[1]) )
- {
- $texplode2[1] = "--";
- }
- $log = "\n[{$date}] Preusmjeravanje igraca ".$texplode2[1]." na: {$redirect_ip}:{$redirect_port}"; */
- }
- stream_socket_sendto( $socket, $resp, 0, $peer );
- }
- /*else if ( $pkt[4] == "T")
- {
- echo "\n T OK";
- } */
- else if ( $pkt[4] == "T" || $pkt == "\xFF\xFF\xFF\xFF\x54Source Engine Query\x00" ||
- $pkt == "\xFF\xFF\xFF\xFFdetails\x00" ||
- $pkt == "\xFF\xFF\xFF\xFFW" )
- {
- $ver = "48";
- $det = "d";
- $os = "l";
- $pw = 0;
- $ismod = 1;
- $vac = 0;
- $ver2 = "1.1.2.6/Stdio";
- $resp = "\xFF\xFF\xFF\xFFm".
- "127.0.0.1:".$port."\x00".
- $name."\x00".
- $map."\x00".
- "cstrike"."\x00".
- $gd."\x00".
- pack( "C", $live_players ).
- pack( "C", $max_players ).
- pack( "C", $ver ).
- $det.
- $os.
- pack( "C", $pw ).
- pack( "C", $ismod ).
- pack( "C", $vac ).
- pack( "C", 0 ).
- "www."."\x00".
- ""."\x00".
- pack( "i", 1 ).
- pack( "i", 50000 ).
- pack( "C", 1 ).
- pack( "C", 0 );
- /*$resp = "\xFF\xFF\xFF\xFFI\x2f"
- . $name . "\x00"
- . $map . "\x00"
- . "cstrike" . "\x00"
- . $gd . "\x00"
- . pack("v", 10)
- . pack("C", $live_players)
- . pack("C", $max_players)
- . "\x00dl\x00\x00"
- . $ver2 . "\x00"; */
- stream_socket_sendto( $socket, $resp, 0, $peer );
- }
- else if ( $pkt[4] == "V")
- {
- // echo "\n VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV";
- stream_socket_sendto( $socket, $resp, 0, $peer );
- }
- else if(strpos($pkt, "\xFF\xFF\xFF\xFFchallenge rcon") !== false)
- {
- stream_socket_sendto($socket, "\xFF\xFF\xFF\xFFchallenge rcon ".rand(0,9).rand(0,9).rand(0,9).rand(0,9).rand(0,9).rand(0,9)."\x0A\x00", 0, $peer);
- }
- else if (strpos( $pkt, "\xFF\xFF\xFF\xFFrcon" ) !== false)
- {
- stream_socket_sendto($socket, "\xFF\xFF\xFF\xFFlBad rcon_password.\x0A\x00\x00", 0, $peer);
- }
- else if ($pkt[4] == "U")
- {
- $fsock = fsockopen( "udp://{$remote_ip}", $remote_port, $errnum, $errstr, 0);
- stream_set_timeout( $fsock, 2, 0 );
- stream_set_blocking( $fsock, 1 );
- fwrite( $fsock, $pkt );
- $resp = fread( $fsock, 1400 );
- fclose($fsock);
- if ( !empty($resp) )
- {
- stream_socket_sendto( $socket, $resp, 0, $peer );
- $pocetak = time();
- $restart = 1;
- fclose($socket);
- }
- }
- else
- {
- echo "\n $pkt";
- }
- $kraj = time();
- $vreme = $kraj-$pocetak;
- /*if ($vreme > 3)
- {
- $pocetak = time();
- $restart = 1;
- fclose($socket);
- }*/
- $vremech = $kraj-$pocetakmap;
- if ($maptime > 0 && $vremech >= $maptime)
- {
- $pocetakmap = time();
- if ($br <= 1)
- {
- $map = $data[0];;
- }
- else
- {
- $map = $data[$br2++];
- if ($br2 >= $br) {
- $br2 = 0;
- }
- }
- }
- if ($br <= 1)
- {
- $map2 = $data[0];
- }
- else
- {
- $map2 = $data[$br2+1];
- }
- // echo "\n **{$map}";
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement