Download
(10 Kb)
Download
Updated: 05-22-13 12:24 PM
Compatibility:
Escalation (5.3)
Thunder Isle (5.2)
Landfall (5.1)
Updated:05-22-13 12:24 PM
Created:unknown
Downloads:8,857
Favorites:48
MD5:
MacroTalk  Popular! (More than 5000 hits)
Version: 2.1.1
by: Djidam [More]
MacroTalk provides extended chat command support especially useful for macros.
For comments, bug reports, etc., please visit http://cogwheel.wowinterface.com.

Table of Contents

Disabling modules
Slash commands
/tellunit
/group
/opt
/rndcmd
Conditional chat commands
Random chat commands
Text substitutions
Straight substitutions
Unit information
Disabling Modules:
If you would prefer only to have certain functionality from MacroTalk (for
instance, if you have another addon that provides similar functionality),
you can disable various modules by renaming or deleting the corresponding
.lua files. You can safely remove MacroTalkChatOptions, MacroTalkCommands,
and MacroTalkSubstitutions which correspond to Conditional/Random chat
commands, Slash commands, and Text substitutions, respectively.
Slash commands:
/tellunit (/tu, /whisperunit, /wu) <unit> <message>
Sends a whisper to the specified unit. See
http://www.wowwiki.com/API_TYPE_UnitId for a list of units

Example:
/cast Innervate
/tellunit target Incoming innervate
/group (/gr) <message>
Picks battleground, raid, or party chat depending on which type of group
you are in.
/opt [options] <slash command>; [options] <slash command>; ...
Picks from multiple slash commands given the options. You can only use
slash commands that don't trigger secure functions. Chat commands,
emotes, scripts, etc. are OK. /cast, /use, etc. are off limits.

Note: the sub-commands cannot use macro options since the semicolons
would cause ambiguity.

Example:
/opt [button:2] /bye; /wave
/rndcmd [options] <command 1>\<command 2>; [options] <command 3>\<command 4>...
Picks a random slash command out of the group chosen based on the
given options. Each group is a list of slash commands separated by the
backslash (\) character (this is in contrast to commas used for the
built-in random commands--commas are just too common in chat messages).

Note: like the /opt command, the sub-commands cannot use macro options
and you can't use any secure commands.

Example:
/rndcmd [swimming] /y Help! I'm Drowning! \ /s The water's great!;
/s Time for a swim... \ /dance
Conditional chat commands:
All chat commands (/say, /tell, /guild, etc.) can now accept macro options.
To use this functionality, simply start the command with /opt. Note:
[target=] has no effect on the output of the chat commands; it only affects
the other conditionals in the clause.

Example:
/optsay [swimming] gurgle; [mounted] The cavalry has arrived!
Example:
/cast [target=focus] Polymorph
/optgroup [target=focus, exists] Sheeping %f
Random chat commands:
Similar to the macro options, you can now add /rnd to the beginning of any
chat command to pick a random saying. The /rnd___ commands also take options
to pick a different list of sayings. The lists themselves are separated by
the backslash symbol (\).

Example:
/rndyell ZOMG! \ WTF?! \ You there! Check out that noise!
Example:
/rndsay [outdoors] Ahhh, the Great Outdoors! \ What a lovely day!;
I wish I could go outside right now \ Must... Leave... Building...
Text substitutions:
MacroTalk offers a variety of substitutions in addition to %t of the default
UI. Substitutions are prioritized by the length of the code; longer codes
are processed first. This means that %tl will be processed before %t. The
codes are case-insensitive so %Tl is equivalent to %tL.

Straight substitutions:
%n - Your name
%z - Your current zone
%sz - Your current sub-zone (or zone if no sub-zone)
%loc - Your map coordinates
Unit information:
%t - Name of your target (built in, but listed for consistency)
%f - Name of your focus
%m - Name of mouseover unit
%p - Name of your pet
%tt - Name of your target's target

You can suffix those with one of the following to return other pieces of
data about the unit:

