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.
Propojení herního serveru s webem
- lamin_cz
- Level 2.5
- Příspěvky: 320
- Registrován: říjen 12
- Bydliště: Kostelec u Holešova
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: Propojení herního serveru s webem
Máš namysli něco takového?
http://www.minecraftforum.net/forums/ar ... onsole-php
http://www.minecraftforum.net/forums/ar ... onsole-php
- CPU: Cx6x86L-PR150+
- MB: XT PRO2
- GPU: integrovaná
- RAM: 28Mb SDRAM
Re: Propojení herního serveru s webem
Ano, přesně toto. na to jsme i koukal, ale nefungovalo. Tudíž nějaké jiné řešení?
- lamin_cz
- Level 2.5
- Příspěvky: 320
- Registrován: říjen 12
- Bydliště: Kostelec u Holešova
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: Propojení herního serveru s webem
Nefungovalo ... to je široký pojem ... copak Ti to psalo?
- CPU: Cx6x86L-PR150+
- MB: XT PRO2
- GPU: integrovaná
- RAM: 28Mb SDRAM
Re: Propojení herního serveru s webem
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
A config
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 *****/
?>
- lamin_cz
- Level 2.5
- Příspěvky: 320
- Registrován: říjen 12
- Bydliště: Kostelec u Holešova
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: Propojení herního serveru s webem
Mě to teda žádnou chybu nepíše ... ale nevím ... neznám heslo na server
https://pospisilik.eu/mc/
https://pospisilik.eu/mc/
- CPU: Cx6x86L-PR150+
- MB: XT PRO2
- GPU: integrovaná
- RAM: 28Mb SDRAM
Re: Propojení herního serveru s webem
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.
- lamin_cz
- Level 2.5
- Příspěvky: 320
- Registrován: říjen 12
- Bydliště: Kostelec u Holešova
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: Propojení herního serveru s webem
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
http://www.minecraftforum.net/forums/su ... aft-server
- CPU: Cx6x86L-PR150+
- MB: XT PRO2
- GPU: integrovaná
- RAM: 28Mb SDRAM
Re: Propojení herního serveru s webem
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
-
- 5
- 19701
-
od Tay
Zobrazit poslední příspěvek
10 úno 2025 12:09
-
- 9
- 3607
-
od Roys
Zobrazit poslední příspěvek
02 zář 2024 10:51
-
- 6
- 2100
-
od HeatherStar
Zobrazit poslední příspěvek
14 pro 2024 18:13
-
- 9
- 2391
-
od doudinin
Zobrazit poslední příspěvek
23 dub 2025 09:38
-
- 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ů