Mehrere Startpunkte
Mehrere Startpunkte pro Team ...
VORWORT Damit man eine Map in Counter-Strike spielen kann bedarf es einiger zusätzlicher Dinge, auf welche dieses Tutorial eingehen wird. Es handelt sich hierbei allerdings nicht um ein Tutorial für komplette Neueinsteiger. Mit den Grundfunktionen von Hammer sollte man bereits vertraut sein. Eine Map für Counter-Strike benötigt zu allererst einmal andere Startpunkte und Buyzones, damit man ein Team wählen und Waffen kaufen kann. Darüber hinaus gibt es natürlich für jedes der beiden Map Objectives zusätzliche Entities und die Möglichkeit die Kameraansicht während des Auswählens des Teams festzulegen.

STARTPUNKTE • In Counter-Strike gibt es für jedes der beiden Teams ein seperates Spawnentity. Für die Counter Terroristen ist dies das Pointentity info_player_counterterrorist, das Gegenstück für die Terroristen lautet folglich info_player_terrorist. Beide funktionieren vom Prinzip her genauso wie das dir sicher schon bekannte info_player_start Entity. Wichtig ist allerdings, dass beim Rundenneustart nur ein Spieler pro Entity spawnen kann. Deswegen wird die maximale Teamgröße an die Anzahl der für das Team vorhandene Startpunkte angepasst. Hast du zum Beispiel nur drei Startpunkte pro Team, kannst du maximal mit sechs Leuten spielen. Weitere Spieler werden in den Spectator Modus verbannt. Deswegen solltest du am besten 20 Startpunkte pro Team setzen.

Buyzones definieren
Buyzones per Blockentity definieren.

BUYZONES • Im Gegensatz zu früheren Counter-Strike Versionen befindet sich im Bereich um die Startpunkte herum nicht mehr automatisch eine Buyzone. Diese muss nun, wie früher aber auch schon möglich, durch ein Blockentity markiert werden, welches im Spiel unsichtbar ist. Man kann nur kaufen solange man sich in genau diesem Block befindet. Für eine Buyzone brauchst du folglich zu aller erst einen Block, den du mit der toolstrigger Textur belegst, welche im Editor wegen ihrer Transparenz direkt auffällt. Du kannst auch mehrere Blöcke ziehen, wenn du zum Beispiel möchtest, dass man auch im angrenzendem Gang noch kaufen können soll. Markiere nun alle Blöcke und binde sie mit Tie To Entity an das Blockentity func_buyzone. Nun musst du in den Entityoptionen nur noch beim Key Team Number das Team angeben, welches innerhalb der Buyzone kaufen dürfen soll. Buyzones sind natürlich nicht an die Startpunkte gebunden. Es ist somit auch gut möglich an einem ganz anderen Punkt der Map weitere Zonen zu erstellen.

Kamerasystem
Eine Kamera mit info_target ausrichten.

MENUKAMERA Die Kameraansicht während man sich im Menu befindet ist sehr einfach zu steuern. Man benötigt nur das Pointentity point_viewcontrol. Wie sein Name erahnen lässt, steuert es den Blick des Spielers. Das Entity muss nur an die gewünschte Stelle gesetzt und ausgerichtet werden. Das Ausrichten kann man auch automatisch vornehmen lassen indem man dem Entity einfach den Punkt angibt, auf welchen es schauen soll. Dieser Punkt kann ein jedes andere Entity sein. Falls an der gewünschten Stelle aber keines vorhanden ist, welches man angeben könnte, kann man dort einfach ein weiteres Entity setzen, für solch einfache Zwecke ist das Pointentity info_target gedacht. Seine einzige Bestimmung ist es anderen Entities als Ziel zu dienen. Dem info_target musst du natürlich einen Namen geben, welchen du dann unter dem Key Entity To Look At bei unserem point_viewcontrol angibst. Wie du sicher in manchen Maps schon bemerkt hast, kann man mehrere dieser Sichtkontrollen in einer Map nutzen.

