Samurott. This Water - type Pokémon has a good balance of attack and defense. It can learn some very useful moves that are great for dealing with different types of Pokémon in the story. Its Water - type moves are especially effective against Fire - type Pokémon which are often encountered.
Hydreigon is a great pick. It has strong special attack stats. It can learn a variety of moves from different types which makes it very versatile in battles. In the story, you'll face different Pokémon with different weaknesses, and Hydreigon can adapt well. It can use moves like Dark Pulse and Draco Meteor to take out opponents quickly.
Volcarona is also quite useful for story completion. It has a high special attack. Its Bug - and Fire - type combination gives it an advantage against many Pokémon. For instance, its Fire - type moves can be used against Grass - type Pokémon which are common in the story, and its Bug - type moves can be effective against Psychic - type Pokémon that you may encounter.