Fresh out of the contest, our heroes are exploring the bustling city of Slateport. Ash and Max want to check out the Sea Museum but discover that it is not only closed, but sort of being guarded by a boy named Marius and his Spheal. After a failed attempt at attacking Ash's Pikachu, the boy recalls his Spheal. Captain Stern, the curator of the museum, appears and offers Ash, Max, and Marius a tour of the museum. Team Rocket is, of course, observing all this and devising a way to steal Pikachu.
Captain Stern then shows them his latest discovery, a volcanic rock from the bottom of the ocean. He tells them about how it was believed in some cultures that a giant Pokémon caused volcanic eruptions. Team Rockets calls from outside, selling ice cream, and the boys decide to go out and get some.
During this time, Team Magma members infiltrate the museum and steal the volcanic rock. At this point, Team Rocket captures Pikachu. When they see Team Magma running away, though, they divert their attention to attacking them. Team Magma sends them blasting off again. A battle breaks out between the Captain Stern, Ash, and Team Magma. Marius and Max escape by using the Marius' Spheal and they meet up with Brock and May. Ash tries to escape the battle with the rock, but it falls and the stone breaks in two. One of the Mightyena grabs half the stone and Team Magma retreats with their prize.
After May's Pokémon Contest debut in Slateport City, the group decide to stay in the city one more day. Brock decides to go shopping to stock up on supplies, and May goes with him. Ash and Max rather make their way to Oceanic Museum, but to their surprise they find that it is closed. Ash consults the guide book, but Max is not ready to give up on the visit so he tries to scale the museum wall. Before he could climb, a boy named Marius confronts him thinking that Max wants to steal museum's exhibits. Ash comes to see what's going on, but Marius calls him a thief too and sends out his Spheal, commanding him to use Water Gun. Spheal disobeys and attacks Marius instead. Marius then commands Spheal to use Body Slam. Ash and Max dodge the attack, Spheal bounces off a wall and ends up knocking Marius down on the ground. Marius orders his Spheal to use Blizzard and Ash tells Pikachu to counter with Thunderbolt, which knocks Spheal out, which surprises Marius. Max explains that Water-type Pokémon have a weakness to Electric-type moves. Ash advises Marius to return Spheal to its Poké Ball so that Spheal can rest.
Captain Stern, the curator of the museum then comes, and Ash and Max explain to him that they weren't trying to steal museum's property. After Marius's apology, Captain Stern explains that he had to close the museum because of an unexpected event, but invites Ash, Max and Marius to enter to the museum anyway. Team Rocket observe the scene through their binoculars and make a plan to steal Ash's Pikachu and rob the museum. Later Captain Stern guides Ash, Max and Marius through the Oceanic Museum's exhibits. While admiring the Pokémon models, Marius declares that he is going to catch a Goldeen one day and evolve into a Gyarados. Ash and Max are quick to correct him that only Magikarp evolve into Gyarados, though Marius admits that he’ll learn everything properly during his travels in a submarine, pointing at one of the museum models. Captain Stern explains that he is currently building a submarine at the local shipyards. The Captain then takes the three to his office to explain why he closed the museum: he received a sample of an unusual dark rock from seafloor that was exposed to extremely high temperatures. Ash and Max are astonished by the claim, though Captain Stern informs them that undersea volcanoes or a Pokémon might be the cause.
Jessie's voice is heard from the museum's courtyard and they appear to be selling snow cones. Ash, Max and Marius go outside to buy it, while Captain Stern decides to remain the museum to study the rock. Ash, Max and Marius are enjoying their icy desserts, when it occurs to Max the museum is closed and the snow cone vendors ought to know that. However, Team Rocket persuades them to continue eating. When the boys are almost unable to move due to suffering from brain freeze, Team Rocket reveals their true identities and steal Ash's Pikachu, putting him in a metal cage, and traps the three boys in another metal cage.
Meanwhile, Tabitha and two accomplice Team Magma Grunts infiltrate the Oceanic Museum with a code cracker. They switch off the facility's power before making their way into Captai Stern's office to steal the curious stone. Captain Stern confronts them, but Tabitha distracts him with his Mightyena's Shadow Ball to escape. As Team Magma flee the museum, the Rocket trio spots them and figures that whatever it is that Team Magma is stealing must be valuable, so they decide to steal it from them. Marius tries to break the cage using his Spheal's Body Slam, but it disobeys again. Ash commands Corphish to break the cage with Crabhammer. Team Rocket blocks Team Magma's way by sending out Seviper and Cacnea. Jessie commands her Seviper to use Poison Tail, but Tabitha's Mightyena Tackles it. James tells his Cacnea to use Pin Missile, but Mightyena uses Double Team to raise its evasion, making Cacnea's attack miss. Seviper tries to use Wrap, but Mightyena's Iron Tail hits first, sending Seviper flying into Team Rocket who then blasts off, dropping Pikachu's cage in the process. Mightyena instantly snarls at Pikachu, but Tabitha orders it to be left alone.
The boys rush over, with Ash happily reunited with Pikachu before realizing that Team Magma have the case in hand. Captain Stern comes running in and sends out his Sealeo to deal with the goons. It attacks Mightyena with Aurora Beam, and the resulting blast sends Mightyena flying back into Tabitha causing him to drop the stone case. Marius catches it and hands it over to Captain Stern. The grunts now send out their Mightyena. With three threats to contend with Ash calls on his Corphish and Pikachu to assist Stern's Sealeo. Captain Stern tells Max and Marius to run into town to get Officer Jenny when the time will be suitable. All three Mightyena use Hyper Beam while Corphish, Pikachu and Sealeo counter Bubble Beam, Thunderbolt and Aurora Beam, respectively. The attacks collide, causing an explosion. Smoke covers the area, so Max and Marius start to run. The boys have to escape the scene fast, so Marius decides to jump off a cliff into the sea. Max is terrified and does not want to jump. Tabitha orders Mightyena to use Shadow Ball, so Marius takes Max's hand and drags him down to dodge it. The two boys and Spheal slide down the cliff and end up in sea below. They hold onto Spheal who starts swimming at an incredible pace towards the city. Max and Marius make it ashore where they encounter May and Brock who are just making their way to the museum from shopping.
Meanwhile, Captain Stern hands the stone case to Ash, telling him to run while Sealeo distracts them using Blizzard. Ash runs with Pikachu and Corphish, but despite Blizzard, Mightyena uses Shadow Ball and strikes the ground in front of Ash. The explosion sends Ash and the case flying. The case opens when it hits the ground, and the stone splits into two pieces. Pikachu runs to save the stone, but Mightyena gets there first, retrieving the bigger part of the stone for Tabitha. Team Magma's helicopter arrives and Mightyena uses Shadow Ball to make a clean getaway. As Ash and Captain Stern watch the helicopter furthering away, the police arrive along with Brock, May, Max and Marius. Ash apologizes to Captain Stern for dropping the stone, but Captain Stern assures him that the smaller part of the stone will be sufficient enough for his research. Ash, Brock, May and Max then bid their farewells to Captain Stern and Marius as they hit the road again to travel to Mauville City.