FANDOM


The Zaghnol is an enemy from Final Fantasy IX. Two versions of the enemy are fought, the first as the boss of the Festival of the Hunt, and the second as a random encounter in Lindblum and on Pinnacle Rocks, as well as the Donna Plains on the Outer Continent.

It can use Electrocute to charge itself up. Once electrocuted, it counters all attacks with Thundara that hits all party members.

StatsEdit

#35

#80

Formations Edit

Enemies Frequency AP
????
Can't escape. Defeat does not result in Game Over. Characters do not pose on victory. No rewards given.
Zaghnol (#035) 100% 3
????
None
Zaghnol (#080) 100% 2
????
None
Zaghnol (#080) 100% 3

AI Script Edit

Festival of the Hunt Edit

Using global variable zidane
Using global variable freya
Using general variable Hunt_ZidaneFailZaghnol
Using general variable Hunt_FreyaFailZaghnol
Using general variable Hunt_ZidaneFinishZaghnol

Function Zaghnol_Init
   set attacklist = [ Heave ; Thunder ; Electrocute ; Thunder ]


Function Zaghnol_Loop
   if ( !initflag )
      set initflag = TRUE
      set lasthp = SV_FunctionEnemy[HP]
      set zidane = ( SV_PlayerTeam[MODEL_TYPE] == 0 )
      set zidane |= ( SV_PlayerTeam[MODEL_TYPE] == 1 )
      set freya = ( SV_PlayerTeam[MODEL_TYPE] == 12 )
   if ( #( NotMatching(SV_PlayerTeam[STATUS_CURRENT], PETRIFY | VENOM | DEATH | STOP) & zidane ) )
      set Hunt_ZidaneFailZaghnol = FALSE
   else
      set Hunt_ZidaneFailZaghnol = TRUE
   if ( #( NotMatching(SV_PlayerTeam[STATUS_CURRENT], PETRIFY | VENOM | DEATH | STOP) & freya ) )
      set Hunt_FreyaFailZaghnol = FALSE
   else
      set Hunt_FreyaFailZaghnol = TRUE
   if ( SV_FunctionEnemy[HP] <= 10000 )
      set SV_FunctionEnemy[HP] = 0
   Wait( 1 )
   loop


Function Zaghnol_ATB
   if ( electrocuteflag )
      set thundertarget = RandomInTeam(SV_PlayerTeam)
      set electrocutetarget = 0
      set multithundertarget = SV_PlayerTeam
   else
      set thundertarget = 0
      set electrocutetarget = SV_FunctionEnemy
      set multithundertarget = 0
   set selectedattack = RandomAttack( attacklist )
   if ( selectedattack == Heave )
      set SV_Target = RandomInTeam(SV_PlayerTeam)
   elseif ( selectedattack == Thunder )
         set SV_Target = thundertarget
   elseif ( selectedattack == Electrocute )
         set SV_Target = electrocutetarget
   elseif ( selectedattack == Thunder )
         set SV_Target = multithundertarget
   Attack( selectedattack )


Function Zaghnol_CounterEx
   if (GetAttackId == Electrocute )
      set SV_FunctionEnemy[ELEMENT_HALF] &= ~THUNDER
      set SV_FunctionEnemy[ELEMENT_ABSORB] |= THUNDER
      set electrocuteflag = 1
      return
   set healhp = 0
   set hp = SV_FunctionEnemy[HP]
   if ( lasthp > hp )
      set healhp = ( lasthp - hp )
   set lasthp = hp
   if ( healcounter > 10 )
      return
   if ( SV_FunctionEnemy[HP] > 10000 )
      return
   if ( GetAttacker == zidane )
      set Hunt_ZidaneFinishZaghnol = TRUE
      return
   set Hunt_ZidaneFinishZaghnol = FALSE
   if ( !( #( SV_PlayerTeam & zidane ) ) )
      return
   if ( #Matching(zidane[STATUS_CURRENT], PETRIFY | VENOM | DEATH | STOP) )
      return
   if ( !healhp )
      return
   set SV_FunctionEnemy[HP] += healhp
   set lasthp = SV_FunctionEnemy[HP]
   if ( healcounter < 255 )
      set healcounter++

Random Encounter Edit

Function Zaghnol_Init
   set attacklist = [ Heave ; Thundara ; Electrocute ]
   set hplimitmultithundara = SV_FunctionEnemy[HP] / 4


Function Zaghnol_ATB
   if ( electrocuteflag )
      set thundaratarget = RandomInTeam(SV_PlayerTeam)
      set electrocutetarget = 0
   else
      set thundaratarget = 0
      set electrocutetarget = ( SV_Target = SV_FunctionEnemy )
   set selectedattack = RandomAttack( attacklist )
   if ( selectedattack == Heave )
      set SV_Target = RandomInTeam(SV_PlayerTeam)
   elseif ( selectedattack == Thundara )
      set SV_Target = thundaratarget
   elseif ( selectedattack == Electrocute )
      set SV_Target = electrocutetarget
   Attack( selectedattack )


Function Zaghnol_Counter
   if ( ( GetAttackCommandId == Skill ) && ( GetAttackId == What's That?! ) )
      return
   if ( !multithundaraflag && electrocuteflag && ( SV_FunctionEnemy[HP] < hplimitmultithundara ) )
      set multithundaraflag = TRUE
      if ( SV_FunctionEnemy[MP] >= 12 )
         set SV_Target = SV_PlayerTeam
         Attack( Thundara )


Function Zaghnol_CounterEx
   if ( GetAttackId == Electrocute )
      set SV_FunctionEnemy[ELEMENT_HALF] &= ~THUNDER
      set SV_FunctionEnemy[ELEMENT_ABSORB] |= THUNDER
      set electrocuteflag = TRUE

Other appearances Edit

Final Fantasy Airborne Brigade Edit

Zaghnol Brigade
Baknamy FFTA2This article or section is a stub about an enemy in Final Fantasy Airborne Brigade. You can help the Final Fantasy Wiki by expanding it.

Tetra Master Edit

Tetra Master
Card005
#005
Location: Treno

Gallery Edit

Etymology Edit

The Zaghnal is an Indian war hammer or axe.