FAQ  •  Register  •  Login

Running into trouble with dynamic macros

Moderator: MiRai

<<

MultiBear

Posts: 13

Joined: Tue Dec 23, 2014 8:54 am

Post Sun Mar 20, 2016 11:30 pm

Running into trouble with dynamic macros

I'm attempting to test whether the character the macro is being generated for, is the same character occupying a specific set and slot with the following macro:

Code:
/say {CHARACTER}
/say {SET1SLOT1}

!if ("me" is "{SET1SLOT1}") /say Hi!
!if (character is "{SET1SLOT1}") /say Howdy!
!if ("{CHARACTER}" is "{SET1SLOT1}") /say Hello!


When I preview the macro in ISBoxer or run the macro in-game, the two /say commands at the start show identical character names. However, the three conditionals all seem to resolve to 'false' as ISBoxer will omit all three lines in the preview pane, and in-game I'm not greeted by a "Hi!", "Howdy!" or "Hello!".

Given that the Wiki states that variables may be used within the strings for macro conditionals, I expected for this to work. And so my question is, am I missing something here? Is this a bug? Thanks in advance for any help!
<<

bob

User avatar

League of Extraordinary Multiboxers

Posts: 4653

Joined: Sat Feb 15, 2014 11:14 am

Location: In the dining room, with the lead pipe.

Post Mon Mar 21, 2016 4:27 am

Re: Running into trouble with dynamic macros

...deleted previous because I can't do a strikethrough (and I did say it was wrong after I looked harder).....

So I decided to replace the previous post as it was wrong, and put in what I learnt after some fiddling. This requires someone smarter than me to figure out.
After some fiddling and looking. You can only use {SETx.....} variables if you actually have a linked character set. Maybe you don't have a linked character set??

I did find that despite a bit of tracing I can't get conditionals to to evaluate to true when using variables. I tried:
Code:
!if ("{CHARACTER}" is "{SLOT1}") /woogle

and even though the resulting statement turns out to be:
Code:
!if ("charname" is "charname") /woogle

This is still evaluating to false and I don't know why. I am probably doing something wrong somewhere as it looks like it should work (if you remove the leading ( after the !if you can even see the replacements in the macro).

The rest of them work fine... ish.
After further fiddling, you don't appear to be able to use {SETx} as it replaces it with charactersetname} i.e. it leaves the trailing }. Looking behind the scenes, this is because it is miscounting the length of the variable by 1. Otherwise if it worked you could use the longform of what you were trying. However sadly this may also evaluate to false too.
Code:
!if ("me" is "slot 1" and "{CHARACTERSET}" is "{SET1}" and "me" is in "{SET1}" ) /woogle


I wish I knew why the first one did...
/e2
Duh!!!.. I do now know. It's technical, yes you could call it a bug if you like. `Tis also the same issue you are encountering.
<<

MultiBear

Posts: 13

Joined: Tue Dec 23, 2014 8:54 am

Post Tue Mar 22, 2016 12:55 am

Re: Running into trouble with dynamic macros

The character sets are indeed linked, and as I mentioned in the original post, the first two uses of variables do show identical character names, so that part is definitely working as it should.

What I didn't mention is that I've also done various tests using the {SETxSLOTx} variables, which all seem to result in the correct character names, regardless of which set and which computer are being referenced and used. No matter what, every client always comes up with the correct character names (as they should, of course). It just all goes up in smoke the moment I try to use those same variables in an !if statement, then InnerSpace starts channeling Marvin the paranoid Android and everything is just false.

Silliness aside, you mentioned it's something technical that could be called a bug if I were so inclined. Does that mean it's something that's likely to be resolved/supported in a future build?
<<

bob

User avatar

League of Extraordinary Multiboxers

Posts: 4653

Joined: Sat Feb 15, 2014 11:14 am

Location: In the dining room, with the lead pipe.

Post Tue Mar 22, 2016 4:12 am

Re: Running into trouble with dynamic macros

Hopefully it will be fixed.
After figuring out why it was happening, I've provided some suggestions to Lax on how it could be fixed, although he may have his own ideas.
<<

MultiBear

Posts: 13

Joined: Tue Dec 23, 2014 8:54 am

Post Tue Mar 22, 2016 10:02 am

Re: Running into trouble with dynamic macros

Ah, splendid. Will keep my fingers crossed then!

In any case, thank you for all your troubleshooting efforts and figuring out the reason for this unexpected behavior, it's much appreciated. :D
<<

MultiBear

Posts: 13

Joined: Tue Dec 23, 2014 8:54 am

Post Tue May 24, 2016 7:37 am

Re: Running into trouble with dynamic macros

I don't mean to be impatient, but as it's been two months since I raised this issue, I'm wondering if there's any news on whether or not this issue is still expected to be resolved. I've been itching to make use of it. :)
<<

lax

User avatar

Site Admin

Posts: 7303

Joined: Tue Nov 17, 2009 9:32 pm

Post Thu Jun 09, 2016 10:23 am

Re: Running into trouble with dynamic macros

ISBoxer 41.15.0609.1 (changes) corrects the issues here. My apologies that it was not resolved sooner!

To update to this version you can go to Help->About ISBoxer and click the download link
<<

MultiBear

Posts: 13

Joined: Tue Dec 23, 2014 8:54 am

Post Fri Jun 10, 2016 12:40 am

Re: Running into trouble with dynamic macros

Thank you! :D

And no worries. To be honest, I even felt a little guilty asking for obscure things to be fixed in ISBoxer when I'm certain you're quite busy working on ISBoxer 2. :mrgreen:

There is one odd thing I've ran into though, there seems to be a single character (named "Delora") for whom only "{CHARACTER}" will work. When I use "me" or character instead in the if-statement, the statement won't end up being true. Changing her name in the Actual Character name (if different) field to something else, immediately fixes this. That said, I've simply made sure to use "{CHARACTER}" in all the if-statements, and it works like a charm. Quite pleased to have torn down my temporary band-aid of action target groups and having actual dynamic macros now. Thanks again!

Return to World of Warcraft

Who is online

Users browsing this forum: No registered users and 3 guests