toggle scripting

MIK
HI Leute, ich hab mal wieder ne Scripting Frage.

Ich hab diese Anleitung auf der Seite hier gefunden:

Zitat:

So, und natürlich gibt es auch die Möglichkeit, auf eine Taste mehrere Sprüche zu legen, sähe so aus (leider weiß ich nicht mehr, wo ich das Script her habe...):

set c1_00 "set c1_f vstr c1_01; say Spruch1"
set c1_01 "set c1_f vstr c1_02; say Spruch2"
set c1_02 "set c1_f vstr c1_03; say Spruch3"
set c1_03 "set c1_f vstr c1_04; say Spruch4"
set c1_04 "set c1_f vstr c1_05; say Spruch5"
set c1_05 "set c1_f vstr c1_06; say Spruch6"
set c1_06 "set c1_f vstr c1_07; say Spruch7"
set c1_07 "set c1_f vstr c1_08; say Spruch8"
set c1_08 "set c1_f vstr c1_09; say Spruch9"
set c1_09 "set c1_f vstr c1_10; say Spruch10"
set c1_10 "set c1_f vstr c1_11; say Spruch11"
set c1_11 "set c1_f vstr c1_12; say Spruch12"
set c1_12 "set c1_f vstr c1_13; say Spruch13"
set c1_13 "set c1_f vstr c1_14; say Spruch14"
set c1_14 "set c1_f vstr c1_00; say Spruch15"
set c1_f "vstr c1_00" //Standard
bind F3 "vstr c1_f" //Sprueche

Tja, dann mal fröhliches Scripting!


Kann mir jemand den Aufbau eines Toggle Scripts erklären für die Funktion SAY?

Liebe Grüße, MIK.
yoda
Viel kann ich dazu nicht sagen...

set c1_00 "set c1_f vstr c1_01; say Spruch1"
set c1_01 "set c1_f vstr c1_02; say Spruch2"

c1_00 z. B. ist der "Name" der Variable, die Du aktuell festlegst - nach Ausführung legst Du den Namen der Variable auf die folgende c1_01 fest...

Wüsste nicht, wie ich das erklären sollte, sorry...
MIK
Des scho klar, das ist ja im endeffekt die Funktionsübergae, allerdings hab ich mörder Probs das ganze unten auf ne Taste zu binden bzw. den Abschluss von nem Toggle zu schreiben. verwirrt
yoda
Dann sag doch einfach mal, was genau Du vor hast, vielleicht kriegen wir das ja dann irgendwie auf die Reihe...
MIK
Joahl, das hätte ich auch schon eher mal machen können, sorry, bin voll verplant im Moment...

Also, ich möchte die Taste F5 so belegen, das wenn ich in n Match eintrege damit sagen kann "Hi @ll" und wenn ich aus dem Match austrete mit der gleichen Taste "Bye @ll" sagen kann. Dann soll natürlich im nächsten Match, meintewegen anderer Server, beim Eintritt wieder "Hi @ll" erscheinen beim Druck auf F5.

That s it.
yoda
Dann sollte es folgendermaßen klappen:

set c1_00 "set c1_f vstr c1_01; say Hi @ll!"
set c1_01 "set c1_f vstr c1_00; say Bye @ll!"
set c1_f "vstr c1_00" //Standard
bind F5 "vstr c1_f" //Spruch

Das z. B. als blubb.cfg abgespeichert und in die config_mp.cfg
bind m "exec blubb.cfg"

Beim Betreten des Servers die blubb.cfg ausführen, einmal F5 = "Hi @ll!", das nächste Mal F5 = "Bye @ll!", dann kommt wieder "Hi..." usw.
MIK
So, ich hab gestern das Togglescript mal ausprobiert, irgendwie zerschieß ich mir dabei jedes mal die Config. (Hab dann jetzt auch mal ne Sicherung von der CFG gemacht grosses Grinsen ) Wenn ich es nicht besser wüßte, würde ich sogar sagen, das der ganze Rechner jetzt einen weg hat. Seitdem spinnt die Zonealarm total und alle Eisntellungen sind um. Dumme Frage, kann dat?
yoda
Schwer merkwürdig...

Hast Du mal nach dem Anpassen der Config den Schreibschutz dafür aktiviert? Vielleicht hilft das ja...

Kann mir nicht vorstellen, daß sich die Config wegen den Toggles zerschiesst, außer Du hast zu viele eingetragen.

Benutzt Du denn irgendwelche Zusatz-Tools?

Ist Dein PC an sich viren- und trojanerfrei?
MIK
Meinst die uoconfig_mp.cfg schreib schützen?

Mein PC ist komplett clean, hab xtra gestern nochmal Spybot S&D, Adaware und Norotn drüber laufen lassen, außer das ich Zeit verplempert hab, kam nix dabei rum.

