Patch 2.4.2/API changes

As of the writing of this article (15:00, 14 May 2008 (UTC)), no information about API changes has been posted. This is a list of observed changes from scanning the in-game environment and examining FrameXML.

New APIs

 * AcceptLevelGrant
 * CombatLog_Object_IsA
 * DeclineLevelGrant
 * GetCoinText(amount, "separator")
 * GetQuestLogSpellLink
 * GetQuestSpellLink
 * strreplace

:SetText

 * SetText now has a text selector for plural forms: . The "|4 singular : plural ;" operator looks at the last seen number in the string and selects the appropriate form based on it, e.g. "I have 1 apple." / "I have 2 apples.".

Name resolution queue
Internally, the WoW client is usually fed a bunch of player GUIDs rather than names, which it then has to resolve and keep a cache of. The rate at which these queries are sent out is now artificially throttled to 128 queries every 30 seconds (queued).

This affects for instance AH "getall" scans (see API QueryAuctionItems and API GetAuctionItemInfo). Such a query followed by looping all records in the AH (15000+ for a medium pop server) results in the name resolver queue being tied up for 5-10 minutes. I.e. if you hearth to Shattrath immediately after doing such a scan, everyone you see (that you have not previously seen that session), will be named "Unknown" for the next 5-10 minutes.

I for one REALLY hope that Blizzard backs this change out pronto. -- Mikk (T) 03:58, 15 May 2008 (UTC)