Easy way to catch kyogre
First make sure you have at least 40 ultraballs. Then make sure you have a Shedinja at at least Lv25. If you don't have one then read the cheat in this section which is on how to get Shedinja. Shedinja should know a good move which has an attack power of atleast 30-40. Then go and fight kyogre but before fighting save the game. Before using Shedinja lower kyogres HP by using a powerful pokemon first then let it faint or change it with Shedinja. even though shedinja has 1HP kyogre cannot harm it as it knows only water and ice attack moves. then when Shedinja lowers kyogres HP till it's hardly visible use the ultraballs till u catch it. Now u have a kyogre with no pokemon fainted. Do the same when u battle Wallace's Miltoic.