Gegenstände Hochjagen
Breakables mit der Bombe auslösen.

BOMBENPLÄTZE Bombenplätze ähneln vom Aufbau sehr den Buyzones. Um einen Platz zu markieren, auf dem man die Bombe legen kann wird wieder ein Block mit der toolstrigger Textur benötigt. Diesmal musst du das ganze aber zu einem Blockentity namens func_bombtarget machen. Sobald sich der Spieler mit der Bombe innerhalb des Blockes befindet, kann er die Bombe legen. Wenn diese explodiert gewinnen zwar die Terroristen und die Runde wird neugestartet, doch zerstört hat die Bombe in der Map nichts. Außer der Explosion sieht man rein gar nichts. Um das zu ändern benötigst du noch ein paar Spezialeffekte. Ich gehe hier nur auf einen exemplarisch ein, welcher aber in fast jeder Defusion Map genutzt wird. Rund um den Bombenplatz erstellst du dafür mehrer func_breakables. Was du genau hochjagst bleibt dir natürlich selbst überlassen. Damit Spieler die Obejekte aber nicht schon vorher zerstören können und alles auch wirklich zerstört wird musst du noch einige Einstellungen vornehmen. Zuerst setzt du bei deinen func_breakables die Flags Only Break On Trigger und Don't Take Physics Damage und gibt's den Entities Namen. Dies verhindert, dass die Entities während des Spieles Schaden nehmen und dann nur durch ein anderes Entity ausgelöst werden können. Dieses Auslöser Entity ist dein gerade erstelltes func_bombtarget, in dessen Outputs du nun die verschiedenen func_breakables angeben musst. Als Output Ereignis musst du BombExplode nutzen. Natürlich kannst du mehrere Bombenplätze bauen, du solltest aber darauf achten, dass du nicht die verschiedenen Effekte durcheinander bringst und dann ungewollt etwas explodiert, obwohl es sehr weit vom in der Runde genutzten Bombenplatz entfernt liegt.

Kamerasystem
Den Geiseln den Weg zeigen.

GEISELN RETTEN • Maps mit Geiseln benötigen wesentlich mehr Entities für das Map Objective. Wieder gibt es ein Blockentity, welches in diesem Falle die Zone markiert, welche den Rescue Point darstellt. Dafür wird wieder ein Block mit der toolstrigger Textur benötigt, welchen du dann zum func_hostage_rescue machen musst. Die Geiseln setzt man genauso wie normale Startpunkte. Das entsprechende Pointentity heisst hostage_entity. Diese beiden Entities musst du nicht weiter einstellen, mit Ausnahme des Hostage Model Keys der Geiselstartpunkte. Die verschiedenen Buchstaben stehen für die verschiedenen Models, wobei die Zuordnung jede Runde neu geschieht. Der Buchstabe A steht somit zum Beispiel nicht immer für den Wissenschaftler mit Brille. Aber die verschiedenen Buchstaben garantieren, dass du niemals zwei gleiche Geiseln in deiner Map hast. Leider sind Geiseln von Natur aus dumm, selbst zum simplen Hinterherlaufen sind sie ohne zusätzliche Hilfe nicht in der Lage. Deswegen musst du ihnen mit einem Wegpunktesystem unter die Arme greifen. Dazu musst du entlang der möglichen Wege der Geiseln viele Pointentities des Typs info_node setzen. Diese müssen so platziert werden, dass man von jedem Wegpunkt aus den nächsten sehen kann. Weitere Einstellungen sind aber nicht notwendig. Doch können die Geiseln diese Wegpunkte auch nicht direkt verstehen, du musst zuvor einmal im Spiel den Befehl nav_generate in der Konsole eingeben. Counter-Strike errechnet daraufhin anhand der Wegpunkte die möglichen Strecken der Geiseln und speichert diese in einer *.nav Datei, welche den gleichen Namen wie deine Map trägt. Es ist wichtig, dass du diese Datei immer mit zum Download bereitstellst, denn sonst funktionieren die Geiseln nur auf deinem Rechner.