l - Level
c - Class
g - Gender
gb - Gender (blank if no gender)
r - Race
rb - Race (blank if no race)
gu - Guild
gu - Guild (blank if no guild)
rm - Realm (works with other realms than yours like in a dungeon)
h - Health (XX/XX)
hp - Health percentage (XX%)
ma - Mana - Not just 'm' because it conflicts with mouseover
mab - Mana (blank if no mana)
mp - Mana percentage
mpb - Mana percentage (blank if no mana)
ic - Raid icon
icb - Raid icon (blank if no icon)

Example:
/p Sheeping %f (level %fl %fg %fr %fc)
/cast [target=focus] Polymorph

Sample result: Sheeping Cogwheel (level 64 male Gnome Warrior)
You can also use the suffixes without a unit code to return information
about yourself.

Example:
/s I'm a level %l, %g, %r %c.

Sample result: I'm a level 68, male, gnome warrior.
All thanks to CogWheel for his really nice work on this addon, I am here only to maintain it alive
v2.1.1
- TOC updated

v2.1
- With 5.2 patch, I figured MacroTalk should be 2.1, since a lot of changes happened before, and this version would be a basic one now.
- TOC updated

v2.0.8
- Changes with new chan Instance
- Fixed BATTLEGROUNDS issues
- Fixed /group issues

v2.0.7
- TOC updated
- substitutions with h (for health) will always give you currentHP/maxHP. use hp for health

percentage.
v2.0.6
- Function GetNumGroupMember replaced with IsInRaid, to make sure you're really in a party or a raid.

v2.0.5
- Function GetNumPartyMember and GetNumRaidMember replaced with new GetNumGroupMember.

v2.0.4
- TOC updated

v2.0.3
- Fixed an issue with the subzone substitution. Now if you are in a zone with no subzones, %sz will show you the name of the zone instead of nothing.

v2.0.2
- Fixed an issue I did not see with /opt or /rnd commands and a secure command like /equipset.
- Constant MAX_BATTLEFIELD_QUEUES replaced by the function GetMaxBattlefieldID()

v2.0.1
- Correcte 3 changes done with versions posted on wowinterface and not in wowcurse (1.72 max in wow curse and 1.8.1 max in wowinterface)
See below for the changes.

v2.0
- Works now with 4.2
- Added realm and guild commands

v1.8.1
- Fixed a stray global in MacroTalk.lua

v1.8
- The ic and icb suffixes now insert the appropriate codes to send texture links
instead of just the name of the icons.

v1.7.2
- %gb correctly eliminates the "no gender" message
- % without a code no longer substitutes as the player's name

v1.7.1
- Fixed suffixes to work without a unit
- Fixed error when using /gr outside of a group

v1.7
- /rnd___ commands should actually work now
- Changed /rnd to /rndcmd because of a conflict with the built-in /rnd command
- Added architecture for straight text substitutions (no interface yet--see
MacroTalkSubstitutions.lua for more information)

v1.6
- Added raid icon and "blank" suffixes

v1.5.1
- Fixed a bug that caused all SendChatMessages to fail... :eek:

v1.5
- The race suffix will use UnitRace for players and UnitCreatureType for NPCs
- Added %tt, %loc
- Added health and mana suffixes

v1.4
- /opt & /rnd will now print an error message if you attempt to use a secure
command
- Added %n, %z, %sz
- Added ability to use suffixes alone to get info about the player
- Changed unit prefixes to suffixes - INCOMPATIBLE WITH PREVIOUS VERSION
- Substitutions are no longer case-sensitive
- Restructured substitutions and localizations to be more generic

v1.3
- Added /rnd and /rnd___ commands
- Fixed a bug where the /opt prefix was only being applied to the first command
of a given type (e.g. only /opts would work but not /optsay)

v1.2
- Added generic /opt command

v1.1
- Improved localizability of substitutions

v1.0
- Name substitutions have been simplified a bit to match the functionality of %t
- Added pet unit substitution
- Added info type prefixes: level, class, gender, race

