Several new game features have been added. See
patch notes for specific discussions about these features. This is the AddOn API documentation about them.
Death Recap API:
There are now specific logs about what caused your character's untimely demise. Additionally, the system exposes hints about how to improve your character's chances of survival.
- Added global variables DeathRecapHintImportance
- DEATH_RECAP_HINT_IMPORTANCE_ALWAYS_INCLUDE
- DEATH_RECAP_HINT_IMPORTANCE_EXCLUSIVE
- DEATH_RECAP_HINT_IMPORTANCE_NORMAL
- ACTION_RESULT_KILLED_BY_SUBZONE (indicates that a player died due to environmental damage)
- GetNumKillingAttacks
- GetKillingAttackInfo
- DoesKillingAttackHaveAttacker
- GetKillingAttackerInfo
- GetNumDeathRecapHints
- GetDeathRecapHintInfo
- Changed GetDeathInfo return values
Raid/Trials API:
This includes a new game type with leaderboards and LFG tools.
- Changed some LFG and LFM functionality along with this new feature:[/color]
- Changed GetLFGOption
- Added GetLFGActivityMaxValue
- Added EVENT_INSTANCE_KICK_TIME_UPDATE to inform the player that there's a pending instance kick that's about to happen.
- Added new LFGActivity global: LFG_ACTIVITY_TRIAL
- Added new LFGGroupType global:
- LFG_GROUP_TYPE_LARGE
- LFG_GROUP_TYPE_MEDIUM
- LFG_GROUP_TYPE_REGULAR
- Added new NotificationType: NOTIFICATION_TYPE_LEADERBOARD
- Added new RaidLifeVisibilityChoice global (to choose which method used to visualize your remaining raid lives, changed by setting UISetting UI_SETTING_SHOW_RAID_LIVES):
- RAID_LIFE_VISIBILITY_CHOICE_AUTOMATIC
- RAID_LIFE_VISIBILITY_CHOICE_OFF
- RAID_LIFE_VISIBILITY_CHOICE_ON
- Changed some tutorial trigger globals for raid leaderboard functionality:
- Changed TUTORIAL_TRIGGER_CAMPAIGN_LEADERBOARDS_OPENED to TUTORIAL_TRIGGER_LEADERBOARDS_OPENED (as a more generic tutorial type for leaderboards)
- TUTORIAL_TRIGGER_RAID_TRIAL_COMPLETED
- TUTORIAL_TRIGGER_RAID_TRIAL_FAILED
- TUTORIAL_TRIGGER_RAID_TRIAL_STARTED
- Added global RAID_GROUP_SIZE_THRESHOLD.
- Added new ResurrectFailureReason:
- RESURRECT_FAILURE_REASON_NO_INSTANCE_REVIVE_COUNTERS to indicate that the raid has no more revive counters remaining and this attempt is on its last legs.
- Added new TimeFormatPrecisionCode globals to help display those raid times with better precision:
- TIME_FORMAT_PRECISION_MILLISECONDS
- TIME_FORMAT_PRECISION_MILLISECONDS_NO_HOURS_OR_DAYS
- Changed GetSoulGemInfo to return the ItemQuality of the queried gem in favor of having a separate API for GetReviveSoulGemInfo. That function was removed.
- Added IsUnitResurrectableByPlayer to query if the given unit is resurrectable by the local player
- Added IsUnitBeingResurrected to query if somebody is currently attempting to resurrect the given unit
- Added DoesUnitHaveResurrectPending to query if somebody has already resurrected the given unit and they're just taking their sweet time to get up.
- API function listing for this system:
- GetInstanceKickTime
- GetRaidReviveCounterInfo
- GetCurrentRaidTime
- GetCurrentRaidDeaths
- IsRaidInProgress
- HasRaidEnded
- WasRaidSuccessful
- IsPlayerInRaid
- IsPlayerInReviveCounterRaid
- IsPlayerInRaidStagingArea
- GetRaidName
- GetCurrentParticipatingRaidId
- QueryRaidLeaderboardData
- GetNumRaidLeaderboards
- GetRaidLeaderboardInfo
- GetRaidLeaderboardLocalPlayerInfo
- GetNumRaidLeaderboardEntries
- GetRaidLeaderboardEntryInfo
- GetRaidOfTheWeekTimes
- GetPlayerRaidParticipationInfo
- GetPlayerRaidProgressInfo
- GetNumRaidScoreNotifications
- GetRaidScoreNotificationId
- GetRaidScoreNotificationInfo
- GetNumRaidScoreNotificationMembers
- GetRaidScoreNotificationMemberInfo
- RemoveRaidScoreNotification
- EVENT_RAID_LEADERBOARD_DATA_CHANGED
- EVENT_RAID_LEADERBOARD_PLAYER_DATA_CHANGED
- EVENT_RAID_PARTICIPATION_UPDATE
- EVENT_RAID_REVIVE_COUNTER_UPDATE
- EVENT_RAID_SCORE_NOTIFICATION_ADDED
- EVENT_RAID_SCORE_NOTIFICATION_REMOVED
- EVENT_RAID_TIMER_STATE_UPDATE
- EVENT_RAID_TRIAL_COMPLETE
- EVENT_RAID_TRIAL_FAILED
- EVENT_RAID_TRIAL_NEW_BEST_TIME
- EVENT_RAID_TRIAL_STARTED
Changes to /stuck API:
To prevent abuse /stuck now charges the cost of fast-travel, has a cooldown, and takes a random amount of time to teleport.
- Added CURRENCY_CHANGE_REASON_STUCK to indicate that money was deducted from your character due to using /stuck
- IsStuckFixPending
- CanUseStuck
- GetTimeUntilStuckAvailable
- GetStuckCooldown
- EVENT_STUCK_BEGIN
- EVENT_STUCK_CANCELED
- EVENT_STUCK_COMPLETE
- EVENT_STUCK_ERROR_ALREADY_IN_PROGRESS
- EVENT_STUCK_ERROR_INVALID_LOCATION
- EVENT_STUCK_ERROR_IN_COMBAT
- EVENT_STUCK_ERROR_ON_COOLDOWN
New Campaign and Alliance War functionality:- Added function IsUnderpopBonusEnabled to see if the given campaign and alliance is currently receiving bonuses for not having as many players as the other sides.
- Added EVENT_CAMPAIGN_UNDERPOP_BONUS_CHANGE_NOTIFICATION to show which campaign is being given the under pop bonus
- Added CombatSetting COMBAT_SETTING_USE_BATTLE_LEVEL:
Allows the user to choose whether or not they would like to be battle-levelled in certain areas. Some areas force the user to be battle-levelled.
- Added function CanChangeBattleLevelPreference to query if the user is in an area that allows this setting to be changed.
Updated resolution modes:
Changed FullscreenMode to support:
- FULLSCREEN_MODE_FULLSCREEN_EXCLUSIVE - actual exclusive mode support
- FULLSCREEN_MODE_FULLSCREEN_WINDOWED - what was previously known as "maximized", this is a borderless, non-exclusive fullscreen mode.
- FULLSCREEN_MODE_WINDOWED - a window frame with a border
Changes to the mount/stable sytems:- Added new ItemType: ITEMTYPE_MOUNT
- Added events EVENT_MOUNT_ADDED_TO_STABLE and EVENT_STABLE_FULL
Changes to quest sharing system (there were some back-end changes):- Removed QuestShareResult.
- Removed EVENT_QUEST_SHARE_UPDATE
Removed MapDisplayPinType MAP_PIN_TYPE_PIN_GLOW, it was no longer used.
Removed deprecated functions:
- TargetUnit
- TargetUnitByName
- ClearTarget
- TargetNearestEnemy
ToggleChatLog now returns whether or not logging is enabled so that addons that switched this wouldn't need to guess what the current mode was.
Removed deprecated chat channel functions:
- AcceptChatInvite
- IsInCustomChatChannel
- IsCustomChatChannel
- JoinChatChannel
- LeaveChatChannel
Changes to the force-respec system:
- GetLatestAbilityRespecNote
- GetLatestAttributeRespecNote
- The events EVENT_SKILL_FORCE_RESPEC, and EVENT_ATTRIBUTE_FORCE_RESPEC now include notes about why the respec is being forced
Mundus stone interactions now send an event that the user can choose how to respond to to confirm or decline whether or not to accept the buff the stone applies:
- Added EVENT_CONFIRM_MUNDUS_STONE_INTERACT to inform the user when they need to confirm the application of a mundus stone buff
- Use SetPendingInteractionConfirmed(accept) to confirm whether or not to accept this buff
Addeda new center-screen announcement event type EVENT_DISPLAY_ANNOUNCEMENT which contains a potential title and description to display.
UI Object API Changes:- Removed TooltipControl deprecated API AppendYourCorpse
Miscellaneous Changes:- MIN_REQUIRED_LEVEL_TO_CREATE_GUILD - your character must be this level before being allowed to make a guild.
- MAP_PIN_TYPE_GROUP_LEADER
- FormatIntegerWithDigitGrouping(number, delimiterString)
To better support digit grouping with multibyte delimiter strings. For example in French, delimiterString is usually a non-breaking space sequence.
- weaponType GetItemWeaponType(itemLink)
- armorType GetItemArmorType(itemLink)
To help those inventory filter addons out a little so that they don't rely on texture paths or locale-specific data.
- EVENT_CAMPAIGN_ASSIGNMENT_RESULT (integer result) - where result is actually one of the globals from CAMPAIGN_REASSIGN_ERROR_*
- EVENT_RETICLE_TARGET_PLAYER_CHANGED - Updated to better inform users about when the reticle target changes to another player (instead of just any other unit)