Thread Tools Display Modes
12/05/14, 03:13 AM   #1
Carter_DC
 
Carter_DC's Avatar
AddOn Author - Click to view addons
Join Date: Aug 2014
Posts: 18
Flying Creatures are immune to snares

hi guys ! just wanted to know if you got any idea as how to get rid of THE ONLY ESO BUILT IN COMBAT TEXT.
The one in the top right corner, that display if creatures are immune to anything and that takes up la lot of space when you're spamming the same attack on the same boss for minutes...

could really use some help with figuring this out.
  Reply With Quote
12/05/14, 04:14 AM   #2
Ayantir
 
Ayantir's Avatar
AddOn Author - Click to view addons
Join Date: Jul 2014
Posts: 1,019
Messages are based on the ID of the sound sent to the UI, maybe :

Lua Code:
  1. SOUNDS.ABILITY_TARGET_IMMUNE = SOUNDS.NONE

Server will send SOUNDS.ABILITY_TARGET_IMMUNE code, but because in UI the value isn't the same, it won't be displayed..
PS : It will also won't play the sound

If you want sound and not message, perhaps :

Lua Code:
  1. function ZO_RecentMessages:ShouldDisplayMessage(message)
  2.     self:Update(GetFrameTimeMilliseconds())
  3.  
  4.     if(message == SOUNDS.ABILITY_NOT_ENOUGH_STAMINA or message == SOUNDS.ABILITY_NOT_ENOUGH_MAGICKA or
  5.         message == SOUNDS.ABILITY_NOT_ENOUGH_ULTIMATE or message == SOUNDS.ITEM_ON_COOLDOWN or
  6.         message == SOUNDS.ABILITY_WEAPON_SWAP_FAIL or message == SOUNDS.ABILITY_NOT_READY or
  7.         message == SOUNDS.ABILITY_TARGET_OUT_OF_LOS or message == SOUNDS.ABILITY_TARGET_OUT_OF_RANGE or
  8.         message == SOUNDS.ABILITY_CASTER_SILENCED or -- message == SOUNDS.ABILITY_TARGET_IMMUNE or
  9.         message == SOUNDS.ABILITY_CASTER_STUNNED or message == SOUNDS.ABILITY_CASTER_BUSY or
  10.         message == SOUNDS.ABILITY_TARGET_BAD_TARGET or message == SOUNDS.ABILITY_TARGET_DEAD or
  11.         message == SOUNDS.ABILITY_CASTER_DEAD or message == SOUNDS.ABILITY_NOT_ENOUGH_HEALTH or
  12.         message == SOUNDS.ABILITY_FAILED or message == SOUNDS.ABILITY_FAILED_IN_COMBAT or
  13.         message == SOUNDS.ABILITY_FAILED_REQUIREMENTS or message == SOUNDS.ABILITY_CASTER_FEARED or
  14.         message == SOUNDS.ABILITY_CASTER_DISORIENTED or message == SOUNDS.ABILITY_TARGET_TOO_CLOSE or
  15.         message == SOUNDS.ABILITY_WRONG_WEAPON or message == SOUNDS.ABILITY_TARGET_NOT_PVP_FLAGGED or
  16.         message == SOUNDS.ABILITY_CASTER_PACIFIED or message == SOUNDS.ABILITY_CASTER_LEVITATED) then
  17.         return true
  18.     end
  19.    
  20.     if message == SOUNDS.ABILITY_TARGET_IMMUNE then
  21.         return false
  22.     end
  23.  
  24.     if(self:IsRecent(message)) then
  25.         return false
  26.     end
  27.  
  28.     self:AddRecent(message)
  29.     return true
  30. end

But it's a dirty one! Untested, not at home, let's try?
  Reply With Quote
12/05/14, 04:57 AM   #3
Carter_DC
 
Carter_DC's Avatar
AddOn Author - Click to view addons
Join Date: Aug 2014
Posts: 18
should have said in the beginning that i'm a freaking noob.
where do i intercept the "message" from ?
  Reply With Quote
12/05/14, 06:36 AM   #4
Carter_DC
 
Carter_DC's Avatar
AddOn Author - Click to view addons
Join Date: Aug 2014
Posts: 18
ok, i just found the library where this one is...
but i still dunno what you mean with that. can we override a zo function with an addon ?
  Reply With Quote
12/05/14, 07:14 AM   #5
Ayantir
 
Ayantir's Avatar
AddOn Author - Click to view addons
Join Date: Jul 2014
Posts: 1,019
yes, we can override everything that's not private (and local).
the exemple above override an existing function.
  Reply With Quote
12/05/14, 07:38 AM   #6
Carter_DC
 
Carter_DC's Avatar
AddOn Author - Click to view addons
Join Date: Aug 2014
Posts: 18
good to know, thx a lot !
  Reply With Quote
12/05/14, 09:33 AM   #7
Garkin
 