v0.9
- Added /opt___ commands
- Fixed a bug where %m behaved like %f
- No longer uses Satellite
- Added localization lua for future localization

v0.5
- Initial release
Archived Files (10)
File Name
Version
Size
Author
Date
2.1
10kB
Djidam
03-06-13 04:14 AM
2.0.8
10kB
Djidam
01-24-13 04:31 PM
2.0.7
9kB
Djidam
11-29-12 02:43 AM
2.0.6
10kB
Djidam
09-18-12 02:26 AM
2.0.5
10kB
Djidam
09-17-12 04:55 PM
2.0.4
9kB
Djidam
08-29-12 07:15 AM
2.0.3
9kB
Djidam
02-29-12 01:43 AM
2.0.2
9kB
Djidam
12-01-11 11:54 AM
2.0.1
9kB
Djidam
08-11-11 11:26 AM
1.8.1
10kB
Djidam
06-27-08 08:29 AM


Post A Reply Comment Options
Old 10-28-13, 07:20 PM  
Djidam
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 10
Uploads: 1
Im loooking for someone to take over the project.

Im no longer playing wow and i wont resume playing it, so if someone wants this addon to stay alive, feel free to ask.
Djidam is offline Report comment to moderator  
Reply With Quote
Old 03-06-13, 04:16 AM  
Djidam
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 10
Uploads: 1
Versions

Be aware that MacroTalk may not work with previous versions of WoW.

If you are running with wow 5.1 or superior, use macrotalk 2.0.8 or superior.
For previous versions of wow, use previous versions of the addon.

Thanks.
Djidam is offline Report comment to moderator  
Reply With Quote
Old 01-14-13, 11:09 AM  
Djidam
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 10
Uploads: 1
Update soon !

Hey everyone, I've finally decided to check for my "instance chat" problem. It's solved, but I haven't tested it.

An update will come out end of this week cause I have to check if /group sends message to /i in LFR/LFG/BG and in /p when in party or /r when in raid (and those without being in an instance).

