It will keep fleeing unless you have a Pokemon with Mean Look or something like that so it won't escape. Try catching a wild Golbat. The same is for Mespirit.
Chat with our AI personalities
you need a wobbufet or wynaut because they have shadow tag so put that Pokemon in the front of your party or you can get a octillery if your trying to catch a fleeing Pokemon
try using the move 'mean look' on it so it cant escape.
There are no items that stop Pokemon from fleeing in battle in Pokemon soulsilver.Although this is true:You can catch a Pokemon that knows, Arena trap,and/or a Pokemon that knows mean look, such as a Ghastly.
Have a Pokemon with the move called Mean Look, which Golbat is a primary choice to have this move. The move Mean Look prevents the Pokemon from fleeing or switching out during a battle and can be very useful in a battle like this. You cannot stop Mesprit from permanently fleeing, however. It is recommended to bring a Pokemon with any sleep status moves like: Hypnosis, Sleep Powder, Yawn, etc. to further the effect.
Try letting it sleep Then throw a Master Ball.....I tried that and it actually worked