Propojení herního serveru s webem

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

MrFiliper
Level 1
Level 1
Příspěvky: 63
Registrován: březen 15
Pohlaví: Muž
Stav:
Offline

Propojení herního serveru s webem

Příspěvekod MrFiliper » 27 pro 2015 01:47

Již dlouho dobu pracuji na kompletním propojení herních serverů s webem. Vše mi jde jedna báseň, přesto jsem se ale zasekl u jedné věcičky, která je vcelku důležitá a na internetu jsem nic podobného nenašel.

Jelikož mám web jak pro hráče minecraftu, tak zde mám i administraci. Chci tam nacpat opravdu vše, co bude potřeba. Konzole patří k těm potřebným věcem. Moje otázka tedy zní jak na výpis a zápis do konzole? Jak navázat komunikaci se serverem přes php a vypisovat data, aniž bych musel javascriptem pře načítat stránku. RCON tu je, ale to není to, co já potřebuji. Slyšel jsem že to lze udělat nějak přes sockety, i když jsem koukal do php dokumentace, jsem trošičku mimo. Byl by tu nějaký dobrák, který by mi ukázal jak na to? Propojení serveru, výpis dat, zápis dat? To vše v reálném čase.

Děkuji za pomoc.

Reklama
Uživatelský avatar
lamin_cz
Level 2.5
Level 2.5
Příspěvky: 320
Registrován: říjen 12
Bydliště: Kostelec u Holešova
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Propojení herního serveru s webem

Příspěvekod lamin_cz » 27 pro 2015 13:47

  • CPU: Cx6x86L-PR150+
  • MB: XT PRO2
  • GPU: integrovaná
  • RAM: 28Mb SDRAM
PHP, MySQL, HTML, CSS, jQuery ...

MrFiliper
Level 1
Level 1
Příspěvky: 63
Registrován: březen 15
Pohlaví: Muž
Stav:
Offline

Re: Propojení herního serveru s webem

Příspěvekod MrFiliper » 27 pro 2015 20:17

Ano, přesně toto. na to jsme i koukal, ale nefungovalo. Tudíž nějaké jiné řešení?

Uživatelský avatar
lamin_cz
Level 2.5
Level 2.5
Příspěvky: 320
Registrován: říjen 12
Bydliště: Kostelec u Holešova
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Propojení herního serveru s webem

Příspěvekod lamin_cz » 27 pro 2015 21:46

Nefungovalo ... to je široký pojem ... copak Ti to psalo?
  • CPU: Cx6x86L-PR150+
  • MB: XT PRO2
  • GPU: integrovaná
  • RAM: 28Mb SDRAM
PHP, MySQL, HTML, CSS, jQuery ...

MrFiliper
Level 1
Level 1
Příspěvky: 63
Registrován: březen 15
Pohlaví: Muž
Stav:
Offline

Re: Propojení herního serveru s webem

Příspěvekod MrFiliper » 27 pro 2015 23:23

Hlásí to chybu: Warning: socket_connect() [function.socket-connect.html]: in C:\Complex-Web-Server-2\www\mcterm\mc_interface.php on line 90
Nemohlo b�vo�����en�proto�e c�v�ta�e aktivn�dm�.

Kód

Kód: Vybrat vše

<?php
include( "mcterm_cfg.php" );

@session_start();

//get password
if( isset( $_SESSION['mineremote_password'] ) ) {
   $password = $_SESSION['mineremote_password'];
} else {
   $password = "";
}

//checks to see if the password is valid
function check_pwd() {
   global $server, $port, $password;
   $rval = FALSE;
   
   $socket = socket_create( AF_INET, SOCK_STREAM, SOL_TCP );
   if( socket_connect( $socket, $server, $port ) === FALSE ) {
      exit( socket_strerror( socket_last_error( $socket ) ) );
   }
   
   //check the prompt line
   $line = socket_read( $socket, 1024 );
   if( preg_match( '/no password/i', $line ) ) {
      //no password set
      $rval = TRUE;
   } else {
      //send the password and check the resposne
      socket_write( $socket, $password );
      $line = socket_read( $socket, 1024 );
      if( substr_compare( '+ Access granted', $line, 0, 16 ) == 0 ) {
         $rval = TRUE;
      }
   }
   
   socket_close( $socket );
   
   return $rval;
}


//runs a cmd and returns the response
function run_cmd( $cmd ) {
   global $server, $port, $password, $response_delay;
   
   $socket = socket_create( AF_INET, SOCK_STREAM, SOL_TCP );
   if( socket_connect( $socket, "localhost", $port ) === FALSE ) {
      exit( socket_strerror( socket_last_error( $socket ) ) );
   }

   //check the prompt
   $line = socket_read( $socket, 1024 );
   if( !preg_match( '/no password/i', $line ) ) {
      //sign in with the password and check to see if it worked
      socket_write( $socket, $password );
      $line = socket_read( $socket, 1024 );
      if( substr_compare( '+ Access granted', $line, 0, 16 ) != 0 ) {
         
         return "<b style='color: red;'>ACCESS DENIED!</b><br/>\n";
      }
   }
   
   //do the command
   socket_write( $socket, $cmd );

   $socket_list = Array( $socket );
   $null = NULL;

   //read the response allowing $response_delay seconds between lines before closing the connection
   $line = "";
   while( socket_select( $socket_list, $null, $null, $response_delay ) != FALSE ) {
      $line .= socket_read( $socket, 1024 )."<br/>";
      $socket_list = Array( $socket );
   }
   
   //close the connection
   socket_close( $socket );
   
   //return the response
   return $line;
}

