크로스 플랫폼 게임

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는 크로스 플랫폼 게임의 장점을 최대한 살리는 데 필요한 지원을 제공합니다.

지원되는 게임 엔진 및 FB SDK

Facebook 게임 서비스는 다음 크로스 플랫폼 게임 엔진에 제공됩니다.

크로스 플랫폼 게임 및 Facebook

Facebook은 크로스 플랫폼 게임 경험을 향상하기 위해 여러 가지 게임 서비스를 제공합니다. 그중 몇 가지가 아래에 자세히 설명되어 있습니다.

Facebook 로그인

Facebook 로그인은 모든 지원되는 플랫폼에서 사용할 수 있는 고유한 ID를 제공합니다. 이는 게임 상태를 유지하고 진행 상황을 보존하며, 모든 플랫폼에서 일관된 경험을 유지하는 데 도움을 줍니다.

Facebook 로그인은 모든 플랫폼에 대해 중앙 ID 저장소를 제공합니다.

유기적 채널

여러 플랫폼에서 하나의 Facebook 앱 ID를 사용하는 게임은 지원되는 모든 플랫폼에서 Facebook의 유기적 채널을 활용할 수 있습니다. 게임 요청 및 공유를 구현하면 플레이어가 어떤 기기를 사용하든 Facebook을 통해 게임을 발견하고 플레이할 수 있게 됩니다.

Facebook 분석

Facebook 분석은 Facebook에서 지원하는 모든 플랫폼에서 사용할 수 있으므로, 모든 플랫폼의 게임 분석 정보를 하나의 보기에서 추적할 수 있습니다. 또한 플랫폼별로 분석을 나누어 기기 동작을 비교하거나 특정 플랫폼에서 고유한 세그먼트를 타게팅할 수 있습니다.

크로스 플랫폼 게임 모범 사례

알림, 요청 및 스토리를 일관되게 처리

플레이어가 서로 간에 전송한 모든 게임 요청과 플레이어가 공유한 스토리는 모든 플랫폼에 대해 관련성이 있어야 합니다. 모든 플랫폼에서 동일한 경험을 제공하는 게임의 경우에는 이것이 어렵지 않습니다. 그러나 어떤 게임은 플랫폼별로 다른 경험을 제공해야 할 수도 있습니다.

예를 들어 게임의 웹 버전에서 제공하는 업적은 모바일 버전에서 제공하는 업적과 다를 수 있습니다. 이런 상황에서는 알림, 요청 및 스토리를 모든 버전의 게임에서 일관되게 제공해야 합니다.

다음은 몇 가지 예입니다.

  • Facebook 게임 버전에서 iOS 플레이어에게 보낸 플레이어 간 게임 요청은 iOS 또는 Android 기기에서 플레이하는 받는 사람에게 제공되어야 합니다.
  • 플레이어가 공유한 스토리가 모든 플랫폼에서 관련성이 있어야 합니다. Android 버전의 게임을 하는 플레이어가 업적 달성을 축하하는 스토리를 공유한 경우, 친구가 Facebook.com에서 이 스토리를 클릭하면 Facebook 게임 버전으로 이동해야 하고 이 버전에서 친구도 동일한 업적을 완료할 수 있어야 합니다.
  • 오픈 그래프 스토리는 모든 플랫폼에서 관련성이 있도록 하는 방식으로 작성되어야 합니다. 즉, 게임의 모바일 버전만 플레이한 플레이어가 웹 버전을 플레이하는 친구가 게시한 오픈 그래프 스토리를 이해할 수 있어야 합니다. 이는 게임 내 점수와 업적에도 적용됩니다. 점수는 모든 플랫폼에서 적절하게 균형을 이루어야 하며 업적은 달성할 수는 없더라도 모든 플랫폼에서 이해할 수 있어야 합니다.

또한 플레이어가 모바일 기기에서 채널을 클릭할 때 기본적으로 모바일 게임을 읽어들여야 합니다. 플레이어가 iOS 또는 Android용 Facebook 피드에 있는 도전하기 스토리에 응답한다고 생각해 보세요. 구현 옵션 중 하나로, 도전하기 스토리를 클릭했을 때 게임의 네이티브 버전이 열리도록 할 수 있습니다. 훨씬 더 나은 구현 방법은 새 게임을 시작하여 도전을 받은 플레이어가 바로 게임을 플레이하기 시작할 수 있도록 하는 것입니다.

이에 관한 자세한 내용은 다음을 참조하세요.

모든 플랫폼에서 게임 상태 동기화

게임은 플랫폼마다 다소 차이가 있을 수 있습니다. 에를 들어 Facebook.com, iOS, Android에서 각각 경제, 업적 세트, 게임 플레이가 다를 수 있습니다. 플레이어가 Facebook.com에서 업적을 달성한 후 Android에서 게임을 플레이하는 경우, Facebook.com에서 달성한 업적을 Android에서 달성할 수는 없더라도 표시는 되어야 합니다. 하나의 플랫폼에서 게임을 하는 경우 다른 플랫폼에서 이룬 게임 진행 상황도 반영되어야 합니다.

동기화된 크로스 플랫폼 경험을 제공하는 방법은 크게 두 가지가 있습니다.

  • 경험의 차이가 매우 큰 경우. 어떤 게임은 버전마다 게임 플레이가 상당히 다릅니다. 심지어는 버전마다 게임 플레이 역학이 다를 수도 있습니다. 이 경우에도 업적을 표시하거나, 배지를 수여하거나, 더 많은 코인, 특별 아이템이나 다른 혜택과 특권을 제공하여 다른 플랫폼에서 얻은 업적에 대해 플레이어에게 보상하는 것이 중요합니다. 에를 들어 플레이어가 Facebook.com에서 높은 레벨을 달성한 후에 iOS에서 게임을 플레이하는 경우, 게임을 처음부터 다시 시작해야 하더라도 Facebook.com에서 높은 레벨을 달성한 것에 대해 특별한 배지를 수여할 수 있습니다.
  • 경험이 매우 유사한 경우. 어떤 게임은 모든 플랫폼에서 완전히 동기화됩니다. 이런 게임에서는 플레이어가 한 플랫폼에서 게임을 진행하는 동안 플레이어가 사용하는 다른 플랫폼에서 상태가 완전히 동기화됩니다. 이 경우, 모든 업적이 모든 플랫폼에 동기화되어 플레이어에게 일관된 경험을 제공합니다.

게임에 어떤 시나리오가 적용되든, 모든 플랫폼에서 업적이 동기화되고 게임 상태가 일관되고 안정적으로 동기화되도록 해야 합니다.

플레이어는 웹에서와 모바일에서의 게임에 대한 기대치와 접근 방식이 다를 수 있습니다. 웹에서 게임을 플레이하는 플레이어는 플레이 빈도가 낮고 더 오래 플레이하는 반면, 모바일 플레이어는 비교적 플레이 빈도가 높고 더 짧게 플레이할 수 있습니다. 현재 개발 중인 게임 유형이 무엇인지에 따라 이러한 차이점을 고려하여 웹과 모바일에 차이를 둔 게임을 설계할 수도 있습니다. 이 방법을 선택하는 경우, 점수 및 업적과 같은 게임 내 중요한 요소가 모든 플랫폼에서 표시되도록 하세요.

Facebook은 여러 플랫폼에서 플레이어에게 일관된 ID를 제공하므로, 플레이어가 새로운 플랫폼에서 게임을 플레이할 때 플레이어의 Facebook ID를 사용하여 해당 플레이어를 인식하고 업적과 게임 상태를 동기화할 수 있습니다.

플레이어는 모든 플랫폼에서 진행 상태를 유지해 나갈 수 있습니다.

