Lo siento si parece crítico, pero creo que te estás acercando a la pregunta desde el ángulo equivocado.
De alguna manera, siento que terminarías prisionero de algo que no esperabas si comenzaras a diseñar tu juego exclusivamente para Facebook.
Creo que lo ideal es hacer un verdadero juego (basado en C ++, PHP o HTML5) que se integre con cualquier red social.
La idea es hacer el juego y concentrarse primero en el juego / diversión. Integre todas las funciones sociales que necesita independientemente de la red social que utilice y cree una interfaz que convierta sus solicitudes sociales en llamadas a la red social en la que se implementa el juego.
En cuanto a Facebook, la API gráfica es muy simple de usar. Básicamente es una API REST que devuelve datos JSON . Puede usarlo desde su servidor web (PHP), desde su aplicación móvil (Objective-C, Java, C ++). Todo lo que necesita es crear una aplicación en la interfaz de su aplicación de desarrollador . Su aplicación obtendrá la clave y el hash secreto que luego deberá usar para comunicarse con la API de facebbok. Puedes comenzar a experimentar en minutos :)
El único inconveniente es que incluso los datos públicos ahora requieren acceso autenticado. Por lo tanto, deberá autenticar al usuario utilizando uno de los mecanismos disponibles .
Hagas lo que hagas, probablemente necesitarás servidores propios o algunos servidores en la nube para almacenar los datos de tu juego si quieres que sea multijugador.
Podría tener una visión parcial del tema, ya que generalmente integro Facebook en proyectos existentes.