Change log

   Updates some quest/NPC information, primarily with the Isle of Thunder.
   Adds the basics for the quests added in the 5.3.0 PTR release 16758.
   Events in combat are forced to be delayed, but the user can still override.
   Changes the internal design of the NPCs to save about 0.6 MB of space.

   Updates some quest/NPC information.
   Speeds up the CodesWithPrefix() routine provided by rowaasr13.  This reduces the chance of running into an issue when teleporting into combat.
   Adds F code prerequisites which indicate a faction requirement.  Demonstrate this with two Work Order: quests, but will be used primarily for "phased" NPC prerequisites, whose architecture is starting to be implemented.
   Updates some Traditional Chinese localizations.

   Updates to Isle of Thunder King/Isle of Giants quests from 5.2 PTR.
   Updates some Traditional Chinese localizations.
   Updates some quest/NPC information.
   Updates the technique where a quest is invalidated to properly include not being able to fulfill all prerequisites that include groups.
   Puts quests whose start location does not map directly to a specific zone into their own "Other" map area.
   Augments the API that returns NPC locations to include created and mailbox flags.

   Removes the Grail-Zones.lua file since the names are now gotten from the runtime.
   Puts in support for "/grail events" allowing control over processing of some Blizzard events received while in combat until after combat.
   Updates some quest/NPC information for Operation: Shieldwall.
   Removes the Grail.xml and rewrites the startup to account for its lack.
   Adds very basic quest information for 5.2 PTR quests from 2013-01-02.
   Removes the quests on Yojamba Isle since there are no NPCs there.
   Updates some Netherstorm quests for Aldor/Scryers information.
   Updates some quest localizations for Simplified Chinese.

   Corrects the prerequisites for the Chi-Ji champion dailies.
   Updates the Shado-Pan dailies' NPCs.
   Updates some quest/NPC information for Jade Forest, Kun-Lai Summit, Durotar and the dailies available in 5.1.
   Updates the TOC to support interface 50100.

   Corrects an initialization problem that would cause a Lua error if dailyQuests were not gotten before evaluated.

   Adds support for quests having prerequisites of having ever experienced a buff.
   Changes the internal representation of NPC information to separate the NPC names to make the data more "normal".
   Augments the way the reputationLevelMapping table provides information so it can provide specific numeric values over the minimum reputation.
   Adds the ability to have quests grouped so able to invalidate groups based on daily counts, or make prerequisites of a number of quests from a group.
   Updates some quest/NPC information for Tillers, Golden Lotus, Order of the Cloud Serpent, Shado-Pan, August Celestials, Anglers and Klaxxi dailies.
   Adds very basic quest information for 5.1 PTR quests from 2012-10-25.
   Adds the ability to invalidate a quest by accepting a quest from a quest group.
   Adds the ability for quests to have a prerequisite of a maximum reputation.
   Adds code that abandons processing the server completed quests if the return results do not represent the total number of quests completed as compared to the locally stored count.

   Updates some quest/NPC information for Howling Fjord, Jade Forest, Krasarang Wilds, Townlong Steppes, Valley of the Four Winds, Kun-Lai Summit and Vale of Eternal Blossoms.
   Removes the raceMapping, raceNameFemaleMapping, raceNameMapping and raceToBitMapping tables.
   Changes the format for reputation change logging.
   Adds reputationLevelMapping table that Wholly was using because it will be changed as more information is known, and there should be no need for Wholly to need to change.

   Updates some quest/NPC information for Vale of Eternal Blossoms, Kun-Lai Summit, Borean Tundra, Dread Wastes and Valley of the Four Winds.
   Adds support for prerequisites to be able to have OR requirements within an AND requirement, instead of just outside them.
   Adds support for CanAcceptQuest() to not allow bugged quests to be acceptable.
   Replaces the raceMapping, raceNameFemaleMapping, raceNameMapping and raceToBitMapping tables with races.  These older ones will be removed in version 40.

   Adds some Italian localization and quest localization updates for release 16030.
   Updates some quest/NPC information for Jade Forest, Northern Stranglethorn, Vale of Eternal Blossoms and Echo Isles.
   Adds ability for a quest to have prerequisites of a general skill, used by battle pets for example.
   Refines meeting prerequisites when part of the requirements includes possessing an item.

   Updates some quest/NPC information for Twilight Highlands, Deepholm, Uldum, Sholazar Basin and Mount Hyjal.
   Adds DisplayableQuestPrerequisites() so flag quests can be bypassed, showing their requirements instead.
   Adds some Italian localization.
   Adds support for account-wide quests.

   Fixes the problem where accepting and abandoning a quest with a breadcrumb was not setting the breadcrumb status properly.
   Fixes the problem where quests could be considered to fail prerequisites if the only prerequisites were quests requiring presence in the quest log.
   Updates some quest/NPC information for MoP beta, including Night Elf and Draenei starter zones.
   Updates quest information to allow marking quests Scenario and Legendary.
   Removes Grail.bitMaskQuestNonLevel as the internal data structures have changed, no longer requiring this.
   Adds HasQuestEverBeenAccepted() to be able to handle O type prerequisites.
   Removes Grail.reputationBlizzardMapping since it is no longer needed because of the use of Blizzard faction IDs.

   Updates Midsummer Fire Festival localization for Korean, Spanish and German.
   Updates more NPC/quest localizations.
   Updates the quest recording subsystem to generate basic K codes.
   Changes the reputation system to no longer use indirection, but Blizzard faction IDs.
   Updates the quest recording subsystem to record faction rewards on quest acceptance, and turns off recording faction rewards when quests are turned in.
   Corrects the problem where quests that start automatically when entering a zone can appear improperly in the current zone (based on the current zone name).
   Changes the technique by which the server is queried for completed quests since API has been changed for MoP.
   Updates some quest/NPC information for Valley of the Four Winds and Krasarang Wilds.
   Makes it so B codes are automatically generated from the quests with O codes, so the vast majority of B codes need not be present in the data file.
   Adds the ability to create profession prerequisite codes (vice the normally supported profession requirements).

   Updates some quest/NPC information for Wandering Isle.
   Creates new Grail.reputationExpansionMapping table to replace the original four tables which are deprecated and will be removed in version 035.
   Updates Midsummer Fire Festival quest/NPC data, primarily the Portuguese localization.

   Updates some quest/NPC information for Blasted Lands, Eastern Plaguelands, Tirisfal Glades, Undercity, Winterspring, Zul'Aman and professions.
   Adds some Spanish translation from Trisquite.
   Changes the implementation of _ReputationExceeds() to use GetFactionInfoByID() instead of GetFactionInfo() since it seems there are times when the latter does not return proper values at startup.

   Adds some German translation from polzi.
   Augments CanAcceptQuest() to include a parameter to ignore holiday requirements.
   Updates some quest/NPC information for some dungeons, Oracles/Frenzyheart, Worgen starting areas, Tol Barad and others.
   Changes the comparisons to completed quests to be more mathematically robust.
   Corrects a problem where cleaning the database can cause a LUA error.

   Corrects the internal checking of reputation gains to not include modifications when the reputation is lost.
   Adds the verifynpcs slash command option.
   Updates some localizations, primarily Portuguese and Korean.
   Updates some quest/NPC information for Dun Morogh, Loch Modan, Wetlands, Vash'jir and Kelp'thar Forest.
   Corrects the problem where quests with breadcrumbs were being marked as not complete after a reload.
   Adds processing to startup to ensure Grail attempts to get the server quest status automatically.
   Corrects AncestorStatusCode() to ignore non-quest prerequisites.
   Adds the ability to have quests have items or lack of items as prerequisites.
   Adds support for ODC: quest codes, which are used to mark other quests complete when a quest is turned in.
   Adds the ability to have quests use the abandoned state of quests as prerequisites.

   Corrects a problem that manifests itself when running the ElvUI addon.

   *** Will not work with Wholly 16 or older ***
   Splits out two load on demand addons to handle achievements and reputation gains.
   Updates some quest/NPC information for the Lost Isles, Feralas and some dungeons.
   Updates some localizations, primarily Portuguese, Korean and Simplified Chinese.
   Corrects the problem where some daily quests that also have another aspect (e.g., PVP or dungeon) were not being shown as daily quests.
   Updates the automatic quest level verification system to ensure quests that are considered to have a dynamic level actually do.
   Adds basic structural support for the Italian localization.
   Consolidates the internal use of prerequisite quest types into a unified technique, causing all QuestPrerequisite* API to be REMOVED other than QuestPrerequisites.
   Fixes the problem where quests with AZ codes were not being added to the proper zone.
   Fixes the problem where the status of quests that require other quests being in the quest log was not being displayed properly.
   Adds the Kalu'ak Fishing Derby holiday.
   Updates some quest/NPC information for the fishing contests.

   *** Will not work with Wholly 15 or older ***
   Corrects the mapAreaMaximumReputationChange constant.
   Revamps the location providing routines so only the new QuestLocations() and NPCLocations() are needed, REMOVING the older ones.
   Updates some quest/NPC information for Un'Goro Crater, Silithus, Burning Steppes, Kezan, The Lost Isles, Northern Barrens, Ashenvale, some dungeons and Winterspring.
   Fixes detection of European servers to remove non-existent quests.
   Updates some Portuguese localizations.
   Makes _CleanDatabase() a little more intense with its cleaning.
   Makes the system than checks for reputation gains a little more accurate.
   Records actual quest completion for those quests that Blizzard marks complete with others in the server, so clients can know really which quest was done.
   Implements a way to know when Blizzard uses internal marking mechanics (which differ from flag quests) to specify when quests are available.
   Adds an architecture to support information about quests that are bugged.

   Updates some quest/NPC information for Feralas, Northern Barrens, Thousand Needles, Tanaris, Zul'Drak, Sholazar Basin, Storm Peaks, some dungeons and Uldum.
   Updates some quest/NPC information for the Lunar Festival.
   Updates some Portuguese localizations.

   Updates some quest/NPC information for Desolace, Azuremyst Isle, The Exodar, Azshara, Hillsbrad Foothills and Feralas.
   Cleans up some Blizzard event handling, and moved some event handling Wholly was doing into here because it is the right place for them.
   Updates some Portuguese localizations.
   Fixes a problem where a LUA error was being thrown when invalidating part of the status cache when evaluating a quest status.
   Adds support for world events achievements.

   Updates some quest/NPC information for Southern Barrens, Durotar, Northern Barrens, Desolace and Dustwallow Marsh.
   Adds a Christmas Week holiday that handles the quests in Winter Veil that only start appearing on Christmas Day.
   Adds a feature to record NPC names that do not match those in the database.
   Updates some Portuguese localizations.
   Updates some other localizations, for Winter Veil.

   Updates some quest/NPC information for Azshara, Ashenvale, Stonetalon Mountains, Southern Barrens, Dalaran, Shattrath City and some dungeons.
   Updates some Portuguese localizations.
   Updates the CleanDatabase() routine to do more cleaning.
   Makes it so slash commands are not forced to lower case.
   Changes the way StatusCode() works to not mark a quest complete if it does not meet race, class, gender and/or faction requirements.  This is to work around Blizzard behavior where the server marks quests complete that could not possibly be done by a player.
   Changes the way StatusCode() works to not mark level problems or invalidation problems with quests that are marked complete.
   Fixes a problem where CleanDatabase() could attempt to access data that does not exist.
   Fixes an infinite loop that is sometimes encountered using Blizzard's GetFactionInfo(), found by ArcaneTourist.
   Corrects the detection of the Mr Popularity guild perks.
   Updates some quest/NPC information for Darkmoon Faire, Azshara, Elwynn Forest, class-specific ones and the Bwemba's Spirit line.
   Adds the missing reputation names to the non-English clients (whose lack was causing addons that use reputation to fail).
   Updates a lot of Portuguese data.
   Fixes a problem where unknown quests were not being recorded correctly, causing a LUA error.
   Fixes a problem where event handlers were not installed properly because Blizzard events cannot arrive in a guaranteed order.
   Fixes a problem where AZ codes were not being processed properly, thereby resulting in quests with those codes to appear in the current map area instead of their proper one.
   Fixes a problem where the new Darkmoon Faire quests would not be available on Darkmoon Island unless the UI was reloaded.
   Updates some quest/NPC information for Mugore, Thunder Bluff, Silverpine Forest, Durotar, Bloodmyst Isle and Azshara.
   Updates quest/NPC information for Pilgrim's Bounty.
   Corrected the Gnomeregan reputation name to not include Exiles.
   Started recording found defects in a new format.
   Created a system to record when reputation changes do not match what the internal database has.
   Added the achievement information where quests are associated with specific achievements.
   Updated the TOC to support Interface 40300.
   Updates some quest/NPC information for Feralas, Northern Stranglethorn, Un'Goro Crater, Stormwind City, Ghostlands, Silvermoon City and Cape of Stranglethorn.
   Updates quest/NPC information for Hallow's End and Day of the Dead.
   Created caching structure for accessing some quest information to help reduce runtime footprint and increase speed.
   Added support for OCC:, PLT: and PCT: quest codes.
   Made QuestsInMap() able to return only quests that qualify for Loremaster.
   Removed a number of debug slash commands and the functions that were supporting them.
   Added the CreateRaceNameLocalizedGenderized() routine so race names can be displayed nicely.
   Removed AncestorStatus(), QuestsWithCode() and Status() and some support routines.
   Updates some quest/NPC information for Durotar, Desolace, Southern Barrens, Ironforge, Stonetalon Mountains, Eversong Woods, Eastern Plaguelands, Badlands, Zul'Drak and Ashenvale.
   Added more support for StatusCode() to support some more bit values plus values from prerequisites.
   When using StatusCode() quest status values are cached to avoid recomputing values.  The cached values are invalidated as appropriate based on environment and the values of the status.
   Made IsLowLevel() never consider quests whose level is 0 as low-level since those quests' levels change to match the player level.
   Removed the Ahn'Qiraj War Effort from the list of world events.
   Marked Status() as deprecated API which will be removed in the future.
   Changed the method by which abandoned quests have their notifications posted so the variable abandonedQuestId no longer exists.
   Added support for LoremasterMapArea() API which provides the map area of the Loremaster achievement for which the quest qualifies.  Also added Grail.loremasterQuests[mapAreaId] tables which list the quests that are used for each Loremaster achievement.


Uploaded on
Apr 10, 2013
Game version
  • 5.2.0
2.4 MiB