Aipom and Buizel are battling in a field when Aipom deflects Buizel's Sonic Boom into an old stone tower, knocking it down. Then the skies darken and a Pokémon emerges from the ruined tower: Spiritomb! Spiritomb flies off, causing havoc wherever it goes—first it wrecks Team Rocket's dinner, then it wrecks an entire village!
One of the villagers is an old lady who knows this damage is the work of Spiritomb. Long, long ago, Spiritomb caused trouble for the villagers until an Aura Guardian and his Pikachu sealed Spiritomb inside a Hallowed Tower made of stone. That sounds an awful lot like the tower our heroes accidentally knocked down! Ash and his friends promise to make things right, they're approached by Team Rocket, who are disguised as psychics. They pretend to help calm Spiritomb down, but then spring a net over Pikachu and Spiritomb.
Spiritomb blasts the net apart and chases down Team Rocket. But Meowth discovers that Spiritomb is really looking for revenge on the Aura Guardian who sealed it in the Tower. Meanwhile, our heroes need to stop Spiritomb, so they lure Team Rocket into a trap and Spiritomb is close behind. But when Team Rocket tells Spiritomb that Ash is a descendant of the Aura Guardian, it turns its wrath on Ash!
With Spiritomb in hot pursuit, Ash runs to the ruins of the Hallowed Tower, yet Spiritomb is too powerful to be sealed away. Pikachu is exhausted, but as clouds gather overhead, Ash gets an idea. Pikachu uses Thunderbolt on the skies, attracting a lightning bolt that fills it with energy. Then Pikachu defeats Spiritomb and the wayward spirit is sealed back into the Hallowed Tower, this time for good!
After having traded, Ash and Dawn decide to get used to their new Pokémon. After a few minutes of battling, Ash's Buizel uses Sonic Boom, which is deflected by Dawn's Aipom's Focus Punch and sent into a Hallowed Stone Tower. The tower immediately crumbles into bricks, which begin to glow on their own. The sky turns black and clouds roll in. In the rubble lies an Odd Keystone. Lightning strikes the Keystone and a Spiritomb emerges from it. Spiritomb proceeds to attack the group with Shadow Ball and Hyper Beam. Ash tries to counter with Buizel's Water Gun, but the attack goes straight through it. It responds with Shadow Ball, knocking Buizel out, before flying away. Soon after, it encounters Jessie, James and Meowth and attacks them with Hyper Beam and Dark Pulse. It flies away again, hitting Jessie's head with its Keystone in the process.
The next day, Ash and his friends arrive in at a nearby village to find it derelict. They hear stories about a strange Ghost-type Pokémon that attacked the village in the night and immediately connect this with Spiritomb. They meet an old woman who tells them the story of a Spiritomb that terrorized the village and how an Aura Guardian with a Pikachu defeated and sealed away Spiritomb in the Hallowed Stone Tower 500 years ago. The group only realizes that they have destroyed the same tower, and they take the old lady to it, who acts furious seeing it. Ash and friends apologize, promising to make things right. Team Rocket shows up, disguised as psychics. Jessie pretends to tell the secrets of the group’s past lives while James tells them that Meowth, disguised as a Sneasel, has the ability to communicate telepathically with other Pokémon. Next, the old woman's grandson appears, informing them of Spiritomb's return. They return to the village where Meowth uses "telepathy" to communicate with Spiritomb. Meowth returns and whispers into James's ear that Spiritomb wants something from Pikachu. Jessie takes Pikachu to Spiritomb and throws a net over them, revealing their identity. After reciting their motto, they take off in their balloon.
Spiritomb uses Ominous Wind, which destroys Team Rocket's balloon, making them crash to the ground. It lets itself free, to which Jessie sends out Seviper, but it is quickly knocked out by Spiritomb's Hyper Beam. Team Rocket flees with Spiritomb following them. As it catches up with them, it reveals to Meowth it wants revenge on the Aura Guardian for sealing it in the Keystone. Knowing the Guardian lived 500 years ago, they flee again with Spiritomb on their tracks.
As Ash and friends continue to search for Spiritomb, Dawn realizes that Spiritomb gave chase to Team Rocket and makes a plan in order to lure them. They place Pikachu alone, sleeping in a meadow and Team Rocket lands to capture it, falling into a pitfall trap in the process. Ash’s group proceeds to imitate Team Rocket's motto, but are interrupted by an angry Jessie. Spiritomb shows up again, and Team Rocket convinces Spiritomb that Ash is a descendant of the Aura Guardian. It turns its anger on Ash and attacks him with Hyper Beam. Ash dodges and agrees to battle it. Ash runs to the ruins of the Hallowed Tower with Spiritomb in close pursuit. It stops Ash and Pikachu in their tracks by using Dark Pulse. Pikachu replies with Quick Attack, but Spiritomb dodges. Then Pikachu uses Thunderbolt hitting Spiritomb which counters with Hyper Beam. They continue running, but Spiritomb stops them again. Pikachu continually uses Thunderbolt, getting more and more tired, while Spiritomb resists each attack and uses Shadow Ball but misses Pikachu and hits Team Rocket, blasting them off again. It initiates a Giga Impact, striking both Ash and Pikachu. Pikachu falls to the ground, exhausted, as dark clouds gather above again. Ash urges Pikachu to stand up and to send a Thunderbolt up towards the sky, and this recharges Pikachu's energy. Pikachu uses Volt Tackle then Thunderbolt, just like in the legend, defeating Spiritomb.
With Spiritomb defeated, the group seals its Keystone away in the Hallowed Tower once more. The old lady states that a new legend has been born thanks to Ash and Pikachu and, hearing Dawn’s stomach rumble, invites them for dinner before they continue on their journey.