Is it completely random? You guys have ttars, swamperts and ahit all i get is their first mon. Is there a mechanic I’m missing
It’s completely random.
For Grunts, most of the time you will get the first mon, but there is a small chance of getting the second, I think like 1 in 8.
For Team Leaders, and Jessie/James, you always get the first. If facing Giovanni, you always get the last.
There is a list of catchable shadow pokemon, not all that you fight can be caught from grunts.
And not all that were catchable in the past are currently available to catch