make the sockets work based on game specific logic