This feature is no longer available for new submissions. This documentation is intended solely for developers with existing games.
크로스 플랫폼 게임 엔진을 사용하면 동일한 코드 베이스를 사용하여 웹(HTML), iOS, Android와 같이 여러 플랫폼에 게임을 배포할 수 있습니다. 크로스 플랫폼 게임은 플레이어에게 서로 다른 플랫폼에서 동일한 경험 또는 다른 경험을 제공할 수 있습니다.
여러 플랫폼에서 하나의 게임에 대해 단일 Facebook 앱 ID를 사용할 경우, 한 플랫폼에서의 게임 플레이 경험은 다른 플랫폼에서의 게임 플레이 경험과 동일하지는 않더라도 일관성이 유지되어야 합니다. Unity나 Cocos2d와 같은 소프트웨어 패키지는 이러한 일관성을 최대한 손쉽게 유지할 수 있도록 지원합니다. 이러한 엔진을 위한 Facebook SDK는 '한 번 코드를 작성해서 모든 곳에 배포'한다는 동일한 철학을 따르며, 빌드 대상도 지원할 것입니다.
게임에 크로스 플랫폼 기능을 제공하면 플레이어가 원하는 기기에서 어디서나 원할 때 게임을 플레이할 수 있습니다. 기기 가격이 하락하면서 플레이어가 두 개 이상의 게임 플랫폼을 소유하거나, 플랫폼을 전환하는 경우가 흔해졌습니다. 2개 이상의 플랫폼에서 게임을 플레이하는 플레이어는 다른 플레이어보다 참여도가 상당히 높습니다. Facebook SDK는 크로스 플랫폼 게임의 장점을 최대한 살리는 데 필요한 지원을 제공합니다.
Facebook 게임 서비스는 다음 크로스 플랫폼 게임 엔진에 제공됩니다.
Facebook은 크로스 플랫폼 게임 경험을 향상하기 위해 여러 가지 게임 서비스를 제공합니다. 그중 몇 가지가 아래에 자세히 설명되어 있습니다.
Facebook 로그인은 모든 지원되는 플랫폼에서 사용할 수 있는 고유한 ID를 제공합니다. 이는 게임 상태를 유지하고 진행 상황을 보존하며, 모든 플랫폼에서 일관된 경험을 유지하는 데 도움을 줍니다.

여러 플랫폼에서 하나의 Facebook 앱 ID를 사용하는 게임은 지원되는 모든 플랫폼에서 Facebook의 유기적 채널을 활용할 수 있습니다. 게임 요청 및 공유를 구현하면 플레이어가 어떤 기기를 사용하든 Facebook을 통해 게임을 발견하고 플레이할 수 있게 됩니다.
Facebook 분석은 Facebook에서 지원하는 모든 플랫폼에서 사용할 수 있으므로, 모든 플랫폼의 게임 분석 정보를 하나의 보기에서 추적할 수 있습니다. 또한 플랫폼별로 분석을 나누어 기기 동작을 비교하거나 특정 플랫폼에서 고유한 세그먼트를 타게팅할 수 있습니다.
플레이어가 서로 간에 전송한 모든 게임 요청과 플레이어가 공유한 스토리는 모든 플랫폼에 대해 관련성이 있어야 합니다. 모든 플랫폼에서 동일한 경험을 제공하는 게임의 경우에는 이것이 어렵지 않습니다. 그러나 어떤 게임은 플랫폼별로 다른 경험을 제공해야 할 수도 있습니다.
예를 들어 게임의 웹 버전에서 제공하는 업적은 모바일 버전에서 제공하는 업적과 다를 수 있습니다. 이런 상황에서는 알림, 요청 및 스토리를 모든 버전의 게임에서 일관되게 제공해야 합니다.
다음은 몇 가지 예입니다.
또한 플레이어가 모바일 기기에서 채널을 클릭할 때 기본적으로 모바일 게임을 읽어들여야 합니다. 플레이어가 iOS 또는 Android용 Facebook 피드에 있는 도전하기 스토리에 응답한다고 생각해 보세요. 구현 옵션 중 하나로, 도전하기 스토리를 클릭했을 때 게임의 네이티브 버전이 열리도록 할 수 있습니다. 훨씬 더 나은 구현 방법은 새 게임을 시작하여 도전을 받은 플레이어가 바로 게임을 플레이하기 시작할 수 있도록 하는 것입니다.
이에 관한 자세한 내용은 다음을 참조하세요.
게임은 플랫폼마다 다소 차이가 있을 수 있습니다. 에를 들어 Facebook.com, iOS, Android에서 각각 경제, 업적 세트, 게임 플레이가 다를 수 있습니다. 플레이어가 Facebook.com에서 업적을 달성한 후 Android에서 게임을 플레이하는 경우, Facebook.com에서 달성한 업적을 Android에서 달성할 수는 없더라도 표시는 되어야 합니다. 하나의 플랫폼에서 게임을 하는 경우 다른 플랫폼에서 이룬 게임 진행 상황도 반영되어야 합니다.
동기화된 크로스 플랫폼 경험을 제공하는 방법은 크게 두 가지가 있습니다.
게임에 어떤 시나리오가 적용되든, 모든 플랫폼에서 업적이 동기화되고 게임 상태가 일관되고 안정적으로 동기화되도록 해야 합니다.
플레이어는 웹에서와 모바일에서의 게임에 대한 기대치와 접근 방식이 다를 수 있습니다. 웹에서 게임을 플레이하는 플레이어는 플레이 빈도가 낮고 더 오래 플레이하는 반면, 모바일 플레이어는 비교적 플레이 빈도가 높고 더 짧게 플레이할 수 있습니다. 현재 개발 중인 게임 유형이 무엇인지에 따라 이러한 차이점을 고려하여 웹과 모바일에 차이를 둔 게임을 설계할 수도 있습니다. 이 방법을 선택하는 경우, 점수 및 업적과 같은 게임 내 중요한 요소가 모든 플랫폼에서 표시되도록 하세요.
Facebook은 여러 플랫폼에서 플레이어에게 일관된 ID를 제공하므로, 플레이어가 새로운 플랫폼에서 게임을 플레이할 때 플레이어의 Facebook ID를 사용하여 해당 플레이어를 인식하고 업적과 게임 상태를 동기화할 수 있습니다.

