Beispiel am Schamanen:
/run skills={"Schnelligkeit der Natur", "Welle der Heilung"}
/run if zzz==nil then zzz=0 end csk=table.getn(skills)res=(zzz/csk-floor(zzz/csk))*csk+1 CastSpellByName(skills[res-1])zzz=zzz+1
/run if res==1 then SpellTargetUnit("player") end
/run if res==2 then TargetLastEnemy() end
Beschreibung:
-------------------------------------------------------------------------------------------------
Anwendungsbeispiel-Archiv:
Der gemütliche Schurke:
__________________________________________________ _______
/run skills={"Verstohlenheit","Fieser Trick", "Finster Stoß", "Zerhäckseln"}
/run if zzz==nil then zzz=0 end csk=table.getn(skills)res=(zzz/csk-floor(zzz/csk))*csk+1 CastSpellByName(skills[res-1])zzz=zzz+1
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ ¯¯¯¯¯¯¯
Dieser Schurke steuert seinen Kampfbeginn mit einem einzelnen Knopf:
1. Klick: Verstohlenheit
(zum Feind schleichen)
2. Klick: Fieser Trick
3. Klick: Finster Stoß
4. Klick: Zerhäckseln (3 Kombopunkte)
-> Also für die ganz gemütlichen unter Euch
Jäger:
_________________________________________________
/run skills={"Mal des Jägers", "Erschütternder Schuss", "Schlangenstich", "Arkaner Schuss"}
/run if zzz==nil then zzz=0 end csk=table.getn(skills)res=(zzz/csk-floor(zzz/csk))*csk+1 CastSpellByName(skills[res-1])zzz=zzz+1
/run if res==1 then PetAttack() end
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Und so verhält sich das Macro:
1. Klick: Jägermal setzen + Tier angreifen lassen
2. Klick: Erschütternder Schuss
3. Klick: Schlangenstich
4. Klick: Arkaner Schuss
-> Klingt fast wie Weihnachten oder
-------------------------------------------------------------------------------------------------
MfG, Black Messiah
----------------------------------------------------------------------------------------------
Jeder der sich schon etwas mit Macros auseinander gesetzt hat, wird schnell feststellen, dass er mit der Idee Feuerball + Feuerschlag oder Ansturm + Kniesehne oder Machtwort: Schild + Große Heilung zu kombinieren nicht weit kommt... Grund dafür ist eine Sperre innerhalb der Macros, durch welche vermieden werden soll, dass keine Super-I-Win-Macros erstellt werden können.
Zwei Zauber oder Fähigkeiten gleichzeitig verwenden geht nicht? Ich sage: Geht doch!
Man muss sich nur eines einfachen Trickes bedienen: schnell doppelklicken.
------------------------------------------------------------------------------------------
Und so ist das Macro aufgebaut:
________________________________________________
/run skills={"Schnelligkeit der Natur", "Welle der Heilung"}
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Hier müssen alle Skills, die man benutzen will, angegeben werden; Und zwar chronologisch von links nach rechts! (die einzelnen Skills durch Kommata trennen und immer mit ""-Zeichen umranden)
________________________________________________
/run if zzz==nil then zzz=0 end csk=table.getn(skills)res=(zzz/csk-floor(zzz/csk))*csk+1 CastSpellByName(skills[res-1])zzz=zzz+1
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Hier wird der aktuelle Skill berechnet und gewirkt. (103 Zeichen)
HINWEIS: die Variable zzz muss bei jedem Macro anders heißen, da sich die Zähler sonst gegenseitig überlappen! (also einfach beim zweiten... dritten Macro, überall das zzz durch xxx oder yyy usw. ersetzen...)
________________________________________________
/run -- [PLATZ FÜR MODULE]
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Hier können verschiedene Module eingesetzt werden, die das Ganze noch ein wenig verfeinern. (optional)
------------------------------------------------------------------------------------------
Beschreibung: Durch die Variable "skills" werden alle Zauber oder Fähigkeiten bestimmt und nacheinander abgearbeitet. Dies geschieht zwar nicht voll-automatisch, doch simuliert man am Schamanen-Beispiel "Schnelligkeit der Natur + Welle der Heilung" die gleichzeitige Verwendung von zwei Zaubern, sobald man den Macro-Button einfach doppelklickt!
Um dem ganzen noch einen drauf zu setzen, ist es möglich, sogar mehr als nur 2 Zauber/Fähigkeiten anzugeben. So kann ein Jäger zum Beispiel Jägermal + Tier angreifen lassen + Erschütternder Schuss + Schlangenbiss + Arkaner Schuss mit nur einem Button wirken!
Als Besonderheit ist hier die Funktion "Tier angreifen lassen" zu erkennen, welche direkt nach dem Jägermal aktiv wird. Damit dies funktioniert wird die hierfür nötige Funktion PetAttack() als Modul implementiert. Folgend ist eine Erklärung zu Modulen zu sehen und im Anschluss gibt es noch einige Anwendungsbeispiele.
----------------------------------------------------------------------------------------------------
Module: ... sind Funktionen oder Handlungen die nicht direkt als Fähigkeit oder Zauber ansprechbar sind. Als Beispiel seien hier PetAttack(), SpellTargetUnit() oder UseContainerItem() genannt.
Wer ein solches Modul einfügen möchte muss zunächst die Zeile
/run -- [PLATZ FÜR MODULE]
löschen.
und folgende Zeile einfügen:
/run if res==[SCHRITT] then [FUNKTION] end
[SCHRITT] und [FUNKTION] sind Platzhalter und müssen nun ersetzt werden:
[SCHRITT] = nach welchem Skill soll die Funktion ausgeführt werden?
[FUNKTION] = die Funktion
Und so könnte ein fertiges Modul aussehen:
/run if res==1 then PetAttack() end
Prinzipiell können so viele Module eingefügt werden wie man lustig ist, jedoch sollte man auf die Macro-Größe achten (255 ohne Addon, ~1000 mit zB BigMacro-Addon)
--------------------------------------------------------------------------------------------------
Anwendungsbeispiel 1: Schamane oder Druide mit Schnelligkeit der Natur.
Jeder Schamane und Druide weiß, dass die Spontanheilung ein sehr wichtiges Element im PvE und PvP ist. Meistens muss es sogar ziemlich schnell gehen, denn das ist auch der Sinn der Spontanheilung. Aber wer hat sich noch nicht die Finger bei der Tastenfolge "[Schnelligkeit der Natur]-Hotkey" +" F1" + "[Welle der Heilung]-Hotkey" + "Tab" verknotet, wenn man sich mal plötzlich während des Kampfes heilen muss?
Diese 4 Vorgänge lassen sich durch einen einfachen und schnellen Doppelklick auf das folgende Macro im Bruchteil einer Sekunde erledigen:
_________________________________________________
/run skills={"Schnelligkeit der Natur", "Welle der Heilung"}
/run if zzz==nil then zzz=0 end csk=table.getn(skills)res=(zzz/csk-floor(zzz/csk))*csk+1 CastSpellByName(skills[res-1])zzz=zzz+1
/run if res==1 then SpellTargetUnit("player") end
/run if res==2 then TargetLastEnemy() end
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Einfacher gehts gar nicht:
1. Klick: Schnelligkeit der Natur + Spieler auswählen
2. Klick: Welle der Heilung + letzten Gegner auswählen
-> Dies funktioniert auch wenn ihr SCHNELL doppelklickt. Also hat man praktisch keine Zeit verloren, ist geheilt und kann fröhlich weiterkämpfen, da der Gegner wieder ausgewählt ist
--------------------------------------------------------------------------------------------------
Anwendungsbeispiel 2: Schwert/Streitkolben Schurke mit Hinterhalt:
Dieser Schurke verwendet die Vorteile eines Dolches: Hinterhalt UND die Vorteile von Schwertern/Streitkolben: max-Damage!
__________________________________________________ _______
/run skills={"Verstohlenheit","Ablenken","Hinterhalt"," Finsterer Stoß"}
/run if zzz==nil then zzz=0 end csk=table.getn(skills)res=(zzz/csk-floor(zzz/csk))*csk+1 CastSpellByName(skills[res-1])zzz=zzz+1
/run if res==1||res==3 then UseContainerItem(0,1) end
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ ¯¯¯¯¯¯¯
Und so fährt der Schurke:
(der Schurke hat seine 2 Schwerter angelegt)
1. Klick: Verstohlenheit + Dolch nehmen
2. Klick: Ablenken
(der Schurke schleicht sich an)
3. Klick: Hinterhalt + Schwerter nehmen
4. Klick: Finsterer Stoß
Der Schurke benutzt seinen Dolch also NUR für Hinterhalt! Für den Schaden sorgen seine zwei Schwerter/Streitkolben im Anschluss.
Hinweis: Der Dolch muss sich in Tasche 1, obenlinks befinden (ansonsten das UseContainerItem(0,1) abändern)
--------------------------------------------------------------------------------------------------
Hinweise:
- Bei Fragen oder Anregungen zögert nicht eine PN oder eine eMail an mich (
) zu schicken.- Eingesendete Anwendungsbeispiele nehme ich selbstverständlich gerne an und werde diese dann natürlich auch zu den anderen Anwendungsbeispielen hinzufügen
- Mit Addons wie BigMacro oder SuperMacro lassen sich auch sehr lange Skillabfolgen produzieren. Um im Spiel eine bessere Übersicht zu haben, kann eine Ausgabe des nächsten Skills ausgegeben werden:
-> /run DEFAULT_CHAT_FRAME:AddMessage("Nächster Skill: "..(zzz/csk-floor(zzz/csk))*csk)
Zu beachten ist, dass dieses Modul ans Ende des Macros gesetzt werden muss.
- nützliche Steuer-Macros - Um die Skillreihenfolge zu beeinflussen können folgende Macros erstellt werden:
___Zum ersten Skill springen_______
/run zzz = 0
/run DEFAULT_CHAT_FRAME:AddMessage("Reset - Nächster Skill: "..(zzz/csk-floor(zzz/csk))*csk)
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
___Vorheriger Skill _______________
/run zzz = zzz-1
/run DEFAULT_CHAT_FRAME:AddMessage("Zurück - Nächster Skill: "..(zzz/csk-floor(zzz/csk))*csk)
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
___Nächster Skill _______________
/run zzz = zzz+1
/run DEFAULT_CHAT_FRAME:AddMessage("Vorwärts - Nächster Skill: "..(zzz/csk-floor(zzz/csk))*csk)
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Nützlich werden diese Steuer-Macros, wenn man sich verklickt oder etwas unvorhersehbares passiert. So kann man zB wieder mit dem ersten Skill einer Skill-Abfolge anfangen oder nach vorne und hinten switchen!
Eine Button-Leiste könnte bei Verwendung der Steuer-Macros so aussehen:
[1.Zurück] [2.WIRKEN] [3.Vorwärts] [4.Reset]






