FANDOM


IX

The Mistodon is an undead enemy in Final Fantasy IX. It is a creature born of the Mist first encountered in the Iifa Tree when the party tracks Kuja down there. During the Battle of Alexandria the city is overrun with the creatures. They can also be found in various Mist-covered locations throughout the world during endgame.

StatsEdit

#102

#162

Battle Edit

Their Mist attack can inflict Sleep and Shadow-elemental damage on the entire party. Since they are undead, a Life spell will instantly kill them, and a Phoenix Down will reduce their HP to one.

AI Script Edit

Function Mistodon_Init (Normal)


   set attacklist = [ Head Attack ; Head Attack ; Head Attack ; Fira ]

Function Mistodon_Loop (Normal)
   if ( !initflag )
      set initflag = 1
      if ( SV_EnemyTeam == SV_FunctionEnemy )
         set mistcounter = ( GetRandom % 3 ) + 2
      elseif ( !mistcounter )
         set mistcounter = ( GetRandom % 6 ) + 2
      set SV_FunctionEnemy[STOP_ANIM] = 2
      set SV_FunctionEnemy[PLAY_ANIM] = 3
      set SV_FunctionEnemy[MODEL_SIZE] = 6144
   if ( SV_FunctionEnemy[HP] == 0 )
      if ( ( SV_EnemyTeam[MODEL] ==$ SV_FunctionEnemy[MODEL] ) == SV_FunctionEnemy )
         set SV_FunctionEnemy[STOP_ANIM] = 2
         set SV_FunctionEnemy[PLAY_ANIM_ONCE] = 0
   Wait( 1 )
   loop

Function Mistodon_ATB (Normal)
   if ( mistcounter )
      set mistcounter--
   if ( mistcounter == 1 )
      set SV_Target = SV_PlayerTeam
      Attack( Mist )
   set selectedattack = RandomAttack( attacklist )
   if ( selectedattack == Head Attack )
      set SV_Target = RandomInTeam(SV_PlayerTeam)
   elseif ( selectedattack == Head Attack )
      set SV_Target = RandomInTeam(SV_PlayerTeam)
   elseif ( selectedattack == Head Attack )
      set SV_Target = RandomInTeam(SV_PlayerTeam)
   elseif ( selectedattack == Fira )
      set SV_Target = RandomInTeam(SV_PlayerTeam)


   Attack( selectedattack )


Using general variable Battle_MistodonTrance (Alexandria raid)

Using general variable VAR_GenUInt8_199 (Alexandria raid)
Using global variable steiner (Alexandria raid) Using global variable beatrix (Alexandria raid)
Function Mistodon_Init (Alexandria raid)
   set attacklist = [ Head Attack ; Head Attack ; Head Attack ; Fira ; Fira ; Mist ; Mist ; Head Attack ]

Function Mistodon_Loop (Alexandria raid)
   if ( !initflag )
      set initflag = 1
      set SV_FunctionEnemy[STOP_ANIM] = 2
      set SV_FunctionEnemy[PLAY_ANIM] = 3
      set SV_FunctionEnemy[MODEL_SIZE] = 6144
      if ( Battle_MistodonTrance )
         set SV_FunctionEnemy[ATB] = FirstOf(SV_FunctionEnemy[MAX_ATB])
      if ( ( #SV_PlayerTeam == 2 ) && #( SV_PlayerTeam & ( SV_PlayerTeam[MODEL_TYPE] ==$ 18 ) ) && !( VAR_GenUInt8_199 & 64 ) )
         set SV_FunctionEnemy[STRENGTH] /= 2
         set SV_FunctionEnemy[MAGIC] /= 2
         set isalexandriabattle = 1
         set VAR_GenUInt8_199 |= 64
      if ( Battle_MistodonTrance )
         set steiner = ( SV_PlayerTeam[MODEL_TYPE] == 7 )
         set steiner |= ( SV_PlayerTeam[MODEL_TYPE] == 8 )
         set beatrix = ( SV_PlayerTeam[MODEL_TYPE] == 18 )
         if ( #( NotMatching(SV_PlayerTeam[STATUS_CURRENT], PETRIFY | VENOM | DEATH | STOP) & beatrix ) )
            set beatrix[ATB] = 0
         if ( #( NotMatching(SV_PlayerTeam[STATUS_CURRENT], PETRIFY | VENOM | DEATH | STOP) & steiner ) )
            set steiner[ATB] = 0
   if ( SV_FunctionEnemy[HP] == 0 )
      if ( ( SV_EnemyTeam[MODEL] ==$ SV_FunctionEnemy[MODEL] ) == SV_FunctionEnemy )
         set SV_FunctionEnemy[STOP_ANIM] = 2
         set SV_FunctionEnemy[PLAY_ANIM_ONCE] = 0
   Wait( 1 )
   loop

Function Mistodon_ATB (Alexandria raid)
   if ( Battle_MistodonTrance )
      set Battle_MistodonTrance = FALSE
      if ( #( NotMatching(SV_PlayerTeam[STATUS_CURRENT_A], 4419) & steiner ) )
         set SV_Target = steiner
         Attack( Transfer )
   if ( ( #SV_PlayerTeam == 2 ) && #( SV_PlayerTeam & ( SV_PlayerTeam[MODEL_TYPE] ==$ 18 ) ) )
      set highaccmisttarget = 0
      set lowaccmisttarget = SV_PlayerTeam
   else
      set highaccmisttarget = SV_PlayerTeam
      set lowaccmisttarget = 0
   set selectedattack = RandomAttack( attacklist )
   if ( selectedattack == Head Attack )
      set SV_Target = RandomInTeam(SV_PlayerTeam)
   elseif ( selectedattack == Head Attack )
      set SV_Target = RandomInTeam(SV_PlayerTeam)
   elseif ( selectedattack == Head Attack )
      set SV_Target = RandomInTeam(SV_PlayerTeam)
   elseif ( selectedattack == Fira )
      set SV_Target = RandomInTeam(SV_PlayerTeam)
   elseif ( selectedattack == Fira )
      set SV_Target = RandomInTeam(SV_PlayerTeam)
   elseif ( selectedattack == Mist )
      set SV_Target = highaccmisttarget
   elseif ( selectedattack == Mist )
      set SV_Target = lowaccmisttarget
   elseif ( selectedattack == Head Attack )
      set SV_Target = RandomInTeam( NotMatching(SV_PlayerTeam[STATUS_CURRENT], PETRIFY | DEATH | JUMP) & Matching(SV_PlayerTeam[STATUS_CURRENT], SLEEP) )


   Attack( selectedattack )

Other appearancesEdit

Pictlogica Final FantasyEdit

PFF

PFF Mistodon
Baknamy FFTA2This article or section is a stub about an enemy in Pictlogica Final Fantasy. You can help the Final Fantasy Wiki by expanding it.


Final Fantasy Airborne Brigade Edit

FFAB

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.

Final Fantasy Record Keeper Edit

FFRK

FFRK Mistodon FFIX
Baknamy FFTA2This article or section is a stub about an enemy in Final Fantasy Record Keeper. You can help the Final Fantasy Wiki by expanding it.


Gallery Edit

Etymology Edit

Mist is a phenomenon caused by small droplets of water suspended in air.

The original Japanese name for Mistodon, Kiri no Majuu, literally translates to "mist demon". The English name may stem from "mastodon", an extinct relative of mammoths. The Greek word odont means "tooth".