Also klar der Charge geht, der Teil mit dem Abfangen testen ist etwas umständlich (da keine Wut vorhanden beim Wechsel in die Bersi Stance). Das wrikt dann nicht so eindrucksvoll wenn da steht „Nicht genug Wut.“ Ich hab das Makro auch mal getestet und muss dir zustimmen, dass es aus einem mir nicht begreifbaren Grund nicht funktioniert wie in deinem Eingangspost. Egal welche Ominöse Stance ich in die Bedingung packe, Charge will nicht ausgelöst werden.
Bei Fähigkeiten gibt es da afaik keinen Unterschied. /use hat nur einen Buchstaben weniger. Bei langen Makros kann das wegen der Zeichenbegrenzung durchaus relevant sein.
Ich lehne mich mal aus dem Fenster und spekulier mal herum:
Beim aktivieren des Makros werden vom Client die Makrobefehle in der Reihenfolge an den Server geschickt, in der sie auch im Makro stehen. Der Server selber verarbeitet Gewisse Dinge aber wohl asynchron was bedeutet, dass der Befehl zum Chargen nicht wirklich NACH dem Befehl zum Stance wechseln getriggert wird, sondern während der noch verarbeitet wird. In dem Moment wo der Server dann die Bedingung am Charge Befehl verarbeitet, ist der Stance Wechsel Befehl aber noch nicht fertig und demnach ist die Stance noch nicht die richtige.
Das ist wie gesagt reine Spekulation aber anders kann ich mir das nicht erklären vOv
Kann dir da nur voll zustimmen, Evabaum. Also bezüglich des Charge würde ich das unterschreiben. Dann sind wir nur wieder bei dem Phänomen, dass der Intercept ja wie gewünscht auch aus der Def Stance klappen soll. Das kann ich leider ohne Umskillen nicht so schön selbst testen. Da müssen wir dem TE wohl glauben, tu ich auch ^^
so wie ich APIs und Netzwerkommunikation verstehe sage ich, dass Du nicht so falsch liegst.
Warum das bei Charge der Fall ist, weiß ich nun nicht, aber hey, wenn man es weiß, dann kann man sich drauf einstellen. Bei Overpower hab ich heute festgestellt, ist das auch so, wie bei Charge.
Ich glaub ihm auch… warum auch nicht, hab ja ähnlliche Erfahrungen gemacht. Wenn es Asynchron läuft, dann ist es eigentlich eine Frage dessen, wie schnell die Dinge abgearbeitet sind, die asynchron zu dem Verarbeiten der einzelnen Makro Befehle ablaufen. Wer weiß wie das alles intern gemacht wird. Womöglich läuft das bei Intercept schneller ab (vielleicht fehlt bei Intercept einfach ein check, ob man im Kampf ist, weil es dafür egal ist), womit es rechtzeitig fertig wird vOv. Das würde zumindest auch erklären, wieso es (zwar selten aber immerhin) vor kommt, dass mein Schleichen Makro manchmal tatsächlich auch 2 Tastendrücke braucht, obwohl es eigentlich fast immer auf dem ersten Tastendruck funktioniert.
Ist aber ja wie gesagt auch alles Spekulation… vielleicht läuft das auch noch ganz anders ab.
Alles, was in einem Macro steht, wird zeitgleich (!) ausgeführt, solange du nicht eine Castsequence einbaust.
Der Stancewechsel und das gleichzeitige Nutzen eines „Cast“ ist nur daher möglich, da der Stancewechsel auf seinem eigenen 1s GCD liegt. Daher ist es innerhalb einer Sekunde auch nicht möglich, 2x die Stance zu wechseln, weshalb dieser richtigerweise mit Konditionen verknüpft sein sollte.
Problematisch könnte sein, dass die Überprüfung von [nocombat] während des Wechsels in die Battle-Stance nicht möglich ist?! Ehrlich gesagt ist das nur eine Vermutung.
Teste doch mal bitte folgendes (oder ich versuche das heute Abend mal):
Somit fällt die Prüfung weg, ob du dich in Combat befindest oder nicht. Du machst einfach auf Basis der offensichtlich funktionierenden Abfrage eine Wenn-Dann-Sonst-Funktion statt einer Wenn-Dann-Funktion.
Sollte [combat] gegeben sein, kannst du Charge sowieso nicht nutzen und er würde ohnehin vorab Intercept ausführen.
Manche Wege zum Ziel muss man nicht nachvollziehen können, manchmal kommen dann noch so Dinge wie das Spellbatching in die quere, das unter Umständen die erste Abfrage schlichtweg torpediert.
Damit müsste dies auch für FuryProt gehen - zumindest, solange Bloodrage nicht auf Cooldown ist. Vorteil: Bloodrage liegt off-GCD und lässt sich parallel mit Stancewechsel und Intercept ausführen.
Das funktioniert auf erstem Tastendruck nicht, weil ich dann die Fehlermeldung bekomme, dass nicht genug Wut vorhanden ist. Die Bedingung für die form (stance) greift in dem Fall also trotzdem. Gleichzeitig ausgeführt wird es also meines Erachtens nach nicht, er versucht ja die Wilde Attacke zu machen.
Allerdings wurde in dem Moment noch nicht die Wut gutgeschrieben, die ich beim Shift in der Regel bekomme. Wenn ich witzigerweise kurz vorher in Katze geshiftet bin und dann dieses Makro aktiviere, habe ich genug Wut. Das heißt: auch wenn ich in Katze shifte, bekommt der Bär im Hintergrund trotzdem auch seine Wut
werden alle Bedingungen gleichzeitig ausgewertet.
Zeile 1 trifft zu. Zeile 2 nicht. Darum nur der Wechsel und nicht der Charge bei einer Ausführung.
Das sollte das normale Verhalten sein.
Darum funktioniert z. B.
Das ist auch meine Beobachtung aber die schließt aus, dass alle Bedingungen gleichzeitig ausgewertet würden (gleichzeitig eh nicht… wenn, dann nacheinander aber bevor irgend ein Befehl dann auch ausgeführt wurde aber das scheint halt auch nicht zutreffend zu sein).
Ich denke, wie gesagt, eher, dass die Befehle aus den Makros dann asynchron ausgeführt werden. Das wird meiner Meinung nach an einigen in diesem thread genannten Beispielen offensichtlich und würde auch die Inkonsequenz erklären.
Also so:
Bedingung aus Zeile 1 wird ausgewertet - trifft zu (nostance:1)
Ausführung des Befehls aus Zeile 1 wird asynchron gestartet (Stancewechsel)
Bedingung des Befehls aus Zeile 2 wird ausgewertet - trifft nicht zu (stance:1)
Befehl aus Zeile 2 wird nicht ausgeführt weil Bedingung nicht zutrifft
Ausführung des Befehls aus Zeile 1 abgeschlossen (ab hier stimmt die stance dann)
Was ich auch schon erlebt habe ist folgendes:
Bedingung aus Zeile 1 wird ausgewertet - trifft zu (noform:1)
Ausführung des Befehls aus Zeile 1 wird asynchron gestartet (Shift in Bärform)
Wutzuwachs durch Ingrim und Wolfskopfhelm wird ebenfalls asynchron gestartet
Ausführung des Befehls aus Zeile 1 abgeschlossen
Bedingung des Befehls aus Zeile 2 wird ausgewertet - trifft zu (form:1)
Ausführung des Befehl aus Zeile 2 wird asynchron gestartet (Wilde Attacke) was intern fehlschlägt, weil nicht genug Wut vorhanden ist
Der asynchrone Wutzuwachs durch Ingrim und Wolfskopfhelm abgeschlossen (genug Wut ist ab hier vorhanden)
Gleiches habe ich schon mit dem Schlucken von Manapots erlebt.
Das ist das einzige Szenario, was mir einfällt, was dieses Verhalten erklären würde. Ich glaube auch nicht, dass das ein Bugreport ändern würde. Dafür müssten sie die Funktionalität, die Makros verarbeitet, grundlegend verändern, was denen für so ein paar Makro Sportlern bestimmt zu aufwändig ist.
Es gibt quasi offizielle Quellen dazu, dass es so ist (gleichzeitig - bzw. in einem Batch, falls dir das Wort „gleichzeitig“ zu unpassend ist * g *). Ich kann dir gerade keinen Link oder irgendwas präsentieren, da das schon lange her ist, aber so sollte es sein. (passendes Stichwort dazu: spell batching)
Ich gebe aber auch zu, dass ich mich schon länger nicht mehr wirklich intensiv mit dem Thema Makrosystem befasst habe. Möglicherweise habe ich Entwicklungen verpasst.
Verschärft wird das Ganze meiner Meinung nach dadurch, dass wir es hier intern mit dem Retail-Markosystem zu tun haben, dass vom Classic-Team auf „alt“ getrimmt wurde. Ich vermute daher, dass wir da keine Lösung mehr finden werden - zumindest nicht über Beobachten und Testen. Zu viele Variablen. Lasse mich aber aber gerne vom Gegenteil oder von ganz anderen Theorien überzeugen.
Sorry, womöglich bin ich durch meine Arbeit da etwas zu penibel mit dem Wort „gleichzeitig“.
Was man in WoW unter dem Namen Spellbatching kennt, ist eigentlich nichts anderes als ein Ausdruck dafür, dass die Schleife, die Spielereingaben verarbeitet, eine niedrige Frequenz hat (bei Shootern würde man sagen der Server hat eine schlechte Tickrate). Ich denke schon, dass ein Makro komplett in einem Schleifendurchlauf verarbeitet wird (also in einem Batch), aber das widerspricht ja nicht der Tatsache, dass eine Aktion vom Anfang des Makros Einfluss darauf haben kann, ob später im Makro eine Bedingung eben doch zutrifft. Das ist ja das, was wir hier beobachten.
Naja eine Lösung bzw. wie gewünscht funktionierende Makros haben ja schon einige gepostet. Ob wir hier zweifelsfrei rausfinden wie das technisch wirklich funktioniert, vermutlich nicht. Das wird alles Spekulation bleiben, bis Blizzard irgendwas bestätigt. Ich glaube aber nicht, dass sich das hier jemals jemand blaues durchlesen wird, der tatsächlich weiß wie ist… und noch weniger, dass wir dann auch eine offizielle Info dazu kriegen.
Wie eig bereits einige geschrieben haben wenn bedingungen vorliegen verhinder diese ein gleich zeitiges aktivieren der anderen fähigkeiten
Theoretisch wird es gleichzeitig ausgeführt aber dennoch schritt für schritt zeile für zeile
Somit würde ich zb charge mit /use charge ganz am ende hin schreiben ohne bedingung
Da die fähigkeit sowieso die bedingungen stance 1 und nocombat hat brauch man die nicht nochmal rein zu tippen