Following the (very) major update 6, there have been a lot of changes to the game's API.
Here is a list of the main changes made with Update 6.
Constants in XML
Numeric attributes in XML can now be populated using LUA.TEXTURE_SIZE = 100
ApplyTemplateToControl
Templates can now be applied to existing controls using the ApplyTemplateToControl function.ApplyTemplateToControl(textureControl1, “TextureTemplate1”)
Override
A new attribute has been added to the XML GUI called override.
GUI Canvas
The minimum interface is now 1920x1080SetShouldRenderWorld
Added a new function that allows to disable world rendering.New Systems
Collectibles, Justice, and the Champion System have been added and their APIs are now available and functional.Collection
Functions
- GetNumCollectibleCategories
- GetCollectibleCategoryInfo
- GetCollectibleSubCategoryInfo
- GetUnlockedCollectiblesCount
- GetTotalCollectiblesCount
- GetCollectibleId
- GetCollectibleInfo
- GetCategoryInfoFromCollectibleId
- GetTotalCollectiblesByCategoryType
- GetCollectibleIdFromType
- IsCollectibleCategorySlottable
- IsCollectibleSlottable
- IsCollectibleRenameable
- UseCollectible
- GetCollectibleLink
- StartCollectibleSearch
- GetCollectiblesSearchResults
- IsValidCollectibleName
- RenameCollectible
- GetCollectibleNickname
- GetCollectibleCurrentActionBarSlot
- PickupCollectible
- SelectSlotCollectible
- GetStoreCollectibleInfo
Enumerations
- COLLECTIBLE_CATEGORY_TYPE
- COLLECTIBLE_ITEM_TYPE
- COLLECTIBLE_UNLOCK_STATE
Events
- EVENT_COLLECTIBLES_SEARCH_RESULTS_READY
- EVENT_COLLECTIBLE_RENAME_ERROR
- EVENT_COLLECTION_UPDATED
Justice
Functions
- IsUnitJusticeGuard
- IsUnitInvulnerableGuard
- GetItemLaunderPrice
- IsItemLinkStolen
- AreAnyItemsStolen
- LaunderItem
- GetLootItemInfo – Added isStolen return.
- IsJusticeEnabledForZone
- IsJusticeEnabled
- IsKillOnSight
- GetInfamy
- GetBounty
- GetPlayerInfamyData
- GetBountyPayoffAmount
- GetInfamyLevel
- GetInfamyMeterSize
- GetFenceSellTransactionInfo
- GetFenceLaunderTransactionInfo
- GetCollectibleCategoryKeyboardIcons
- GetCollectibleCategoryGamepadIcon
- GetCollectibleCategoryTypeFromLink
- GetCollectibleIdFromLink
Enumerations
- INFAMY_THRESHOLD
- JUSTICE_SKILL
- PICKPOCKET_DIFFICULTY
- ITEM_LAUNDER_RESULT
Events
- EVENT_JUSTICE_BOUNTY_PAYOFF_AMOUNT_UPDATED
- EVENT_JUSTICE_FENCE_UPDATE
- EVENT_JUSTICE_GOLD_PICKPOCKETED
- EVENT_JUSTICE_GOLD_REMOVED
- EVENT_JUSTICE_INFAMY_UPDATED
- EVENT_JUSTICE_ITEM_PICKPOCKETED
- EVENT_JUSTICE_NOW_KOS
- EVENT_JUSTICE_NO_LONGER_KOS
- EVENT_JUSTICE_PICKPOCKET_FAILED
- EVENT_JUSTICE_STOLEN_ITEMS_REMOVED
Champion
Functions
- GetPlayerChampionXP
- GetPlayerChampionPointsEarned
- GetEnlightenedMultiplier
- GetEnlightenedPool
- IsEnlightenedAvailableForAccount
- IsEnlightenedAvailableForCharacter
- GetChampionXPInRank
- GetNumChampionDisciplines
- GetChampionDisciplineName
- GetChampionDisciplineDescription
- GetChampionDisciplineAttribute
- GetNumChampionDisciplineSkills
- GetChampionSkillPosition
- GetChampionSkillName
- GetMaxPossiblePointsInChampionSkill
- GetNumPointsSpentOnChampionSkill
- GetNumPointsSpentInChampionDiscipline
- GetChampionSkillUnlockLevel
- GetNumUnspentChampionPoints
- ClearPendingChampionPoints
- AddPendingChampionPoints
- SpendPendingChampionPoints
- SetChampionMusicActive
- GetChampionAbilityDescription
- GetChampionAbilityId
- GetChampionRespecCost
- GetChampionPointAttributeForRank
- IsChampionSystemUnlocked
Enumerations
- CHAMPION_PURCHASE
Events
- EVENT_CHAMPION_POINT_GAINED
- EVENT_CHAMPION_PURCHASE_RESULT
- EVENT_CHAMPION_SYSTEM_UNLOCKED
- EVENT_UNSPENT_CHAMPION_POINTS_CHANGED
Mounts
The mounts API has been completely reworked to match the new system. It now revolves around collected mounts, skins and shared mount skills. It also has a global impact on stable manager Lua.Functions
- Added
- HasMountSkin
- GetMountSkinId
- GetRidingStats
- GetMaxRidingTraining
- GetTimeUntilCanBeTrained
- GetTrainingCost
- TrainRiding
- Removed
- GetMaxMountLevel
- GetNumStableSlots
- GetMaxStableSlots
- BuyStableSlot
- GetNextStableSlotCost
- CanBuyStableSlotUpgrade
- IsStableSlotEmpty
- SetActiveMount
- SellMount
- GetStableSlotInfo
- GetStableSlotMountStats
- GetTimeUntilMountCanBeFed
- GetNumMountFeedOptions
- [GetMountFeedOptionInfo
- FeedMount
- IsValidMountName
- RenameMount – Handled by collectible renaming.
- GetStoreMountInfo
Enumerations
- Removed
- STORE_ENTRY_TYPE_MOUNT
Events
- Added
- EVENT_ACTIVE_MOUNT_CHANGED
- EVENT_MOUNT_INFO_UPDATED
- Removed
- EVENT_MOUNTS_FULL_UPDATE
- EVENT_MOUNT_ADDED_TO_STABLE
- EVENT_MOUNT_UPDATE
- EVENT_STABLE_FULL
Globals
- Removed
- ACTIVE_MOUNT_INDEX
Raid Scoring
Functions- Added
- GetCurrentRaidScore
- Removed
- GetCurrentRaidTime
- Changed
- GetRaidLeaderboardLocalPlayerInfo – returns best score instead of best time.
Enumerations
- Added
- RAID_POINT_REASON
Events
- Added
- EVENT_RAID_TRIAL_NEW_BEST_SCORE
- EVENT_RAID_TRIAL_SCORE_UPDATE
- Removed
- EVENT_RAID_TRIAL_NEW_BEST_TIME
- Changed
- EVENT_RAID_TRIAL_COMPLETE, EVENT_RAID_TRIAL_FAILED – Now report best score and total time. Removed penalty time.
Completed Quest API
A new API has been added in order to add information about quests that players have completed.Functions
- Added
- GetNextCompletedQuestId
- GetCompletedQuestInfo
- GetCompletedQuestLocationInfo
Edit Control
Support has been added for scrolling edit box control.Functions
- Added
- GetScrollExtents
- GetTopLineIndex
- SetTopLineIndex
Miscellaneous Functions
Added- GetAPIVersion
- GetCriticalStrikeChance
- GetAbilityEffectDescription
- CanInteractWithItem
- IsItemLinkStackable
- GetItemLinkStacks
- GetMapNameByIndex
- GetZoneDescription
- IsInAvAZone
- IsAchievementComplete
- IsUnitReincarnating
- IsUnitDeadOrReincarnating
- GetQuestToolTooltipInfo
- GetQuestItemTooltipInfo
- GetQuestLootItemTooltipInfo
- GetAchievementCategoryKeyboardIcons
- GetAchievementCategoryGamepadIcon
Changed
- GetLootMoney – Changed for Justice. Now return un-owned money, owned money instead of total money.
- GetAchievementCategoryInfo – No longer returns icons. Use GetAchievementCategoryKeyboardIcons.
It goes without saying that these numerous modifications will impact the majority of existing add-ons. Do not forget to check if they have undergone an update, in particular thanks to the add-on manager Minion.
You can find all the modifications as well as the explanations on them and their operation by downloading official documentation.