i ♥ ̿ ̿' ̵͇̿̿̿з=(•̪●)=ε/̵͇̿̿/ ̿' ̿ ̿
|
![]() |
|||||||||||||||||||||||||||||||||||||||||||||
Bots
Was sind Bots ? Viele, die so ganz unvorbereitet Counter-Strike käuflich erworben haben, mußten schnell feststellen, daß das Spiel über keinen Solomodus mit Computergegnern verfügt. Ist ja auch logisch, schließlich handelt es sich bei Counter-Strike um ein reines Internetspiel. Nach der ersten Klatsche gegen die alten Hasen im Internet, wünscht sich so mancher eine KI (Künstliche Intelligenz) Unterstützung, um ersteinmal ein wenig üben zu können und der angeschlagenen Spielerseele ein kleines Erfolgserlebnis zu gönnen. Glücklicherweise gibt es einige pfiffige Kerle der internationalen Counter-Strikegemeinde, die sich dieses Problems selbstlos angenommen haben. Herausgekommen sind eine Vielzahl sogenannter Botprogramme, die man hier kostenlos runterladen und benutzen kann. Der Begriff Bots hat irgendwas zu tun mit Roboter, also autarke Computerspieler, mit denen man ersteinmal üben kann. PodBot Das wohl beste Botprogramm für Counter-Strike ist PodBot, kreiert und liebevoll weiterentwickelt von Count Floyd. Hier erfährst du, wie man PodBot konfiguriert, die Spielstärke der KI an deine Fähigkeiten anpasst und wie man PodBot nutzt, um fehlende Positionen bei einem LAN-Spiel mit nur wenigen Mitspielern aufzufüllen. PodBot verwendet sogenannte Waypoints, um den Bots durch jede beliebige Map zu navigieren. Wie man eigene Waypoints erstellt, erfährst du hier. Natürlich gibt es auch einen Download sowohl für das PodBot-Programm als auch für eine Auswahl von Waypoints für gern gespielte Maps. PodBot Installation zurück Nachdem du dir PodBot in der Sektion Download runtergezogen hast, installierst du es in dein Counter-Strike Verzeichnis. Normalerweise sollte PodBot 2.5 selbst das Verzeichnis finden. PodBot installiert sich selbst in den cstrike Ordner und überschreibt dabei die Datei liblist.gam (s. Bild). Diese Datei öffnest du mit einem Editor wie z.B. Notepad ![]() PodBot Konfiguration zurück Für Solospiele mit PodBot oder bei LAN-Spielen mit einem Listenserver kannst du PodBod über die Datei Podbot.cfg nach deinen Vorstellungen konfigurieren. Dazu gehst du in das PODBot Verzeichnis und öffnest mit einem Editor wie z.B. Notepad ![]() Wichtig sind die Einträge minbotskill und maxbotskill. Sie sind ausschlaggebend für die Spielstärke (Skill) der Bots, wenn du über das PodBot-Menue im Spiel Bots hinzufügst, wobei 0 absolut schwach ist und 100 superstark. Da die KI bei PodBot besser ist, als bei den früheren Versionen, ist für Anfänger ein Skill von 30-50 empfehlenswert. Du kannst natürlich auch eine gewünschte Anzahl Bots, ihre Teamzugehörigkeit, den Skill, Namen und das Modell vorgeben. Das geht über den Eintrag addbot, gefolgt vom Skill, dem Team (T=1 ; CT=2 ; automatisch=5), dem Modell (Aussehen: 1-4 oder automatisch=5) und schließlich dem Namen. Der Eintrag addbot 43 2 2 Rambo erzeugt folglich einen Bot mit einem Skill von 43 im CT-Team mit dem Modell GSG-9 namens Rambo. Das ist zwar anders, als in der Dokumentation beschrieben, aber was soll's, es funktioniert. In den früherer Versionen konnte man auf die Angabe des Modells verzichten. Schließlich könnte der Eintrag bind "=" "podbotmenu" noch interessant für dich sein. Hier gibst du die Taste an, mit der du das Podbot-Menue während des Spiels öffnest, in dieser Einstellung mit =. So nun könntest du gleich losspielen. Aber warte, nicht so schnell. Die Datei BotChat.txt ist verantwortlich für das Botgeschwätz im Spiel. Willst du alle Chats in Deutsch, solltest du diese Datei mit der Datei BotChatGerman.txt aus dem Ordner Botchats austauschen (in BotChat.txt umbenennen !). Du kannst hier natürlich auch eigene Chats hinzufügen. Aber nichts macht soviel Spaß als mit Leuten, die man gut kennt, Counter-Strike zu spielen. Zumindestens die Namen kann PodBot simulieren. Falls du die Bots erst im Spiel hinzufügen willst (und nicht durch den addbot Befehl), mußt du deine Wunschnamen (z.B. Helmut Kohl) gegen die vorgegebenen Namen in der Datei BotNames.txt austauschen. Es gibt noch jede Menge anderer Features in PodBot 2.5, wie z.B. die Waffenauswahl der Bots auf MP's begrenzen oder bestimmte Botreaktionen auf Radiobefehle. Das findest du alles in der Dokumentation readme.html von PodBot im Ordner Docs. Nun kann es aber los gehen. Vergiß nicht, die Anzahl der Spieler beim Spielstart enstprechdend einzustellen. Willst im Spiel irgendetwas ändern, dann öffne das PodBot-Menue (s.Bild). Übrigens, dein kleines Solospiel mit den Bots startet einen Listenserver. Wie du diesen LAN-Server konfigurierst, erfährst du hier. PodBot für einen Dedicated Server PodBot funktioniert auch hier, allerdings nur bei Windows2000 Professional oder Windows2000 Server. Linux wird z.Zt. noch nicht unterstützt. Um den Server mit Bots aufzufülen, kann man einfach über die Einträge min_bots 2 und max_bots 16 die gewünschten Anzahl angeben. Ein weitere Möglichkeit ist über die Commandoline des Servers bzw. eine Ergänzung im podbod.cfg. Da der übliche Konsolenbefehl addbot hier nicht funktioniert, muß vor dem addbot noch das CVAR pb, z.B. pb "addbot 40 1 Klotzkopf", eingegeben werden. Was sind Waypoints ? zurück Mit Hilfe der Waypoints navigieren die Bots sich durch die Map. Jeder einzelne Waypoint ist wie ein Leuchtsignal, auf den sich die Bots zubewegen. Allerdings müssen die Waypoints auch noch durch einen Pfad verbunden sein (s. Bild), damit sich die Bots entlang dieses Pfades bewegen. Aus diesem Grund benötigt man für jede Map eine eigene Waypoint-Datei. In einem Gefecht verlassen die Bots den Pfad. Danach orientieren sie sich wieder anhand der Waypoints, um ihren Weg durch die Map fortzusetzen. Finden sie dann keinen Waypoint, bleiben sie einfach stehen. Daher muß die gesamte Map immer ausreichend viele Waypoints haben, damit die Bots immer auf den richtigen Weg zurückfinden. Zuviele Waypoints wiederum führen bei den Bots zu Verwirrungen, was darin resultiert, daß die Bots immer zwischen einer kurzen Strecke hin- und herpatrollieren. Wußtest du eigentlich schon, daß die Bots blind sind ? Liegt in einem Pfad ein Hindernis, wie z.B. eine Ecke, eine Kiste usw., dann bleibt der Bot daran hängen. Das gilt auch für Leitern, die ja bekanntermaßen nur von einer Seite her bestiegen werden können. Jede Map hat ein Ziel, z.B. einen Fluchtpunkt bei as_maps, eine Geiselrettungszone bei cs_maps und einen Bombenplatz bei den de_maps. Das Ziel muß immer durch einen speziellen Zielwaypoint gekennzeichnet werden, damit die Bots auch richtig mitspielen und beispielsweise eine Geisel retten können. Das gilt natürlich auch für die Gegenseite, die das verhindern soll. Bei einer Geiselrettung ist der anfängliche Geiselaufenthaltsort für die Terrors besonders wichtig, so wie bei einer de_map es wichtig die für Counterterroristen ist, die Bombenplätze zu verteidigen. Um dieses den Bots einzuhämmern, muß die Bedeutung extra durch strategisch wichtige Waypoints gekennzeichnet werden. Wenn du es allerdings mit der Kennzeichnung strategisch wichtiger Punkte übertreibst, kommt es dort immer zu einer wilden Schiesserei, einem Deathmatch. Dann gibt es noch besondere strategische Punkte von denen man ein wichtiges Gebiet gut überwachen kann. An diesen Orten könnte sich das Campen wirklich lohnen. Auch dafür gibt es spezielle Camperwaypoints (s. Bild). Wie du siehst, gibt es einige Steine im Weg eines Bots, die du aus dem Weg räumen mußt. Und vor allem gilt, daß jede neue Waypoint-Datei ausreichend lange getestet werden sollte. Wie erstellt man Waypoints ? zurück Als erstes muß deine Konsole aktivieren. Wie man soetwas macht, erfährst du hier. In der Konsole kannst du die Waypoint Befehle eingeben. Du kannst das aber auch vereinfachen, indem du die Befehle in einem Script ablegst und dann an die Tasten deiner Wahl bindest. Wie man soetwas macht, erfährst du hier. Natürlich gibt es auch eine Übersicht der Waypointbefehle. So, jetzt geht es aber los. Zuerst lädst du die Map, für die du eine Waypoint-Datei erstellen willst. Dann gibst du folgende Befehle über die Konsole ein: autowaypoint on, waypoint on und pathwaypoint on. Mit dem ersten Befehl aktivierst du die automatische Waypointsetzung, mit dem zweiten und dritten Befehl bewirkst du die Anzeige der Wegpunkte als auch der Verbindungspfade dazwischen. Nun läufst du einfach die Map ab. Dort, wo du denkst, daß es sinnvoll wäre, duckst du dich. Alle Bewegungen werden automatisch übernommen, also auch Sprünge ! Beachte dabei aber, Wege über Leitern ersteinmal auszulassen. Sicherlich wird die Zeit nicht ausreichen, in der gegebenen Rundenzeit alle Wege abzugehen. Daher speicher deine Wegpunkt-Datei regelmäßig mit dem Befehl waypoint save ab. Übrigens werden beim Abspeichern immmer die Waypoints auf ihre Gültigkeit geprüft. Solange du noch keine Goals, Rescue Waypoints u.ä. gesetzt hast, wird das Abspeichern verweigert. Mit dem Befehl waypoint save nocheck kannst du dieses umgehen. Die Datei wird dann automatisch in den Standardordner der Waypoints WPTDefault im PodBot-Verzeichnis gespeichert. Sollte die Laufzeit der Map abgelaufen sein, mußt du die Map wie auch die Waypoint-Datei (mit dem Befehl waypoint load) natürlich neu laden. Jetzt setzt du ersteinmal die wichtigen Waypoints. Bei einer cs_map setzt du bei den Geiselrettungszonen einen Zielwegpunkt. Dazu gibst du über die Konsole den Befehl add waypoint ein und wählst aus dem Menue den Rescue Waypoint aus. Du benötigst für jede Geiselrettungszone einen Rescue Waypoint (s. Bild). Bei einer as_map oder de_map dagegen setzt du an der Fluchtzone bzw. bei den Bombenplätzen je ein Goal Waypoint. So, jetzt geht es zu den strategisch wichtigen Punkten. Bei einer de_map sind die Bombenplätze logischerweise äußerst wichtig. Die Terroristen haben da ja schon einen Goal Waypoint. Setze zusätzlich 2-3 Terrorist Important Waypoints. Das machst du mit dem Befehl waypoint add und triffst dann aus dem erscheinenden Menue die entsprechende Auswahl (s. Bild). Die Counterterroristen sind dagegen das verteidigende Team. Setze daher gleich mehrere Counterterrorist Important Waypoints an den Bombenplätzen. Verfahre ebenso bei den cs-maps. Dort, wo die Geiseln anfangs platziert sind, setze mehrere Terrorist Important Waypoints und nur 2-3 Counterterrorist Important Waypoints. Falls die Map noch andere strategisch wichtige Punkte für das eine oder andere Team hat, verfahre ebenso. Vermeide aber diese strategisch wichtigen Punkte für beide Teams gleich zu besetzen, da es sonst an diesen Stellen zu einem Deatchmatch kommt. Wenn du damit fertig bist, vergiß nicht, die Waypoint-Datei abzuspeichern. Jetzt folgt die Feinarbeit. Willst du Bots dazu bringen, auf Leitern zu klettern, dann mußt du Ladder Waypoints setzen. Dazu besteigt du die Leiter, gibst den Befehl add waypoint ein und wählst den entsprechenden Waypoint aus dem erscheidenden Menue aus. Achte dabei darauf, daß der Abstand zwischen den Ladder Waypoints nicht zu kurz ist. Zumindestens am Anfang und Ende der Leiter muß jeweils ein Ladder Waypoint gesetzt sein. Nun müssen aber auch noch die Pfade, also die Verbindung, zwischen den Ladder Waypoints erstellt werden (s. Bild). Dazu setzt du den Befehl pathwaypoint add x ein. Das x steht für die Nummer des Wegpunkts zu dem der Pfad geknüpft werden soll. Die Nummer dieses Waypoints wird angezeigt, wenn du auf diesem Waypoint stehst. Soll die Leiter in beide Richtungen beklettert werden, mußt du logischerweise auch den Pathwaypoint von der anderen Seite her setzen. Damit deine Bots nicht von der Leiter springen, entferne alle nicht notwendigen Pfade von den Ladder Waypoints mit dem Befehl waypoints delete x. Das gleiche gilt natürlich auch für die Waypoints, die zur Leiter führen. Ähnlich verfährst du mit den Waypoints, die die Bots aus den Gebieten führen, in die sie sich während eines Schußwechsels verlaufen haben. Z.B. in der Stierkampfarena der Map cs_espana. Die Bots sollen dort normalerweise den geraden Weg zum Ein- und Ausgang der Arena nehmen. Durch einen Schußwechsel positionieren sich die Bots aber auch mal an den Rand der Arena. Damit sie wieder zurück finden, setzt du überall ausreichend Waypoints. Um aber zu vermeiden, daß die Bots dann immer in der Arena hin- und herlaufen, mußt du die Pfade von den Waypoints des Hauptwegs zu den Außenbereich löschen. Somit gibt es dann nur Pfade vom Außenrand zum Hauptweg, so daß die Bots immer auf den richtigen Weg zurückfinden. Diese Prozedur ist sehr aufwendig, das Ergebnis aber um so besser. Vergiß nicht deine Waypoint-Datei regelmäßig abzuspeichern. Nun kommen wir zu den Wegen auf denen Bots auch mal hängen bleiben können. Bei Ecken, Kisten oder ähnlichem sollten die Waypoints manuell gesetzt werden. Wichtig ist es auch in engen Gängen, die Waypoints in der Gangmitte zu plazieren. Bei Türen und Fenstern o.ä. achte immer darauf, daß lediglich ein Waypoint vor und hinterm Eingang ist, verbunden durch einen geraden Pfad. Lösche alle anderen Verbindungspfade, da es sonst zu Massenaufläufen im Türrahmen kommt. Besteht eine Möglichkeit in Untiefen zu stürzen, ist der Waypoint-Radius entscheidend. Der Radius eines Waypoints gibt den Bots eine gewisse Bewegungsfreiheit, so daß er sich nicht einfach schnurstracks von Waypoint zu Waypoint bewegt. Bei Brücken, Häusersims, Telefondrähten, usw. muß man allerdings genau balancieren, um nicht abzustürzen. Daher solltest du dort den Radius auf 0 stellen (s. Bild), damit der Bot nicht durch die Bewegungsfreiheit runterfällt (Bots sind blind !). Das erreichst du durch den Befehl waypoint setradius 0. Auch diese Prozedur ist sehr zeitaufwendig. Du solltest dieses aber in jedem Falle tun, wenn du nicht willst, daß die Hälfte deiner Bots kampflos in den Tod stürzt. So, jetzt fehlt nur noch das Sahnehäubchen, die Camperpunkte. An Positionen, wo sich das campen lohnen könnte, setze einen Camper Waypoint, falls möglich in geduckter Haltung und in die Richtung, die der Bot seine gesamte Aufmerksamkeit richten soll. Mit dem Befehl waypoint add wählst du aus dem Menue den Punkt Campstart Waypoint aus und schließt den Camperpunkt mit dem gleichen Befehl, aber unter dem Menuepunkt Campend Waypoint. Du kannst natürlich auch beim abschließenden Camperwaypoint in eine andere Richtung schauen. Dann überwacht ein dort campernder Bot dieses komplette Gesichtsfeld. Flags sind nur unter gewissen Umständen notwendig, z.B. wenn der Bot bei einer Geiselbefreiung einen bestimmten Weg einschlagen soll. So sind z.B. Fenster mit Geiseln im Schlepptau immer äußerst ungünstig. Der Befehl dafür setzt du mit waypoint addflag und wählst dann aus dem erscheinenden Menue die gewünschte Flag für diesen waypoint aus (s. Bild). Möchtest du die Bots zwingen einen bestimmten Weg einzuschlagen, dann verwende den Befehl debuggoal x, wobei x die Nummer des Wegpunkts ist, den der Bot anvisieren soll. Für Waypoints im Wasser verwende den Befehl waypoint on clip. Du kannst dann durch die Map und durch Mauern fliegen. Denke aber daran die Autowaypoint-Funktion zu deaktivieren. Da die Bots eigentlich grausame Schwimmer sind, ist es empfehlenswert die Waypointpfade nur so einzustellen, daß die Bots aus dem Wasser wieder herausfinden, aber nicht unbedingt hinein. Nachdem du fertig bist, teste deine Waypoint-Datei lange und ausführlich für jedes Team. Einige Waypoints von mir, u.a verbesserte Waypoints von cs_espana oder cs_winternights, aber auch von cs_altstadt, de_arizona u.a., kannst du dir als Pack hier herunterladen. Weitere Waypoints findest du auf anderen Seiten in der Sektion CS Links. Übersicht der Waypoint-Befehle zurück
|
|
|||||||||||||||||||||||||||||||||||||||||||||
![]() |