Quantcast
Download
(61 Kb)
Download
Updated: 12-07-17 11:36 AM
Pictures
File Info
Compatibility:
Shadows of Argus (7.3.0)
Updated:12-07-17 11:36 AM
Created:unknown
Downloads:195,304
Favorites:351
MD5:
Categories:Miscellaneous, Utility Mods
7.3.0

Super Duper Macro  Popular! (More than 5000 hits)

Version: 7.3.2.0
by: hypehuman, spiralofhope

This addon is under new maintenance

WowInterface will be kept up-to-date, but still needs to be cleaned up a bit. The source code, a list of all past releases, documentation, and issue tracker, can be found at:

https://github.com/spiralofhope/SuperDuperMacro

This description still needs to be audited.

----

To view recent changes, click the "Change Log" tab at the top of this page.


Open the in-game interface by typing /sdm


This addon allows you to create macros beyond the 255-character limit, and even beyond the 1023-character macrotext limit. However, no individual line in a macro may be more than 1023 characters long (you will get a warning). The number of lines is unlimited. Super Duper Macro also allows you to share macros with your friends in-game.


This mod allows you to make two types of macros:

  • Button macros are just like regular macros, but they can be as long as you want. You cannot make an unlimited number of them; they share a limit with your regular macros (36 global and 18 character-specific for each character).
  • Floating macros do not have buttons, and are accessed by /click. You can make as many of these as you want.
  • You can also make lua scripts of unlimited length that you can call using "/sdm run <name>" or via sdm_RunScript("name")


Suggestions and bug reports are always welcome. You can post comments on the wowinterface.com page for this addon, or if you want to add something yourself, you can upload it in the "Optional Files" tab.


Alternately, create a pull request to my GitHub repo: https://github.com/hypehuman/super-duper-macro


Special thanks to:
  • SuperMacro, which inspired the idea for this addon.
  • All the regulars on the UI & Macro forums, who taught me how to program for WoW.


See CHANGELOG.markdown within this zip file or online at:

https://github.com/spiralofhope/SuperDuperMacro/blob/master/CHANGELOG.markdown
Optional Files (2)
File Name
Version
Size
Author
Date
Type
2.5
128kB
03-04-12 10:27 PM
Patch
1.8.3-4
16kB
06-30-11 11:50 AM
Patch


Archived Files (29)
File Name
Version
Size
Author
Date
2.6.1
58kB
hypehuman
10-16-14 08:07 PM
2.6
56kB
hypehuman
10-16-14 01:32 AM
2.4.6
124kB
hypehuman
02-20-12 02:11 PM
2.4.5
124kB
hypehuman
01-17-12 10:43 PM
2.4.4
124kB
hypehuman
12-17-11 09:12 AM
2.4.3
124kB
hypehuman
11-30-11 07:03 PM
2.4.2
124kB
hypehuman
11-30-11 05:53 PM
2.4.1
123kB
hypehuman
11-30-11 03:12 AM
2.4
123kB
hypehuman
11-20-11 05:39 AM
2.3
57kB
hypehuman
11-16-11 09:21 PM
2.2.1
55kB
hypehuman
11-15-11 12:57 PM
2.2
55kB
hypehuman
11-04-11 01:46 PM
2.1
28kB
hypehuman
10-19-11 01:48 AM
2.1
29kB
hypehuman
10-16-11 10:53 AM
1.8.3
29kB
hypehuman
02-26-09 09:23 PM
1.8.3
28kB
hypehuman
02-25-09 11:20 PM
1.8.1
25kB
hypehuman
02-21-09 11:24 AM
1.8
25kB
hypehuman
02-20-09 11:38 AM
1.7
23kB
hypehuman
02-08-09 11:13 PM
1.6.1
21kB
hypehuman
01-27-09 10:55 PM
1.6
21kB
hypehuman
01-19-09 08:50 PM
1.5.1
18kB
hypehuman
01-12-09 09:12 PM
1.5
17kB
hypehuman
01-12-09 05:46 PM
1.5
14kB
hypehuman
01-09-09 04:20 AM
1.4
13kB
hypehuman
01-08-09 11:12 PM
1.3.1
10kB
hypehuman
12-16-08 12:46 PM
1.3
10kB
hypehuman
12-15-08 06:55 PM
1.2
8kB
hypehuman
12-13-08 09:59 AM
1.1
8kB
hypehuman
12-12-08 03:06 AM


Post A Reply Comment Options
Unread 05-14-12, 12:46 AM  
dreamcatcher
A Black Drake
 
dreamcatcher's Avatar
AddOn Author - Click to view AddOns

Forum posts: 82
File comments: 24
Uploads: 1
Hellp