Garkin's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 832
I think that better way would be hooking or redefining alert handler for event EVENT_ABILITY_REQUIREMENTS_FAIL:

Lua Code:
  1. local alertHandlers = ZO_AlertText_GetHandlers()
  2.  
  3. local function functionHook(errorStringId)
  4.     local disableMessage = (errorStringId == 162) or (errorStringId == 177)
  5.     return disableMessage
  6. end
  7.  
  8. ZO_PreHook(alertHandlers, EVENT_ABILITY_REQUIREMENTS_FAIL, functionHook)

Code above will disable messages "Flying creatures are immune to snares." and "This target is too powerful for that effect.".

List of all possible errorStringId values:
Code:
[1] = "You do not meet the requirements."
[2] = "You aren't in the right level range."
[3] = "This is for a different race."
[4] = "This is for a different class."
[5] = "This is for a different alliance."
[6] = "You don't have an item you need for this."
[7] = "You lack something you need for this."
[8] = "You aren't on that quest."
[9] = "You've already completed this task."
[10] = "Requires target off-balance."
[11] = "Requires non-vulnerable target"
[16] = "Off balance target"
[17] = "Can't be chambered"
[18] = "Rear positioning"
[19] = "Crit Shot"
[20] = "Target has heal over time effect"
[21] = "Enemy casting"
[22] = "Pet sacrifice"
[23] = "Requires Equipped Shield."
[24] = "2H weapon"
[25] = "Enemy performing melee attack"
[26] = "Stealth"
[27] = "Out of range."
[28] = "The gem fizzles, lacking static electricity in the air."
[29] = "The lightning crackles across the Serpent's flesh."
[30] = "Target has no magic effects to remove"
[31] = "You can't jump that high!"
[32] = "No new item added"
[33] = "No opening to exploit!"
[34] = "Target is not currently casting!"
[35] = "FAILED"
[36] = "Stun failed, target not off balance."
[37] = "Target is not stunned"
[38] = "You cannot use that here."
[39] = "TEMP: Your reputation is too low"
[40] = "Parried"
[41] = "Your action had no effect."
[42] = "Insufficient reputation rank"
[43] = "You are too far away to use that item."
[44] = "You cannot open that lock."
[45] = "You are not close enough to the shrine to make an offering."
[46] = "That is not a valid target."
[47] = "At least 1 stack of entropy."
[49] = "Hallucinating Target"
[50] = "You need a key to open that."
[51] = "That is not the proper target for this item."
[52] = "Only Bretons may purchase this mount."
[53] = "Only Redguards may purchase this mount."
[54] = "Only Orcs may purchase this mount."
[55] = "Requires: Associate (Fighters Guild)"
[56] = "Requires: Apprentice (Fighters Guild)"
[57] = "Requires: Pickpocket (Thieves Guild)"
[58] = "Requires: Footpad (Thieves Guild)"
[59] = "Requires: Student (Mages Guild)"
[60] = "Requires: Apprentice (Mages Guild)"
[61] = "Requires 2H Weapon"
[62] = "Must have at least 1 rebirth charge."
[63] = "Requires 1H Weapon"
[64] = "You must be ready to become a journeyman."
[65] = "Need to be a Novice."
[66] = "Only apprentices may purchase this item."
[67] = "Must be on Study Forester quest."
[68] = "Must have lost the first jack that Wickton gave you."
[69] = "Must be on Study Smith quest."
[70] = "Must be on Study Runecrafting quest."
[71] = "You must be an apprentice and not on your journeyman test."
[72] = "Need to have lost the first recipe that you where given."
[73] = "Cannot be used while in Cyrodiil"
[74] = "You must be a novice to purchase this item."
[75] = "You must attack this object."
[76] = "You must be ready to become an Expert."
[77] = "You must be ready to become an Adept."
[78] = "You can't do that now."
[80] = "Wounded Target"
[81] = "Target is not wounded"
[82] = "Must follow a Mobility maneuver."
[83] = "Critical Strike"
[84] = "Enemy not targeting caster"
[85] = "Recently blocked."
[86] = "Must use movement ability first."
[87] = "Target stunned, rooted, or disoriented"
[88] = "Must be on Expert Forester Quest."
[89] = "Must be on Forester Adept Quest."
[90] = "Poisoned Target."
[91] = "You already have the Boon this stone imparts."
[92] = "Insufficient Rebirth"
[93] = "Target must have HoT effect"
[94] = "Your target is not dead or you are in combat."
[95] = "Only Nords may purchase this mount."
[96] = "Only Dunmer may purchase this mount."
[97] = "Only Argonians may purchase this mount."
[98] = "Surge"
[99] = "Target is burning, chilled, or shocked"
[100] = "Requires: Target is burning, chilled, or shocked"
[101] = "Target has negative magic effect."
[102] = "Target is not sufficiently wounded"
[103] = "Requires more ultimate."
[104] = "This spider has already been scavenged."
[105] = "You cannot use that while affected by Soul Shriven"
[106] = "You can't do that while in combat."
[107] = "Cannot repair a door with a Wall kit."
[108] = "Invalid target for that repair kit."
[109] = "Must be in combat to activate."
[110] = "That cannot be repaired because it's not a door."
[111] = "The Door is already being braced."
[112] = "You are not at the right location."
[113] = "You already have this blessing."
[114] = "Target must be dead."
[115] = "You cannot open this door from this side."
[116] = "Target must be subdued."
[117] = "You must be behind your target."
[118] = "Target either wrong type or too far away"
[119] = "You must be near a giant bonfire."
[120] = "This quest is not available yet."
[121] = "Target must be more injured."
[122] = "You cannot crouch while carrying an Elder Scroll."
[123] = "Sacrifice Raen or Sariel."
[124] = "Use Rune Key on Binding Stones"
[125] = "Creature already summoned."
[128] = "Your group isn't eligible to enter."
[129] = "You are already wearing that."
[130] = "Requires 10 stacks of evolving armor."
[131] = "This door requires a key to open."
[133] = "You must be hit more times to activate ability."
[134] = "Target is too high or too low."
[136] = "You must pick up spear to throw it again."
[137] = "You cannot use that door right now."
[138] = "You are already wearing a disguise."
[139] = "You must pass the challenge of speed to buy this."
[141] = "You must pass the challenge of death to buy this."
[142] = "No flowers are revealed."
[145] = "Sneaking would raise suspicion."
[146] = "Disguise not usable here."
[147] = "This door is opened elsewhere."
[148] = "You Found Nothing"
[149] = "Must Face Target"
[150] = "More stamina."
[151] = "Speak to the Guard"
[152] = "The tunnel has collapsed."
[153] = "Target is already considering a resurrect"
[154] = "Cannot Swap Weapons Now"
[155] = "Cannot Swap While Charging"
[156] = "You cannot use that without a Thunderbug following you."
[157] = "Must be in Werewolf form."
[158] = "That cannot be repaired becuase it is in Combat!"
[160] = "High health target."
[161] = "Cannot Deploy mercenaries while in combat."
[162] = "Flying creatures are immune to snares."
[163] = "Cannot repair at full health."
[164] = "Must use Wall kits on Keep Walls."
[165] = "The Door is Barred from the Other Side"
[166] = "You cannot recall to Wayshrines while in Cyrodiil."
[167] = "Cannot repair a door that has recently taken damage."
[168] = "Cannot repair a Wall that has recently taken damage."
[169] = "The door is firmly sealed from the other side."
[170] = "You already know how to craft in this style."
[172] = "test test"
[173] = "Can't mount while bracing."
[174] = "Can't mount while crouching."
[175] = "Your inventory is full."
[176] = "This target is immune to bleeding effects."
[177] = "This target is too powerful for that effect."
[178] = "That target's soul cannot be trapped"
[179] = "You cannot mount while engaged in combat."
[180] = "You cannot mount while blocking."
[181] = "You cannot mount while carrying an Elder Scroll."
[182] = "Wait for your group members to make a choice."
[183] = "Can't mount while invisible."
[184] = "You may not recall during combat"
[186] = "You already have one of those."
[188] = "You can not fish while in Werewolf form."
[189] = "You cannot use this while swimming."
[190] = "Requires Rahni'Za Supply Box Key"
[191] = "This item is already part of your collection."
[192] = "You must be near a Shrine of Mara."
[193] = "Already Known or -\nNeed Metalworking 6, Tailoring 6, or Woodworking 6, or greater."
[194] = "Already Known or -\nNeed Metalworking 7, Tailoring 7, or Woodworking 7, or greater."
[195] = "Already Known or - \nNeed Metalworking 8, Tailoring 8, or Woodworking 8, or greater."
[196] = "Already Known or - \nNeed Metalworking 9, Tailoring 9, or Woodworking 9, or greater."
[197] = "You cannot do that while moving."
[198] = "The Ice Barrier is unaffected."
[199] = "You are not a member of Aldmeri."
[200] = "You are not a member of Ebonheart."
[201] = "You are not a member of Daggerfall."
[202] = "You cannot do that in werewolf form"
[203] = "You cannot do that while carrying an Elder Scroll."
[204] = "You must be in Balamath to use this."
[205] = "You may no longer enter this Trial."
[207] = "Style Already Known."
[208] = "Need Passive Crafting Skill Metalworking, Tailoring, or Woodworking at Rank 9."
[209] = "You are not currently an Emperor."
[210] = "This door cannot be used unless your alliance controls Imperial City access."
[211] = "Scouting Reports cannot be used on objectives we own."
[212] = "Your Alliance must own this District to access this area."
[214] = "You must be Alliance Rank 6 or higher.",
  Reply With Quote

ESOUI » AddOns » AddOn Help/Support » Flying Creatures are immune to snares

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off