leider ist es mir derzeit nicht moeglich, mich auf AM.de anzumelden, oder zu registrieren. Seit der Migration auf phpBB ist das wohl so.
Nun, da ich hier ja zwei Groessen im small scripting weiss, erlaube ich mir mal hier eine Anfrage zu stellen.
Der Hintergrund ist, wie ich es vor der Migration von AM.de erklaerte, dass ich derzeit den Genuss einer recht leistungsstarken Internetanbindung geniesse, so dass ich all meine Webprojekte (Webseiten), auf den heimischen 2. Rechner zurueckzog.
Da diese Maschine aber so nur vor sich hinlief, dachte ich mir doch mal ein wenig Anreize zu schaffen.
2 CS 1.6 Server laufen mit AdminMod, LogD und neuerdings auch mit PODBots. (4 auf jeder Instanz).
Das hebt natuerlich die CPU Last, den Energieverbrauch und erzeugt unsinnig viele Logfiles, die ohnehin nur zu geringem Teil ausgewertet werden, weil die Bots in den Stats nicht beruecksichtig werden.
Ergo lag es auf der Hand, ein 'plugin' zu schreiben, dass die automatisch joinenden PODBots am Mapanfang in die Wueste schickt. Joint ein 'echter' Spieler, werden sie via plugin_connect aufgerufen. Funktioniert auch, nachdem ich plugin_disconnect entfernt habe.
Diese beiden 'Funktionen' stehen sich scheinbar im Weg, denn wenn ich den Server wieder verlasse, dann connectet ja ein Bot, womit die 'Funktion' plugin_connect aufgerufen wird. Das script ist nicht in der Lage Bots von 'echten Spielern' zu unterschieden. Ich bin, denke ich, nicht in der Lage den Code vom bk_botmanager auch nur annaehernd nachzuvollziehen.
Auf dem einen Server ist das kein Problem, da nach spaetestens 30 Minuten ein Mapwechsel ansteht. Beim Start der neuen Map werden die Bots ja gekillt, wenn kein neuer Spieler auf dem Server ist.
Der andere Server zieht aber 24 Stunden undbegrenzt de_dust2 durch und einmal aktivert, laufen es dann auch die Bots. Natuerlich koennte ich jetzt damit arbeiten, dass die Bots dort alle 2 Stunden von bk_cron gekickt werden, aber wenn dann ein Spieler auf dem Server ist, kommen sie auch nicht wieder.
Vielleicht habt ihr ja noch ein paar Ideen, wie man beim Verlassen des letzten Spielers die Bots entfernen kann. Ich haeng den Code mal hier ein:
- Code: Alles auswählen
/******************************************/
/** SSH's Botcontroller **/
/** **/
/** Name: plugin_ssh_botcontrol **/
/** Author: SSH (stillsetzhut@web.de) **/
/** Released: 25/03/12 **/
/** Version: 0.1beta **/
/** **/
/** Starts and stops PODBots automaticly **/
/******************************************/
#include <core>
#include <console>
#include <string>
#include <admin>
#include <adminlib>
#define ACCESS_SSH 256
new STRING_VERSION[MAX_DATA_LENGTH] = "0.1beta";
public admin_startbots(HLCommand,HLData,HLUserName,UserIndex) {
if(access(ACCESS_SSH,"") == 1) {
exec("pb fillserver");
}
return PLUGIN_HANDLED;
}
public plugin_connect(HLUserName,HLIP,UserIndex) {
exec("pb fillserver");
return PLUGIN_CONTINUE;
}
public admin_stopbots(HLCommand,HLData,HLUserName,UserIndex) {
if(access(ACCESS_SSH,"") == 1) {
exec("pb removebots");
}
return PLUGIN_HANDLED;
}
public killbots (Timer,Repeat,HLUser) {
exec("pb removebots");
return PLUGIN_CONTINUE;
}
public plugin_init() {
plugin_registerinfo("SSH's Botcontroller","Starts an stops PODBots automaticly",STRING_VERSION);
plugin_registercmd("admin_startbots","admin_startbots",ACCESS_SSH,"Starts the PODBots");
plugin_registercmd("admin_stopbots","admin_stopbots",ACCESS_SSH,"Stops the PODBots");
set_timer("killbots",15,1);
return PLUGIN_CONTINUE;
}
ach, und bitte nichts fuer Ungut, wenn das hier nicht gewuenscht ist, phpBB hat ja eine wirkungsvolle Loeschfunktion.
viele Gruesse
SSH aka [-=THH=-]Stillsetzhut