This site makes extensive use of JavaScript.
Please enable JavaScript in your browser.
Live
PTR
10.2.7
PTR
10.2.6
Beta
Macro help with /use command
Post Reply
Return to board index
Post by
473515
This post was from a user who has deleted their account.
Post by
83344
This post was from a user who has deleted their account.
Post by
Pwntiff
Code tags are useful for macro posting:
#showtooltip
/cast Fel Healthstone; Basic Campfire
/Use Conjured Mana Strudel
/Use Honeymint Tea
/Use Kungaloosh
#showtooltip will show the appropriate tooltip without the need to specify, unless you want to show a different icon.
I'm not sure if the /use chain will work if you don't have mage food. It may hang up on "You don't have any." or some such error.
EDIT: Reading all the post FTW. Not sure how it's picking them at random. Someone in UI and Macro should know though.
Post by
pelf
Not sure about this one. I'd have to test it out myself. Perhaps someone else can figure it out for you.
Post by
473515
This post was from a user who has deleted their account.
Post by
Wanderingfox
The entire macro is sent to the server at once. It's not functioning the way you think it is.
In other words instead of:
Use 1
Use 2
Use 3
It's being sent as:
Use 1 Use 2 Use 3
This means that the first cast that returns success is what will execute. Unfortunately for you, this translates to the one what returns the quickest, which usually means the use that involves the earliest item in your bags is going to be the one that ends up firing. By that I mean if you have kungaloosh in your main backpack, and strudel in your last bag, you're going to end up eating the kungaloosh.
I suggest looking into a macro re-writer like Buffet that will dynamically re-write the macro as needed (ie. the macro will only have one /use in it and the addon will change that /use to the right item as you use them.) The only downside with this is that it won't swap the items until you're out of combat.
Post by
83344
This post was from a user who has deleted their account.
Post by
Wanderingfox
Kind of... even that isn't 100% sure-fire though. It will greatly reduce the chance of a miss-fire, but lag will still cause weird things to happen. It's entirely dependent on which of those casts returns first.
Post by
HighFive
This means that the first cast that returns success is what will execute. Unfortunately for you, this translates to the one what returns the quickest, which usually means the use that involves the earliest item in your bags is going to be the one that ends up firing. By that I mean if you have kungaloosh in your main backpack, and strudel in your last bag, you're going to end up eating the kungaloosh.Say what now?
I've been out of touch for a while but that's not how it was before and I don't see
any
reason Blizzard (or anyone for that matter) would want macro lines to be concurrently evaluated.The entire macro is sent to the server at once.I'm pretty sure this isn't (wasn't?) true as well.
Once upon a time I did some experimentation with self-editing macros and it shed some interesting insight into how macros act. When you execute a macro the index of the first newline character is saved, the line before it is executed (by the client, of course any requests to the server are immediately sent) and then the next newline character is saved, the next line is executed, and so on until you run out of lines.
(The bug I encountered was, when executing a line, the function uses the saved index as its beginning. You can imagine what would happen if you don't keep the length of the macro before the \n the same (or edit the rest accordingly).)
Post by
582101
This post was from a user who has deleted their account.
Post by
Wanderingfox
This means that the first cast that returns success is what will execute. Unfortunately for you, this translates to the one what returns the quickest, which usually means the use that involves the earliest item in your bags is going to be the one that ends up firing. By that I mean if you have kungaloosh in your main backpack, and strudel in your last bag, you're going to end up eating the kungaloosh.Say what now?
I've been out of touch for a while but that's not how it was before and I don't see
any
reason Blizzard (or anyone for that matter) would want macro lines to be concurrently evaluated.The entire macro is sent to the server at once.I'm pretty sure this isn't (wasn't?) true as well.
Once upon a time I did some experimentation with self-editing macros and it shed some interesting insight into how macros act. When you execute a macro the index of the first newline character is saved, the line before it is executed (by the client, of course any requests to the server are immediately sent) and then the next newline character is saved, the next line is executed, and so on until you run out of lines.
(The bug I encountered was, when executing a line, the function uses the saved index as its beginning. You can imagine what would happen if you don't keep the length of the macro before the \n the same (or edit the rest accordingly).)
Ya the client evaluates it in sequence, but the server does not. The reason you don't see it with spells is because of shared cooldowns and the gcd. Items don't usually share cds so the client thinks they can all be used at once (like when you cast a spell on the gcd and one off it). The client only realizes this AFTER the first success fires, which incidently also prevents the other food from being eaten.
The technical explaination is that the macro does not wait for a success/fail before continuing. The client prevents the behavior the OP is seeing because of the gcd, but items do not get put on cd until they are actually used.
Post by
pelf
#showtooltip
/cast Fel Healthstone; Basic Campfire
/Use Conjured Mana Strudel, Honeymint Tea, Kungaloosh
Think it's that simple, will test it when i can log on again. It will generate some spam though, "item not ready yet..." or some such.
The use slash command does not accept a comma-delimited list. This macro is meaningless.
Post by
Wanderingfox
To elaborate on my previous post (was at work originally... while my droid rocks, it's no computer keyboard :3)...
What's happening is this:
Say Item1 is in the last slot of your bags, Item3 is in the first slot of your backpack, and Item2 is someplace in the middle.
Client sends event to use Item1
Client sends event to use Item2
Client sends event to use Item3
Server receives event to use Item1, begins processing the event
Server receives event to use Item2, begins processing the event
Server receives event to use Item3, begins processing the event
Server finishes processing the event for using Item3
Sends Use Success Event to client
Server finishes processing the event for using Item2
Sends Use Error Event to client since the food GCD is now triggered
Server finishes processing the event for using Item1
Sends Use Error Event to client since the food GCD is now triggered
You can easily prove the spells are evaluated in parallel on the server side by making the following macro on an undead rogue and using it:
/cast Cannibalize
/cast Stealth
That WILL actually start the cannibalize channel AND stealth you.
Now the reason this only occurs for items is how the inventory is stored and gone through. In short, the time it takes to check for an item is directly related to how close it is to the front of your bags (again you can see this by putting two stacks of the same food in your bags in different spots and using a macro to eat it. The one closest to slot 1 of your backpack gets used first). In turn this means that the event that handles using the items will return faster if the item is closer to slot 1, which is what causes the issue.
Post by
pelf
I think the suggestion about Buffet is probably the right answer in this case, given the ridiculousness of the other options :).
Post by
Wanderingfox
Well ya. I was just elaborating on my point for the techies :P
Post by
pelf
Well ya. I was just elaborating on my point for the techies :P
Yeah my post was more like "given what was posted, conclusion". I wouldn't dream of telling someone to not get technical. Pssh.
Post Reply
You are not logged in. Please
log in
to post a reply or
register
if you don't already have an account.