> For the complete documentation index, see [llms.txt](/llms.txt)

# Version Gate

Checks the agreement (terms of service) versions a player accepted, and the versions a client reports, such as its app and asset versions.




**이 데모에 대하여**

데모는 익명 계정으로 자동 로그인합니다. 이 계정은 쇼룸의 모든 데모에서 공유되므로 한 데모에서 얻은 아이템이나 재화가 다른 데모에도 반영됩니다. 로딩에 약간 시간이 걸립니다. 화면이 작다면 새 탭에서 열어 사용해 보세요.

## 개요

One version check covers both the agreements a player accepted and the app and asset versions the client reports. Answer the required `terms` (latest 2.0.0) and the optional `marketing`, pick the versions the client claims, and press **Check versions** to see ok, warning or error for each. The check passes only when nothing is an error, and then GS2 issues a project token.

## 체험 방법

1. Read the rule under **Terms and versions**. At first, **Your answers** shows **terms: not answered** and **marketing: not answered**.
1. Press **Check versions** without answering: `terms` and `marketing` are errors because they are unanswered, app 1.0.0 and asset 0.9.0 are errors too, and the verdict reads **Not passed: no project token.**
1. Press **Accept terms 1.0.0 (an old version)** and `terms` becomes a warning; press **Accept terms 2.0.0 (the latest)** and it is ok. `marketing` is ok whether you press **Accept marketing** or **Reject marketing**.
1. Press **App version ... (press to change)** and **Asset version ... (press to change)** to change what the client reports: app 1.0.0 (error), 1.1.0 (warning) or 1.2.0 (ok); asset 0.9.0 (error), 1.5.0 (warning) or 2.1.0 (ok).
1. With no errors left, press **Check versions**; the verdict reads **Passed: GS2 issued a project token.** Press **Clear my answers** to start over.

## 사용하는 GS2 서비스

- [GS2-Version](/ko/microservices/version/): GS2-Version defines the agreements a player answers, `terms` (required) and `marketing` (optional), and the `app` and `asset` versions the client reports, and keeps each player's answers. The version check rates each one as warning or error, and a player who passes gets the project token of a demo user that has no permissions at all.

## GS2 Studio에서 사용하기

GS2 Studio의 Simple 모드에서 **Add features** 를 열고 **Version Gate** 의 **Add** 를 누르면 이 기능을 자신의 프로젝트에 가져올 수 있습니다. 패키지를 직접 지정하려면 **Add from GitHub** 를 선택하고 아래 패키지를 입력합니다.

```text
https://github.com/gs2io/gs2-studio-package/tree/main/foundation-liveops-version/packages/foundation-liveops-version
```

- Owner: `gs2io`
- Repository: `gs2-studio-package`
- Subdirectory: `foundation-liveops-version/packages/foundation-liveops-version`

## 소스 코드

- 데모 프로젝트: <https://github.com/gs2io/gs2-studio-package/tree/main/foundation-liveops-version/live-demo>
- 기능 패키지: <https://github.com/gs2io/gs2-studio-package/tree/main/foundation-liveops-version>



