# 고급 사용 사례

> Explore advanced game mechanics you can achieve if you connect different Unity Gaming Services together in Cloud Code.

Cloud Code로 게임 로직의 대부분을 작성할 수 있습니다. 하지만 스크립트 내에서 서로 다른 서비스를 연결하는 방법이나 게임 메카닉으로 적용하는 방법은 명확하지 않을 수 있습니다.

[사용 사례](../use-cases)를 살펴보면 Cloud Code 스크립트를 작성하는 방법과 더불어 Cloud Code를 통해 해결할 수 있는 문제를 더 잘 이해할 수 있습니다. 예시는 다음과 같습니다.

* 서버 시간 부정 행위 방지 메커니즘
* 게임 내 쿠폰
* 일일 보상

아래에서 더 많은 고급 사용 사례를 확인할 수 있습니다. [Unity Gaming Services 샘플 프로젝트](/services/solutions/download-and-installation.md)를 다운로드하여 Cloud Code로 자주 발생하는 게임 개발 문제를 해결하는 방법을 확인해 보십시오.

| 프로젝트                                                         | 요약                                                                                                                                                                                                                                                                                                                                                  | 연동된 UGS 서비스                                                                                                                                                                                                                                                               |
| ------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [A/B 테스트](/services/solutions/ab-test.md)                    | A/B 테스트는 게임플레이 또는 게임 디자인의 한 가지 기능을 미세 조정하면서 해당 기능의 어떤 배리에이션이 플레이어의 참여를 가장 많이 유도하는지 확인하는 데 유용한 메커니즘입니다.                                                                                                                                                                                                                                              | [Authentication](/authentication.md), [Cloud Save](/cloud-save.md), [Economy](/economy.md), [Remote Config](/remote-config.md), [Cloud Code](/cloud-code.md), [Analytics](/analytics.md)                                                                                  |
| [시즌 이벤트](/services/solutions/seasonal-events.md)             | 시즌 이벤트를 활용하면 기존 플레이어에게는 연중에 제공되는 새롭고 재미있는 콘텐츠에 대한 기대감을 심어 주고, 신규 플레이어에게는 게임을 시작할 만한 흥미를 북돋아 줌으로써 게임 세션 수를 늘리고 게임에 대한 전반적인 관심을 높일 수 있습니다.&#xA;이 샘플에서는 게임에서 플레이어를 위한 시즌 이벤트(가을, 겨울, 봄, 여름)를 설정하는 방법을 보여 줍니다. 시즌 이벤트에는 현재 이벤트의 남은 시간을 나타내는 카운트다운, 이벤트 기간에 플레이어가 획득할 수 있는 재화 보상, 선택 시 플레이어가 도전 과제를 달성하여 보상을 받을 수 있는 팝업 창을 여는 **플레이 도전 과제** 버튼 등이 포함됩니다. | [Authentication](/authentication.md), [Economy](/economy.md), [Cloud Code](/cloud-code.md), [Remote Config](/remote-config.md), [Addressables](https://docs.unity3d.com/Packages/com.unity.addressables@latest), [Analytics](/analytics.md), [Cloud Save](/cloud-save.md) |
| [배틀 패스(시즌 이벤트의 확장 개념)](/services/solutions/battle-passes.md) | 시즌 포인트 기반 보상 시스템은 플레이어를 게임에 오래 머물게 하는 데 널리 사용되는 효과적인 방법입니다.&#xA;시간 기반 보상 시스템과 달리, 보상 트랙을 발전시키려면 기술 요소가 필요합니다. 배틀 패스는 이 시스템만의 흥미 요소를 더해 주는 동시에 플레이어가 추가 보상으로 두 번째 프리미엄 트랙을 구매하도록 유도하는 수익화 메커니즘도 제공합니다.&#xA;이 샘플에서는 재화를 프리미엄 보상으로 사용하지만, 대부분의 게임에서는 프리미엄급 꾸미기 아이템을 지급하거나 게임플레이상 이득을 주지 않는 기타 아이템을 제공하는 방식으로 디자인됩니다.                                   | [Authentication](/authentication.md), [Economy](/economy.md), [Cloud Code](/cloud-code.md), [Remote Config](/remote-config.md), [Addressables](https://docs.unity3d.com/Packages/com.unity.addressables@latest), [Cloud Save](/cloud-save.md)                             |
| [Cloud AI 미니 게임](/services/solutions/cloud-mini-game.md)     | 일부 게임에서는 보상으로 또는 게임플레이 진행을 위해 미니 게임을 플레이합니다. 이 샘플에서는 플레이어를 상대하는 인공의 적이 구현된 미니 게임에서 Cloud Code를 다른 UGS 패키지와 함께 사용하여 게임플레이를 검증하는 방법을 보여 줍니다.&#xA;또한 이 샘플은 게임 결과에 따라 승리, 무승부 시 보너스 코인을 지급하는 식으로 게임플레이 보상을 제공하는 방법도 시연합니다. 이러한 방식으로 게임플레이 보상을 제공하면 미니 게임을 더 재미있게 즐길 수 있으며, 이후 진행되는 게임 경제에도 영향을 미칠 수 있습니다.                                               | [Authentication](/authentication.md), [Cloud Code](/cloud-code.md), [Economy](/economy.md), [Cloud Save](/cloud-save.md)                                                                                                                                                  |
| [커맨드 배칭](/services/solutions/command-batching.md)            | 커맨드 배칭은 각 게임 액션이 하나의 커맨드가 되고, 이 커맨드를 대기열에 모아서 서버로 일괄 전송해 처리하는 개념입니다.&#xA;커맨드 배칭을 사용하면 다음과 같은 작업을 수행할 수 있습니다.게임에서 사용하는 대역폭을 최적화하여 에너지 효율을 최대한으로 높입니다.&#xA;잦은 서버 호출 또는 서버 병목 현상으로 인해 게임이 느려지는 상황을 방지할 수 있습니다(속도 제한).커맨드 배칭을 통해 게임을 최적화하면 게임에서 서버를 호출하는 횟수 또는 빈도를 줄여 사용자에게 더 쾌적한 게임 경험을 제공하고 대기 시간을 단축할 수 있습니다.                                        | [Cloud Code](/cloud-code.md), [Remote Config](/remote-config.md), [Economy](/economy.md), [Cloud Save](/cloud-save.md)                                                                                                                                                    |
| [방치형 클리커 게임](/services/solutions/idle-clicker-game.md)       | 아이템 수집 게임, 도시 건설 게임과 같은 실시간 방치형 클리커 및 소셜 게임에서는 일반적으로 다음과 같은 사항을 고려합니다.상시 실행되지 않는 게임에서 실시간 활동을 시뮬레이션하는 방법&#xA;시간대 또는 플레이어 디바이스상의 날짜/시간 변경과 관계없이 모든 플레이어의 게임이 올바르게 업데이트되도록 클라우드에서 시뮬레이션을 실행하는 방법이 샘플 시나리오에서는 스로틀링 문제나 비용 증가를 유발할 수 있는 UGS 호출을 제한하여 두 가지 문제를 모두 해결하는 방법을 보여 줍니다.                                                                       | [Authentication](/authentication.md), [Cloud Code](/cloud-code.md), [Economy](/economy.md), [Cloud Save](/cloud-save.md)                                                                                                                                                  |
| [랜덤박스](/services/solutions/loot-boxes.md)                    | 팀 기반 멀티플레이어 게임부터 1인칭 슈팅 게임에 이르는 다양한 장르의 게임에서는 레벨이 상승하거나 게임플레이를 그만두지 않고 오랫동안 생존하는 플레이어에게 랜덤박스(loot box)를 통해 무작위로 재화, 아이템, 장비 등의 보상을 지급합니다.&#xA;랜덤박스는 게임에 몰입해 계속 플레이하여 보상을 받도록 플레이어에게 동기를 부여하는 좋은 방법입니다.&#xA;이 샘플에서는 게임에서 기본 랜덤박스를 설정하는 방법, 즉 플레이어에게 무작위 재화를 지급하는 방법을 보여 줍니다.                                                                         | [Economy](/economy.md), [Cloud Code](/cloud-code.md)                                                                                                                                                                                                                      |
| [스타터 팩](/services/solutions/starter-packs.md)                | 게임에서는 플레이어가 게임을 처음 플레이하거나 게임 저장본을 삭제하고 다시 시작할 때 도움이 되도록 스타터 팩과 같은 일회성 가상 구매 상품을 제공하는 경우가 많습니다. 이 샘플에서는 플레이어가 게임 내 재화로 구매할 수 있는 일회성 스타터 팩 상품을 게임에 구현하는 방법을 보여 줍니다.                                                                                                                                                                                   | [Authentication](/authentication.md), [Economy](/economy.md), [Cloud Code](/cloud-code.md), [Cloud Save](/cloud-save.md)                                                                                                                                                  |
