The problem with doing it randomly is that you can end up with long runs where you just can't start the game. I actually ran into this with my game- originally it had a 50% chance of not starting up. Then I got a run of 6 or 7 "crashes" and decided that it wasn't going to work. What I really wanted to implement was a limit to the run length but I didn't have time to do that so I ended up just reducing the probability to something like 10%, making a long run of failures much less likely.