//This just checks for msgs on the server and returns the first that it finds
//This is following the long-poll model for persistent ajax connections
function poll_server_msgs() {
   global $server, $port, $password, $poll_timer;
   
   $socket = socket_create( AF_INET, SOCK_STREAM, SOL_TCP );
   if( socket_connect( $socket, "localhost", $port ) === FALSE ) {
      exit( socket_strerror( socket_last_error( $socket ) ) );
   }

   //check the prompt
   $line = socket_read( $socket, 1024 );
   if( !preg_match( '/no password/i', $line ) ) {
      //sign in with the password and check to see if it worked
      socket_write( $socket, $password );
      $line = socket_read( $socket, 1024 );
      if( substr_compare( '+ Access granted', $line, 0, 16 ) != 0 ) {
         
         return "<b style='color: red;'>ACCESS DENIED!</b><br/>\n";
      }
   }
   
   $socket_list = Array( $socket );
   $null = NULL;

   //check for any msgs
   $line = "";
   if( socket_select( $socket_list, $null, $null, $poll_timer ) != FALSE ) {
      $line .= socket_read( $socket, 1024 )."<br/>";
      $socket_list = Array( $socket );
   }
   
   //close the connection
   socket_close( $socket );
   
   //return the response
   return $line;
}
?>


A config

Kód: Vybrat vše

<?php
/***** CONFIG OPTIONS *****/

//number of seconds to allow for a command to respond
$response_delay = 1;
//number of seconds to wait when polling for msgs
//(Has to be less than your PHP script timeout)
$poll_timer = 1;
//command port for mineremote
$port  = 25565;
//server hosting mineremote
$server = "82.208.17.27";

/***** END CONFIG *****/
?>

Uživatelský avatar
lamin_cz
Level 2.5
Level 2.5
Příspěvky: 320
Registrován: říjen 12
Bydliště: Kostelec u Holešova
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Propojení herního serveru s webem

Příspěvekod lamin_cz » 28 pro 2015 00:27

Mě to teda žádnou chybu nepíše ... ale nevím ... neznám heslo na server
https://pospisilik.eu/mc/
  • CPU: Cx6x86L-PR150+
  • MB: XT PRO2
  • GPU: integrovaná
  • RAM: 28Mb SDRAM
PHP, MySQL, HTML, CSS, jQuery ...

MrFiliper
Level 1
Level 1
Příspěvky: 63
Registrován: březen 15
Pohlaví: Muž
Stav:
Offline

Re: Propojení herního serveru s webem

Příspěvekod MrFiliper » 28 pro 2015 00:58

To mi jde také, ale když zadám heslo (jakékoliv, protože nevím kde to heslo vzít), tak to v konzoli následně píše tuto chybu. Když budu vědět, kde a jaké heslo tam zadat, možná to fungovat bude.

Uživatelský avatar
lamin_cz
Level 2.5
Level 2.5
Příspěvky: 320
Registrován: říjen 12
Bydliště: Kostelec u Holešova
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Propojení herního serveru s webem

Příspěvekod lamin_cz » 28 pro 2015 09:55

Tak jsem si to pročetl a na MC serveru je potřeba, aby Ti běželo následující:
http://www.minecraftforum.net/forums/su ... aft-server
  • CPU: Cx6x86L-PR150+
  • MB: XT PRO2
  • GPU: integrovaná
  • RAM: 28Mb SDRAM
PHP, MySQL, HTML, CSS, jQuery ...

MrFiliper
Level 1
Level 1
Příspěvky: 63
Registrován: březen 15
Pohlaví: Muž
Stav:
Offline

Re: Propojení herního serveru s webem

Příspěvekod MrFiliper » 28 pro 2015 21:45

Tudíž bych musel zvýšit konfiguraci VPS serveru a převést servery z gamehostingu sem. Je ještě nějaká jiná možnost, jak se připojit na vzdálenou konzoli serveru?


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Pomoc s webem
    od Tay » 09 úno 2025 15:53 » v Web-tipy a vaše weby
    5
    19701
    od Tay Zobrazit poslední příspěvek
    10 úno 2025 12:09
  • Složení herního PC +-40.000,-
    od Roys » 28 srp 2024 12:09 » v Rady s výběrem hw a sestavením PC
    9
    3607
    od Roys Zobrazit poslední příspěvek
    02 zář 2024 10:51
  • Sestava herního PC 30-35k
    od HeatherStar » 13 pro 2024 21:32 » v Rady s výběrem hw a sestavením PC
    6
    2100
    od HeatherStar Zobrazit poslední příspěvek
    14 pro 2024 18:13
  • Upgrade herního pc
    od doudinin » 22 dub 2025 04:17 » v Rady s výběrem hw a sestavením PC
    9
    2391
    od doudinin Zobrazit poslední příspěvek
    23 dub 2025 09:38
  • Konzultace herniho PC
    od Teriskor » 12 led 2025 19:22 » v Rady s výběrem hw a sestavením PC
    7
    2137
    od meda2016 Zobrazit poslední příspěvek
    13 led 2025 16:22

Zpět na “Programování a tvorba webu”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 5 hostů