I dunno, if something like this has been solved, so excuse me.
Ran into a small bug with Improved Vampires in Windspear hills lvl2; One ancient vampire shifts into mists ('fades into mist' written in white, so it's not a DisplayString action) and stays like that for infinite time, making it relatively unkillable. Also, it tries to attack you causing an assertion error (presumably, the mist doesn't have an attack animation or something like that) While in gaseous form, it still summons wolves and rats. Upon searching through its scripting I found only one relative script.
IF
!GlobalTimerNotExpired("mistjump","LOCALS")
!GlobalTimerNotExpired("castspell","LOCALS")
Global("takesmistform","LOCALS",1)
Global("mistform","LOCALS",0)
OR(3)
CheckStatGT(Myself,0,CLERIC_HALLOW)
CheckStat(LastSeenBy(Myself),0,WIZARD_PROTECTION_FROM_NORMAL_WEAPONS)
GlobalTimerNotExpired("seedefences","LOCALS")
OR(3)
CheckStat(Myself,0,CLERIC_HALLOW)
!CheckStat(LastSeenBy(Myself),4,WIZARD_PROTECTION_FROM_MAGIC_WEAPONS)
GlobalTimerNotExpired("seedefences","LOCALS")
OR(3)
CheckStatGT(Myself,2,CLERIC_HALLOW)
!CheckStat(LastSeenBy(Myself),1,WIZARD_PROTECTION_FROM_MAGIC_WEAPONS)
GlobalTimerNotExpired("seedefences","LOCALS")
OR(3)
CheckStatGT(Myself,3,CLERIC_HALLOW)
!CheckStat(LastSeenBy(Myself),2,WIZARD_PROTECTION_FROM_MAGIC_WEAPONS)
GlobalTimerNotExpired("seedefences","LOCALS")
OR(3)
CheckStatGT(Myself,4,CLERIC_HALLOW)
!CheckStat(LastSeenBy(Myself),3,WIZARD_PROTECTION_FROM_MAGIC_WEAPONS)
GlobalTimerNotExpired("seedefences","LOCALS")
!HasItem("MORSWORD",LastSeenBy(Myself)) // Magical Sword
Allegiance(Myself,ENEMY)
!Allegiance(LastSeenBy(Myself),ENEMY)
!HasItem("blun12",LastSeenBy(Myself)) // Mace of Disruption +1
!HasItem("blun25",LastSeenBy(Myself)) // Mace of Disruption +2
!HasItem("ax1h10",LastSeenBy(Myself)) // Azuredge
!Range(LastSeenBy(Myself),10)
OR(3)
!See(LastTargetedBy(Myself))
!Range(LastTargetedBy(Myself),8)
!StateCheck(LastTargetedBy(Myself),STATE_HELPLESS)
See(LastSeenBy(Myself))
THEN
RESPONSE #100
SetGlobalTimer("mistjump","LOCALS",THREE_ROUNDS)
SetGlobalTimer("castspell","LOCALS",7)
SetGlobal("mistform","LOCALS",1)
ApplySpellRES("dw#vmgas",Myself) // Shapeshifts Gaseous Form
RESPONSE #100
Continue()
END
Dw#vmgas polymorphs it for 3600000 seconds, but why it gives it the usual (when vampires die and try to escape) gas resistances? Eventually, I killed it with Ctrl+Y (it was not immune to magic damage, bizarrely)