플레이어가 다른 플랫폼에서 게임을 플레이하도록 유도하면 잔류 및 참여도를 더욱 높일 수 있습니다. 에를 들어 Facebook.com에서 iOS 버전의 게임을 홍보하세요. 그러면 플레이어가 사용 중인 모든 기기에서 하루 중 언제든 플레이할 수 있으므로 참여도를 높일 수 있습니다. 또한 이를 통해 잔류를 높일 수도 있습니다. 플레이어가 다른 플랫폼에도 게임이 있는 것을 알면 즐겨 사용하는 모든 기기에서 게임을 플레이할 것이기 때문입니다.
동일한 앱 ID를 사용하면 요청, 피드 및 오픈 그래프를 통한 크로스 플랫폼 북마크, 검색 및 배포의 이점을 이미 누리게 됩니다. 이들은 모두 플레이어가 여러 플랫폼에서 게임을 플레이하도록 장려하는 방법입니다. 코인, 특별 아이템, 추가 생명 등의 보상과 인센티브를 사용하여 플레이어가 다른 플랫폼에서 게임을 플레이하도록 유도할 수도 있습니다. 또한 플레이어가 특정 플랫폼에서 게임을 플레이하도록 유도하기 위해 해당 플랫폼에서 독점 콘텐츠를 출시할 수도 있습니다(또는 콘텐츠 출시 시기를 앞당길 수도 있습니다). 예를 들어 Facebook 웹 게임 버전에서 새로운 레벨 5개를 일주일 미리 앞당겨 출시하면 평소 모바일 버전에서 플레이하던 플레이어가 웹 버전에서 플레이하도록 유도할 수 있습니다.
플레이어가 여러 플랫폼에서 게임을 플레이하도록 인센티브를 제공하는 것이 좋은 방법이기는 하지만 모든 플랫폼에서 게임을 플레이하도록 요구해서는 안 됩니다. 많은 플레이어가 하나의 플랫폼에서만 게임을 플레이하는 것을 선호하므로 아무런 불이익 없이 하나의 플랫폼에서 게임을 진행할 수 있어야 합니다.
게임은 다음 두 가지 시나리오 사이에서 균형을 잡아야 합니다.
게임 내에서 적절한 비즈니스 모델을 확보하기까지 여러 번 반복해서 개선이 필요할 수 있습니다. 예를 들어 게임 내에서 플레이어에게 청구하는 지점, 게임에서 제안하는 가격대, 판매하는 아이템 또는 통화는 전환에 큰 영향을 미칠 수 있습니다.
모바일보다는 Facebook.com에서 반복 개선을 하기가 더 쉬운데, 그 이유는 Facebook.com에서 즉시 변경 사항을 적용하고 결과를 수집한 후 다시 변경하는 과정을 반복할 수 있기 때문입니다. 모바일에서의 업데이트와 반복 개선 주기는 훨씬 오래 걸립니다. 따라서 Facebook.com에서 게임의 게임 플레이와 경제에 대한 균형을 훨씬 더 빠르게 찾은 후 이렇게 알아낸 결과를 모바일 버전에 적용할 수 있습니다.