WoW BlueTracker Home | RSS | News | Contact
Recent | Search | Archive | CS Posts
Poster: Iriel at 2006-09-01 20:12:11
Subject: Expansion Changes - Concise List
  
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 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!

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

Unit Function Changes
* The GetSlashCmdTarget() UI function is no longer necessary. All the functions that required it now properly interpret the unit tokens ("player", "pet", etc.) in addition to names, and an empty string defaults to your current target.

Bug Fixes
* Fixed missing CHAT_MSG_SPELL_SELF_BUFF messages (Opening, Mining, Gathering)

Last updated 2006-09-01 20:12 pacific

[ Post edited by Iriel ]



UI and Macros Forum MVP - Understand GC!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#0
 
Poster: Slouken at 2006-09-02 16:09:22
Subject: Re: Expansion Changes - Concise List
  
WoW will be using Lua 5.1 for the expansion.

The main advantage of Lua 5.1 is the incremental garbage collection, and the full functionality of the 5.1 collectgarbage() function is available to the WoW scripting system.

For the most part, this is a seamless transition, but there are two syntax changes that will need to be made in a lot of addons:
for k,v in table do stuff end
changes to:
for k,v in pairs(table) do stuff end
and
function foo(...) for i=1, arg.n do local v = arg[i] end end
changes to:
function foo(...) for i=1, select("#", ...) do local v = select(i, ...) end end

WoW Lua 5.1 is currently compiled with these options:

#define LUAI_GCPAUSE 200
#define LUAI_GCMUL 200
#undef LUA_COMPAT_GETN
#undef LUA_COMPAT_VARARG
#undef LUA_COMPAT_MOD
#undef LUA_COMPAT_LSTR
#undef LUA_COMPAT_GFIND

There are also these changes:
Added difftime()
Added gmatch() as an alias for str.gmatch()
Added strmatch as an alias for str.match()
Added strrev() as an alias for str.reverse()
The alias mod() now maps to math.fmod()

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#6
Poster: Iriel at 2006-09-01 20:12:11
Subject: 2.0.0 Changes - Concise List
  
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 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!

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

Unit Function Changes
* The GetSlashCmdTarget() UI function is no longer necessary. All the functions that required it now properly interpret the unit tokens ("player", "pet", etc.) in addition to names, and an empty string defaults to your current target.

Bug Fixes
* Fixed missing CHAT_MSG_SPELL_SELF_BUFF messages (Opening, Mining, Gathering)

Last updated 2006-09-01 20:12 pacific

[ Post edited by Slouken ]



UI and Macros Forum MVP - Understand GC!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#0
Poster: Slouken at 2006-09-02 16:09:22
Subject: Re: Expansion Changes - Concise List
  
WoW 2.0 will be using Lua 5.1.

The main advantage of Lua 5.1 is the incremental garbage collection, and the full functionality of the 5.1 collectgarbage() function is available to the WoW scripting system.

For the most part, this is a seamless transition, but there are two syntax changes that will need to be made in a lot of addons:
for k,v in table do stuff end
changes to:
for k,v in pairs(table) do stuff end
and
function foo(...) for i=1, arg.n do local v = arg[i] end end
changes to:
function foo(...) for i=1, select("#", ...) do local v = select(i, ...) end end

WoW Lua 5.1 is currently compiled with these options:

#define LUAI_GCPAUSE 200
#define LUAI_GCMUL 200
#undef LUA_COMPAT_GETN
#undef LUA_COMPAT_VARARG
#undef LUA_COMPAT_MOD
#undef LUA_COMPAT_LSTR
#undef LUA_COMPAT_GFIND

There are also these changes:
Added difftime()
Added gmatch() as an alias for str.gmatch()
Added strmatch as an alias for str.match()
Added strrev() as an alias for str.reverse()
The alias mod() now maps to math.fmod()

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#6
Poster: Slouken at 2006-09-04 09:53:11
Subject: Re: Expansion Changes - Concise List
  
The following slash commands have been added for WoW 2.0:
/targetlasttarget
/use <itemname>
/equip <itemname>
/equipslot <slot> <itemname>
/petattack
/petfollow
/petstay
/petpassive
/petdefensive
/petaggressive

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#12
Poster: Slouken at 2006-09-04 09:54:59
Subject: Re: Expansion Changes - Concise List
  
In WoW 2.0, you will be able to bind keys directly to spells, using the scripting interface, e.g.
/script SetBinding("[", "Holy Light")

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#13
Poster: Iriel at 2006-09-01 20:12:11
Subject: 2.0.0 Changes - Concise List
  
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!

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

Slash Commands
The following new slash commands will be available:
* Targetting: /targetlasttarget
* Items and equipment: /use <itemname>, /equip <itemname>, /equipslot <slot> <itemname>
* Pet control: /petattack, /petfollow, /petstay, /petpassive, /petdefensive, /petaggressive

Unit Function Changes
* The GetSlashCmdTarget() UI function is no longer necessary. All the functions that required it now properly interpret the unit tokens ("player", "pet", etc.) in addition to names, and an empty string defaults to your current target.

Key Bindings
* You will be able to bind keys directly to spells, using the scripting interface, e.g. /script SetBinding("[", "Holy Light")

Bug Fixes
* Fixed missing CHAT_MSG_SPELL_SELF_BUFF messages (Opening, Mining, Gathering)

Last updated 2006-09-04 10:30 pacific

[ Post edited by Iriel ]



UI and Macros Forum MVP - Understand GC!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#0
 
Poster: Slouken at 2006-09-04 11:15:22
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:

This is pretty cool too. Will this work even if the skill isn't on any action bars/button? If so, that'd be neato.



Yep. :)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#16
Poster: Slouken at 2006-09-04 14:24:39
Subject: Re: 2.0.0 Changes - Concise List
  
New in WoW 2.0:
If you cast a buff that's too high level for a friendly target, the game will automatically use the appropriate rank of that spell instead.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=2&sid=1#25
Poster: Slouken at 2006-09-04 15:14:58
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:

Will that work with AoE buffs too, like Gift of the Wild and Battle Shout? (Does Battle Shout even have a minimum level?)


No, just single-target buffs.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=2&sid=1#30
Poster: Iriel at 2006-09-01 20:12:11
Subject: 2.0.0 Changes - Concise List
  
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!

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

Slash Commands
The following new slash commands will be available:
* Targetting: /targetlasttarget
* Items and equipment: /use <itemname>, /equip <itemname>, /equipslot <slot> <itemname>
* Pet control: /petattack, /petfollow, /petstay, /petpassive, /petdefensive, /petaggressive

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.

Unit Function Changes
* The GetSlashCmdTarget() UI function is no longer necessary. All the functions that required it now properly interpret the unit tokens ("player", "pet", etc.) in addition to names, and an empty string defaults to your current target.

Key Bindings
* You will be able to bind keys directly to spells, using the scripting interface, e.g. /script SetBinding("[", "Holy Light")

Bug Fixes
* Fixed missing CHAT_MSG_SPELL_SELF_BUFF messages (Opening, Mining, Gathering)

Last updated 2006-09-04 16:54 pacific

[ Post edited by Iriel ]



UI and Macros Forum MVP - Understand GC!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#0
 
Poster: Iriel at 2006-09-01 20:12:11
Subject: 2.0.0 Changes - Concise List
  
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!

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

Slash Commands
The following new slash commands will be available:
* Targetting: /targetlasttarget
* Items and equipment: /use <itemname>, /equip <itemname>, /equipslot <slot> <itemname>
* Pet control: /petattack, /petfollow, /petstay, /petpassive, /petdefensive, /petaggressive

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.

Actions
* The old CURRENT_ACTIONBAR_PAGE variable is no longer used, the ChangeActionBarPage(page) function now takes the new page as its argument, and GetActionBarPage() returns the current page number.

Unit Function Changes
* The GetSlashCmdTarget() UI function is no longer necessary. All the functions that required it now properly interpret the unit tokens ("player", "pet", etc.) in addition to names, and an empty string defaults to your current target.

Key Bindings
* You will be able to bind keys directly to spells, using the scripting interface, e.g. /script SetBinding("[", "Holy Light")

Bug Fixes
* Fixed missing CHAT_MSG_SPELL_SELF_BUFF messages (Opening, Mining, Gathering)

Last updated 2006-09-04 19:11 pacific

[ Post edited by Iriel ]



UI and Macros Forum MVP - Understand GC!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#0
 
Poster: Slouken at 2006-09-04 19:03:03
Subject: Re: 2.0.0 Changes - Concise List
  
In WoW 2.0, the action bar page is managed by the game.
You can now pass the desired action bar page as an argument to ChangeActionBarPage(), and then query the current page with GetActionBarPage().
This means the CURRENT_ACTIONBAR_PAGE variable goes away, and is no longer used.

Macros like this:
/script CURRENT_ACTIONBAR_PAGE = 2; ChangeActionBarPage()
can be simplified to:
/script ChangeActionBarPage(2)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=2&sid=1#34
Poster: Slouken at 2006-09-04 19:03:03
Subject: Re: 2.0.0 Changes - Concise List
  
In WoW 2.0, the action bar page is managed by the game, and there is a new slash command to change them: /changeactionbar N

Macros like this:
/script CURRENT_ACTIONBAR_PAGE = 2; ChangeActionBarPage()
can be simplified to:
/changeactionbar 2

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=2&sid=1#34
Poster: Iriel at 2006-09-01 20:12:11
Subject: 2.0.0 Changes - Concise List
  
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!

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

Slash Commands
The following new slash commands will be available:
* Targetting: /targetlasttarget
* Items and equipment: /use <itemname>, /equip <itemname>, /equipslot <slot> <itemname>
* Pet control: /petattack, /petfollow, /petstay, /petpassive, /petdefensive, /petaggressive

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.

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

Unit Function Changes
* The GetSlashCmdTarget() UI function is no longer necessary. All the functions that required it now properly interpret the unit tokens ("player", "pet", etc.) in addition to names, and an empty string defaults to your current target.

Key Bindings
* You will be able to bind keys directly to spells, using the scripting interface, e.g. /script SetBinding("[", "Holy Light")

Bug Fixes
* Fixed missing CHAT_MSG_SPELL_SELF_BUFF messages (Opening, Mining, Gathering)

Last updated 2006-09-04 19:11 pacific

[ Post edited by Iriel ]



UI and Macros Forum MVP - Understand GC!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#0
 
Poster: Slouken at 2006-09-06 19:00:45
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:
will <slot> take a number or a name? (both?)


It's a number.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=3&sid=1#44
Poster: Slouken at 2006-09-12 17:43:04
Subject: Re: Expansion Changes - Concise List
  
New in 2.0:
GetCritChance()
GetRangedCritChance()
GetSpellCritChance(school)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=4&sid=1#75
Poster: Iriel at 2006-09-01 20:12:11
Subject: 2.0.0 Changes - Concise List
  
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!

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

Slash Commands
The following new slash commands will be available:
* Targetting: /targetlasttarget
* Items and equipment: /use <itemname>, /equip <itemname>, /equipslot <slot> <itemname>
* Pet control: /petattack, /petfollow, /petstay, /petpassive, /petdefensive, /petaggressive

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.

Actions
* The old CURRENT_ACTIONBAR_PAGE variable is no longer used. There's a new slash command /changeactionbar <num>. Macros that used to do *@#!ipt CURRENT_ACTIONBAR_PAGE=2 ChangeActionBarChange() can now simply do /changeactionbar 2

Unit Function Changes
* The GetSlashCmdTarget() UI function is no longer necessary. All the functions that required it now properly interpret the unit tokens ("player", "pet", etc.) in addition to names, and an empty string defaults to your current target.

Statistics
* NEW GetCritChance()
* NEW GetRangedCritChance()
* NEW GetSpellCritChance(school)

Key Bindings
* You will be able to bind keys directly to spells, using the*@#!ipting interface, e.g. *@#!ipt SetBinding("[", "Holy Light")
* Added IsModifierKeyDown() - equivalent to (IsShiftKeyDown() or IsControlKeyDown() or IsAltKeyDown())

Bug Fixes
* Fixed missing CHAT_MSG_SPELL_SELF_BUFF messages (Opening, Mining, Gathering)

Last updated 2006-09-12 18:13 pacific

[ Post edited by Iriel ]



UI and Macros Forum MVP - Understand GC!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#0
 
Poster: Slouken at 2006-09-12 18:03:01
Subject: Re: 2.0.0 Changes - Concise List
  
New in 2.0:
Added IsModifierKeyDown() - equivalent to (IsShiftKeyDown() or IsControlKeyDown() or IsAltKeyDown())

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=4&sid=1#76
Poster: Iriel at 2006-09-01 20:12:11
Subject: 2.0.0 Changes - Concise List
  
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!

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

Slash Commands
The following new slash commands will be available:
* Targetting: /targetlasttarget
* Items and equipment: /use <itemname>, /equip <itemname>, /equipslot <slot> <itemname>
* Pet control: /petattack, /petfollow, /petstay, /petpassive, /petdefensive, /petaggressive

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.

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

Unit Function Changes
* The GetSlashCmdTarget() UI function is no longer necessary. All the functions that required it now properly interpret the unit tokens ("player", "pet", etc.) in addition to names, and an empty string defaults to your current target.

Statistics
* NEW GetCritChance()
* NEW GetRangedCritChance()
* NEW GetSpellCritChance(school)

Key Bindings
* You will be able to bind keys directly to spells, using the scripting interface, e.g. /script SetBinding("[", "Holy Light")
* Added IsModifierKeyDown() - equivalent to (IsShiftKeyDown() or IsControlKeyDown() or IsAltKeyDown())

Bug Fixes
* Fixed missing CHAT_MSG_SPELL_SELF_BUFF messages (Opening, Mining, Gathering)

Last updated 2006-09-12 18:13 pacific

[ Post edited by Iriel ]



UI and Macros Forum MVP - Understand GC!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#0
 
Poster: Slouken at 2006-09-14 11:49:02
Subject: Re: Expansion Changes - Concise List
  
New in 2.0:
/stopcasting
This slash command can be used in macros to stop casting the current spell

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=5&sid=1#87
Poster: Iriel at 2006-09-01 20:12:11
Subject: 2.0.0 Changes - Concise List
  
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!

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

Slash Commands
The following new slash commands will be available:
* Targetting: /targetlasttarget
* Items and equipment: /use <itemname>, /equip <itemname>, /equipslot <slot> <itemname>
* Pet control: /petattack, /petfollow, /petstay, /petpassive, /petdefensive, /petaggressive
* /stopcasting will cancel the spell that is currently being cast

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.

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

Unit Function Changes
* The GetSlashCmdTarget() UI function is no longer necessary. All the functions that required it now properly interpret the unit tokens ("player", "pet", etc.) in addition to names, and an empty string defaults to your current target.

Statistics
* NEW GetCritChance()
* NEW GetRangedCritChance()
* NEW GetSpellCritChance(school)

Key Bindings
* You will be able to bind keys directly to spells, using the scripting interface, e.g. /script SetBinding("[", "Holy Light")
* Added IsModifierKeyDown() - equivalent to (IsShiftKeyDown() or IsControlKeyDown() or IsAltKeyDown())

Bug Fixes
* Fixed missing CHAT_MSG_SPELL_SELF_BUFF messages (Opening, Mining, Gathering)

Last updated 2006-09-12 18:13 pacific

[ Post edited by Iriel ]



UI and Macros Forum MVP - Understand GC!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#0
 
Poster: Slouken at 2006-09-15 13:29:29
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:

How will GetSpellCritChance() work for differentiating spells in the same school with different crit rates, ie scorch/fireblast vs fireball with incinerate (or Arcane impact).

Will the GetSpellCritChance() be effected by the target of the player? IE will GetSpellCritChance(...) return 50% higher for a mage with 5/5 shatter?


It only reflects bonuses that are present for an entire school at all times.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=5&sid=1#92
Poster: Slouken at 2006-09-18 10:12:03
Subject: Re: 2.0.0 Changes - Concise List
  
Item level is now available from GetItemInfo():
name, link, quality, level, requiredlevel, class, subclass, stacksize, inventorytype, icon = GetItemInfo(itemID or itemlink)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=5&sid=1#95
Poster: Iriel at 2006-09-01 20:12:11
Subject: 2.0.0 Changes - Concise List
  
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!

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

Slash Commands
The following new slash commands will be available:
* Targetting: /targetlasttarget
* Items and equipment: /use <itemname>, /equip <itemname>, /equipslot <slot> <itemname>
* Pet control: /petattack, /petfollow, /petstay, /petpassive, /petdefensive, /petaggressive
* /stopcasting will cancel the spell that is currently being cast

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.

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

Unit Function Changes
* The GetSlashCmdTarget() UI function is no longer necessary. All the functions that required it now properly interpret the unit tokens ("player", "pet", etc.) in addition to names, and an empty string defaults to your current target.

Statistics
* NEW GetCritChance()
* NEW GetRangedCritChance()
* NEW GetSpellCritChance(school)
* UPDATED name, link, quality, level, requiredlevel, class, subclass, stacksize, inventorytype, icon = GetItemInfo(itemID or itemlink) - Item level is now returned NOT A BACKWARD COMPATIBLE CHANGE

Key Bindings
* You will be able to bind keys directly to spells, using the scripting interface, e.g. /script SetBinding("[", "Holy Light")
* Added IsModifierKeyDown() - equivalent to (IsShiftKeyDown() or IsControlKeyDown() or IsAltKeyDown())

Bug Fixes
* Fixed missing CHAT_MSG_SPELL_SELF_BUFF messages (Opening, Mining, Gathering)

Last updated 2006-09-12 18:13 pacific

[ Post edited by Iriel ]



UI and Macros Forum MVP - Understand GC!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#0
 
Poster: Iriel at 2006-09-01 20:12:11
Subject: 2.0.0 Changes - Concise List
  
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!

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

Slash Commands
The following new slash commands will be available:
* Targetting: /targetlasttarget
* Items and equipment: /use <itemname>, /equip <itemname>, /equipslot <slot> <itemname>
* Pet control: /petattack, /petfollow, /petstay, /petpassive, /petdefensive, /petaggressive
* /stopcasting will cancel the spell that is currently being cast

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.

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

Unit Function Changes
* The GetSlashCmdTarget() UI function is no longer necessary. All the functions that required it now properly interpret the unit tokens ("player", "pet", etc.) in addition to names, and an empty string defaults to your current target.

Statistics
* NEW GetCritChance()
* NEW GetRangedCritChance()
* NEW GetSpellCritChance(school)
* UPDATED itemName, itemLink, itemRarity, itemLevel, itemMinLevel, itemType, itemSubType, itemStackCount, itemEquipLoc, invTexture = GetItemInfo(itemID|"itemLink") -- Now returns item level WARNING - This change is not backward compatible

Key Bindings
* You will be able to bind keys directly to spells, using the scripting interface, e.g. /script SetBinding("[", "Holy Light")
* Added IsModifierKeyDown() - equivalent to (IsShiftKeyDown() or IsControlKeyDown() or IsAltKeyDown())

Bug Fixes
* Fixed missing CHAT_MSG_SPELL_SELF_BUFF messages (Opening, Mining, Gathering)

Last updated 2006-09-21 21:17 pacific

[ Post edited by Iriel ]



UI and Macros Forum MVP - Understand GC!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#0
 
Poster: Slouken at 2006-09-27 23:12:46
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:

You will be able to bind keys directly to spells, using the scripting interface, e.g. /script SetBinding("[", "Holy Light")



The function to bind a spell has been changed to SetBindingSpell()
e.g. SetBindingSpell("[", "Holy Light")

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=5&sid=1#96
Poster: Iriel at 2006-09-01 20:12:11
Subject: 2.0.0 Changes - Concise List
  
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!

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

Slash Commands
The following new slash commands will be available:
* Targetting: /targetlasttarget
* Items and equipment: /use <itemname>, /equip <itemname>, /equipslot <slot> <itemname>
* Pet control: /petattack, /petfollow, /petstay, /petpassive, /petdefensive, /petaggressive
* /stopcasting will cancel the spell that is currently being cast

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.

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

Unit Function Changes
* The GetSlashCmdTarget() UI function is no longer necessary. All the functions that required it now properly interpret the unit tokens ("player", "pet", etc.) in addition to names, and an empty string defaults to your current target.

Statistics
* NEW GetCritChance()
* NEW GetRangedCritChance()
* NEW GetSpellCritChance(school)
* UPDATED itemName, itemLink, itemRarity, itemLevel, itemMinLevel, itemType, itemSubType, itemStackCount, itemEquipLoc, invTexture = GetItemInfo(itemID|"itemLink") -- Now returns item level WARNING - This change is not backward compatible

Key Bindings
* You will be able to bind keys directly to spells, using the scripting interface, e.g. /script SetBindingSpell("[", "Holy Light")
* Added IsModifierKeyDown() - equivalent to (IsShiftKeyDown() or IsControlKeyDown() or IsAltKeyDown())

Bug Fixes
* Fixed missing CHAT_MSG_SPELL_SELF_BUFF messages (Opening, Mining, Gathering)

Last updated 2006-09-28 03:17 pacific

[ Post edited by Iriel ]



UI and Macros Forum MVP - Understand GC!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#0
 
Poster: Slouken at 2006-10-05 10:13:29
Subject: Re: Expansion Changes - Concise List
  
New in 2.0:
/swapactionbar A B
Toggles between two action bars

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=6&sid=1#116
Poster: Iriel at 2006-09-01 20:12:11
Subject: 2.0.0 Changes - Concise List
  
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!

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

Slash Commands
The following new slash commands will be available:
* Targetting: /targetlasttarget
* Items and equipment: /use <itemname>, /equip <itemname>, /equipslot <slot> <itemname>
* Pet control: /petattack, /petfollow, /petstay, /petpassive, /petdefensive, /petaggressive
* /stopcasting will cancel the spell that is currently being cast

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.

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
* The new /swapactionbar <numA> <numB> toggles between two action bars.

Unit Function Changes
* The GetSlashCmdTarget() UI function is no longer necessary. All the functions that required it now properly interpret the unit tokens ("player", "pet", etc.) in addition to names, and an empty string defaults to your current target.

Statistics
* NEW GetCritChance()
* NEW GetRangedCritChance()
* NEW GetSpellCritChance(school)
* UPDATED itemName, itemLink, itemRarity, itemLevel, itemMinLevel, itemType, itemSubType, itemStackCount, itemEquipLoc, invTexture = GetItemInfo(itemID|"itemLink") -- Now returns item level WARNING - This change is not backward compatible

Key Bindings
* You will be able to bind keys directly to spells, using the scripting interface, e.g. /script SetBindingSpell("[", "Holy Light")
* Added IsModifierKeyDown() - equivalent to (IsShiftKeyDown() or IsControlKeyDown() or IsAltKeyDown())

Bug Fixes
* Fixed missing CHAT_MSG_SPELL_SELF_BUFF messages (Opening, Mining, Gathering)

Last updated 2006-09-28 03:17 pacific

[ Post edited by Iriel ]



UI and Macros Forum MVP - Understand GC!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#0
 
Poster: Slouken at 2006-10-05 12:47:22
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:

Does that translate to 'Switch to actionbar A unless the current actionbar is already A, in which case switch to B' ?



Yes. :)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=6&sid=1#118
Poster: Slouken at 2006-10-05 13:01:29
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:

Does this work for pet-cast spells like the imp's Fire Shield?


Yes, it will work for pet spells as well.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#120
Poster: Slouken at 2006-10-05 16:54:06
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:

If so... will the WoW 2.0 / Lua 5.1 codebase be on Public Test Realms at some point?


Yes, that's the plan. :)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#124
Poster: Slouken at 2006-10-06 18:06:27
Subject: Re: Expansion Changes - Concise List
  
Coroutines
* The Lua 5.1 coroutine library is now available.
* Each coroutine creates a new Lua state, so they should be used sparingly to reduce memory usage.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#133
Poster: Slouken at 2006-10-06 18:06:46
Subject: Re: Expansion Changes - Concise List
  
Protected Functions
* Addons and macro scripts may not use any movement, spell casting, or targeting functions. They also may not complete a trade transaction.
* Addons and macro scripts may only change macros, key bindings, and action buttons while you are not in combat.
* Action buttons and targeting frames are "protected", and may not be programmatically moved, shown or hidden, or have their action changed while in combat.
* There are two new frame member functions: Frame:IsProtected() and Frame:CanChangeProtectedState()

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#134
Poster: Slouken at 2006-10-06 18:07:04
Subject: Re: Expansion Changes - Concise List
  
Security
* Added a script function secure(), which returns false for addon and macro scripts.
* Added a script function securecall("function" [, arguments]), which allows secure code to safely call functions which may be modified by addons. In general, use of this function breaks the script security model, so it should only be used in carefully controlled circumstances.
* Added a script function hooksecurefunc([table,] "function", hookfunc), which allows addons to hook secure functions without affecting the flow of execution. The hook function will be called after the secure function with the same arguments as the secure function. The return value of the hook function will be discarded. Note that this is the only safe way to hook functions that execute protected functionality.
* Secure XML templates remain secure when they are inherited. Any scripts which are overridden by an addon are no longer secure, of course.


  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#135
Poster: Slouken at 2006-10-06 18:07:18
Subject: Re: Expansion Changes - Concise List
  
Secure Templates
* There are several new secure templates that can be used by addons to create new functional buttons:
* SecureUnitButtonTemplate, protected, uses attribute "unit"
* SecureActionButtonTemplate, protected, uses attribute "type", which can be one of "action", "pet", "spell", "item", "target", "focus", and "menu", and uses an optional attribute "unit"
* SecureTradeButtonTemplate
* SecureStanceButtonTemplate
* SecureMenuCheckButtonTemplate
* SecureRaidGroupHeaderTemplate, protected, uses a number of attributes

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#136
Poster: Slouken at 2006-10-06 18:07:39
Subject: Re: Expansion Changes - Concise List
  
Multiple Inheritance
* You can now specify multiple comma separated templates in the "inherits" XML attribute for frames, and in the inherits parameter for dynamically created frames. Each template will be inherited in the order specified, later templates overlaying earlier templates.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#137
Poster: Slouken at 2006-10-06 18:07:55
Subject: Re: Expansion Changes - Concise List
  
Frame Handlers
* Frame handlers now get local variables in addition to global variables. Accessing local variables is faster than accessing global variables, and is recommended.
* Script handlers defined in XML are implicitly wrapped with a function signature depending on the actual handler:
* default: function(self)
* OnChar: function(self,text)
* OnCharComposition: function(self,text)
* OnClick: function(self,button)
* OnColorSelect: function(self,r,g,b)
* OnCursorChanged: function(self,x,y,w,h)
* OnDoubleClick: function(self,button)
* OnDragStart: function(self,button)
* OnEvent: function(self,event,...)
* OnHorizontalScroll: function(self,offset)
* OnHyperlinkClick: function(self,link,text,button)
* OnHyperlinkEnter: function(self,link,text)
* OnHyperlinkLeave: function(self,link,text)
* OnInputLanguageChanged: function(self,language)
* OnKeyDown: function(self,key)
* OnKeyUp: function(self,key)
* OnMouseDown: function(self,button)
* OnMouseUp: function(self,button)
* OnMouseWheel: function(self,delta)
* OnMovieShowSubtitle: function(self,text)
* OnScrollRangeChanged: function(self,xrange,yrange)
* OnSizeChanged: function(self,w,h)
* OnTooltipAddMoney: function(self,cost)
* OnUpdate: function(self,elapsed)
* OnValueChanged: function(self,value)
* OnVerticalScroll: function(self,offset)
* PostClick: function(self,button)
* PreClick: function(self,button)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#138
Poster: Slouken at 2006-10-06 18:08:08
Subject: Re: Expansion Changes - Concise List
  
Frame Metatables
* Instead of a single metatable shared by all frames, each frame type has it's own metatable, for faster member function lookups.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#139
Poster: Slouken at 2006-10-06 18:08:30
Subject: Re: Expansion Changes - Concise List
  
Region Methods
* minx,miny,width,height = Region:GetRect()

Frame Methods
* minx,miny,width,height = Frame:GetBoundsRect()

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=8&sid=1#140
Poster: Slouken at 2006-10-06 18:08:45
Subject: Re: Expansion Changes - Concise List
  
Frame Attributes
* Frames can store attributes internally for use with secure templates. Setting an attribute is a protected function.
* Frame:SetAttribute("name", value)
* value = Frame:GetAttribute("name")

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=8&sid=1#141
Poster: Slouken at 2006-10-06 18:08:59
Subject: Re: Expansion Changes - Concise List
  
Button Keybindings
* You can now bind keys directly to buttons: SetBindingClick("KEY", "buttonName"[, "mouseButton"])

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=8&sid=1#142
Poster: Slouken at 2006-10-06 18:09:13
Subject: Re: Expansion Changes - Concise List
  
Button Scripts
* In addition to OnClick, buttons now have PreClick and PostClick scripts.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=8&sid=1#143
Poster: Slouken at 2006-10-06 18:09:26
Subject: Re: Expansion Changes - Concise List
  
Unit Focus
/focus unit (unit defaults to target)

The specified unit becomes the "focus" unit, and can be used anywhere a unit token can normally be used. When the focus changes, the "PLAYER_FOCUS_CHANGED" event is sent, and you begin to get normal unit events for the focus unit.

There are keybindings for setting your focus to your current target, and setting your current target to your focus. There is also a "focus" action in the secure action button template.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=8&sid=1#144
Poster: Slouken at 2006-10-06 18:09:44
Subject: Re: Expansion Changes - Concise List
  
Unit Events
UNIT_TARGET is sent when a unit's target changes.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=8&sid=1#145
Poster: Slouken at 2006-10-06 18:09:56
Subject: Re: Expansion Changes - Concise List
  
Spellcasting Events
These events are obsolete:
SPELLCAST_START
SPELLCAST_STOP
SPELLCAST_FAILED
SPELLCAST_INTERRUPTED
SPELLCAST_DELAYED
SPELLCAST_CHANNEL_START
SPELLCAST_CHANNEL_UPDATE
SPELLCAST_CHANNEL_STOP
There are a number of new events:
UNIT_SPELLCAST_SENT, "player", spell, rank, target
UNIT_SPELLCAST_START, unit
UNIT_SPELLCAST_STOP, unit
UNIT_SPELLCAST_FAILED, unit
UNIT_SPELLCAST_INTERRUPTED, unit
UNIT_SPELLCAST_DELAYED, unit
UNIT_SPELLCAST_SUCCEEDED, "player", spell, rank
UNIT_SPELLCAST_CHANNEL_START, unit
UNIT_SPELLCAST_CHANNEL_UPDATE, unit
UNIT_SPELLCAST_CHANNEL_STOP, unit
There are also two new functions:
spell, rank, displayName, icon, startTime, endTime = UnitCastingInfo(unit)
spell, rank, displayName, icon, startTime, endTime = UnitChannelInfo(unit)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=8&sid=1#146
Poster: Slouken at 2006-10-06 18:10:11
Subject: Re: Expansion Changes - Concise List
  
Self Casting
* SetActionSelfCastKey("SHIFT" or "CTRL" or "ALT")
* key = GetActionSelfCastKey()
* down = IsActionSelfCastKeyDown()

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=8&sid=1#147
Poster: Slouken at 2006-10-06 18:10:22
Subject: Re: Expansion Changes - Concise List
  
Auto Looting
* SetAutoLootDefault(state)
* state = GetAutoLootDefault()
* SetAutoLootToggleKey("SHIFT" or "CTRL" or "ALT")
* key = GetAutoLootToggleKey()
* down = IsAutoLootKeyDown()

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=8&sid=1#148
Poster: Slouken at 2006-10-06 19:37:41
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:
We love you slouken :)

So this "focus" thing sounds like an assist unitid that can be used in scriptwise functions? Will it only work for friendlies or can you set a hostile as the focus? Will changing focus be restrained to out-of-combat like the protected stuff?



Yep, it's basically a way to keep track of a unique target without actually having it in your raid or currently targeted. You could make the target you just sheeped your focus, for example, and go back to it and re-sheep it later. Or you could make the main tank your focus, go heal a bunch of people, and then instantly go back to it.

It gets even better. You can query information about your focus, just like any other unit, and you even get events when the status of your focus changes.


Q u o t e:

Also, I assume UNIT_TARGET passes the unit whose target changed as arg1?


Yep.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=8&sid=1#153
Poster: Slouken at 2006-10-06 20:09:12
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:
Given all the new information that has just been announced are addons like benecast still possible? The functionality I'm looking is single action (button or mouse press) cast of a spell on a party/raid member without changing target. Ideally having the mod intelligently pick the *rank* of the spell based on how damaged the character is (ie preventing overhealing to conserve mana)


You can easily bind specific spells to modified buttons, but you can't have the addon intelligently pick the rank of the spell. For example, you can set up a row of frames representing the folks you want to heal, and then bind "medium heal" to click, and then "big heal" to shift-click, or right click. Or you could have a column of info frames showing raid member status, and then have a menu of cleanse/heal type spells that pop up when you click on them, etc. etc.

Keep in mind that our secure templates are still a work in progress and we're trying to make available lots of functionality in building-block style pieces.


Q u o t e:
As someone who doesn't write mods, I can half follow the technical details here, but can't put them all together in my head as I don't have that coding experience under my belt.


It's a lot to absorb all at once, that's for sure. :)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=9&sid=1#160
Poster: Slouken at 2006-10-06 20:11:35
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:
Could you possibly provide any more info on SecureRaidGroupHeaderTemplate? I'm quite interested to know what the intent and functionality of this template is.



It's still in testing, but the basic idea is to have a grouping of raid member buttons that are sorted by class, name, subgroup, etc. and have actions bound to clicking on them. Think of it as a basic raid UI building block.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=9&sid=1#162
Poster: Slouken at 2006-10-06 20:12:30
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:

Maybe it would be a good idea to have "PLAYER_REGEN_DISABLED" (or some other event) run when combat is started but before those protections get activated, so mods that present a different interface for combat can continue to work.


Not a bad idea, thanks! :)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=9&sid=1#163
Poster: Slouken at 2006-10-06 20:15:07
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:

Most excellent. Thank you for the prompt response on this. You've made me one happy Priest, as that's exactly what I want my mods to be able to do.


My pleasure. :)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=9&sid=1#165
Poster: Slouken at 2006-10-06 20:23:20
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:

For instance, in Warsong Gulch, say I'm following our flag carrier and have him targetted, and the Horde starts hitting him. At the same time, one of my teammates (not the flag carrier) near me gets sheeped. Is there a way it won't be a pain to disspell the sheep while keeping my attention focused on the flag carrier? Could Decursive be changed so that I could, at the very least, still target the sheeped player really quick with one button, without having to fumble around with my mouse and keyboard to try to select him manually?



You no longer have to target a unit to cast a spell on it, if you have the spell pre-loaded into your buttons. For example, you can have your teammates arranged in a pleasing array, and when they get sheeped they can start glowing or flashing ... or just bleat... and then you can either click on them to dispel them or pop up a menu with the dispel action on it, depending on how you have things set up. ... while you're still targeting the flag carrier all along. The key point is that the UI won't automatically have the right spell ready, you'll have to plan your tactics in advance.


Q u o t e:

I bet you can imagine that some of us aren't taking this news too well, especially us priests who have grown accustomed to Decursive and easy healing addons.


I certainly understand that, and I think you'll find the action to be more interesting once you become comfortable with it.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=9&sid=1#167
Poster: Slouken at 2006-10-06 20:43:59
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:

Does this work when clicking on enemy players in the world frame? Could I say, set my UI so when i control click a hostile it'll Blind or Poly them, without losing my target (and in the case of a rogue, my combo points?)


That's an interesting idea... :) No, it doesn't work like that right now.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=9&sid=1#172
Poster: Slouken at 2006-10-06 21:12:40
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:

I'm full of good ideas, honest. :P

I take it you'll still be fighting hard to get us all the functions needed to make legit mods work correctly, as always?



Of course. :)


Q u o t e:

Yeah, we do kinda need some way to do limited spell queuing, to reduce the effects of client lag. DAoC had this even in their horribly crippled UI, and it did do the job. Effectively you could queue up to 1 spell to fire after your current spell, and that action would take place server side, so the little lag at the end of your spellcast would not be seen on the server and you'd seemlessly start casting the next spell.


That's not a bad idea, you should post it in the suggestions forum.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=9&sid=1#177
Poster: Slouken at 2006-10-06 22:40:20
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:
Is casting different spells with the same keybinding based on whether or not your target is friendly now impossible?


No, we're actually working on that as I type this. :)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=11&sid=1#213
Poster: Slouken at 2006-10-06 22:41:20
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:
So like now there are MT frames, and if you click on them, you target the main tank's target. This won't be possible at all in the expo?


Yes, it will.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=11&sid=1#214
Poster: Slouken at 2006-10-06 22:43:41
Subject: Re: Expansion Changes - Concise List
  
Just a reminder, this thread is for technical discussion only. Off topic posts will be deleted.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=11&sid=1#216
Poster: Slouken at 2006-10-06 22:57:22
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:

- What is Frame:CanChangeProtectedState()?



It returns true if a frame can have protected state changed (i.e. it's not a protected frame or you're not in combat)


Q u o t e:

- Are there any differences between the new secure functions and the movement, etc. stuff that's already locked down?



No, it's using the technology that's been around since 1.10.


Q u o t e:

- Under what situations would we use securecall()? Would we ever, or is that just for secure code?



It's just for secure code.


Q u o t e:

- hooksecurefunc() basically just lets us hook unsecure code into a secure function, right? Will this work for member functions as well as global functions?



That's right. You can hook member functions by using the table functionality, but you'd have to hook the metatable (note that each frame type has it's own metatable in 2.0)


Q u o t e:

- How will the "menu" type of the SecureActionButtonTemplate work?



It calls a predefined member function on the frame.


Q u o t e:

- What is SecureMenuCheckButtonTemplate?



When you click it, it shows it's children, with an optional timeout. This template is still under development.


Q u o t e:

- With the local variables for script handlers, I assume you can how hook handlers like so:

MinimapCluster.OnShow = <new function>

So will there be any purpose for the old :GetEvent() and :SetEvent() member functions?



Actually the script handlers are not member variables, for speed reasons. SetScript/GetScript are still used normally.


Q u o t e:

- What might PreClick and PostClick be used for?



The OnClick has been split into PreClick/OnClick/PostClick, so that AddOns can inherit secure templates with an OnClick handler, and be able to handle modified clicks without needing to override the OnClick handler.


Q u o t e:

- Will you be able to use slash commands like /target, /cast in macros? Or will the lockout affect slash-commands too?



Slash commands are unaffected, and many have been added to simplify existing macros.


Q u o t e:

- My general interpretation: one of the more recent changes was to make a single button or hardware event trigger a single spell. The gist of this change is to make it impossible to dynamically determine the target of that spell or the spell itself dynamically, and that the user will have to make that choice. Does that sound fair? I'm assuming that if that's true, you'll do your best to add workarounds for anything inadvertently crippled by this change.



Actually, that's a common misconception. There is no limit to the number of spells that can be cast at once, other than cooldown and server response limitations.


Q u o t e:

- Is locking down the casting/targeting interface during combat a decision in itself, or is it a side-effect?



It's a deliberate design decision.


Q u o t e:

- If you make a unit frame show "raid4target", for example, it will dynamically target/cast spells at whoever the fourth raid member is targeting at the moment, right? In other words, you won't break target-target functionality?


Yes, that's exactly how it works.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=12&sid=1#226
Poster: Slouken at 2006-10-06 23:00:49
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:
Okay, here's a short list of the things that are broken, that you can no longer do.

A) Buff low-level players.



Actually the default UI will automatically downgrade your buffs in WoW 2.0. :)


  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=12&sid=1#227
Poster: Slouken at 2006-10-06 23:18:18
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:
Do we have any information yet on how this will affect 'mobile menus' such as Sprocket, or even slightly self-organising menus such as the totem drop-downs in Call of Elements? Are provisions being made to allow these sort of things, where a button only ever has one spell it can cast, but it hides or moves itself simply simply to save on screen real estate?


We're working on a number of options for saving screen real-estate, like the menu checkbutton, but none of them have any automatic prioritization. The UI is free to indicate that a certain action is recommended, via color or highlight or some other visual indicator, but it won't be able to organize a list based on priority.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=12&sid=1#235
Poster: Slouken at 2006-10-06 23:23:20
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:

Thanks for being so questionable at this hour, by the way.


My pleasure. :)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=12&sid=1#238
Poster: Slouken at 2006-10-07 00:17:11
Subject: Re: Expansion Changes - Concise List
  
Just a reminder, this thread is for technical discussion only. Off topic posts will be deleted.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=13&sid=1#250
Poster: Slouken at 2006-10-07 08:33:20
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:

Is it currently possible or planned that the curing/dispelling interface be tweaked so that dispellers can choose which debuff to remove (I believe it currently removes the last applied debuff?). Or if not, is there some sort of curing priority system in the works (kind of like the debuff priority system)?


Not as far as I know, and I think this is by design.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=15&sid=1#290
Poster: Slouken at 2006-10-07 08:41:43
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:
Slouken,
1) will there be any functions for healers to determine which players in their group are in range of certain healing spells?



I'm checking with the designers on this.


Q u o t e:

2) You mentioned that more events will be received from your focus target. Could you go into extra detail?



All the same events that you get for all other units you will also get for your focus.


Q u o t e:

3) Will it be possibly to bind a key to a secure unit frame, e.g. make a keybinding to target raid10?


Yes, check out the API to bind a key press to click an arbitrary button: SetBindingClick()
This is stil under development though, and may change before final release.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=15&sid=1#291
Poster: Slouken at 2006-10-07 08:49:01
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:

Here's another addon function question: my unitframes addon communicates with CTRA to display a list of the main tanks, their health, their targets, etc. I can click on them to target them. Will i be able to target them in that manner after these changes, if they occur as currently planned?


Yes. You won't be able to switch main tanks after the battle is joined, but you can absolutely do this.


Q u o t e:

edit: Oh! I thought up another one! I have an addon that lets me set up a macro to cast Innervate only if my intended target both 1) does not currently have Innervate on him and 2) actually uses mana (isn't a warrior or something). Will the addon stil be able to decide whether or not to cast a spell?


The addon will not be able to decide for you, but will be able to give you the information you need to make your own decision. :)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=15&sid=1#292
Poster: Slouken at 2006-10-07 08:52:41
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:

To my understanding, you will be required to have a keybinding or somewhere to click on your screen for every single thing you can cast.

Also, that thing you click on your screen can't move, hide, or change to a different ability, when in combat. It can change appearance, but not function. If you click there, it will cast the spell associated with that spot on your screen.

This is my understanding, someone correct me if I'm wrong.

So, essentially, if like me, you want to reduce screen clutter, then yes, essentially you will need a keybinding for every single thing you can/want to cast.


We're also working on menu-style systems, and flexible click bindings to reduce screen clutter.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=15&sid=1#293
Poster: Slouken at 2006-10-07 08:55:07
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:

I guess what I'm asking is this, could 1) an emergency monitor be made that sorts and re-orders a list based on their current health, and 2) could I click a name on that list to target them and then press my flash heal button to heal them?


1) no
2) yes

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=15&sid=1#294
Poster: Slouken at 2006-10-07 09:01:05
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:
slouken:

With the new secure model, that means we can't show/hide secure unit frames while in combat. What happens if someone joins your party/raid while you're in combat?



The raid group template allows you to group raid members by name, class, and raid group. We're still working on these, so there may be additional changes coming.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=15&sid=1#297
Poster: Slouken at 2006-10-07 09:01:30
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:

But you could say, make the players raid frame flash if they needed immediate healing?


Sure!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=15&sid=1#298
Poster: Slouken at 2006-10-07 09:12:47
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:
Is this the kind of question allowed-

Are there raid encounter design changes being made to go along with these changes to what can be done with the UI?


Sort of off topic, but yes, the designers no longer have to account for decursive-style addons in their dungeon design, which was one of the biggest driving factors for these changes.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=16&sid=1#305
Poster: Slouken at 2006-10-07 09:29:03
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:
so i cant even friggin drag the window around once comat starts? jsut drag it and move it elswhere ... i cant even do that?


Yes, actually you can drag things around your screen. AddOns can't do it for you, but you can move things wherever you want whenever you want.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=17&sid=1#320
Poster: Slouken at 2006-10-07 12:04:36
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:

If this isn't something the base UI provides, would it be possible to write an addon that can preload a base configuration while out of combat and from there they can tailor it to the exact raid makeup?


Sure!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=19&sid=1#373
Poster: Slouken at 2006-10-07 13:55:33
Subject: Re: 2.0.0 Changes - Concise List
  
The event PLAYER_REGEN_DISABLED is sent before protected frames are locked down, and the event PLAYER_REGEN_ENABLED is sent after protected frames are unlocked.

You can tell whether or not a particular frame can currently be moved/resized/shown, etc. by calling Frame:CanChangeProtectedState()

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=20&sid=1#396
Poster: Slouken at 2006-10-07 14:42:40
Subject: Re: My Name is Slouken, I didn't read the sub
  
Okay, back to work... *busies himself with coding...*

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=21&sid=1#407
Poster: Slouken at 2006-10-07 14:42:40
Subject: Re: My Name is Slouken, I didn't read the sub
  
Okay, back to work... *keeps working on WoW 2.0 features...*

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=21&sid=1#407
Poster: Slouken at 2006-10-07 17:19:48
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:
Will the Burning Crusade API changes be making their way to PTR prior to Burning Crusade so we can refactor ahead of time?


Absolutely. There will be a test realm for WoW 2.0 in advance, just like any other patch release.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=22&sid=1#423
Poster: Slouken at 2006-10-06 18:07:55
Subject: Re: Expansion Changes - Concise List
  
Frame Handlers
* Frame handlers now get local variables in addition to global variables. Accessing local variables is faster than accessing global variables, and is recommended.
* Script handlers defined in XML are implicitly wrapped with a function signature depending on the actual handler:
* default: function(self)
* OnAttributeChanged: function(self,name,value)
* OnChar: function(self,text)
* OnCharComposition: function(self,text)
* OnClick: function(self,button)
* OnColorSelect: function(self,r,g,b)
* OnCursorChanged: function(self,x,y,w,h)
* OnDoubleClick: function(self,button)
* OnDragStart: function(self,button)
* OnEvent: function(self,event,...)
* OnHorizontalScroll: function(self,offset)
* OnHyperlinkClick: function(self,link,text,button)
* OnHyperlinkEnter: function(self,link,text)
* OnHyperlinkLeave: function(self,link,text)
* OnInputLanguageChanged: function(self,language)
* OnKeyDown: function(self,key)
* OnKeyUp: function(self,key)
* OnMouseDown: function(self,button)
* OnMouseUp: function(self,button)
* OnMouseWheel: function(self,delta)
* OnMovieShowSubtitle: function(self,text)
* OnScrollRangeChanged: function(self,xrange,yrange)
* OnSizeChanged: function(self,w,h)
* OnTooltipAddMoney: function(self,cost)
* OnUpdate: function(self,elapsed)
* OnValueChanged: function(self,value)
* OnVerticalScroll: function(self,offset)
* PostClick: function(self,button)
* PreClick: function(self,button)

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#138
Poster: Slouken at 2006-10-06 18:07:18
Subject: Re: Expansion Changes - Concise List
  
Secure Templates
* There are several new secure templates that can be used by addons to create new functional buttons:
* SecureActionButtonTemplate
* SecureUnitButtonTemplate
* SecureStateHeaderTemplate
* SecureAnchorButtonTemplate
* SecureStanceStateDriverTemplate
* SecureRaidGroupHeaderTemplate
* SecureTradeButtonTemplate

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#136
Poster: Slouken at 2006-10-06 18:06:27
Subject: Re: Expansion Changes - Concise List
  
Coroutines
* The Lua 5.1 coroutine library is now available.
* Each coroutine creates a new Lua state, so they should be used sparingly to reduce memory usage.

String Functions
... = strsplit(delimiters, string, [, limit])
string = strjoin(delimiter, ...)
string = strconcat(...)

strjoin(strsplit()) will always give you the original string.
strconcat(...) is equivalent to strjoin("", ...)

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#133
Poster: Slouken at 2006-10-06 18:08:59
Subject: Re: Expansion Changes - Concise List
  
Frame Keybindings
* You can now bind keys directly to frames: SetBindingClick("KEY", "frameName"[, "mouseButton"])

The click is implemented as a mouse down when the key is pressed, and a mouse up when the key is released.

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=8&sid=1#142
Poster: Slouken at 2006-10-06 18:06:46
Subject: Re: Expansion Changes - Concise List
  
Protected Functions
* Addons and macro scripts may not use any movement, spell casting, or targeting functions. They also may not complete a trade transaction.
* Addons and macro scripts may only change macros, key bindings, and action buttons while you are not in combat.
* Action buttons and targeting frames are "protected", and may not be programmatically moved, shown or hidden, or have their action changed while in combat.
* There are several new frame member functions: Frame:IsProtected(), Frame:SetProtected(), and Frame:CanChangeProtectedState()

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#134
Poster: Slouken at 2006-10-06 18:08:59
Subject: Re: Expansion Changes - Concise List
  
Frame Keybindings
* You can now bind keys directly to frames: SetBindingClick("KEY", "frameName"[, "mouseButton"])

The click is implemented as a mouse down when the key is pressed, and a mouse up when the key is released.

Override Keybindings
SetOverrideBinding(owner, isPriority, "KEY"[, "COMMAND"])
SetOverrideBindingSpell(owner, isPriority, "KEY", "spellname")
SetOverrideBindingClick(owner, isPriority, "KEY", "buttonName"[, "mouseButton"])
ClearOverrideBindings(owner)
Added optional checkOverride parameter to GetBindingAction()

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=8&sid=1#142
Poster: Slouken at 2006-10-10 11:15:19
Subject: Re: Expansion Changes - Concise List
  
Just a reminder, this thread is for technical discussion only. Off topic posts will be deleted.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=27&sid=1#535
Poster: Slouken at 2006-10-06 18:06:46
Subject: Re: Expansion Changes - Concise List
  
Protected Functions
* Movement: never allowed
* Spell casting: allowed outside of combat if interactive, and in combat using secure templates
* Targeting: allowed using secure templates
* Modifying macros, key bindings, and action bar: allowed programmatically outside of combat
* Trading and reloading the UI: allowed if interactive
* Action buttons and targeting frames are "protected", and may not be programmatically moved, shown or hidden, or have their action changed while in combat.
* There are several new frame member functions: Frame:IsProtected(), Frame:SetProtected(), and Frame:CanChangeProtectedState()

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#134
Poster: Slouken at 2006-10-06 18:07:18
Subject: Re: Expansion Changes - Concise List
  
Secure Templates
* There are several new secure templates that can be used by addons to create new functional buttons:
* SecureActionButtonTemplate
* SecureUnitButtonTemplate
* SecureStateHeaderTemplate
* SecureAnchorButtonTemplate
* SecureStanceStateDriverTemplate
* SecureRaidGroupHeaderTemplate

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#136
Poster: Slouken at 2006-10-10 12:51:03
Subject: Re: Expansion Changes - Concise List
  
I sat down with the designers and got clarification on the rules for addon actions:
* Movement: never allowed
* Spell casting: allowed outside of combat if interactive, and in combat using secure templates
* Targeting: allowed using secure templates
* Modifying macros, key bindings, and action bar: allowed programmatically outside of combat
* Trading and reloading the UI: allowed if interactive

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=28&sid=1#550
Poster: Slouken at 2006-10-10 12:51:21
Subject: Re: 2.0.0 Changes - Concise List
  
Just a reminder, this thread is for technical discussion only. Off topic posts will be deleted.


  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=28&sid=1#551
Poster: Slouken at 2006-10-06 18:07:04
Subject: Re: Expansion Changes - Concise List
  
Security
* Added a script function secure(), which returns false for addon and macro scripts.
* Added a script function securecall("function" [, arguments]), which allows secure code to safely call functions which may be modified by addons. In general, use of this function breaks the script security model, so it should only be used in carefully controlled circumstances.
* Added a script function hooksecurefunc([table,] "function", hookfunc), which allows addons to hook secure functions without affecting the flow of execution. The hook function will be called after the secure function with the same arguments as the secure function. The return value of the hook function will be discarded. Note that this is the only safe way to hook functions that execute protected functionality.
* Added a script function InCombatLockdown(), which returns true if the in-combat addon restrictions are in place.
* Secure XML templates remain secure when they are inherited. Any scripts which are overridden by an addon are no longer secure, of course.

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#135
Poster: Slouken at 2006-10-10 17:32:48
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:

so does that mean that we can not ask what functions will be transfered to the new specifications from old mods? that is a technical discussion but you seem to delete that


I've been deleting them because usually those posts also contain a rant, and this forum is for technical discussion only. :)

BTW, I'm not a moderator, I'm just trying to keep the number of posts down so we don't hit the limit and so I don't have to wade through so many posts to answer technical questions. If you've posted something that was accidentally deleted, please repost it if it doesn't contain a diatribe or vitriol.

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=29&sid=1#576
Poster: Slouken at 2006-10-11 09:50:19
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:
Slouken...i pay my money every month to your company...and i do not appreciate my post being deleted...it may have had a rant in it but that rant had a VERY good point to it...but on top of that...IT HAD A QUESTION PERTAINING TO THIS THREAD...the whole point of my post was about the discussion at hand rant or not


So, without a rant, what was your question?

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=31&sid=1#604
Poster: Slouken at 2006-10-11 11:11:03
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:

Will SetBindingSpell(...) be able to bind with modifiers? So, for example, I can use it to bind Charge to "1" and Bloodthirst to "Shift+1" ? Or is it just unmodified keys that are allowed (without an AddOn to dynamically remap for you)?


Yes, you can bind with modifiers, just like you do for normal key bindings.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=31&sid=1#612
Poster: Slouken at 2006-10-11 13:04:49
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:

The only issue I can see with variable sized actionbar pages (needed for this) and with programmatically changing action bars in combat (needed for things like prowl/shadowform/different-target reaction/range switches) is that you've left a loophole.

Imagine a 1 button actionbar page size - you now have 72 possible states it can take programmatically.

A bit kludgy, but folks will likely do it if it allows some automation.


You can't change the action bar in combat other than by clicking a secure button to do so or using /changeactionbar or /swapactionbar
A variable size action bar is possible, but I think it will be unnecessary with the power of the state header template that is being worked on. More details will be posted when it's closer to being done.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=31&sid=1#616
Poster: Slouken at 2006-10-11 13:22:17
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:
Is there any reason you're specifically avoiding the stance bar issue? Stance changing bars have always been a core part of the UI since release. Is a stance spell considered a secure button?


I haven't said much about it because it's not completely done yet. :)
But, in case you missed it there's a SecureStanceStateDriverTemplate, which inherits SecureStateHeaderTemplate, which uses stance changes to drive state changes which can cause buttons to shown/hidden, change actions, etc.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=31&sid=1#618
Poster: Slouken at 2006-10-11 20:27:31
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:
1) Can we finally get /target to function properly with unit names that contain a space? For example, Blackwing Mage and Blackwing Legionare are indistinquishable by the /target command.



Yes, this works in WoW 2.0


Q u o t e:

2) Can we get a slash command for targetting whatever unit a secure frame is associated with?



No, but you can do even better than that. You can configure those buttons themselves to do healing, or if you're after the targeting functionality, you can bind keys to click those buttons with any virtual mouse button.


Q u o t e:
3) Can you add unit ids that are associated with raid target icons.


We'll see. The idea of the raid target icons are to draw the player into the playing field, not to automate raid coordination, but it's not final yet.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=32&sid=1#630
Poster: Slouken at 2006-10-11 20:30:33
Subject: Re: 2.0.0 Changes - Concise List
  
I want to take a moment to thank those authors in the Alpha who have been contributing feedback, suggestions, and in some cases code to help the addon community. You'll find some of their names in the addon support code in the game, and others in the credits for the Burning Crusade.

Thanks! You guys rock! :)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=32&sid=1#631
Poster: Slouken at 2006-10-06 18:06:46
Subject: Re: Expansion Changes - Concise List
  
Protected Functions
* Movement: never allowed
* Spell casting: allowed outside of combat if interactive, and in combat using secure templates
* Targeting: allowed using secure templates
* Modifying macros, key bindings, and action bar: allowed programmatically outside of combat
* Trading and reloading the UI: allowed if interactive
* Action buttons and targeting frames are "protected", and may not be programmatically moved, shown or hidden, or have their action changed while in combat.
* There are several new frame member functions: Frame:IsProtected(), and Frame:CanChangeProtectedState()

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#134
Poster: Slouken at 2006-10-11 21:57:17
Subject: Re: 2.0.0 Changes - Concise List
  
Added GetActionInfo():

function GetActionName(action)
local type, id, subtype = GetActionInfo(action);
local name;
if ( type == "spell" ) then
name = GetSpellName(id, subtype);
elseif ( type == "item" ) then
name = GetItemInfo(id);
elseif ( type == "macro" ) then
name = GetMacroInfo(id);
end
return name;
end

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=32&sid=1#633
Poster: Slouken at 2006-10-11 22:19:46
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:
Thanks slouken!


You're welcome! :)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=32&sid=1#635
Poster: Iriel at 2006-09-01 20:12:11
Subject: 2.0.0 Changes - Concise List
  
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 6.0 to Lua 5.1 changes. Some AddOns will be more seriously affected, and a few will have to be redesigned.

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>, /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>
* /target and /focus take all valid unit ids as well as entity names

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
* SecureStateHeaderTemplate
* SecureAnchorButtonTemplate
* SecureStanceStateDriverTemplate

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!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#0
 
Poster: Iriel at 2006-09-01 20:12:11
Subject: 2.0.0 Changes - Concise List
  
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.

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>, /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>
* /target and /focus take all valid unit ids as well as entity names

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
* SecureStateHeaderTemplate
* SecureAnchorButtonTemplate
* SecureStanceStateDriverTemplate

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!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#0
 
Poster: Slouken at 2006-10-11 23:23:20
Subject: Re: 2.0.0 Changes - Concise List
  
Added:
count = GetItemCount(itemID|"itemlink" [, includeBank])

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=32&sid=1#636
Poster: Slouken at 2006-10-12 15:43:26
Subject: Re: 2.0.0 Changes - Concise List
  
Many API additions to support item buttons and spell buttons:

* Inventory functions will accept a slot name in addition to a slot number.

* Spell information functions accept a spell either as a slot and "spell" or "pet", or as a name with an optional rank.
* Added the following spell information functions:
isPassive = IsPassiveSpell(spell)
isAttack = IsAttackSpell(spell)
isAutoRepeating = IsAutoRepeatSpell(spell)
usable, noMana = IsUsableSpell(spell)
hasRange = SpellHasRange(spell)
result = IsSpellInRange(spell, unit) - result is nil for no valid target, 0 for out of range, 1 for in range
* IsSpellPassive() was renamed to IsPassiveSpell()

* Item information functions accept an item ID, an item link, or the name of an item in your inventory.
* Added the following item information functions:
startTime, duration, enable = GetItemCooldown(item)
usable, noMana = IsUsableItem(item)
consumable = IsConsumableItem(item)
equipped = IsEquippedItem(item)
casting = IsCurrentItem(item)
hasRange = ItemHasRange(item)
result = IsItemInRange(item, unit) - result is nil for no valid target, 0 for out of range, 1 for in range

* The functions IsActionInRange(), IsSpellInRange() and IsItemInRange() all take an optional unit parameter.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=33&sid=1#658
Poster: Slouken at 2006-10-12 15:43:26
Subject: Re: 2.0.0 Changes - Concise List
  
Many API additions to support item buttons and spell buttons:

* Inventory functions will accept a slot name in addition to a slot number.

* Spell information functions accept a spell either as a slot and "spell" or "pet", or as a name with an optional rank.
* Added the following spell information functions:
isPassive = IsPassiveSpell(spell)
isAttack = IsAttackSpell(spell)
isAutoRepeating = IsAutoRepeatSpell(spell)
usable, noMana = IsUsableSpell(spell)
hasRange = SpellHasRange(spell)
result = IsSpellInRange(spell, unit) - result is nil for no valid target, 0 for out of range, 1 for in range
* IsSpellPassive() was renamed to IsPassiveSpell()

* You no longer need to strip special codes from item links before passing them to item information functions.
* Item information functions accept an item ID, an item link, or the name of an item in your inventory.
* Added the following item information functions:
startTime, duration, enable = GetItemCooldown(item)
usable, noMana = IsUsableItem(item)
consumable = IsConsumableItem(item)
equipped = IsEquippedItem(item)
casting = IsCurrentItem(item)
hasRange = ItemHasRange(item)
result = IsItemInRange(item, unit) - result is nil for no valid target, 0 for out of range, 1 for in range

* The functions IsActionInRange(), IsSpellInRange() and IsItemInRange() all take an optional unit parameter.

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=33&sid=1#658
Poster: Slouken at 2006-10-12 17:49:05
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:
slouken:
Any way we could get an update for the Interface kit, that works with the Beta, so we can extract and look at the UI code (using a Blizzard tool).


Yep, it's being worked on as I type this by our installer programmer.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=34&sid=1#660
Poster: Slouken at 2006-10-12 18:05:07
Subject: Re: 2.0.0 Changes - Concise List
  
In WoW 2.0, feeding your pet, poisons, etc. will be even easier to macro:
/cast Feed Pet
/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.

The secure button templates have support for pre-loaded items which are used as spell targets.

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=34&sid=1#661
Poster: Iriel at 2006-09-01 20:12:11
Subject: 2.0.0 Changes - Concise List
  
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.

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>, /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>
* /target and /focus take all valid unit ids as well as entity names
* 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
* SecureStateHeaderTemplate
* SecureAnchorButtonTemplate
* SecureStanceStateDriverTemplate
* 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

[ Post edited by Iriel ]



UI and Macros Forum MVP - Understand GC!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#0
 
Poster: Slouken at 2006-10-12 21:16:24
Subject: Re: 2.0.0 Changes - Concise List
  
Nope, the stuff I'm announcing will be in the next beta update.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=34&sid=1#664
Poster: Slouken at 2006-10-12 21:17:10
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:
Right now I use a rough Bandaging macro that looks like this

/target Mokti
/script UseContainerItem(B,S)

Using my Heavy Runecloth Bandages and keeping them in the same bag/slot all the time. Will this still work in the expansion, and if no, would you be so kind as to suggest how I might correct it?


In WoW 2.0, you don't even need to keep them in the same slot:
/target Mokti
/use Heavy Runecloth Bandages


  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=34&sid=1#665
Poster: Slouken at 2006-10-13 10:07:03
Subject: Re: 2.0.0 Changes - Concise List
  
Added slash commands:
/startattack
/stopattack

You can specify a target for the attack, e.g.
/startattack Kobold
/startattack focus

There is also a new API function available:
StopAttack()

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=34&sid=1#679
Poster: Slouken at 2006-10-13 10:11:45
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:
Slouken, would expanding the functionality of /trade to do:
/trade [item] [unit]
be reasonable?

So a mage could do for example: /trade Conjured Crystal Water target ?



Neat idea, I'll see if I can get it on the TODO list.


Q u o t e:

And any thoughts on:
/castifready
/useifready



I'm wondering if we ever want to show the Not Ready error for macro casts...


Q u o t e:

and being able to specify to only start or stop/remove, toggleable actions like stances/stealth/autoattack?



There are a couple of design proposals under discussion for this.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=35&sid=1#681
Poster: Iriel at 2006-09-01 20:12:11
Subject: 2.0.0 Changes - Concise List
  
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.

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>, /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
* /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
* SecureStateHeaderTemplate
* SecureAnchorButtonTemplate
* SecureStanceStateDriverTemplate
* 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

[ Post edited by Iriel ]



UI and Macros Forum MVP - Understand GC!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#0
 
Poster: Slouken at 2006-10-13 11:44:45
Subject: Re: 2.0.0 Changes - Concise List
  
Added slash command:
/cancelaura name
Cancels the named aura on the player, as though it were right clicked.

The following API functions can take a spell name with optional rank, as well as a buff index:
GetPlayerBuffTexture()
GetPlayerBuffDispelType()
GetPlayerBuffApplications()
CancelPlayerBuff()
Note that these functions return information about auras currently on the player, not spells in general.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=35&sid=1#687
Poster: Slouken at 2006-10-13 12:03:49
Subject: Re: 2.0.0 Changes - Concise List
  
Added:
UnitHasBuff("unit", "name"[, "rank"])
UnitHasDebuff("unit", "name"[, "rank"])

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=35&sid=1#689
Poster: Slouken at 2006-10-13 12:20:39
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:

Perhaps have them return nil and [number of applications] ?


Great idea, done! :)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=35&sid=1#691
Poster: Slouken at 2006-10-13 13:26:08
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:

numAppliactions = UnitHasBuff("unit", "buff" [,"rank"]);

returns number of applications or nil.



This is the actual return value.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=35&sid=1#699
Poster: Slouken at 2006-10-14 08:24:40
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:
Are there arguments allowed to specify which rank of the spell is cast, or does it automatically cast max rank?


It will automatically cast the max rank if you don't specify one, but you can specify a particular rank, e.g. Holy Light(Rank 1)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=36&sid=1#719
Poster: Slouken at 2006-10-06 18:07:55
Subject: Re: Expansion Changes - Concise List
  
Frame Handlers
* Frame handlers now get local variables in addition to global variables. Accessing local variables is faster than accessing global variables, and is recommended.
* Script handlers defined in XML are implicitly wrapped with a function signature depending on the actual handler:
* default: function(self)
* OnAttributeChanged: function(self,name,value)
* OnChar: function(self,text)
* OnCharComposition: function(self,text)
* OnClick: function(self,button)
* OnColorSelect: function(self,r,g,b)
* OnCursorChanged: function(self,x,y,w,h)
* OnDoubleClick: function(self,button)
* OnDragStart: function(self,button)
* OnEnter: function(self,motion)
* OnEvent: function(self,event,...)
* OnHorizontalScroll: function(self,offset)
* OnHyperlinkClick: function(self,link,text,button)
* OnHyperlinkEnter: function(self,link,text)
* OnHyperlinkLeave: function(self,link,text)
* OnInputLanguageChanged: function(self,language)
* OnKeyDown: function(self,key)
* OnKeyUp: function(self,key)
* OnLeave: function(self,motion)
* OnMouseDown: function(self,button)
* OnMouseUp: function(self,button)
* OnMouseWheel: function(self,delta)
* OnMovieShowSubtitle: function(self,text)
* OnScrollRangeChanged: function(self,xrange,yrange)
* OnSizeChanged: function(self,w,h)
* OnTooltipAddMoney: function(self,cost)
* OnUpdate: function(self,elapsed)
* OnValueChanged: function(self,value)
* OnVerticalScroll: function(self,offset)
* PostClick: function(self,button)
* PreClick: function(self,button)

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#138
Poster: Slouken at 2006-10-06 18:07:04
Subject: Re: Expansion Changes - Concise List
  
Security
* Added a script function issecure(), which returns false for addon and macro scripts.
* Added a script function issecurevariable([table,] "variable"), which returns false if the named variable has been modified by an addon or macro script.
* Added a script function securecall("function" [, arguments]), which allows secure code to safely call functions which may be modified by addons. In general, use of this function breaks the script security model, so it should only be used in carefully controlled circumstances.
* Added a script function hooksecurefunc([table,] "function", hookfunc), which allows addons to hook secure functions without affecting the flow of execution. The hook function will be called after the secure function with the same arguments as the secure function. The return value of the hook function will be discarded. Note that this is the only safe way to hook functions that execute protected functionality.
* Added a script function InCombatLockdown(), which returns true if the in-combat addon restrictions are in place.
* Secure XML templates remain secure when they are inherited. Any scripts which are overridden by an addon are no longer secure, of course.

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#135
Poster: Slouken at 2006-10-15 13:46:43
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:
Hi there, I'm in the midst of writing AceHook-2.1 and one function that would be _tremendously_ useful would be an issecure function

something similar to
issecure([table,] "function") or issecure(function)



You got it!
* Added a script function issecurevariable([table,] "variable"), which returns false if the named variable has been modified by an addon or macro script.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=37&sid=1#732
Poster: Slouken at 2006-10-16 12:08:16
Subject: Re: 2.0.0 Changes - Concise List
  
FYI, /use will have two new forms:
/use bag slot
/use slot

e.g. to use the item in the top left of your backpack:
/use 0 1

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=38&sid=1#742
Poster: Iriel at 2006-09-01 20:12:11
Subject: 2.0.0 Changes - Concise List
  
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
* 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

[ Post edited by Iriel ]



UI and Macros Forum MVP - Understand GC!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#0
 
Poster: Slouken at 2006-10-16 13:58:17
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:
Any word on equiping items of the same name but different enchants?


No, the /equip command identifies items by name, although I believe it will equip the first one of the given name that it finds.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=38&sid=1#744
Poster: Slouken at 2006-10-16 13:59:10
Subject: Re: 2.0.0 Changes - Concise List
  
A version of the interface kit which works with the Burning Crusade Beta is available here:
http://www.worldofwarcraft.com/downloads/expansion-bc/addonkit.zip

Note that this will only work with the beta version of the game, not the current release nor the final version.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=38&sid=1#745
Poster: Slouken at 2006-10-17 12:04:23
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:
Outstanding changes.

At first before I read the entire post (all 38 pages), I was quite distraught about some of these changes, and the way they will affect my mods. . .

Now however after fully reading and understanding the underlying reasons why, I'm looking forward to seeing these implemented.

Thanks for all the inside info on these features/changes. :)


My pleasure!
Kudos to everybody for great feedback and suggestions, they've been very helpful. Special thanks to Iriel, who's gone far beyond the call of ... game. :)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=38&sid=1#759
Poster: Slouken at 2006-10-17 12:07:01
Subject: Re: 2.0.0 Changes - Concise List
  
Added SecurePartyHeaderTemplate, based on SecureRaidGroupHeaderTemplate

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=39&sid=1#760
Poster: Slouken at 2006-10-17 15:15:50
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:

An option to enable some sort of notification of tainted code attempting to take actions that are normally silently ignored would be a very helpful debugging too.


You got it:
MACRO_ACTION_FORBIDDEN: sent when a macro tries use actions that are always forbidden (movement, targeting, etc.). The first argument is the name of the protected function that was called.
ADDON_ACTION_FORBIDDEN: sent when an addon tries use actions that are always forbidden (movement, targeting, etc.). The first argument is the name of the addon that was last involved in the execution path, and the second argument is the protected function that was called.
MACRO_ACTION_BLOCKED: sent when a macro tries use actions that are blocked in combat or require interactive input (spell casting, trading, etc.). The first argument is the name of the protected function that was called.
ADDON_ACTION_BLOCKED: sent when an addon tries use actions that are blocked in combat or require interactive input (spell casting, trading, etc.). The first argument is the name of the addon that was last involved in the execution path, and the second argument is the protected function that was called.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=39&sid=1#767
Poster: Slouken at 2006-10-17 15:15:50
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:

An option to enable some sort of notification of tainted code attempting to take actions that are normally silently ignored would be a very helpful debugging too.


You got it:
MACRO_ACTION_FORBIDDEN: sent when a macro tries use actions that are always forbidden (movement, targeting, etc.). The first argument is the name of the protected function that was called.
ADDON_ACTION_FORBIDDEN: sent when an addon tries use actions that are always forbidden (movement, targeting, etc.). The first argument is the name of the addon that was last involved in the execution path, and the second argument is the protected function that was called.
MACRO_ACTION_BLOCKED: sent when a macro tries use actions that are blocked in combat or require interactive input (spell casting, trading, etc.). The first argument is the name of the protected function that was called.
ADDON_ACTION_BLOCKED: sent when an addon tries use actions that are blocked in combat or require interactive input (spell casting, trading, etc.). The first argument is the name of the addon that was last involved in the execution path, and the second argument is the protected function that was called.

Note the "action was blocked" dialog only comes up for actions which are always forbidden.

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=39&sid=1#767
Poster: Slouken at 2006-10-18 02:48:07
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:

Thanks! That'll make debugging much easier since I'll at least know where to start looking. Now, a question you don't have to answer. Can we expect these in the next client patch or will we have to wait a bit longer?


You'll have to wait a bit longer, sorry! The beta updates are approximately a week behind the development changes, as Q/A runs through laundry lists of tests before a build goes up to the server.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=39&sid=1#770
Poster: Slouken at 2006-10-18 09:54:24
Subject: Re: 2.0.0 Changes - Concise List
  
Changed in 2.0:
InviteByName() and InviteToParty() have been merged into InviteUnit()
UninviteByName() and UninviteFromParty() have been merged into UninviteUnit()


  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=39&sid=1#775
Poster: Iriel at 2006-09-01 20:12:11
Subject: 2.0.0 Changes - Concise List
  
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!

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=1&sid=1#0
 
Poster: Slouken at 2006-10-19 12:48:19
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:
I'd like to request an additional action type for the SecureActionButtonTemplate which would be "function" to call a custom function. I intend to use this to send whispers to the unit but I suspect there are other good uses as well. The function would naturally be tainted and therfore couldn't perform any casting or targetting, but that's already covered by existing actions so no big deal.


You can always handle this sort of thing in the PreClick or PostClick for the button.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=41&sid=1#810
Poster: Slouken at 2006-10-19 12:54:32
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:
Ok. so I think I'm starting to understand the "new world order" we have here but I am still a bit confused. If I were to have a secure action button with the following OnLoad
self:SetAttribute("harmbutton1", "drain");
self:SetAttribute("harmbutton2", "burn");
self:SetAttribute("type-burn", "spell");
self:SetAttribute("type-drain", "spell");
self:SetAttribute("spell-drain", "Drain Soul");
self:SetAttribute("spell-burn", "Shadow Burn");

It would cast (the highest available level of) Shadow Burn on a right click and Drain Soul on a left click when a hostile target is selected. But, what if the spells were Shadow Ward and Life Tap, or Create Healthstone and Create Soulstone, or any other spell combinations that don't care about the target, and should cast regardless. All I see as options are helpbutton and harmbutton in the SecureActionButton template.



The helpbutton and harmbutton are provided as remaps if you care about the relationship between you and your target. If you don't care, then you can leave them unspecified and the default "type1", "type2" are used (which again default to "type").


Q u o t e:

Second question: I can configure these logically outside of combat right? The secure templates use CastSpellByName, which do not allow me to select the highest available level of stone spells. I would need Lua logic to determine which stone spells (ie. Major, Minor, etc) the user has available and then adjust attributes accordingly right? Since the spellbook doesn't change in combat, this makes sense?



Yes, you can configure them outside of combat. As for different "ranks", the ranks are simply text tags associated with the spells. If they aren't "ranks", then they are ordered by spell level, so if you don't specify a rank it'll use the highest rank of the spells in your spellbook with that name.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=41&sid=1#811
Poster: Slouken at 2006-10-19 12:55:26
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:
Will I still be able use things like SetRaidTarget() in macros, or do we have to request a slash command for any such thing we think might be useful?


Yes, SetRaidTarget() currenlty has no restrictions.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=41&sid=1#812
Poster: Slouken at 2006-10-19 15:29:36
Subject: Re: 2.0.0 Changes - Concise List
  
In 2.0, the following functions can either take a macro name or a macro index:
GetMacroInfo()
DeleteMacro()
EditMacro()
PickupMacro()

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=41&sid=1#815
Poster: Slouken at 2006-10-19 16:18:20
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:

What if two macros have the same name? Or are macro-names now unique ?


One of them will be chosen randomly. :)

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=41&sid=1#817
Poster: Slouken at 2006-10-06 18:07:18
Subject: Re: Expansion Changes - Concise List
  
Secure Templates
* There are several new secure templates that can be used by addons to create new functional buttons:
* SecureActionButtonTemplate
* SecureUnitButtonTemplate
* SecurePartyHeaderTemplate
* SecureRaidGroupHeaderTemplate
* SecureStateHeaderTemplate
* SecureStateDriverTemplate
* SecureAnchorButtonTemplate
* SecureAnchorEnterTemplate
* SecureAnchorUpDownTemplate

[ Post edited by Slouken ]



  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=7&sid=1#136
Poster: Slouken at 2006-10-19 18:54:17
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:
can the Focus unit be changed in combat by a macro or addon?


Yes, by macro or predefined button or keypress.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=42&sid=1#824
Poster: Slouken at 2006-10-22 14:39:24
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:

Will there be a way to manually change parameters for the secure buttons during combat?



Not directly, no. The state headers take care of a lot of this management for you, but you can't reconfigure them on the fly.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=43&sid=1#847
Poster: Slouken at 2006-10-22 14:39:49
Subject: Re: Expansion Changes - Concise List
  
Remember, this thread is for technical discussion only. Off topic posts will be deleted.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=43&sid=1#848
Poster: Slouken at 2006-10-22 16:12:39
Subject: Re: Expansion Changes - Concise List
  

Q u o t e:
* Can we get a slight change to the 'item' type handling of SecureActionButtons, so we can not only set up predefined item targets for spells, but for items as well? (Think sharpening stone/poison with predefined main/offhand target weapon).


Yes, I generalized the item targeting code for WoW 2.0.0


  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=43&sid=1#851
Poster: Slouken at 2006-11-01 19:04:25
Subject: Re: 2.0.0 Changes - Concise List
  

Q u o t e:
Will the standard mash stealth macro still be able to be used? Its the only macro I use but I fear it may not be possible with the new changes. I used to be able to just use /cast Stealth() and it wouldn't unstealth me if I used it while in stealth but that has been broken since I started playing again so now I have to use a macro with if/else statements.


No, but in 2.0.1 there will be a short grace period after the spell has been cast before it will let you toggle it off again by hitting your stealth button.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=44&sid=1#873
Poster: Slouken at 2006-11-02 08:33:38
Subject: Re: 2.0.0 Changes - Concise List
  
Is Iceblock an aura that is toggled by casting it? The duration of the toggle delay is set to match the global cooldown (so you couldn't cast anything else during that time anyway) And if you really want you can always right click the buff to cancel it.

  http://forums.worldofwarcraft.com/thread.html?topicId=15401595&pageNo=44&sid=1#875
 

Is this thread News or Fluff? You Decide!
News!
- OR -
Fluff!
What are you talking about?

View all recent official Blue Posts

WoW Blue Tracker: Archiving World of Warcraft Blue Posts
since March 2005
Home | RSS | News | Contact
Recent | Search | Archive | CS Posts
 

Why Ads?