Here's a couple for your protocols page.
Quake2&3: basically the same as HalfLife...
Primary Connection: 27960 UDP Send
Primary Connection: 26000-29000 UDP Send Recieve
Secondary Connection: 26000-29000 UDP Recieve Send
'Quake3': Allow: Quake3,Quake3a
Firewall Client: Application Settings:
'quake3': localBindUdpPorts 27960
'quake3': remoteBindUdpPorts 26000-29000
Step 3) not nescessary(?)... Like HalfLife you'll have to add primary connections for servers running on ports other than 27960 (commonly: 27961,27962,etc.) Also Q3 has socks 5 support which is a better solution, but would require SurrogateSockets v5 since it uses UDP. I don't know how to get the ingame server browser to work either, but I use Gamespy anyway...
Primary Connection: 28900 TCP Outbound
26000-29000 TCP Outbound
26000-29000 UDP Send
26000-29000 UDP Recieve
'GameSpy': Allow: GameSpy
Enable the firewall support in Gamespy: Tools->Options->Enable Firewall Support.
Again, you'll have to add primary connections depending on what games/master servers you use. You can find the ports by right clicking on the 'master' servers and selecting properties.