Foretelling the future is easy in fiction, since the author can just write the ending to match the prediction (or vice-versa). It's not so easy in RPGs, but seers and oracles are not exactly unheard of in the fantasy genre.
In D&D it usually boils down to spells like augury and divination, which give a character a % chance to get a "correct" reading, the specifics of which is left up to the DM, who of course usually has a general idea of what's likely to happen. And I suppose if something completely unforeseen happens, he can always claim that the casting was a failure...
Another option would be to give the player a discretionary bonus or whatever to be applied when desired, to help ensure the prediction comes true.
Are the any games/systems that handle this type of thing particularly well? Badly?
I don't know any system dealing with this, but what kind of "mechanics" could help? I would think that it is mostly a matter of the DM winging it to make the foretelling plausible and later match the events with it.
I would also keep in mind a couple of ideas that might be handy:
- keep the form hazy: this is exactly what all real-world foretellers do, they give predictions so vague that almost certainly will happen ("you will have problems but eventually you'll overcome them"), although I wouldn't keep them
that vague because RPG players are generally smart enough... Thus I'd make
true predictions on what's ahead in the campaign, but retain a certain level of vagueness so that the details can change easily
- sprinkle with precise details: this sound the opposite of the previous point, but I mean that you can add
a couple of precise but nearly irrelevant details to the foretelling, something that you'll have no trouble make it happen (e.g. which weapon the BBEG will use against you, what weather will be when the final battle starts etc.)
- what they discover will happen: try if you can to really make it really happen, what they are told, even if it requires some heavy winging; in the extreme case (e.g. foretelling a PC's death) try to build up tension and then really kill the PC (but ask the player if he's ok with it), not by cheating tho just with fairly regular in-game events but focus some hard challenge against him,
but if he makes it alive by playing it very well then start a spin-off story that he's managed to cheat death and this opens up new campaign scenarios
NOTE: this is an extreme example that probably won't ever happen (unless perhaps the PC specifically asks to know how he will die) just to say that if you do use foretelling in your game, then you must make it mean something and be ready to pay the cost. Otherwise just don't use it, if you are not willing to make it work... But sometimes it might happen to have a player challenging the DM like that, and my suggestion is ask him (both in-character and OoC) if he understands the risks, and then make the foretelling happen, otherwise the whole foretelling thing becomes some sort of joke...