2.0.0 Changes - Concise List
by Iriel | 02/09/2006 04:12:11![]() This is a consolidated list of the announced (and sometimes observed) changes in the User Interface API's and functionality for the Burning Crusade expansion (2.0) 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! WoW 2.0 represents a major change in the UI code, and as such ALL AddOns will need to be updated before they will work, if for no other reason than the Lua 5.0 to Lua 5.1 changes. Some AddOns will be more seriously affected, and a few will have to be redesigned. Interface AddOn Kit The WoW 2.0 *BETA* Interface AddOn Kit is now available for download here (For use with the Beta only): http://www.worldofwarcraft.com/downloads/expansion-bc/addonkit.zip Significant Changes The expansion will be using Lua version 5.1.1, which provides a number of useful features, most notably incremental garbage collection and memory-efficient variable arguments. There ARE some incompatible changes with Lua 5.0 and authors are advised to familiarize themselves with http://www.lua.org/manual/5.1 * There is a new unit "focus" which behaves like target, the "PLAYER_FOCUS_CHANGED" event is fired when it is changed, and you receive unit events for this unit. The protected code mechanism introduced in 1.10 has been extended to cover more functions. Blizzard code is considered secure, all other code is untrusted. The following function types are restricted for AddOns: * Movement is never allowed. * Spell casting is allowed outside of combat when initiated interactively. In combat it requires use of the secure templates. * Targeting is allowed only using secure templates. * Programatic modification of macros, key bindings, and the action bar page only allowed outside of combat. * Trading and reloading the UI only allowed interactively. * Action buttons and targeting frames are now "protected". Protected frames cannot be programmatically moved, shown or hidden, or have their attributes (unit, action, etc) changed during combat. In addition: * Script handlers defined in SecureXML templates remain secure when they are inherited, unless overridden by AddOn code. * The parent of a protected frame is implicitly protected also, as are any frames which it is anchored to. Lua environment * The Lua coroutine library is now available - Coroutines create a new Lua state and should be used sparingly to conserve memory. Slash Commands The following new slash commands will be available: * Targeting: /targetlasttarget * Items and equipment: /use <itemname>, /use <slot>, /use <bagid> <bagslot>, /equip <itemname>, /equipslot <slot> <itemname> * Pet control: /petattack, /petfollow, /petstay, /petpassive, /petdefensive, /petaggressive * Casting: /stopcasting will cancel the spell that is currently being cast * Action bar: /changeactionbar <num> and /swapactionbar <num1> <num2> * Attacking: /startattack [unit], /stopattack * Buffs/Auras: /cancelaura name - cancels an aura as if it were right clicked * /target, /focus, and /startattack take all valid unit ids as well as entity names. Where applicable they default to target if no unit is specified. * In WoW 2.0, feeding your pet, poisons, etc. will be even easier to macro: /cast Feed Pet then /use Dry Pork Ribs. You will also be able to click on food in your action bar when you are targeting Feed Pet and other item targeting spells. Spell Casting * When casting a ranked buff spell that's too high a level for a friendly target the game will automatically use the highest appropriate rank of the spell instead. Secure Templates There are several secure templates that AddOns can use to create new functional buttons: * SecureActionButtonTemplate * SecureUnitButtonTemplate * SecureRaidGroupHeaderTemplate * SecurePartyHeaderTemplate * SecureStateHeaderTemplate * SecureStanceStateDriverTemplate * SecureAnchorButtonTemplate * SecureAnchorEnterTemplate * SecureAnchorUpDownTemplate * The secure button templates have support for pre-loaded items which are used as spell targets for feeding, poisoning, etc. Actions * The old CURRENT_ACTIONBAR_PAGE variable is no longer used. There's a new slash command /changeactionbar <num>. Macros that used to do /script CURRENT_ACTIONBAR_PAGE=2 ChangeActionBarChange() can now simply do /changeactionbar 2 (continued...) [ Post edited by Iriel ] UI and Macros Forum MVP - Understand GC! |
by Slouken | 07/10/2006 04:12:30![]()
Not a bad idea, thanks! :) |
by Slouken | 07/10/2006 04:43:59![]()
That's an interesting idea... :) No, it doesn't work like that right now. |
by Slouken | 07/10/2006 22:42:40![]() Okay, back to work... *keeps working on WoW 2.0 features...* |
Hot: View Nethaera's Comments on Class Balancing in Patch 2.4


Recent Blizzard Announcements

