2016-07-10 6 views
-1

Très bien, donc tout d'abord, je suis encore un peu un débutant en PHP.
J'essaye de faire un chatbot qui répond au mot-clé "tais-toi" des personnes qui disent cela au bot dans mon serveur de jeu, mais je n'arrive pas à trouver comment ...PHP - Essayer de faire un chatbot pour mon serveur de jeu

Voici le code d'origine du bot ...

<?php 
$choosechar = "#43CC#1#35#ItsJustABot#%"; 
$fh = fopen('badtimetim.txt','r'); 
$word_array = array(fgets($fh)); 
$word = rand(0,58); 
$lines = file("badtimetim.txt"); 
while ($line = fgets($fh)) { 
// <... Do your work with the line ...> 
// echo($line); 
// Connect to the AO Server 
if (!($fp = fsockopen("127.0.0.1", "27017", $errno, $errstr, 15))) { 
die("Failed to connect. Doesn't seem like the server is up anyway?"); 
} 

// Set timeout to 1 second 
if (!stream_set_timeout($fp, 1)) die("Could not set timeout."); 

// Fetch first line of response and echo it 
echo fgets($fp); 

// Say line and repeat 
fwrite($fp, $choosechar); 
fwrite($fp, "#4D90#chat#(a)dolannormal#Dolan#dolannormal#".$lines[array_rand($lines)]."#jud#1#1#0#0#0#0#35#0#1#%"); 
sleep(120); 
// Stuff 
echo fgets($fp); 
} 

fclose($fh); 

ce que je suis exactement essayer d'atteindre ici est quand le robot détecte ce (astérisques devrait être wildcards ou quelque chose):

#4D90#chat#*#*#*#shut up#*#*#*#*#*#*#*#*#*#*#% 

Je veux que le bot envoyer ces données au serveur en réponse à l'aide de fwrite :

#4D90#chat#(a)dolanangry#Dolan#dolanangry#no#jud#1#1#0#0#0#0#35#0#1#% 

Comment procéder? Toute aide est appréciée, merci.

EDIT: J'ai oublié de mentionner que j'utilise un fichier .bat pour exécuter PHP et le code PHP et non un site Web.

EDIT2: question plus spécifique Fait

Répondre

-1
$input_string_with_shut_up=$_POST['chat_msg'] 
$output=str_replace('%shut up%','#4D90#chat#(a)dolanangry#Dolan#dolanangry#no#jud#1#1#0#0#0#0#35#0#1#%',$input_string_with_shut_up) 
echo $output; 

Cela pourrait faire

+0

désolé mais cela ne fonctionne pas. Je n'utilise pas de site Web pour exécuter le bot. J'utilise un fichier .bat qui exécute php et le fichier php avec le code que j'ai utilisé. aussi, je suis encore un débutant dans php et idk où le placer, donc je l'ai placé près de la fin du code. (sous le commentaire "// Stuff"). et ce que j'essaye de faire est "envoie des données" au serveur avec fwrite quand quelqu'un dit "tais-toi" – Headshot