OK, howzabout this?
Ranger over 20 levels take 5 races he freaking hates. For example, Mack the 20 level ranger decides he hates Orcs, Elves, Outsider Evil, Undead and Whitey.
Over 20 levels, Mack gets a pool to divide amongst those 5 races. He can put em all into one, or put em into all, or whatever he wants. Switching this number takes an hour.
If he wants to learn how to hunt something different, say he suddenly realizes Elves were actually OK and Goblins were the biggest dicks on the planet, he needs to take a... day? week? of study to swap that out.
In a normal adventure, you have 5 races that you can chose. If you suddenly realize there are ten billion zombies in this room, take an hour and put all your damage into Undead. Not sure? Spread as you see fit. If you run into a bunch of other stuff, well, that sucks, but you still have spells, animal companion and regular feats to help the team out.
Once you're done with adventure, prepare for the next one by swapping out whatever the heck you want. You realize you have a height problem and hate reptiles, so you swap it out everything for Trolls, Giants, Ogres, Dragons and Lizardmen during your downtime.
...Yes? No?