Difference between "true" RNG and pseudo RNG, is that the pseudo version can be predicted/influenced by the user. This can also be an advantage, a pseudo RNG will produce the same set of numbers every single run if you start off with the same seed.
For games, generally, a pseudo RNG will do, seed it with a timestamp, and it's hard to predict.
If you need RNG that is not predictable, there is /dev/random in linux (or /dev/urandom) and
https://docs.microsoft.com/nl-nl/windows/desktop/api/ntsecapi/nf-ntsecapi-rtlgenrandom for windows.
But these are generally needed for security, not for games. And the "pool" of random numbers generally isn't very big.
I don't know for Windows, but for Linux, that gathers some randomness from timing in network traffic and keystrokes. As well as RNG hardware if it's available.
Anyhow, for games, unless real money is involved, the psuedo RNG is fine. Timestamp as seed provides more then enough feel of randomness for the players. (Also note, that random does not always feel very fair for players. As a RNG might give a lose streak of 100, even if the chance is 1 out of 10. Recently read a good article about it, but cannot find it)