인스턴트 게임에서 친구와 플레이하기

여러 가지 방법을 통해 인스턴트 게임으로 게이머 간의 소셜 상호작용을 활성화할 수 있습니다.

연결된 게이머

FBInstant.player.getConnectedPlayersAsync() 메서드는 Messenger를 통해 현재 게이머에 연결되어 있는 사용자의 리스트를 검색합니다. 이 메서드는 게임에서 정보에 액세스하기 위한 권한을 부여한 연결된 사용자만 반환합니다.

참고: 이 메서드는 동일한 컨텍스트에서 게이머가 게임을 이용했는지 여부를 구분하지 않습니다. FBInstant.context.getPlayersAsync()에서 해당 컨텍스트와 관련된 정보를 가져올 수 있습니다.

게이머의 친구 가져오기

FBInstant.player.getConnectedPlayersAsync()
  .then(function(players) {
    _leaderboard.render(players);
  }); 

컨텍스트 게이머 가져오기

FBInstant.context.getPlayersAsync()
  .then(function(players) {
    _leaderboard.render(players);
  }); 

컨텍스트 변경

인스턴트 게임은 Messenger 대화나 피드 소식 등 여러 컨텍스트에서 실행할 수 있습니다. 아래의 SDK 호출을 사용하면 진입점과 관계없이 어느 세션에서나 컨텍스트를 전환할 수 있습니다. 즉 게이머가 게임을 종료한 후 다시 실행하지 않고도 다른 대화로 전환할 수 있습니다.

Facebook에서는 3가지 다른 컨텍스트 변경 메서드를 제공합니다.

  • FBInstant.context.chooseAsync()는 게이머가 변경할 대화를 선택할 수 있도록 하는 네이티브 대화 상자를 엽니다.
  • FBInstant.context.switchAsync(contextId)는 개발자가 사전 정의된 컨텍스트로 게이머를 연결할 수 있습니다(예: 다른 대화에서 시작했던 게임을 계속 진행).
  • FBInstant.context.createAsync(playerId)는 특정 게이머로 컨텍스트 생성을 시도합니다(예: 게이머와 추천된 친구 간에 게임 시작).

매치메이킹으로 다른 게이머와 플레이

Facebook은 Facebook 컨텍스트와 Matchmaking API로 새로운 컨텍스트에 게이머를 불러올 수 있는 게임 도구를 제공합니다. 다른 게이머와 게임을 플레이한 게이머는 단독 컨텍스트 게이머보다 잔류율이 높았습니다. 여기에는 몇 가지 이유가 있습니다.

  1. 컨텍스트에서 개인화된 업데이트는 게임에 다시 돌아올 만한 매력적인 진입점을 제공할 수 있습니다.
  2. 사람들은 같이 게임을 할 때 더 큰 재미를 느끼기 때문에 소셜 플레이는 잔류율을 높입니다!

게임 플레이 그 자체에 의미 있는 소셜 역학이 적용되면 인스턴트 게임이 더욱 돋보이고, 게이머들이 다른 친구들과 게임을 공유할 만큼 흥미를 느낍니다.

권장 사용:

  1. matchmaking API를 사용하여 게이머가 친구 상호작용과 별개로 소셜 플레이 경험을 즐길 기회를 제공합니다. 이는 턴제 게임과 멀티플레이어에서 특히 유용하지만 해당 게임을 하는 친구가 아무도 없거나, 친구들이 게임을 자주 플레이하지 않거나, 친구들이 다른 플레이 경험을 원하는 게이머의 경우 다른 유형의 게임에도 유용하게 사용할 수 있습니다.
  2. 게이머 매칭이 완료되기 전에 게임을 그만두면 AI 게이머로 전환합니다.

matchPlayerAsync()를 호출하면 게임이 현재 게이머를 다른 게이머와의 컨텍스트로 매칭을 시도합니다. 매칭할 게이머를 찾은 직후 새로 만든 컨텍스트로 게임을 전환할지, 게이머가 알림에서 플레이하기를 클릭할 때까지 기다릴지 지정할 수 있는 매개변수가 추가되었습니다.

매칭 메커니즘은 두 가지가 있습니다.

  1. 동기식 매칭: 현재 게이머와 함께 플레이할 사람을 찾는 다른 사용자를 매칭합니다. 매칭이 성공하면 매칭된 게이머가 있는 새로운 Messenger 그룹 대화창이 생성되고 게이머는 해당 대화창의 컨텍스트로 전환됩니다. 이는 게이머가 새로 매칭된 컨텍스트로 성공적으로 전환되면 해소됩니다.
  2. 비동기식 매칭(자세히 알아보기): 오프라인 매칭을 시작하는 게이머가 이전에 오프라인 매치를 시작한 다른 게이머가 있는 그룹 대화창에 바로 추가되며, 게이머는 다른 게이머가 참여하기를 기다리는 동안 게임을 떠날 수 있습니다. 매칭이 성공하면 게이머가 추가되고 해당 매칭된 대화창의 컨텍스트로 전환됩니다. 이는 게이머가 그룹 대화창에 추가되고 매칭된 컨텍스트로 전환되면 해소됩니다.

매칭된 대화창 하나의 기본적인 최소 및 최대 게이머 인원은 각각 2명과 20명이고, 같은 시간대에 매칭을 시도하는 게이머 인원에 따라 달라집니다. 이 값은 fbapp-config.json에서 변경할 수 있습니다.