Anyways, after the tests, it should work ! Plus, I removed an lua error with "SLASH_BATTLEGROUND" (obvious one since there is no channel BATTLEGROUND anymore, it's instance )
Djidam is offline Report comment to moderator  
Reply With Quote
Old 11-29-12, 02:41 AM  
Djidam
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 10
Uploads: 1
ChatTypeId for the new chat in LFR

Okay so, I uploaded a fix with H substitution.
Now I need the chat id of the one in LFR, and I don't find it, so wait for an working version in LFR of /group command.

If you found other bug, don't hesitate to tell me !
Djidam is offline Report comment to moderator  
Reply With Quote
Old 10-03-12, 06:25 PM  
Djidam
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 10
Uploads: 1
Re: Re: Re: fix for the group-command

What command did you type to get this error please ?
And in what conditions (target ? zone ? etc...)

I know that for instance, macrotalk group command doesn't work with the smartgroup function of Prat (so you have to deactivate it, also this function of prat is broken, so that group command works !)
Maybe QHLite interfere, maybe not...
Last edited by Djidam : 10-03-12 at 06:27 PM.
Djidam is offline Report comment to moderator  
Reply With Quote
Old 09-29-12, 07:50 PM  
wolfi
A Kobold Labourer

Forum posts: 1
File comments: 7
Uploads: 0
Re: Re: fix for the group-command

Originally Posted by Djidam
Yeah sorry, like I said, I dont use all of the options.
Never mind, thx for the fix.

Heres another one, don't:know if its macrotalk or questhelperlite fault?
---------------------------
16x MacroTalk-2.0.5\MacroTalkSubstitutions.lua:67: attempt to compare number with string
MacroTalk-2.0.5\MacroTalkSubstitutions.lua:67: in function <MacroTalk\MacroTalkSubstitutions.lua:65>
MacroTalk-2.0.5\MacroTalkSubstitutions.lua:178: in function "func"
MacroTalk-2.0.5\MacroTalkSubstitutions.lua:200: in function "SendChatMessage"
QuestHelperLite\QuestHelperLite-4.0.3.0.lua:306: in function "CheckVersion"
QuestHelperLite\QuestHelperLite-4.0.3.0.lua:679: in function "?"
QuestHelperLite\QuestHelperLite-4.0.3.0.lua:620: in function <QuestHelperLite\QuestHelperLite.lua:614>

Locals:
unit = "targettarget"
func = <func> @MacroTalk\MacroTalkSubstitutions.lua:65
noUnit = "<no targettarget>"
wolfi is offline Report comment to moderator  
Reply With Quote
Old 09-17-12, 04:53 PM  
Djidam
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 10
Uploads: 1
Re: fix for the group-command

Yeah sorry, like I said, I dont use all of the options.

I updated a quick fixe follwing a comment on curse, but I dont like it.

Watch for another update later.

PS - Thanks for the comment, I hade the same function to change in another addon, but like I said, I dont know evrey functions of this one, since I took "over" this project.

Continue the follow up of bugs, it helps me
Djidam is offline Report comment to moderator  
Reply With Quote
Old 09-16-12, 07:47 PM  
wolfi
A Kobold Labourer

Forum posts: 1
File comments: 7
Uploads: 0
fix for the group-command

blizz removed the functions GetNumRaidMembers and GetNumPartyMembers

so in MacroTalkCommands.lua row 10 and 11 change:

GetNumRaidMembers() > 0 and "RAID" or
to
IsInRaid() and "RAID" or
and
GetNumPartyMembers() > 0 and "PARTY"
to
GetNumGroupMembers() > 0 and "PARTY"
wolfi is offline Report comment to moderator  
Reply With Quote
Old 09-16-12, 04:06 PM  
wolfi
A Kobold Labourer

Forum posts: 1
File comments: 7
Uploads: 0
Originally Posted by Djidam
Works fine with 5.0.4. Juste updated the TOC file.
If you are having bug with 5.0.4, do not hesitate to open a ticket.
ok, here it goes:

2x MacroTalk-2.0.4\MacroTalkCommands.lua:10: attempt to call global "GetNumRaidMembers" (a nil value)
MacroTalk-2.0.4\MacroTalkCommands.lua:10: in function "?"
FrameXML\ChatFrame.lua:4358: in function "ChatEdit_ParseText"
FrameXML\ChatFrame.lua:4052: in function "ChatEdit_SendText"
MacroTalk\MacroTalk-2.0.4.lua:25: in function "MacroTalk_DoCommand"
MacroTalk-2.0.4\MacroTalkCommands.lua:60: in function "?"
FrameXML\ChatFrame.lua:4358: in function "ChatEdit_ParseText"
FrameXML\ChatFrame.lua:4052: in function "ChatEdit_SendText"
FrameXML\ChatFrame.lua:2727: in function <FrameXML\ChatFrame.lua:2720>
<in C code>
FrameXML\SecureTemplates.lua:379: in function "handler"
FrameXML\SecureTemplates.lua:560: in function <FrameXML\SecureTemplates.lua:508>

Locals:
editBox = ChatFrame1EditBox {
0 = <userdata>
tabCompleteTableIndex = 1
focusLeft = ChatFrame1EditBoxFocusLeft {}
focusRight = ChatFrame1EditBoxFocusRight {}
chatFrame = ChatFrame1 {}
addSpaceToAutoComplete = true
language = "Orcisch"
focusMid = ChatFrame1EditBoxFocusMid {}
backdropTexture = <unnamed> {}
template = "Default"
text = ""
setText = 0
header = ChatFrame1EditBoxHeader {}
AddHistoryLine = <func> =[C]:-1
headerSuffix = ChatFrame1EditBoxHeaderSuffix {}
languageID = 1
glossTex = true
}
send = 1
parseIfNoSpaces = nil
text = "/group Seid gegrüßt!"
command = "/GROUP"
msg = "Seid gegrüßt!"
hash_SecureCmdList = <table> {
/GLYPHEEINSETZEN = <func> @FrameXML\ChatFrame.lua:1161
/VORHERIGERFEIND = <func> @FrameXML\ChatFrame.lua:1306
/GESTALTABBRECHEN = <func> @FrameXML\ChatFrame.lua:1140
/AUSRÜSTUNGSSET = <func> @FrameXML\ChatFrame.lua:1526
/MAINASSISTOFF = <func> @FrameXML\ChatFrame.lua:1405
/EQ = <func> @FrameXML\ChatFrame.lua:1175
/HAUPTASSISTAUS = <func> @FrameXML\ChatFrame.lua:1405
/PETMOVETO = <func> @FrameXML\ChatFrame.lua:1442
/TARGET = <func> @FrameXML\ChatFrame.lua:1232
/CLEARMAINTANK = <func> @FrameXML\ChatFrame.lua:1354
/CLEARTARGET = <func> @FrameXML\ChatFrame.lua:1294
/BAUTOZAUBERAUS = <func> @FrameXML\ChatFrame.lua:1486
/DUELL = <func> @FrameXML\ChatFrame.lua:1418
/MT = <func> @FrameXML\ChatFrame.lua:1360
/EQUIP = <func> @FrameXML\ChatFrame.lua:1175
/TARGETRAID = <func> @FrameXML\ChatFrame.lua:1287
/HAUPTTANKAUFHEBEN = <func> @FrameXML\ChatFrame.lua:1354
/BDEFENSIV = <func> @FrameXML\ChatFrame.lua:1461
/BPASSIV = <func> @FrameXML\ChatFrame.lua:1455
/PETAUTOCASTTOGGLE = <func> @FrameXML\ChatFrame.lua:1493
/SPEZIFISCHANVISIEREN = <func> @FrameXML\ChatFrame.lua:1242
/EQUIPSLOT = <func> @FrameXML\ChatFrame.lua:1182
/USE = <func> @FrameXML\ChatFrame.lua:1089
/CLEARMA = <func> @FrameXML\ChatFrame.lua:1386
/TARGETENEMY = <func> @FrameXML\ChatFrame.lua:1252
/TARGETLASTENEMY = <func> @FrameXML\ChatFrame.lua:1306
/STARTATTACK = <func> @FrameXML\ChatFrame.lua:1073
/TARGETFRIENDPLAYER = <func> @FrameXML\ChatFrame.lua:1273
/ZIELEN = <func> @FrameXML\ChatFrame.lua:1232
/UNTERSTÜTZEN = <func> @FrameXML\ChatFrame.lua:1320
/AKTIONSLEISTEUMSCHALTEN = <func> @FrameXML\ChatFrame.lua:1212
/SCHLACHTZUGANVISIEREN = <func> @FrameXML\ChatFrame.lua:1287
/ASSIST = <func> @FrameXML\ChatFrame.lua:1320
/AURAABBRUCH = <func> @FrameXML\ChatFrame.lua:1129
/STOPMACRO = <func> @FrameXML\ChatFrame.lua:1500
/FOKUS = <func> @FrameXML\ChatFrame.lua:1334
/PETFOLLOW = <func> @FrameXML\ChatFrame.lua:1436
/PETAGGRESSIVE = <func> @FrameXML\ChatFrame.lua:1467
/TARGETLASTTARGET = <func> @FrameXML\ChatFrame.lua:1300
/HA = <func> @FrameXML\ChatFrame.lua:1392
/FREUNDLICHENSPIELERWÄHLEN = <func> @FrameXML\ChatFrame.lua:1273
/TARGETFRIEND = <func> @FrameXML\ChatFrame.lua:1266
/PLATZANLEGEN = <func> @FrameXML\ChatFrame.lua:1182
/AKTIONSLEISTEWECHSEL = <func> @FrameXML\ChatFrame.lua:1200
/CLEARMT = <func> @FrameXML\ChatFrame.lua:1354
/MAOFF = <func> @FrameXML\ChatFrame.lua:
wolfi is offline Report comment to moderator  
Reply With Quote
Old 08-29-12, 07:16 AM  
Djidam
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 10
Uploads: 1
Works fine with 5.0.4. Juste updated the TOC file.
If you are having bug with 5.0.4, do not hesitate to open a ticket.
Djidam is offline Report comment to moderator  
Reply With Quote
Old 02-29-12, 01:46 AM  
Djidam
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 10
Uploads: 1
Following a request on curse :

%sz should now show zone when no subzones.

If you don't like the change, stay with version 2.0.2. (I figure some may like having nothing with %sz when no subzones)

Next updates will stay with one version only (%sz will always show something). If you don't like this feature, let me know so i can make something for erveryone
Djidam is offline Report comment to moderator  
Reply With Quote
Old 07-01-10, 01:04 PM  
wolfi
A Kobold Labourer

Forum posts: 1
File comments: 7
Uploads: 0
patch 3.3.5

since patch 3.3.5 macrotalk doesn't work anymore.

but if you chance in MacroTalk.lua "ChatFrameEditBox" to "ChatFrame1EditBox" everything is ok again.

row 22-25
---------------------------------------------------------
local origText = ChatFrame1EditBox:GetText()
ChatFrame1EditBox:SetText(text)
ChatEdit_SendText(ChatFrame1EditBox)
ChatFrame1EditBox:SetText(origText)
---------------------------------------------------------
wolfi is offline Report comment to moderator  
Reply With Quote
Old 03-04-09, 04:40 AM  
Edik
A Kobold Labourer

Forum posts: 0
File comments: 1
Uploads: 0
Error is produced by bogus Addon not MacroTalk. In MacroTalk only missing sanity check for passed argument "text". I did mod .lua to look like this and it clean all errors produced:

Code:
function SendChatMessage(text, ...)
        if (type(text) == "nil" or type(text) ~= "string") then
  	    return OrigSendChatMessage(text, ...)
        end

	for _, substitution in ipairs(substitutions) do
		local func = substitution.func
		text = text:gsub(substitution.code,
			type(func) == "function" and func() or func)
	end
	return OrigSendChatMessage(text, ...)
end
I did add to original MacroTalkSubstitutions.lua sanity check for passed parameter "text"
Edik is offline Report comment to moderator  
Reply With Quote
Old 02-16-09, 04:38 PM  
Xambrian
A Kobold Labourer

Forum posts: 0
File comments: 23
Uploads: 0
Error message when using loothog

Hi there!

I have no idea whether this error is caused by Macrotalk or Loothog, but it occurs

Date: 2009-02-16 22:10:47
ID: 1
Error occured in: Global
Count: 47
Message: ...nterface\AddOns\MacroTalk\MacroTalkSubstitutions.lua line 172:
attempt to index local 'text' (a number value)
Debug:
(tail call): ?
[C]: ?
...nterface\AddOns\MacroTalk\MacroTalkSubstitutions.lua:172: SendChatMessage()
LootHog\LootHog.lua:824: loothog_chat()
LootHog\LootHog.lua:806: loothog_countdown()
LootHog\LootHog.lua:607: loothog_onupdate()
[string "*:OnUpdate"]:1:
[string "*:OnUpdate"]:1
AddOns:
[...]

I'm running the german client, using loothog 3.1.3 and macrotalk 1.8.1

Have a nice day!
Xambrian is offline Report comment to moderator  
Reply With Quote
Old 12-15-08, 08:11 PM  
Cogwheel
Sans Poisson
 
Cogwheel's Avatar
AddOn Author - Click to view AddOns

Forum posts: 237
File comments: 137
Uploads: 24
Re: Re: Re: Small tweak needed for 3.0

Originally posted by encoded
Ouch I got zapped on that one. But I wasn't aware that worked across the 2.4 <=> 3.0 barrier..? I could swear I had that box unchecked, yet macrotalk wasn't working... Oh well, my bad.

e.
Yeah, last time (2.0) the changes were drastic enough that it justified the hassle of forcing authors to update/abandon/re-imagine.
__________________
[SIGPIC][/SIGPIC]
Cogwheel is offline Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: