@AJ: Absolutely, no problem
However, I can't find any web pages or forum posts that would say otherwise at the moment, but from what I've observed, species is tied to the spread itself, so no matter how many times you hit your target, it'll always be that Bidoof… Still, this is only assuming there are no factors influencing appearance rates. So, like Vini said, you'll have to use abilities that have field effects like Magnet Pull to influence these rates (I couldn't tell you how these work in relation to the RNG, but they do for whatever reason
). So for example, you'd use Magnet Pull if you were trying to RNG a Steel-type, Cute Charm to RNG an opposite-gender Pokémon/species that have only one gender, Intimidate to RNG a rare Pokémon that might only appear at a higher level than other species in the area, etc. etc.
But, all of those abilities are merely situational, and will not make a difference for a large majority of Pokémon. In these cases the best solution to your problem is to use another ability, specifically Synchronize. Now of course, on the surface many make the assumption that a Synchronizer just "makes Pokémon with the same nature appear more often," or 50% of the time, or whatever. But in reality, the effects are much more complex, and affect not only the nature, but the entire PID/IV spread of the Pokémon. If you've ever used the Time Finder in RNG Reporter or searched spreads in JavaRNG, you'll notice that, obviously you get more results for a particular spread you're looking for when you use a Synchronizer. But a Synchronizer doesn't actually increase the number of seeds you can find your target spread on, rather it
duplicates your target spread multiple times within the same seed, so you'll often see moderately large sections of output results/spreads (usually anywhere from three to over ten spreads, though it depends on the seed) with the same seed, PID, and IVs that you wanted, just with different frames (usually in increasing order). So, to make that a little more clear, here's an example of what this might look like (we'll use your Timid Darkrai):
Without Synch
Seed: 000000 (just a made-up example)
Frame 67: Timid 31/31/31/31/31/31
With Synch
Seed: 000000
Frame 56: Timid 31/31/31/31/31/31
Frame 58: Timid 31/31/31/31/31/31
Frame 67: Timid 31/31/31/31/31/31
Frame: 74: Timid 31/31/31/31/31/31
Frame 102: Timid 31/31/31/31/31/31
(All the frames in between those above we'll just assume to be arbitrary, random spreads that you're usually tying to skip over and avoid)
So as you can see, there's more spreads with the specs you're looking for when you have a Synchronizer. Thus, the idea is that if you get a Bidoof on frame 67 (the only you'd have available without a synch), you can try frame 56, 58, etc., trying new "twin" spreads until you get the Lotad or whatever Pokémon you need. If none of those work, just repeat the process using another seed and set of frames. Though each spread/frame has the same PID/IV combo making them look identical, in actuality they
are different spreads, and like I said, because species is tied to the spread itself, you won't get the same species of Pokémon for all of them.
Now, just a small disclaimer, but it may look highly appealing to use a Synchronizer because if the same spread appears on multiple frames, you only need to hit your seed once, and then you can just advance to all those frames on one reset. Unfortunately this is impossible, because for some reason (I guess it may be tied to the identical PID/IVs for all the frames), all of the frames will have the same "Actual" frame (or "Occidentary" frame in RNG Reporter 8.31 onwards), and logically the Actual frame is higher than the last possible consecutive frame for your spread. The Actual frame, if you're not already aware, is the frame you land on after exiting from an encounter with a wild Pokémon, and varies based on what frame you went into the encounter on (for more details on that check out the Sweet Scent link I posted above). So using the example above, you could have your spread on frames 56, 58, 67, 74, and 102, but the Actual frame for all of those will be over 102 (for example if the Actual frame was 127, 127 would apply to all of the above frames, so whether or not you encountered the Pokémon on frame 56, 58, etc., you'd always land on 127 exiting the battle, and thus you'd have to reset and hit your seed again, as it is impossible to find the spread you want again on a frame higher than the last one listed, 102). Because of this, I would not recommend hunting down incredibly rare Pokémon (less than 5% encounter rate), unless you were absolutely dead set on it for whatever reason. Breeding for those Pokémon instead will save you a ton of grief (believe me, I've been around the block with this procedure quite a few times
).
So that's the deeper meaning to your predicament – in short, the general sense is that the species of Pokémon is set to the specific spread, and to find another Pokémon other than the one preset to that spread, you have to change encounter rates, use a Synchronizer, or just find a new spread altogether.