I'm not sure if this helps the OP but I found that using something like peerblock was preventing the connection and I would end up at a black screen when loading a game - the menus worked fine before starting the actual gameplay. Oddly it worked when I ran the game in windowed mode. (that could have been pure luck hitting a non-blocked IP or something)
I'm sure this logic could apply to things like antivirus, firewalls or your ISP being a total shitlord. I'm not sure if this advice applies to your situation, but figured I'd at least let this thread know how I fixed my similar black screen issue today. An actual error would have been nice like "Error: can't reach servers you dick"