Der Befehl, der das Menü öffnet UND schließt und den man sich natürlich auf eine Taste legen sollte, lautet "+commandmenu". Der Befehl, der das Manü NUR schließt, lautet "-commandmenu".
Wenn es geöffnet wird, erscheint ein Mauszeiger auf dem Bildschirm, mit dem man es bedient. Die Tastatur bedient weiterhin die eigene Spielfigur, weshalb man im Spiel, wärend man das Menü bedient, weiterlaufen kann.
Über dieses Menü kann man ingame ALLE Funktionen und Befehle ausführen, die man auch per Hand in die Console oder die config.cfg eingeben kann! Also wirklich ALLE client- und serverseitige CVARS!! Letzteres macht natürlich nur für Admins Sinn.
Man kann dieses Menü auch mit verschiedenen Untermenüs versehen, deren Anzahl nur durch den Platz auf dem Bildschrim begrenzt wird.
So sieht das dann ingame aus:




Die Datei, aus der das Menü ausgelesen wird, ist eine simple Textdatei, die immer commandmenu.txt heisst.
Diese Datei hat sich in
C:\Programme\Steam\SteamApps\common\Half-Life\cstrike\
zu befinden.
Wenn ihr Condition Zero spielt in
C:\Programme\Steam\SteamApps\common\Half-Life\czero
Solltet ihr das Spiel auf Deutsch installiert haben, kommt eine Kopie dieser Datei ebenfalls nach
C:\Programme\Steam\SteamApps\common\Half-Life\cstrike_german\
bzw.
C:\Programme\Steam\SteamApps\common\Half-Life\czero_german
Diese Datei könnt ihr einfach umschreiben oder falls sie nicht vorhanden ist, einfach mit rechter Maustaste in den Ordner klicken -> Neu -> Textdokument -> und das dann commandmenu.txt nennen.
UND SO WIRDS GEMACHT:
Einen ausführbaren Menüpunkt zum draufklicken schreibt man wie folgt.
"%" wird JEDEM Punkt vorangestellt, dann ein Leerzeichen, dann in Anführungszeichen der "Name", der im Menü erscheinen soll, dann wieder ein Leerzeichen und dann in Anführungszeichen der "Befehl", der ausgeführt werden soll.
Also:
"%" "UFO" "name UFO"
Bei Namen mit Leerzeichen, werden die Leerzeichen durch ein % dargestellt.
"%" "UFO hat Stonehenge gebaut" "name UFO%hat%Stonehenge%gebaut"
Dies erscheint dann im Menü einfach als das Wort UFO bzw. als Schriftzug UFO hat Stonehenge gebaut. Wenn man da dann drauf klickt, wird der Spielername in UFO geändert. Das Prinzip lässt sich auf jeden anderen Befehl übertragen.
Bei Befehlen (nicht Namen) mit mehr als einem Leerzeichen, also Befehle die aus mehreren Wörtern bestehen, wirds etwas umständlicher. Dazu später mehr.
Eine leere Zeile ohne Funktion schreibt man einfach
"%" "" ""
Ein Untermenü schreibt man wie folgt:
"%" wird jedem Untermenü vorangestellt, dann ein Leerzeichen und dann in Anführungszeichen der "Name" des Untermenüs. Mit { eröffnet man dann die Liste, der enthaltenen Menüpunkte oder weiterer Untermenüs, die man nach immer dem selben Prinzip reinschreibt.
Wenn das Untermenü dann alles enthält schließt man diese Liste mit } ab. Um die Textdatei übersichtlich zu halten, empfiehlt es sich ein Sinnvolles Absatzsystem einzuhalten, was aber für die Funktion des Menüs nicht erforderlich ist.
Also:
"%" "Untermenü 1"
{
"%" "UFO" "name UFO"
"%" "UFO hat Stonehenge gebaut" "name UFO%hat%Stonehenge%gebaut"
"%" "UFO schreibt im Forum" "name UFO%schreibt%im%Forum"
"%" "Jetzt reichts" "name UFO%aendert%seinen&Namen%zu%oft"
}
Oder mit weiteren Untermenüs:
"%" "Untermenü 1"
{
"%" "UFO" "name UFO"
"%" "UFO hat Stonehenge gebaut" "name UFO%hat%Stonehenge%gebaut"
"%" "UFO schreibt im Forum" "name UFO%schreibt%im%Forum"
"%" "Jetzt reichts" "name UFO%aendert%seinen&Namen%zu%oft"
"%" "Unter-Untermenü XY"
{
"%" "EchsenmenschenRegierenDieWelt" "name EchsenmenschenRegierenDieWelt"
"%" "Das Komplott und die Regierung" "name Das%Komplott%und%die%Regierung"
"%" "Radioaktive Super-Orks vom Mars" "name Radioaktive%Super-Orks%vom%Mars"
"%" "Todesstrahlen aus dem Weltall" "name Todesstrahlen%aus%dem%Weltall"
}
}
Wobei die Reihenfolge, in der man das reinschreibt, die Reihenfolge ist, in der das dann auch ingame im Menü steht. Man könnte das Unter-Untermenü auch an den Anfang der Liste setzen.
"%" "Untermenü 1"
{
"%" "Unter-Untermenü XY"
{
"%" "EchsenmenschenRegierenDieWelt" "name EchsenmenschenRegierenDieWelt"
"%" "Das Komplott und die Regierung" "name Das%Komplott%und%die%Regierung"
"%" "Radioaktive Super-Orks vom Mars" "name Radioaktive%Super-Orks%vom%Mars"
"%" "Todesstrahlen aus dem Weltall" "name Todesstrahlen%aus%dem%Weltall"
}
"%" "UFO" "name UFO"
"%" "UFO hat Stonehenge gebaut" "name UFO%hat%Stonehenge%gebaut"
"%" "UFO schreibt im Forum" "name UFO%schreibt%im%Forum"
"%" "Jetzt reichts" "name UFO%aendert%seinen&Namen%zu%oft"
}
Man kann da so viele Menüs in- und untereinander reinschreiben, wie der Platz auf dem Bildschirm es zulässt.
WICHTIG ist nur, dass man JEDES Menü, dass man mit { öffnet mit } auch wieder schließt!
GRUNDSÄTZLICH IST ZU BEACHTEN, dass sich das Menü von der Mitte des Linken Bildrandes nach rechts hin öffnet und sich dabei mittig nach oben und unten gleich ausdehnt. Die Untermenüs öffnen sich von ihrer Position auf dem Bildschirm nach rechts und unten.
Das bedeutet, dass die Anzahl der Untermenüs und Menüpunkte in der ersten/linken Spalte, bestimmt, wieviel Platz in jedem Untermenü für Menüpunkte und weitere Untermenüs zur Verfügung steht. Klingt kompliziert, aber nach zweimal probieren, begreift ihr das sofort.
Die länge des längsten Namens in einer Spalte bestimmt, wie weit sich die Spalte nach rechts hin ausdehnt.
Dadurch ergibt sich eine optimale Platznutzung bei 21 Menüpunkten bzw. Untermenüs in der ersten Spalte. Die obere Hälfte ist dadurch auch eher für Untermenüs geeignet. Die untere Hälfte für Menüpunkte. Auch das begreift ihr beim Ausprobieren ganz schnell von alleine.
Bei den Namen, die ich meinen Untermenüs und Menüpunkten gegeben habe, ergibt sich eine sinnvolle "Menütiefe" von 3-4 Untermenüs ineinander... je nachdem.
Als Beispiel:
Ihr schreibt für die erste Spalte (von oben nach unten) 10 Untermenüs und 11 Menüpunkte. Dann bietet das erste Untermenü 21 Reihen Platz für weitere Untermenüs oder Menüpunkte, das zweite 20, das dritte 19, das vierte 18 usw.
Das kapiert ihr ganz schnell.
BEFEHLE MIT LEERZEICHEN:
Wenn Befehle Leerzeihen beinhalten wie zB.
bind f ability
cl_crosshair_color 250 50 50
dann seit ihr leider zu einem kleinen Workarround gezwungen, da der Syntax des Menüs damit nich klarkommt.
Einen solchen Befehl schreibt ihr einfach in eine gesonderte Config.
Klingt wieder komplizert... ist es aber garnich. Nur etwas umständlich.
Eine Config ist genau wie das commandmenu.txt eine simple Textdatei, deren Dateiendung in .cfg geändert wurde. Trotzdem ist es eine Textdatei, die jeder Editor lesen und beshreiben kann.
Also einfach wieder mit der rechten Maustaste irgendwo hinklicken -> Neu -> Textdokument -> und das dann wieauchimmer.cfg nennen.
Diese Datei dann öffnen und den gewünschten Befehl mit Anführungszeichen (ganz in gewohnter config.cfg-art) reinshreiben.
Also
bind "f" "ability"
oder
cl_crosshair_color "250 50 50"
Den namen der cfg-Datei solltet ihr natürlich sinnvoll wählen. Mal angenommen cl_crosshair_color "250 50 50" steht in der Datei fkrot.cfg. Dieser Name kommt in die commandmenu.txt und zwar in folgender Weise.
"%" "Fadenkreuz Rot" "exec fkrot.cfg"
Dies dann auszuführen, verändert nur die Fadenkreuzfarbe zu rot. Der rest bleibt unverändert.
EINE SOLCHE *.cfg-Datei HAT SICH IMMER IM SELBEN ORDNER WIE DIE commandmenu.txt ZU BEFINDEN!!
Auf diese Weise lassen sich praktischer Weise auch mehrere Befehle zusammenfassen, damit sie über einen einzigen Menüpunkt ausgeführt werden können!
zB. erstelle ich mir eine Textdatei mit dem Namen voiceein.cfg und eine mit dem Namen voiceaus.cfg.
In voiceein.cfg schreibe ich:
voice_enable "1"
voice_modenable "1"
voice_scale "4"
und in voiceaus.cfg:
voice_enable "0"
voice_modenable "0"
voice_scale "0"
In meine commandmenu.txt:
"%" "Voice EIN" "exec voiceein.cfg"
"%" "Voice AUS" "exec voiceaus.cfg"
Wie immer lässt sich dieses Prinzip auch auf alle anderen Befehle übertragen. So kann man zB. ganze Tasten-Sets umbelegen, um sich an WC3 oder sons was anzupassen.
Dadurch besteht mein Command Menu allerdings aus insgesamt 26 Dateien! Der commandmenu.txt und 25 *.cfg-Dateien.
Ich habe auf meinem Rechner einen extra Ordner angelegt, wo ich quasi eine komplette Sicherheitskopie abgelegt habe, die ich dann als Haufen immer wieder in meinen cstrike Ordner kopieren kann.
Nachträglich sei noch angemekrt, dass einige Sonderzeichen im Command Menu nicht funktionieren. Ich habe die leider gerade nicht alle im Kopf, aber -#()><=![] sind es jedenfalls nicht.
Falls mit Sonderzeichen Probleme auftauchen, benutzt einfach den Workarround mit der extra cfg-Datei. Das muste ich zB. bei "name P.(+).W." machen. Das %-Zeichen verursacht nur manchmal Probleme, da es in der dritten Instanz als Platzhalter dient.
Zu den Fadenkreuzfarben will ich noch sagen, dass man auch in CS 1.6 und CZ JEDE beliebige Farbe einstellen kann! Man muss nur den entsprechenden RGB-Code dafür eingeben. Wer googelt findet da schnell ganze Tabellen mit RGB-Codes. Die meisten Bildbearbeitungsprogramme können einem dabei auch sehr einfach helfen.
Es empfiehlt sich auch, einen Menüpunkt einzufügen, der alles auf die normale config.cfg "zurücksetzt". Ich habe dafür "%" "<< Zuruecksetzen >>" "exec config.cfg" benutzt. Ist natürlich nur sinnvoll, wenn die config.cfg SCHREIBGESCHÜTZT IST!!! Was man bei stark personalisierter Config in jedem Falle tun sollte, damit einem ein forcender Server nicht die config zerschießt. Für Leute, die nebenher eine userconfi.cfg oder mehrere Configs nebeneinander benutzen gilt dasselbe.