I keep getting this error. I was trying to transfer my old saved variables so I would not have to re do all my macros.

Code:
Message: ...AddOns\SuperDuperMacro\SuperDuperMacro_Interface.lua:430: attempt to index field 'icon' (a number value)
Time: 05/14/12 00:42:21
Count: 2
Stack: ...AddOns\SuperDuperMacro\SuperDuperMacro_Interface.lua:430: in function `sdm_UpdateList'
...ce\AddOns\SuperDuperMacro\SuperDuperMacro_Frames.lua:16: in function <...ce\AddOns\SuperDuperMacro\SuperDuperMacro_Frames.lua:14>
[C]: in function `Show'
...ce\AddOns\SuperDuperMacro\SuperDuperMacro_Frames.lua:32: in function <...ce\AddOns\SuperDuperMacro\SuperDuperMacro_Frames.lua:31>
[C]: ?
[C]: in function `securecall'
Interface\FrameXML\UIParent.lua:2242: in function `CloseWindows'
Interface\FrameXML\UIParent.lua:2270: in function `CloseAllWindows'
[string "*:OnMouseUp"]:13: in function <[string "*:OnMouseUp"]:1>

Locals: f = sdm_ListButton1 {
 0 = <userdata>
 highlight = <unnamed> {
 }
 isContainerFrame = false
 slotIcon = <unnamed> {
 }
 text = <unnamed> {
 }
 icon = <unnamed> {
 }
 buttonHighlight = <unnamed> {
 }
}
sorted = <table> {
 1 = <table> {
 }
 2 = <table> {
 }
 3 = <table> {
 }
 4 = <table> {
 }
 5 = <table> {
 }
 6 = <table> {
 }
 7 = <table> {
 }
 8 = <table> {
 }
 9 = <table> {
 }
}
offsets = <table> {
 1 = 0
 2 = 0
 3 = 0
 4 = 0
 5 = 0
 6 = 0
 7 = 0
 8 = 0
 9 = 0
}
listItem = sdm_ListButton1 {
 0 = <userdata>
 highlight = <unnamed> {
 }
 isContainerFrame = false
 slotIcon = <unnamed> {
 }
 text = <unnamed> {
 }
 icon = <unnamed> {
 }
 buttonHighlight = <unnamed> {
 }
}
isContainer = false
(for generator) = <function> defined =[C]:-1
(for state) = <table> {
 1 = <table> {
 }
 2 = <table> {
 }
 3 = <table> {
 }
 4 = <table> {
 }
 5 = <table> {
 }
 6 = <table> {
 }
 7 = <table> {
 }
 8 = <table> {
 }
 9 = <table> {
 }
}
(for control) = 1
i = 1
mTab = <table> {
 type = "f"
 name = "BM"
 ID = 2
 text = "/cast Bestial Wrath
/cast Rapid Fire
/cast Blood Fury
/cast Focus Fire
/cast Fervor
/use 13
/use 14
/cast [target=pettarget,exists] Kill Command
/cast Kill Shot"
 icon = 1
 character = <table> {
 }
}
(*temporary) = 1
(*temporary) = 1
(*temporary) = sdm_ListButton1 {
 0 = <userdata>
 highlight = <unnamed> {
 }
 isContainerFrame = false
 slotIcon = <unnamed> {
 }
 text = <unnamed> {
 }
 icon = <unnamed> {
 }
 buttonHighlight = <unnamed> {
 }
}
(*temporary) = sdm_ListButton1 {
 0 = <userdata>
 highlight = <unnamed> {
 }
 isContainerFrame = false
 slotIcon = <unnamed> {
 }
 text = <unnamed> {
 }
 icon = <unnamed> {
 }
 buttonHighlight = <unnamed> {
 }
}
(*temporary) = nil
(*temporary) = nil
(*temporary) = 0
(*temporary) = "attempt to index field 'icon' (a number value)"
Report comment to moderator  
Reply With Quote
Unread 06-10-12, 02:32 AM  
spiralofhope
A Deviate Faerie Dragon
 
spiralofhope's Avatar

Forum posts: 13
File comments: 240
Uploads: 0
feature request: multi-line comments

Lua Code:
  1. --[[
  2. This is a multi-line comment
  3. Yay!
  4. ]]
__________________
spiralofhope.com
Report comment to moderator  
Reply With Quote
Unread 07-22-12, 09:45 PM  
elals29
A Wyrmkin Dreamwalker
 
elals29's Avatar

Forum posts: 52
File comments: 99
Uploads: 0
i need to make a guild recruit spam macro that has nothing to do with spells. how do i do this?
Report comment to moderator  
Reply With Quote
Unread 08-30-12, 05:15 PM  
KneazlesKeeper
A Kobold Labourer
 
KneazlesKeeper's Avatar

Forum posts: 0
File comments: 21
Uploads: 0
needs updating

super-duper macros is blocking my ability to set glyphs in 5.04
Report comment to moderator  
Reply With Quote
Unread 08-30-12, 06:14 PM  
spiralofhope
A Deviate Faerie Dragon
 
spiralofhope's Avatar

Forum posts: 13
File comments: 240
Uploads: 0
Re: needs updating

Originally Posted by KneazlesKeeper
super-duper macros is blocking my ability to set glyphs in 5.04

Basically every addon is doing this. =(
__________________
spiralofhope.com
Report comment to moderator  
Reply With Quote
Unread 09-05-12, 09:06 AM  
Grewe02
A Murloc Raider

Forum posts: 9
File comments: 4
Uploads: 0
Hello, I've been using this macro for a few years now, and with 5.0 it is now being truncated. I was wondering if the macro experts could help?

Lua Code:
  1. /script CastSpellByName("Jewelcrafting");
  2. SendChatMessage(GetTradeSkillListLink().." LET ME CUT YOUR SHIT. I ENJOY CUTTING SHIT. NO CHARGE FOR CUTTING SHIT. ","CHANNEL",nil,GetChannelName("Trade - City"));CloseTradeSkill();

Here is what the output looks like:



I use the same macro for Cooking, Enchanting, Tailoring, Alchemy, Blacksmithing, all of those work. It's only the Jewelcrafting one that doesn't work.

HELP!
Last edited by Grewe02 : 09-05-12 at 09:08 AM.
Report comment to moderator  
Reply With Quote
Unread 09-05-12, 03:30 PM  
spiralofhope
A Deviate Faerie Dragon
 
spiralofhope's Avatar

Forum posts: 13
File comments: 240
Uploads: 0
Originally Posted by Grewe02
Lua Code:
  1. /script CastSpellByName("Jewelcrafting");SendChatMessage(GetTradeSkillListLink().." LET ME CUT YOUR ****. I ENJOY CUTTING ****. NO CHARGE FOR CUTTING ****. ","CHANNEL",nil,GetChannelName("Trade - City"));CloseTradeSkill();
I can't think of the reason this would happen, so I'll guess that it's a length issue. I wouldn't think it would get truncated the way you're showing though, so I'm guessing. See if splitting this up into three lines would help.


1b) trade /script for /run to see if the slight shortening helps.


1c) I noticed an extra space after your message, which I removed. Not harmful, but every character may count.

Lua Code:
  1. /run CastSpellByName("Jewelcrafting")
  2. /run SendChatMessage(GetTradeSkillListLink().." LET ME CUT YOUR ****. I ENJOY CUTTING ****. NO CHARGE FOR CUTTING ****.","CHANNEL",nil,GetChannelName("Trade - City"))
  3. /run CloseTradeSkill()

2) You could refer to the channel number instead of by name, to further shorten it.

Depending on what channels you have joined you may have to substitute 2 for the appropriate channel number.

Lua Code:
  1. /run CastSpellByName("Jewelcrafting")
  2. /run SendChatMessage(GetTradeSkillListLink().." LET ME CUT YOUR ****. I ENJOY CUTTING ****. NO CHARGE FOR CUTTING ****.","CHANNEL",nil,2)
  3. /run CloseTradeSkill()

3) I found this (untested) code which is using GetSpellLink instead of doing the CastSpellByName you're doing. I wonder if it would act differently.

Lua Code:
  1. /run local s,g=SendChatMessage,GetSpellLink s("Crafting "..select(2,g("Jewelcrafting")).." and","CHANNEL",nil,GetChannelName("Trade - City"))s(select(2,g("Blacksmithing")).." against materials and tips.","CHANNEL",nil,GetChannelName("Trade - City"))
__________________
spiralofhope.com
Report comment to moderator  
Reply With Quote
Unread 09-05-12, 06:21 PM  
Grewe02
A Murloc Raider

Forum posts: 9
File comments: 4
Uploads: 0
The first two produced the same result. It appears that something before the " " string is what is causing this. The only thing that differs between my macros is the actual name of the profession, and I honestly don't believe that is the cause.

Using the third example you posted, I modified it to this:

Lua Code:
  1. /run local s,g=SendChatMessage,GetSpellLink s(select(2,g("Jewelcrafting")).." LET ME CUT YOUR SHIT. I ENJOY CUTTING SHIT. NO CHARGE FOR CUTTING SHIT.","CHANNEL",nil,GetChannelName("Trade - City"))s(select(2,g("Cooking")).." LET ME COOK YOUR SHIT. I ENJOY COOKING SHIT. NO CHARGE FOR COOKING SHIT.","CHANNEL",nil,GetChannelName("Trade - City"))

And it produces this, still truncating. Since I included two professions in this one, I definitely don't believe it to be a length issue. If anything, I believe it to be a length issue before the string

Report comment to moderator  
Reply With Quote
Unread 09-05-12, 10:40 PM  
spiralofhope
A Deviate Faerie Dragon
 
spiralofhope's Avatar

Forum posts: 13
File comments: 240
Uploads: 0
Can the script be fit into a regular macro? I'm curious to see if this can be reproduced in another way


The other thing I can think to try is to put all of that in a Super Duper Macro "script" entry. So it would be all the code without the opening /run
lua Code:
  1. CastSpellByName("Jewelcrafting")SendChatMessage(GetTradeSkillListLink().." LET ME CUT YOUR ****. I ENJOY CUTTING ****. NO CHARGE FOR CUTTING ****.","CHANNEL",nil,GetChannelName("Trade - City"))
  2. CloseTradeSkill()

Then you can summon it with your macro like so:

/sdm run SCRIPTNAME


--


I know I'm really reaching here, but there has to be a way to refine the issue somehow.


I think what I'll do when I have time is take my jewelcrafter and do some testing with this. I've got another addon DevPad which will let me plop the code in and try it in there too, so we're not just restricted to SuperDuperMacro.


It could be an issue with SDM, but it may also be a wow issue.


After that sort of testing I'd want to bring this up on the technical forums to get a real programmer's help.
__________________
spiralofhope.com
Report comment to moderator  
Reply With Quote
Unread 09-06-12, 01:19 AM  
spiralofhope
A Deviate Faerie Dragon
 
spiralofhope's Avatar

Forum posts: 13
File comments: 240
Uploads: 0
This same issue can be reproduced without using SuperDuperMacro, so it's definitely not this addon.

Your message is simply too long and is being truncated.

I can prove this by substituting Jewelcrafting for Blacksmithing (without altering the message) and I see it's being truncated slightly differently.

You need to shorten your message.. Blizzard reduced the maximum message length.
__________________
spiralofhope.com
Report comment to moderator  
Reply With Quote
Unread 09-06-12, 12:14 PM  
Grewe02
A Murloc Raider

Forum posts: 9
File comments: 4
Uploads: 0
Correct, the same message is truncated without using sdm. The only reason I don't believe my message is too long is because it still works for all of my other professions. If you look in the screenshot, the Cooking macro still works great. For some reason it just doesn't like Jewelcrafting

I don't have a blacksmith so I couldn't test that one. It is truncating as well?
Report comment to moderator  
Reply With Quote
Unread 09-06-12, 12:23 PM  
spiralofhope
A Deviate Faerie Dragon
 
spiralofhope's Avatar

Forum posts: 13
File comments: 240
Uploads: 0
Originally Posted by Grewe02
Correct, the same message is truncated without using sdm. The only reason I don't believe my message is too long is because it still works for all of my other professions. If you look in the screenshot, the Cooking macro still works great. For some reason it just doesn't like Jewelcrafting

I don't have a blacksmith so I couldn't test that one. It is truncating as well?

Yes it's truncating on blacksmithing, but truncating at a different point.


It's not intuitive, since they have the same length names.



jewelcrafting = 13

blacksmithing = 13


So this means there's some internal stuff happening. I know when text is sent out into the world there are hidden strings to generate links. So this means that these two professions have a different length hidden string.



Also, some of your early examples had different text, and not just for the profession name. It turns out your early successful ones also had less text.


So some combination of code length and text length seems to be the culprit.
__________________
spiralofhope.com
Report comment to moderator  
Reply With Quote
Unread 09-08-12, 05:18 PM  
Grewe02
A Murloc Raider

Forum posts: 9
File comments: 4
Uploads: 0
That makes sense. Now I just have to figure out why Blizz decided to make "Jewelcrafting" a longer string


Thank you for the help, taught me a little about macros while you were at it. Much appreciated!
Report comment to moderator  
Reply With Quote
Unread 10-04-12, 04:21 PM  
elals29
A Wyrmkin Dreamwalker
 
elals29's Avatar

Forum posts: 52
File comments: 99
Uploads: 0
Any update for MoP?
Report comment to moderator  
Reply With Quote
Unread 10-04-12, 10:04 PM  
spiralofhope
A Deviate Faerie Dragon
 
spiralofhope's Avatar

Forum posts: 13
File comments: 240
Uploads: 0
Originally Posted by elals29
Any update for MoP?
It's working just fine.
__________________
spiralofhope.com
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: