Download
(27 Kb)
Download
Updated: 05-12-06 02:48 PM
Pictures
File Info
Updated:05-12-06 02:48 PM
Created:unknown
Downloads:157,893
Favorites:542
MD5:
Ace  Popular! (More than 5000 hits)
Version: 1.3.1
by: Kaelten [More]
For anyone who might be developing with this already, there are some structural changes from RC.3 to RC.4. Check the README.txt file for version history.

Ace is a lightweight and powerful addon development system. It is a new approach to
addon development, a rethinking from the ground up. Ace provides developers with the
tools needed by most addons, freeing them from repeating common tasks and allowing
them to jump right into the creative part of building their addons.

Here is a brief list of its features:

- Initializes the addon after variables and character data load.
- Simple, flexible, and powerful data management.
- Customizable chat command handling.
- Improved function and method hooking.
- Enhanced event handling with the ability to create custom events.
- In-game addon disabling and enabling.
- Easy saving of settings per character and per class.
- Debug features with optional module.
- Built-in myAddons support.

A new development kit is forthcoming in the next few days, until then you can get a slightly outdated version at http://www.wowace.com

Documentation and examples on how to use Ace for development are included in the
development kit. The documentation is admittedly rough right now, but it and the
examples should provide you with a good base to start with.

As always please post any ideas, comments or suggestions.

Thanks,

Kaelten

Brief Command List (detailed in the README.txt file)

/ace - Display available options.

/ace enable | disable <addon> - Same as enabling or disabling the AddOn at the character screen. Requires a game restart or reload.

/ace info - Display addon summary information and current memory usage.

/ace list <addon> - Search for a specific addon.
/ace list ace - List only Ace addons.
/ace list other - List only non-Ace addons.
/ace list loadable - List addons that can be loaded with the /ace load command.

/ace load [auto | off] <addon> - Load the specified addon. <auto> will load the addon into the current profile automatically each time you start or reload the game. <off> will turn off automatic loading of the addon you specify.

/ace loadmsg addon - Display a load message for every Ace addon that is loaded.
/ace loadmsg none - Don't display any load message at all.
/ace loadmsg sum - Display a summary message after all addons are loaded.

/ace profile char [<addon> | all] - Load a profile specific to the current character. Optionally specify an addon name or "all" to load all your Ace addons into this profile.
/ace profile class [<addon> | all] - Load a profile specific to the current character's class. Optionally specify an addon name or "all" to load all your Ace addons into this profile.
/ace profile default - Load the default profile, which automatically uses the default settings of all your addons.

Version Notes

[2005-10-11] v1.2.5
(changed)
- Updated for game patch 1.8
- Modified Ace's addon loading to handle Blizzard's new addons.


[2005-09-17] v1.2.4
(changed)
- Updated the German localization thanks to Neriak's translations.
(fixed)
- A bug that broke the use of AceDebug

[2005-09-15] v1.2.3
(fixed)
- A bug in the chat command registering that prevented an addon's additional
commands from registering if the first one was already in use.

[2005-09-14] v1.2.2
(fixed)
- Supplied temporary function mappings for CmdEnable and CmdDisable, which were
removed in 1.2, to support existing addons' use of these.

[2005-09-14] v1.2.1
(fixed)
- A typo in the myAddOns support
- Removed a leftover debugging statement.
[2005-09-13] v1.2
(chat commands)
- load : Load any addon (not just Ace addons) that can be loaded dynamically. Type
/ace list loadable for a list of addons you can load. Note that addons must be
modified to be loadable in this way, so you may not immediately be able to use
this feature.
- enable/disable : These affect the flag that appears in the AddOn menu on the
character login screen. They only toggle this flag. You will have to restart the
game or reload the UI to load or unload the addon.
- list : This option has been modified.
/ace list : Displays a list of all addons. For Ace addons, it will display their
primary chat command.
/ace list ace : List only Ace addons.
/ace list other : List non-Ace addons.
/ace list loadable : List addons that can be loaded dynamically, if any.
(new)
- German translation, much thanks to Neriak!
(changed)
- The standard enable/disable options available to most Ace addons' chat commands
have been replaced with 'standby'. This is to avoid confusion with the new API
enable/disable features provided in game patch 1.7. 'standby' functions the same
as enable/disable did but instead acts as a toggle between these two states.
-------------
API Changes
-------------
(added)
- Script handling support. This refers to the ability to add OnShow, OnClick, and
other handlers to frame elements. This system works just like the hooking system
for functions and methods. Addons now have the following methods available to
them: HookScript, UnhookScript, UnhookAllScripts, and CallScript.
- An enabled event will now fire at game load for each enabled addon.
- New chat command methods:
error() : Prefixes messages with a standard error text.
msg() : Passes all arguments to format() then sends the results to the
cmd:result() method.
status() : Displays a message in similar format to what cmd:report() uses. This
is to allow report labels to be reused for chat command feedback.
(changed)
- Base classes have been renamed. The "Class" part of each name has been dropped.
For example, AceChatCmdClass is now AceChatCmd. The old names are mapped to the
new, so existing addons will continue working. Use of these names is considered
deprecated, so they may be removed in the future. This change was just to keep
naming consistent in light of certain changes to addon declaration standards.
- The game state is initialized differently now to take advantage of ADDON_LOADED
and to work more efficiently.
- AceDB:insert() will now create a table if the key being referenced does not exist.
- Localization functions will now be destroyed after they are used in order to clear
even more memory.
- Simplified the way events are processed. Also separated the processing of custom
events from real events in order to avoid variable clashing.
- Addons no longer require a description field. If left blank, Ace will supply the
text from the notes section of the toc file. Keep in mind that addons which create
"sub-addons" or applications (apps for short), such as OneBag, which provides both
OneBag and OneBankBag will need to supply a separate description for the extra
apps. Otherwise, each will share the same description.
- The defined chat commands now set an order of precedence. For example, if you
define a list of chat commands such as COMMANDS = {"/mc", "/mycmd", "/mycommand"}
then the Ace command object will attempt to use /mc as the primary command. If
/mc is already registered by another addon, then /mycmd will be attempted. Each
command will still be registered if possible, but now the first one that is able
to be registered will be the one shown in Ace's addon lists and usage displays.
- The AceChatCmd:report() method now accept 'indent' as one of the configuration
options in addition to 'text', 'val', and 'map'. 'indent' is an integer specifying
the number of level to indent a report line.

[5/12/2006] v1.3.1
(changed)
- Updated Toc Number for 1.10

[2006-1-5] v1.3
(changed)
- Finalized Release
- Updated for game patch 1.9

[2006-1-4] v1.3 RC3
(changed)
- Changed a few errors to debug statements.
- A few optimizations.
- Fixed a Hook Bug.

[2006-1-1] v1.3 RC2
(changed)
- Found a couple of errors in my AceHook implementation
- Scripts now use the new hook system.
- Removed file AceScript.lua

[2005-12-30] v1.3 RC1
(changed)
- The Hooking system has been completely redone. Fixing the memory leak.
- Hooking scripts has been unified with the hooking system.
- Ace.CopyTable() will not setn on the new table if the original was numerically indexed.
- MyAddons support has been completely updated. myAddons v2.4 is now supported.


[2005-08-07] v1.1b
(fixed)
- A bug in the new chat processing that broke the commands of some addons.

[2005-08-07] v1.1a
(added)
- A check when printing messages at addon load to avoid an error when an addon's
command object isn't formatted correctly.

[2005-08-04] v1.1
(added)
- A few error() statements in AceDB to push data errors up to the addon so that such
error messages will be more helpful to the addon authors.
(changed)
- Optimization of chat command handling.
- Use of ? to get information on command options changed to work more logically. It
is now mostly unnecessary to use ?. Simply type /command option and if the option
requires additional input, a list will be displayed. You may also type
/command option ? to force the help list to display. /command ? still shows extra
information about the addon.
- Modified how the profilePath gets set when profiles are changed. The modification
should help reduce potential problems with settings being saved to the wrong
profile right after changing to a different profile.
[2005-07-27] v1.0b
(fixed)
- Another bug in the chat handler class that would prevent an individual arguments
method from being called if there was one for the option. Has been made so you
can set a default chathandler in the option, but set individual ones on the args.
Optional Files (0)


Post A Reply Comment Options
Old 03-30-06, 07:32 AM  
Vanish
A Murloc Raider

Forum posts: 6
File comments: 1
Uploads: 0
ACE 1.3 Error under WoW 1.10.0

Since the 1.10.0 update I have been experiencing an anomaly with ACE 1.3. Left-clicking anywhere in the game screen (Not action bars, or clickable addon elements, but NPCs, enemies, friends, the ground, etc.) throws an error. A message pops up warning that ACE tried to use a method that is not available in the API and asks to disable ACE or ignore the error.

Any thoughts?

NM. This was casued by KC_EnhancedTrades.
Last edited by Vanish : 03-30-06 at 08:54 PM.
Vanish is offline Report comment to moderator  
Reply With Quote
Old 01-18-06, 08:12 AM  
Daeanor
A Deviate Faerie Dragon

Forum posts: 18
File comments: 3
Uploads: 0
ACE 1.3 does not play nice with Khaos Config - it causes it to not load the proper user profile. I found this sufficiently annoying to disable ACE, and would really like the use of the ACE addons I am missing back. I am posting a similar message on the Comos Khaos boards, in case it is really an issue with them, just consider this a heads-up. Both addons are sufficiently popular that they should be aware of each other.
Daeanor is offline Report comment to moderator  
Reply With Quote
Old 01-10-06, 07:17 PM  
AstroCat
An Aku'mai Servant

Forum posts: 31
File comments: 9
Uploads: 0
Boogie box problem with 1.3

Ok, with ACE 1.3 the BoogieBox victory track will just keeping looping and never stop.
With ACE 1.25 it works 100% ok.

Any help? Thanks!
AstroCat is offline Report comment to moderator  
Reply With Quote
Old 01-05-06, 08:18 PM  
Kaelten
Jack's raging bile duct
 
Kaelten's Avatar
Featured Addon Author

Forum posts: 766
File comments: 47
Uploads: 22
Thats a known issue with KC_Items, I'm working on getting an update out but I wanted it to have some substance to it.
__________________
WowAce.com & CurseForge.com Adminstrator
Developer of Ace3, OneBag3, and many other addons and libraries
Project lead and Mac developer for the Curse Client

Anyone that needs what they want
And doesn't want what they need
I want nothing to do with
Kaelten is offline Report comment to moderator  
Reply With Quote
Old 01-05-06, 08:15 PM  
Myrathi
A Fallenroot Satyr
 
Myrathi's Avatar
AddOn Author - Click to view AddOns

Forum posts: 20
File comments: 30
Uploads: 1
Re: backward compatibility?

xxxxxxx.lua:nnn: attempt to index field `Hooks' (a function value)
The last release of the AddOn "OneBag" (by Turan) has an itentical error.

Starting to look like someone has a function in their version of Ace that isn't in the main codebase...?

From the way it's being accessed, in both of the erroneous scripts, it looks to be a table containing a list of an AddOn's hooked members and functions. Hopefully that helps the Ace folks track it down.
Myrathi is offline Report comment to moderator  
Reply With Quote
Old 01-05-06, 04:27 PM  
Yuckmouth
A Murloc Raider
AddOn Author - Click to view AddOns

Forum posts: 5
File comments: 2
Uploads: 18
Having the same problem as the poster below
Yuckmouth is offline Report comment to moderator  
Reply With Quote
Old 01-05-06, 04:15 PM  
Dridzt
A Pyroguard Emberseer
 
Dridzt's Avatar
AddOn Author - Click to view AddOns

Forum posts: 1176
File comments: 782
Uploads: 82
backward compatibility?

AceHook.lua:143: attempt to index field `Hooks' (a function value)

from AHFavorites with Ace 1.3.0 and WoW 1.9

Can't tell if other ace'd addons have similar problems with new Ace.
Dridzt is offline Report comment to moderator  
Reply With Quote
Old 09-20-05, 11:50 PM  
NMDante
A Murloc Raider

Forum posts: 7
File comments: 8
Uploads: 0
Lau error message

Not sure if this is ACE or something that uses ACE, but everytime I logon, and start the game, I get an error message about the Lau file being incorrect. I'm not 100% sure what the exact message is, I'll have to get a snapshot of it, but it only happens when I first log into the game.

Just curious if it was ACE or another addon doing it.

Great work, btw.

=)
NMDante is offline Report comment to moderator  
Reply With Quote
Old 09-10-05, 04:33 PM  
guice
A Cobalt Mageweaver

Forum posts: 236
File comments: 63
Uploads: 0
Ace

Can you fix Ace so that it stops extracting to Interface\AddOns\Ace? and make it just Simply .\Ace?
guice is offline Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: