LibFail-1.0

A library with reusable code to detect failure at certain raid tasks. At last count there are 107 different "fails" that are tracked (updated for ToC/Icecrown courtesy of Maat/sztanpet/MysticalOS). Please note, this list is not always up-to-date.

The Icecrown Citadel list includes:

  • Fail_Rotface_OozeExplosion
  • Fail_Rotface_StickyOoze
  • Fail_Marrowgar_Whirlwind
  • Fail_Marrowgar_Coldflame
  • Fail_Marrowgar_SaberLash
  • Fail_Festergut_VileGas
  • Fail_Festergut_PungentBlight
  • Fail_Deathwhisper_DeathNDecay
  • Fail_Sindragosa_TailSmash
  • Fail_Sindragosa_FrostBreath
  • Fail_Sindragosa_BlisteringCold
  • Fail_Sindragosa_Cleave
  • Fail_Sindragosa_UnchainedMagic
  • Fail_Sindragosa_FrostBomb
  • Fail_Sindragosa_IceTomb
  • Fail_Professor_MutatedSlime
  • Fail_LanaThel_UncontrollableFrenzy
  • Fail_LanaThel_BloodboltSplash
  • Fail_BloodPrinces_SystemicShockVortex
  • Fail_LanaThel_DeliriousSlash
  • Fail_Gunship_Explosion
  • Fail_Gunship_Explosion_Knockback

The Onyxia's Lair list includes:

  • Fail_Onyxia_DeepBreath
  • Fail_Onyxia_FlameBreath
  • Fail_Onyxia_TailSweep
  • Fail_Onyxia_WarderCleave
  • Fail_Onyxia_WarderNova
  • Fail_Onyxia_Cleave

The Trial of The Crusader list includes:

  • Fail_Acidmaw_AcidicSpew
  • Fail_Acidmaw_ParalyticToxin
  • Fail_Acidmaw_SlimePool
  • Fail_Anubarak_Impale
  • Fail_Dreadscale_MoltenSpew
  • Fail_FactionChampions_Hellfire
  • Fail_Gorehowl_FireBomb
  • Fail_Icehowl_Trample
  • Fail_Jaraxxus_FelInferno
  • Fail_Jaraxxus_LegionFlame
  • Fail_Valkyr_Orb
  • Fail_Valkyr_Vortex
  • Fail_FactionChampions_Bladestorm

The Ulduar list includes:

  • Fail_Algalon_BigBang
  • Fail_Algalon_CosmicSmash
  • Fail_Auriaya_SonicScreech
  • Fail_Auriaya_Voidzone
  • Fail_Council_Overload
  • Fail_Council_RuneOfDeath
  • Fail_Deconstructor_Light
  • Fail_Deconstructor_Gravity
  • Fail_Deconstructor_Voidzone
  • Fail_Freya_NatureBomb
  • Fail_Freya_Sunbeam
  • Fail_Freya_UnstableEnergy
  • Fail_Hodir_BitingCold
  • Fail_Hodir_FlashFreeze
  • Fail_Hodir_Icicle
  • Fail_Kologarn_Eyebeam
  • Fail_Mimiron_BombBots
  • Fail_Mimiron_Flames
  • Fail_Mimiron_FrostBomb
  • Fail_Mimiron_LaserBarrage
  • Fail_Mimiron_NapalmShell
  • Fail_Mimiron_ProximityMine
  • Fail_Mimiron_Rocket
  • Fail_Mimiron_Shock
  • Fail_Mimiron_Siren
  • Fail_Mimiron_WaterSpray
  • Fail_Racorscale_Flame
  • Fail_Thorim_Blizzard
  • Fail_Thorim_LightningChain
  • Fail_Thorim_LightningCharge
  • Fail_Thorim_Smash
  • Fail_Vezax_Leech
  • Fail_Vezax_Saronite
  • Fail_Vezax_ShadowCrash
  • Fail_Yogg_DeathRay
  • Fail_Yogg_LunaticGaze
  • Fail_Yogg_OminousCloud
  • Fail_Yogg_Sanity

The Vault of Archavon list includes:

  • Fail_Koralon_MeteorFist
  • Fail_Archavon_ChokingCloud
  • Fail_Emalon_LightningNova
  • Fail_Emalon_ChainLightning
  • Fail_Koralon_FlameCinder

The Obsidian Sanctum list includes:

  • Sartherion's Lava Waves
  • Sartherion's Void Zones
  • Sartherion's Flame Breath
  • Sartherion's Tail Lash

The Eye of Eternity list includes:

  • Fail_Malygos_Dot
  • Fail_Malygos_ArcaneBreath

The Naxxramas list includes:

  • Heigan Dance
  • Kel'Thuzad's Void Zones
  • Sapphiron's Breath
  • Sapphiron's Cleave
  • Sapphiron's Tail Sweep
  • Frogger
  • Thaddius Left/Right
  • Thaddius Jump
  • Grobbulus - Dispelling Mutating Injection
  • Grobbulus - Standing in the poison cloud
  • Four Horseman - Mark
  • Four Horseman - Void Zone

Rewrite of FailBot logic to perform these detections.

This is an open repository. Feel free to add to it, and make fixes yourself.

API: http://www.wowace.com/projects/libfail-1-0/pages/api/lib-fail-1-0/

Sample Code

local fail = LibStub("LibFail-1.0")
local fail_events = fail:GetSupportedEvents()

local function onFail(event, who, failtype)
   -- Use the spellid as a default localized string for the fail event
   local spell = GetSpellInfo(fail:GetEventSpellId(event)) or ""

   -- Use the "failtype" argument to print appropriate messages based on it.
   local failmsg
   if failtype == fail.FAIL_TYPE_NOTMOVING then
       failmsg = "%s fails at moving (%s)"
   end

   print( failmsg:format(who, spell) )
end
for _, event in ipairs(fail_events) do
	fail.RegisterCallback("SampleAddon", event, onFail)
end

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of kagaro kagaro Jan 13, 2009 at 19:57 UTC - 0 likes

    you should add lava waves from sarth as well.

Should We Put Default Localization Strings In This Project

  1. Choice:

  1. Results
  2. 0 comments

Facts

Date created
Dec 19, 2008
Categories
Last update
Mar 12, 2013
Development stage
Mature
License
MIT License
Curse link
LibFail-1.0
Reverse relationships
2
Downloads
31,755
Recent files
  • A: r261 for 5.0.5 Mar 12, 2013
  • A: r260 for 5.0.4 Aug 29, 2012
  • R: 1.0.259 for 4.2 Jun 28, 2011
  • A: r258 for 4.2 Jun 28, 2011
  • R: 1.0.257 for 4.0.6 Apr 26, 2011

Authors

Relationships

Embedded library
CallbackHandler-1.0
LibStub