US Trends

how to make macro for shield swap with same weapon in mh and oh tbc

Use one macro that equips your main-hand weapon in slot 16 and your shield in slot 17, then another line for the two-weapon setup if needed. For TBC, the simplest shield swap macro is:

lua

#showtooltip
/equipslot 16 YourMainHandWeapon
/equipslot 17 YourShield

If you want to swap between 1H + shield and dual wield , the usual pattern is to put the main-hand first, then the off-hand second:

lua

#showtooltip
/equipslot 16 YourMainHandWeapon
/equipslot 17 YourShield

For dual wield, use:

lua

#showtooltip
/equipslot 16 YourMainHandWeapon
/equipslot 17 YourOffHandWeapon

Important note

If you are trying to equip the same weapon name in MH and OH , macros usually work better when you target the actual slot, not just the item name. Community examples for TBC and Classic emphasize /equipslot 16 and /equipslot 17 for reliable swapping, especially when moving between shield and off-hand setups.

Example

If your setup is:

  • Main hand: Weapon A
  • Off hand: Weapon A
  • Shield: Shield B

Then your shield swap macro can be:

lua

#showtooltip Shield B
/equipslot 16 Weapon A
/equipslot 17 Shield B

And your dual-wield macro can be:

lua

#showtooltip Weapon A
/equipslot 16 Weapon A
/equipslot 17 Weapon A

TBC limitation

WoW macros cannot fully “toggle” complex gear states by themselves in every case, so if you want a single-button swap that intelligently detects whether you currently have a shield or two weapons equipped, that may require an addon or a more advanced equipment-set approach.

TL;DR: use /equipslot 16 for the main hand and /equipslot 17 for the off- hand or shield; that is the most reliable way to make a shield-swap macro in TBC.