Spirit Flame

The Spirit Flame is a Hardmode magic weapon. When used, a small purple flame will appear in a random location around the player and hover in midair. When an enemy comes within 25 tiles and has a clear line of sight to the flame, it will home in on that enemy. Upon impact with any enemy or block, it will cause a small explosion, dealing splash damage. The Spirit Flame can be used repeatedly to summon multiple flames. The flames dissipate if no target is acquired within three seconds of casting.
== Crafting ==
=== Recipes ===
== Notes ==
* Like all homing attacks, the flames will not home in on other players in multiplayer.
* The location of the spawned flames is generated randomly. If it is within solid blocks, the game will generate another location, but it will only retry for a maximum of 9 times. Therefore, it is possible that a flame will spawn inside solid blocks, where it will vanish immediately. The weapon still consumes mana in this case.
* The flames will keep focusing on an enemy once locked on, even if it moves out of range (e.g. if it is very fast). If they do not explode within five seconds after locking on, however, they will dissipate.
== Tips ==
* Despite this weapon's high damage, it can be acquired very early in Hardmode, even prior to defeating any mechanical bosses. All that is required is that the player is able to defeat two Sand Elementals for Forbidden Fragments and farm Desert Spirits for a single Desert Spirit Lamp.
** Note that Desert Spirits may only be found in the Underground Corrupt or Crimson Deserts, while Sand Elementals can only spawn during Hardmode Sandstorms.
* The cost to reforge this weapon is quite low, making it easy to acquire a great modifier.
== Trivia ==
* The purple flames and the explosions they make are very similar to the Desert Spirit's projectiles, which are what this weapon is based on.
* Despite being made with the Desert Spirit Lamp, it cannot be placed whatsoever. This is likely because the Spirit Flame is a weapon, unlike the former.
== History ==
== References ==