플레이어가 다른 플랫폼에서도 게임을 플레이하도록 유도

플레이어가 다른 플랫폼에서 게임을 플레이하도록 유도하면 잔류 및 참여도를 더욱 높일 수 있습니다. 에를 들어 Facebook.com에서 iOS 버전의 게임을 홍보하세요. 그러면 플레이어가 사용 중인 모든 기기에서 하루 중 언제든 플레이할 수 있으므로 참여도를 높일 수 있습니다. 또한 이를 통해 잔류를 높일 수도 있습니다. 플레이어가 다른 플랫폼에도 게임이 있는 것을 알면 즐겨 사용하는 모든 기기에서 게임을 플레이할 것이기 때문입니다.

동일한 앱 ID를 사용하면 요청, 피드 및 오픈 그래프를 통한 크로스 플랫폼 북마크, 검색 및 배포의 이점을 이미 누리게 됩니다. 이들은 모두 플레이어가 여러 플랫폼에서 게임을 플레이하도록 장려하는 방법입니다. 코인, 특별 아이템, 추가 생명 등의 보상과 인센티브를 사용하여 플레이어가 다른 플랫폼에서 게임을 플레이하도록 유도할 수도 있습니다. 또한 플레이어가 특정 플랫폼에서 게임을 플레이하도록 유도하기 위해 해당 플랫폼에서 독점 콘텐츠를 출시할 수도 있습니다(또는 콘텐츠 출시 시기를 앞당길 수도 있습니다). 예를 들어 Facebook 웹 게임 버전에서 새로운 레벨 5개를 일주일 미리 앞당겨 출시하면 평소 모바일 버전에서 플레이하던 플레이어가 웹 버전에서 플레이하도록 유도할 수 있습니다.

플레이어가 여러 플랫폼에서 게임을 플레이하도록 인센티브를 제공하는 것이 좋은 방법이기는 하지만 모든 플랫폼에서 게임을 플레이하도록 요구해서는 안 됩니다. 많은 플레이어가 하나의 플랫폼에서만 게임을 플레이하는 것을 선호하므로 아무런 불이익 없이 하나의 플랫폼에서 게임을 진행할 수 있어야 합니다.

게임은 다음 두 가지 시나리오 사이에서 균형을 잡아야 합니다.

  1. 정기적으로 여러 플랫폼에서 게임을 플레이하는 플레이어. 전형적인 시나리오는 게임의 웹 버전을 사용하던 플레이어가 모바일 기기에서 게임을 플레이하기를 원하는 경우입니다. 플레이어가 이렇게 할 수 있도록 인센티브를 제공하세요.
  2. 하나의 플랫폼에서만 게임을 플레이하는 것을 선호하는 플레이어. 여러 플랫폼에서 게임을 플레이하는 것을 선택 사항으로 남겨두고 한 플랫폼을 선호하는 플레이어에게 불이익을 주지 마세요.

모바일 출시 전에 Facebook에서 게임 플레이 개선

게임 내에서 적절한 비즈니스 모델을 확보하기까지 여러 번 반복해서 개선이 필요할 수 있습니다. 예를 들어 게임 내에서 플레이어에게 청구하는 지점, 게임에서 제안하는 가격대, 판매하는 아이템 또는 통화는 전환에 큰 영향을 미칠 수 있습니다.

모바일보다는 Facebook.com에서 반복 개선을 하기가 더 쉬운데, 그 이유는 Facebook.com에서 즉시 변경 사항을 적용하고 결과를 수집한 후 다시 변경하는 과정을 반복할 수 있기 때문입니다. 모바일에서의 업데이트와 반복 개선 주기는 훨씬 오래 걸립니다. 따라서 Facebook.com에서 게임의 게임 플레이와 경제에 대한 균형을 훨씬 더 빠르게 찾은 후 이렇게 알아낸 결과를 모바일 버전에 적용할 수 있습니다.