Thought I'd chip in, I'm kandarz, author of EveryQuest.
Just committed a 3.3 compatible version that includes QueryQuestsCompleted() importing.
I've tested it pretty well but let me know of bugs on the ticket manager.
Importing 2300 quests took about 30 seconds on a decent computer (2ghz, 4gb). When you import, you'll most likely get a red notice in your chat log about not having some quests in the db. These are special things even WowHead doesn't display (they're there but you have to use the quest id in the url).
I just uploaded my rewrite of BEQL for ace3 which I did months ago before I quit, as far as I know it has no bugs. But some features are missing or removed on purpose. Achievement tracker repositioning never got finished but had planned on adding it. A lot of customization options were removed to make it simpler. Also there is no compatibility code for other addons (I wrote this addon for myself and I didn't use any of the incompatible addons so I didn't add it) http://www.wowace.com/projects/keql/
(Please be warned, I will not be updating keql, I'm only posting the code for the Ace3 version for others to build upon and fix)
Just use one Variable. IF you need something per char, just use the db.char table..
And put your DB decleration for AceDB-3 in the addon's OnInit() function.
Everything I save is per-character since it's quest history, only applies to 1 character. So if I use db.char that will only load that character's data? Since the db.char.history table gets very large once people start doing quests. Upwards of 50 additional tables, inside those a table for every quest the player has seen.
Plus what Xinhuan was saying is that AceDB-3.0 doesn't read AceDB-2.0 variables. So that I'd need to create a new AceDB-3.0 variable and read the original EveryQuestDB afterward not using AceDB-3.0
You're in trouble. AceDB-3.0 does not read AceDB-2.0 data. You should preferably use a different savedvariable in your addon for your 3.0 version of the addon, but also load the 2.0 savedvariable data (its just a table), and write a custom function to import the data from your old 2.0 SV (you'll have to figure out how to read the data (the SV data also does not save values that are equal to the defaults) to the 3.0 SV. Once conversion is successful, you can then nil out or empty the old Savedvariable. Your ## SavedVariables field in the TOC can certainly specify more than one variable.
So for me to read the Ace2 version's data, I have to change
## SavedVariables: EveryQuestDB
## SavedVariablesPerCharacter: EveryQuestDBPC
to
## SavedVariables: EveryQuestDB, EQ2DB
## SavedVariablesPerCharacter: EveryQuestDBPC, EQ2DBPC
Setup AceDB-3.0 to use EQ2DB and EQ2DBPC, then read EveryQuestDB and EveryQuestDBPC after VARIABLES_LOADED event has fired, then migrate it all to the AceDB-3.0?
function mod:OnModuleEnable()
Prat.RegisterChatEvent(self,"Prat_PreAddMessage")
end
function mod:OnModuleDisable()
Prat.UnregisterAllChatEvents(self)
end
function mod:Prat_PreAddMessage(event, ...)
-- event == "Prat_PreAddMessage" btw
end
So the name of the register function depends on the library you are using?
I've just begun the process to update my addon from Ace2 to Ace3 and I haven't been reading the forums, or looking at addon source for quite some time so I'm a bit out of the loop when it comes to all the changes.
Currently my addon (EveryQuest) works okay with Ace2, but it is quite ugly in terms of the source. I never really got good at Lua and would just trial and error everything until something worked. I'd rather not have to start completly over with an Ace3 version to trial and error everything.
Here's my situation:
My addon uses Quixote-1.0, there's a new LibStub version, LibQuixote-2.0 that uses CallbackHandler. Currently all the documentation for CallbackHandler is how to use it in a library not how to use the library in an addon that uses it.
In the start of my code, I have:
EveryQuest = LibStub("AceAddon-3.0"):NewAddon("EveryQuest", "AceConsole-3.0", "AceEvent-3.0")
local Quixote = LibStub("LibQuixote-2.0")
local L = LibStub("AceLocale-3.0"):GetLocale("EveryQuest")
The first of the arguments is the name of the callback that is being made available by Quixote, and the second is the name of the function to be called. Am I correct so far? Also, please explain the actual function that is being called, is it EveryQuest:Quest_Gained()? or just Quest_Gained(), would it be the first if I Mixin Quixote?
The second problem I have is I use DewdropLib for my zone selection menu. Though I saw somewhere that there's an AceConfig for dropdown menus. Could someone explain how I would go about creating a standalone dropdown menu? This menu is tied to a [FONT=Courier New]UIDropDownMenuTemplate[/FONT] frame. I also use Dewdrop for rightclicking a quest in the list to change it's status.
The third question is about profiles. By default in Ace2, it created profiles and you could access the current profile using [FONT=Courier New]self.db.profile[/FONT] and [FONT=Courier New]self.db.char[/FONT]. My addon absolutely needs to be able to access the old Ace2 DB files. EveryQuest stores the quest history per-character and the rest of the settings account wide.
In relation to profiles, when setting up the DB in Ace2 I setup defaults, 1 set of defaults for per-character, and another for profiles. How does this work in Ace3. I found an example that shows it like this: (The WelcomeHome Ace3 version)
I know you said it was feature complete, but I was wondering if it might be possible to add in druid mana bar. I'm trying to do it, but I surely couldn't do it as fast as someone with experience with Ace3's new config, the module system and bars relative height.
This look very nice. Any chance of being able to import the QuestHistory database format? I've been using QH for more then a year but it doesn't have much support these days and the interface is a bit clunky. It would be sad to loose all the accumulated information though. I guess that could help you speed up the data gathering for the quests from level 1 to 60.
Best
Do you have a link to this addon? Or perhaps upload your lua file so I could look at it
EveryQuest provides a list of quests in each zone available to your faction. In addition it keeps track of all the quests that have come and gone in your quest log even if they aren't in one of the zone lists. Currently the zone lists only provide quests for Outland and Outland dungones/raids though the quest history will still log any quest you've seen in game.
0
Yes, just copy your character specific file back to your live installation.
0
Just committed a 3.3 compatible version that includes QueryQuestsCompleted() importing.
I've tested it pretty well but let me know of bugs on the ticket manager.
Importing 2300 quests took about 30 seconds on a decent computer (2ghz, 4gb). When you import, you'll most likely get a red notice in your chat log about not having some quests in the db. These are special things even WowHead doesn't display (they're there but you have to use the quest id in the url).
0
http://www.wowace.com/projects/keql/
(Please be warned, I will not be updating keql, I'm only posting the code for the Ace3 version for others to build upon and fix)
0
This is a problem with Quixote, a library beql uses.
0
0
0
Everything I save is per-character since it's quest history, only applies to 1 character. So if I use db.char that will only load that character's data? Since the db.char.history table gets very large once people start doing quests. Upwards of 50 additional tables, inside those a table for every quest the player has seen.
Plus what Xinhuan was saying is that AceDB-3.0 doesn't read AceDB-2.0 variables. So that I'd need to create a new AceDB-3.0 variable and read the original EveryQuestDB afterward not using AceDB-3.0
0
So for me to read the Ace2 version's data, I have to change
## SavedVariables: EveryQuestDB
## SavedVariablesPerCharacter: EveryQuestDBPC
to
## SavedVariables: EveryQuestDB, EQ2DB
## SavedVariablesPerCharacter: EveryQuestDBPC, EQ2DBPC
Setup AceDB-3.0 to use EQ2DB and EQ2DBPC, then read EveryQuestDB and EveryQuestDBPC after VARIABLES_LOADED event has fired, then migrate it all to the AceDB-3.0?
0
So the name of the register function depends on the library you are using?
0
I've just begun the process to update my addon from Ace2 to Ace3 and I haven't been reading the forums, or looking at addon source for quite some time so I'm a bit out of the loop when it comes to all the changes.
Currently my addon (EveryQuest) works okay with Ace2, but it is quite ugly in terms of the source. I never really got good at Lua and would just trial and error everything until something worked. I'd rather not have to start completly over with an Ace3 version to trial and error everything.
Here's my situation:
My addon uses Quixote-1.0, there's a new LibStub version, LibQuixote-2.0 that uses CallbackHandler. Currently all the documentation for CallbackHandler is how to use it in a library not how to use the library in an addon that uses it.
In the start of my code, I have: I've seen something along the lines of The first of the arguments is the name of the callback that is being made available by Quixote, and the second is the name of the function to be called. Am I correct so far? Also, please explain the actual function that is being called, is it EveryQuest:Quest_Gained()? or just Quest_Gained(), would it be the first if I Mixin Quixote?
The second problem I have is I use DewdropLib for my zone selection menu. Though I saw somewhere that there's an AceConfig for dropdown menus. Could someone explain how I would go about creating a standalone dropdown menu? This menu is tied to a [FONT=Courier New]UIDropDownMenuTemplate[/FONT] frame. I also use Dewdrop for rightclicking a quest in the list to change it's status.
The third question is about profiles. By default in Ace2, it created profiles and you could access the current profile using [FONT=Courier New]self.db.profile[/FONT] and [FONT=Courier New]self.db.char[/FONT]. My addon absolutely needs to be able to access the old Ace2 DB files. EveryQuest stores the quest history per-character and the rest of the settings account wide.
In relation to profiles, when setting up the DB in Ace2 I setup defaults, 1 set of defaults for per-character, and another for profiles. How does this work in Ace3. I found an example that shows it like this: (The WelcomeHome Ace3 version) But in the WelcomeHome page, it doesn't actually show the table called defaults.
Thank you,
kandarz
0
0
Can you get me the name of the window? and the exact name of the addon that is loaded?
0
Do you have a link to this addon? Or perhaps upload your lua file so I could look at it
0
http://www.wowace.com/wiki/EveryQuest
post bugs/requests here or on the talk page.
0