My personal view is XMPP is not the best choice for FPS game. You may need to looking into Binary socket protocols.
Also, multi-play FPS games need UDP connection. Flash's RTMFP protocol is a UDP protocol, but sadly I found string data has a low priority then voice data. And RTMFP seems to have built-in reliability checking for string data package, which can not be bypassed by ActionScript API and makes this protocol less efficient.
Regarding to game server, I would recommend Sun's Project Darkstar then SmartFox. SmartFox to me is more like a gateway
Regards,
ty