WoW 2.3 Changes - Concise List
by Iriel | 08/08/2007 03:21:37![]() This is a consolidated list of the announced (and sometimes observed) changes in the User Interface API's and functionality for the 2.3 release. Please note that this thread is to discuss the upcoming changes and any clarifications or features that are a direct result of those changes, or things which we've been asked to remind slouken of. IMPORTANT: Off-topic or entirely redundant posts are liable to get deleted. It is however in everyone's best interest to not post them in the first place - We'd rather slouken could spend his time coding us cool things than moderating this thread! Important Changes * The spell casting mechanism will be improved to remove the need for /stopcasting workarounds on high-latency connections or 'fallthrough' instant cast macros. In 2.3 chat channels are rate limited on the client in the same way whispers are now. * Each chat channel is limited separately, at a rate of 10 messages in 10 seconds. This means that you can send one message every second without ever seeing delays, or a burst of 10 messages every 10 seconds without seeing delays. Messages that exceed this rate are not dropped, but simply delayed in order until they can be sent. (This does not affect SendAddonMessage() or party/raid/guild chat. ) Macro Commands * NEW - /petautocasttoggle <slot or spell name> * NEW - /targetlastenemy, /targetlastfriend * NEW - /targetexact <name> * UPDATED - /cancelform will be recognized instantly (as /dismount is currently) * Added the following macro conditional abbreviations; modifier -> mod, button -> btn, actionbar -> bar, equipped -> worn , stance -> form(e.g. [mod:SELFCAST]) Frame methods * You should no longer need to call ScrollFrame:UpdateScrollChildRect(). If a child frame, texture or fontstring has changed, the scroll parent will automatically recalculate it's scroll rect and dispatch events appropriately. Of course, please test this out on the test realm when it goes live, and report any bugs. * NEW - registered = Frame:IsEventRegistered("event") * NEW - FontString:SetFormattedText(format, ...) -- Like setting the text to be the result of a string.format call, but without the garbage overhead of creating a temporary lua string for the result. * NEW - Button:SetFormattedText(format, ...) * NEW - height = FontString:GetStringHeight() * UPDATED - width = FontString:GetWidth([explicitOnly]) -- Added new optional parameter which, if provided and true, returns 0 if the width has not been explicitly set rather than returning the effective width. Defaults to false. * UPDATED - height = FontString:GetHeight([explicitOnly]) -- as above, but for height * NEW - EditBox:SetCursorPosition(position) * NEW - position = EditBox:GetCursorPosition() * NEW - ScrollingMessageFrame:SetInsertMode("mode") -- Sets the location into which new strings are added to the frame, mode is one of "TOP" or "BOTTOM". (There's an insertMode XML attribute also) * NEW - mode = ScrollingMessageFrame:GetInsertMode() -- Gets the current insert mode for a frame * RENAMED - ScrollingMessageFrame:SetScrollFromBottom(offset) is now ScrollingMessageFrame:SetScrollOffset(offset) Frame Support * NEW - frame1, frame2, ... = GetFramesRegisteredForEvent("event") API Methods * Explicit calls to message(string) will show the window even if lua errors are turned off in the UI options. * NEW - PickupItem(itemID or "item") * UPDATED - count = GetItemCount(item, includeBank,[ includeUses]) -- new includeUses flag that returns the same value that GetActionCount() would for that item * NEW - count = GetSpellCount("name" or slot [,book]) -- Returns the same value that GetActionCount() would return for that spell * NEW - selected = IsSelectedSpell(slot) -- Replaces IsCurrentCast() * REMOVED - IsCurrentCast(slot) -- Replaced with IsSelectedSpell * NEW - current = IsCurrentSpell("name" or slot [,book]) -- Consistent with IsCurrentAction * NEW - isConsumable = IsConsumableSpell("name" or slot [,book]) -- Consistent with IsConsumableAction * NEW - helpful = IsHelpfulItem(item) - Contains a right click ability that targets friendly units (Note that a few spells are neither helpful nor harmful and can be cast on anyone.) * NEW - harmful = IsHarmfulItem(item) - Contains a right click ability that targets enemy units (See note above) * NEW - helpful = IsHelpfulSpell("name" or slot,"book") - The spell targets friendly units (See note above) * NEW - harmful = IsHarmfulSpell("name" or slot,"book") - The spell targets enemy units (See note above) * NEW - item, link = GetMacroItem(macro) * NEW - spell, rank = GetMacroSpell(macro) continued... [ Post edited by Iriel ] UI and Macros Forum MVP - Understand GC! |
by Slouken | 01/11/2007 17:03:15![]() In 2.3 chat channels are rate limited on the client in the same way whispers are now. Each chat channel is limited separately, at a rate of 10 messages in 10 seconds. This means that you can send one message every second without ever seeing delays, or a burst of 10 messages every 10 seconds without seeing delays. Messages that exceed this rate are not dropped, but simply delayed in order until they can be sent. This does not affect SendAddonMessage() or party/raid/guild chat. |
by Slouken | 01/11/2007 17:21:44![]() No problem. |
by Slouken | 02/11/2007 00:49:56![]() In the next test realm update, spells in /cast and /castsequence will no longer toggle. This means that a macro like: /cast Auto Shot will no longer be exactly equivalent to putting Auto Shot on your action bar, instead it will always try to cast Auto Shot. |
by Slouken | 02/11/2007 00:52:56![]() FYI, the secure action buttons use a new secure function ClickSpellByName(), so they still have the expected behavior of toggling spells that you would see by clicking a spell directly in the UI. |
by Slouken | 03/11/2007 19:33:54![]()
Yes, it should have. Do things work if you turn off taint log? (/console taintLog 0) |
by Slouken | 05/11/2007 18:11:20![]()
Did you figure this one out? |
by Slouken | 11/11/2007 01:16:17![]() Great. :) |
by Slouken | 14/11/2007 13:43:28![]() The name of the turtle polymorph spell changed. Just re-link it into your macro from your spellbook. |
by Slouken | 14/11/2007 17:29:37![]() No, the limit has been 50 yards as far as I know since the game shipped. There was a bug however, that you could edit the value in the Config.wtf file and that would bypass the validation. This has been fixed. :) Edit: What Kysia said. :) |
by Slouken | 15/11/2007 18:28:11![]() FYI, the ability to query all of the auction house results was temporarily disabled since it would swamp the client on a full auction house. We plan to re-enable this feature in a future patch. |
by Slouken | 16/11/2007 03:28:43![]()
The functionality you're asking for is the way /target works now. The bug you mention has been fixed for a while. Try it! :) |
by Slouken | 16/11/2007 16:36:42![]() In 2.3 /cast only does a cast, it doesn't toggle auras. There have been a lot of people asking that this be changed back to the way it used to work, and I'd like to put a few options out there and see what people like most: * Do nothing, leave things as they are now. * Change CastSpellByName() to always toggle auras that are marked "togglable", like it did prior to 2.3. * Add /activate which is similar to /cast, but toggles auras and auto shot, acting like a real action button. * Add /toggleaura which acts to toggle any aura that follows it, regardless of it's marked "toggleable" Thoughts? |
by Slouken | 16/11/2007 18:54:15![]() Okay, after your feedback and lots of discussion, I think for 2.3.2 we'll add /activate, which will act as though you had clicked on the action directly in the action bar. Thanks! |
by Slouken | 19/11/2007 21:38:23![]()
Yep! |
by Slouken | 26/11/2007 23:05:15![]() There's a new macro option in 2.3.2: bonusbar:N This evaluates to true if the bonus bar is set to the specified value, or if you leave the value off, it will evaluate to true if any bonus bar is in use. Each stance and shapeshift form uses a bonus bar, in addition the new possession uses bonus bar 5. So for example, you could create a mind control toggle macro like this: /cast [nobonusbar:5] Mind Control /cancelaura Mind Control |
by Slouken | 30/11/2007 23:45:12![]() UIParent_ManageFramePositions() and ShowUIPanel() and HideUIPanel() have been completely reworked to avoid taint issues for 2.3.2. If you have code that manages or overrides frame positions, please test your code out on the test realm to make sure it still works. |


Recent Blizzard Announcements