Ich hab allerdings noch zwei Mods installiert, GFM und SWAT, aber ich will es in nem normalen COD (UO) Game machen mit den Bindings.
yoda
Ja, natürlich musst Du das mal bei der cfg ausprobieren, die davon betroffen ist.
Wenn Du einen MOD drauf hast, der einen eigenen Ordner hat, dann in der cfg, die im entsprechenden Ordner liegt.
MIK
Okay, ich hab jetzt mal n bissel rumgebastelt heute auf der Arbeit, könnte man folgendes Toggle so erstellen?

//START Toggle Spruch

set c1_00 "set c1_f vstr c1_01; say Spruch1"
set c1_01 "set c1_f vstr c1_02; say Spruch2"
set c1_02 "set c1_f vstr c1_03; say Spruch3"
set c1_03 "set c1_f vstr c1_04; say Spruch4"
set c1_04 "set c1_f vstr c1_05; say Spruch5"
set c1_05 "set c1_f vstr c1_06; say Spruch6"
set c1_06 "set c1_f vstr c1_07; say Spruch7"
set c1_07 "set c1_f vstr c1_08; say Spruch8"
set c1_08 "set c1_f vstr c1_09; say Spruch9"
set c1_09 "set c1_f vstr c1_10; say Spruch10"
set c1_10 "set c1_f vstr c1_11; say Spruch11"
set c1_11 "set c1_f vstr c1_12; say Spruch12"
set c1_12 "set c1_f vstr c1_13; say Spruch13"
set c1_13 "set c1_f vstr c1_14; say Spruch14"
set c1_14 "set c1_f vstr c1_00; say Spruch15"
set c1_f "vstr c1_00" //Standard
bind F6 "vstr c1_f" //Sprueche
//END Toggle Spruch

//START Toggle @ll

set c1_00 "set c1_f vstr c1_01; say Hi @ll!"
set c1_01 "set c1_f vstr c1_00; say Bye @ll!"
set c1_f "vstr c1_00" //Standard
bind F5 "vstr c1_f" //Spruch

//END Toggle @ll

//START Toggle Names

set n1_00 "set n1_f vstr n1_01, seta Name ^1Name1"
set n1_01 "set n1_f vstr n1_02, seta Name ^2Name2"
set n1_02 "set n1_f vstr n1_03, seta Name ^3Name3"
set n1_03 "set n1_f vstr n1_00, seta Name ^4Name4"
set n1_f "vstr n1_00" //Standard
bind F10 "vstr n1_f" //Change Names

//END Toggle Names


//START Demo-Script by [OL]YODA
//www.opferlamm-clan.de

bind F7 "vstr demo_togg"
seta demo_togg "vstr demo_start0"

seta demo_start0 "record demo0; set demo_togg vstr demo_stop0"
seta demo_stop0 "stoprecord; set demo_togg vstr demo_start1"

seta demo_start1 "record demo1; set demo_togg vstr demo_stop1"
seta demo_stop1 "stoprecord; set demo_togg vstr demo_start2"

seta demo_start2 "record demo2; set demo_togg vstr demo_stop2"
seta demo_stop2 "stoprecord; set demo_togg vstr demo_start3"

seta demo_start3 "record demo3; set demo_togg vstr demo_stop3"
seta demo_stop3 "stoprecord; set demo_togg vstr demo_start4"

seta demo_start4 "record demo4; set demo_togg vstr demo_stop4"
seta demo_stop4 "stoprecord; set demo_togg vstr demo_start5"

seta demo_start5 "record demo5; set demo_togg vstr demo_stop5"
seta demo_stop5 "stoprecord; set demo_togg vstr demo_start6"

seta demo_start6 "record demo6; set demo_togg vstr demo_stop6"
seta demo_stop6 "stoprecord; set demo_togg vstr demo_start7"

seta demo_start7 "record demo7; set demo_togg vstr demo_stop7"
seta demo_stop7 "stoprecord; set demo_togg vstr demo_start8"

seta demo_start8 "record demo8; set demo_togg vstr demo_stop8"
seta demo_stop8 "stoprecord; set demo_togg vstr demo_start9"

seta demo_start9 "record demo9; set demo_togg vstr demo_stop9"
seta demo_stop9 "stoprecord; set demo_togg vstr demo_start1"

//END Demo-Script by [OL]YODA


//START Bindings

bind F8 "say ^2Hi!"
bind F9 "say ^9Bye!"

bind L "exec name.cfg" //Script zum Laufen lassen des Nicknames

//END Bindings
//_______________________________
//BINDINGS:
//F5 Hi @ll, Bye @ll
//F6 Sprüche
//F7 Demos
//F8 Hi
//F9 Bye
//F10 Change Names
//L Laufband Name
//_______________________________

-------------------

So, das Ganze speicher ich in der Datei toggles.cfg, diese binde ich in der ouconfig_mp.cfg mit dem Befehl:

bind o "exec toggles.cfg"

Sollte das so klappen? Ich habe das Demoscript hier auf der Page gekläut, da stand bei das man die Verknüpfung der MP .EXE Datei anpassen muss. Da ich aber COD (UO) über All seeing Eye starte, wäre das für mich hinfällig.

Liebe Grüße, MIK.
yoda
Hab schon nen Fehler gefunden, warum das nicht klappt, werd ich nachher mal in aller Ruhe drauf eingehen...
MIK
Och nööö, ich brech in s Essen... verwirrt traurig THX Yoda.
yoda
So, werd mal versuchen, das zu erklären...

//START Toggle @ll

set c1_00 "set c1_f vstr c1_01; say Hi @ll!"
set c1_01 "set c1_f vstr c1_00; say Bye @ll!"
set c1_f "vstr c1_00" //Standard
bind F5 "vstr c1_f" //Spruch

bind F5 "vstr c1_f" //Spruch
->bindet die Variable c1_f auf die Taste F5

set c1_f "vstr c1_00" //Standard
-> Die Variable c1_f hat den Befehl c1_00 hinterlegt - c1_01 ist quasi der Name des Befehls.

set c1_00 "set c1_f vstr c1_01; say Hi @ll!"
-> Nach Ausführung von c1_00 soll die Variable nicht mehr auf c1_00 sondern auf c1_01 reagieren.

Das Wichtige bei Deinem Fehler ist nun:
Die Variable c1_f hat den Befehl c1_00 hinterlegt - c1_00 ist quasi der Name des Befehls.

Du hast diesen Befehlsnamen quasi mehrfach vergeben, daher Dein Problem, das kein Befehl funktioniert, weil CoD/UO nicht weiß, was denn nun gemacht werden soll. Du musst Dein Script also folgendermaßen anpassen (z. B.):
(Ich hoffe, Du siehst den Unterschied zwischen c (Sprüche) und d (@ll) Augenzwinkern )

//START Toggle Spruch

set c1_00 "set c1_f vstr c1_01; say Spruch1"
set c1_01 "set c1_f vstr c1_02; say Spruch2"
set c1_02 "set c1_f vstr c1_03; say Spruch3"
set c1_03 "set c1_f vstr c1_04; say Spruch4"
set c1_04 "set c1_f vstr c1_05; say Spruch5"
set c1_05 "set c1_f vstr c1_06; say Spruch6"
set c1_06 "set c1_f vstr c1_07; say Spruch7"
set c1_07 "set c1_f vstr c1_08; say Spruch8"
set c1_08 "set c1_f vstr c1_09; say Spruch9"
set c1_09 "set c1_f vstr c1_10; say Spruch10"
set c1_10 "set c1_f vstr c1_11; say Spruch11"
set c1_11 "set c1_f vstr c1_12; say Spruch12"
set c1_12 "set c1_f vstr c1_13; say Spruch13"
set c1_13 "set c1_f vstr c1_14; say Spruch14"
set c1_14 "set c1_f vstr c1_00; say Spruch15"
set c1_f "vstr c1_00" //Standard
bind F6 "vstr c1_f" //Sprueche

//END Toggle Spruch

//***

//START Toggle @ll

set d1_00 "set d1_f vstr d1_01; say Hi @ll!"
set d1_01 "set d1_f vstr d1_00; say Bye @ll!"
set d1_f "vstr d1_00" //Standard
bind F5 "vstr d1_f" //Spruch

//END Toggle @ll

//***

//START Toggle Names

set n1_00 "set n1_f vstr n1_01; seta Name ^1Name1"
set n1_01 "set n1_f vstr n1_02; seta Name ^2Name2"
set n1_02 "set n1_f vstr n1_03; seta Name ^3Name3"
set n1_03 "set n1_f vstr n1_00; seta Name ^4Name4"
set n1_f "vstr n1_00" //Standard
bind F10 "vstr n1_f" //Change Names

//END Toggle Names

//***

Ob das Namens-Wechseln nu so klappt, musst Du mal schauen, da hab ich die , gegen ; getauscht...
MIK
SAAAAAAAAAAUUUUUUUUUBERRRRR!!!!! grosses Grinsen

Es klappt, alles von vorne bis hinten, THX Yoda und allen anderen die geantwortet haben. So stell ich mir die Community vor.

Vielen lieben Dank!!!

Vielleicht sieht man sich ja mal auf dem Schlachtfeld.

Liebe Grüße, MIK.
yoda
Gern geschehen, ich werde generell in Kaffee bezahlt... Außer Lucky, der muss Auto putzen Augenzwinkern - Natürlich erst wenn der Bauchschuss verheilt ist, Gute Besserung smile
MIK


Kuchen kommt dann später... grosses Grinsen
yoda
Ok.
Danke grosses Grinsen