# Cloud Code JavaScript スクリプト

> Write server-side JavaScript code and call these scripts from games built with Unity or any other client.

Cloud Code スクリプトでは、JavaScript を使用します。Unity で作成されたゲームから、または他のクライアントまたはサーバーからこれらのスクリプトを呼び出すことができます。

| オーサリング方法                                                            | 説明                                                                                                                         |
| ------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| [Unity Dashboard](./how-to-guides/write-scripts/unity-dashboard.md) | Unity Dashboard を使用してテストスクリプトを作成およびテストします。同じ場所から [Remote Config](/remote-config.md) などの他の Unity Gaming Services にアクセスできます。 |
| [Unity エディター](./how-to-guides/write-scripts/unity-editor.md)        | Unity エディターを使用して、スクリプトを記述、テスト、バンドルします。Deployment (デプロイ) ウィンドウと統合して、ワークフローの自動化を行い、他の Unity サービスとともに Cloud Code をデプロイできます。   |
| [Unity Gaming Services CLI](./how-to-guides/write-scripts/cli.md)   | CLI を使用して、コマンドラインからスクリプトをデプロイおよび管理します。一度に複数の Unity サービス設定をデプロイし、CI/CD と統合します。                                              |

## 典型的なワークフロー##typical-workflow

以下のプロセスは、一般的な開発サイクルの詳細を示します。

1. **スクリプトを作成** します。Unity Dashboard を通じて Cloud Code スクリプトを作成し、カスタムパラメーターを追加します。
2. **コードを記述** します。[スクリプト例](./how-to-guides/unity-services-integration.md) からビルドするか、最初から開始します。[Cloud Code JavaScript SDK](./reference/available-libraries.md) を使用して、他の [Unity Gaming Services](./how-to-guides/unity-services-integration.md) と簡単に統合できます。
3. **テストおよびデバッグ** します。ダッシュボードで **Run** (実行) を選択し、関数の結果をテストします。提供されたテストプレイヤーを使用して、他のサービスとのインタラクションを検証するか、ロギングステートメントを追加して問題をデバッグします。詳細については、[スクリプトを使用してテスト](./how-to-guides/test-run.md) する方法に関するページを参照してください。
4. **スクリプトを公開** します。**Publish** (公開) を選択して、スクリプトをゲームクライアントから使用可能にします。これは、ゲームに即時に表示されるライブ更新をスクリプトに追加するための主要なメカニズムです。
5. **スクリプトをプロジェクトと統合** します。Cloud Code SDK をゲームにインポートし、[Unity Runtime からスクリプトを呼び出します](./how-to-guides/run-scripts/unity-runtime.md)。[REST API](./how-to-guides/run-scripts/rest-api.md) を使用するか [Multiplay サーバー](./how-to-guides/run-scripts/game-server.md) からスクリプトを実行します。

## ユースケースの例##example-use-cases

Cloud Code で多くのゲームロジックを作成できます。例えば、スクリプト内からさまざまなサービスに接続できます。サービスへの接続方法と、それがゲームメカニクスとしてどのように動作するかを理解するために、[ユースケース](./use-cases.md) を探ることができます。例には、サーバー時間のチート対策メカニズム、ゲーム内クーポン、1 日ごとのゲーム内報酬が含まれます。

高度な使用法については、[Unity Gaming Services Samples プロジェクト](/services/solutions/download-and-installation.md) をダウンロードして、Cloud Code で一般的なゲーム開発課題を解決する方法を確認し、[高度なユースケース](./use-cases/advanced-use-cases.md) を読んでください。

## 基本概念##fundamental-concepts

Cloud Code スクリプトの基本概念を説明します。

| トピック                                            | 説明                                                                                                                                                                                                                                                                  |
| ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [スクリプトの作成](./getting-started.md)                | スクリプトの作成方法を説明します。                                                                                                                                                                                                                                                   |
| [スクリプトの構造](./how-to-guides/script-structure.md) | スクリプトの構造について理解します。                                                                                                                                                                                                                                                  |
| [スクリプトの作成](./how-to-guides/write-scripts.md)    | [Unity Dashboard](./how-to-guides/write-scripts/unity-dashboard.md)、[UGS CLI](./how-to-guides/write-scripts/cli.md)、[REST API](./how-to-guides/write-scripts/rest-api.md)、または [Unity エディター](./how-to-guides/write-scripts/unity-editor.md) を使用してスクリプトを記述する方法を説明します。 |
| [スクリプトの実行](./how-to-guides/run-scripts.md)      | [REST API](./how-to-guides/run-scripts/rest-api.md) を使用するか [Multiplay サーバー](./how-to-guides/run-scripts/game-server.md) から、[Unity Runtime](./how-to-guides/run-scripts/unity-runtime.md) のスクリプトを実行する方法を説明します。                                                       |
| [スクリプトのテスト実行](./how-to-guides/test-run.md)      | スクリプトのテスト方法を説明します。                                                                                                                                                                                                                                                  |
| [エラー処理](./how-to-guides/error-handling.md)      | スクリプト内でエラーを処理する方法を説明します。                                                                                                                                                                                                                                            |
| [ロギング](../logging/overview)                     | ロギングを使用してスクリプトをデバッグする方法を説明します。                                                                                                                                                                                                                                      |

## ワークフローの改善##improve-your-workflow

スクリプトの開発とデプロイを合理化するには、プロセスを自動化します。

| トピック                                                                    | 説明                                       |
| ----------------------------------------------------------------------- | ---------------------------------------- |
| [CI/CD とのインテグレーション](./how-to-guides/automation.md)                      | スクリプトのデプロイを CI/CD パイプラインと統合します。          |
| [Unity エディターとのインテグレーション](./how-to-guides/write-scripts/unity-editor.md) | Unity エディターでスクリプトを記述、テスト、バンドルする方法を説明します。 |

## さらなるインテグレーション##integrate-further

モジュールを他の Unity Gaming Services や任意の外部サービスと統合し、クロスプレイヤーデータにアクセスできます。

他のサービスと統合するには、Cloud Code JavaScript ライブラリをインストールするか、HTTP クライアントを使用できます。

| トピック                                                                   | 説明                                      |
| ---------------------------------------------------------------------- | --------------------------------------- |
| [認証](./how-to-guides/authentication.md)                                | Cloud Code でゲームクライアントを認証する方法を説明します。     |
| [サービスとアクセストークンのサポート](./how-to-guides/token-support.md)                 | サービスおよびアクセストークンを使用してスクリプトを認証する方法を説明します。 |
| [利用可能なライブラリ](./reference/available-libraries.md)                       | Cloud Code スクリプトに利用可能な UGS SDK があります。   |
| [アクセス制御](./how-to-guides/access-control.md)                            | アクセスを制御し、望ましくない使用を防ぐ方法を説明します。           |
| [Unity サービスとのインテグレーション](./how-to-guides/unity-services-integration.md) | Cloud Code を他の Unity サービスに接続する方法を説明します。 |
| [外部サービスとのインテグレーション](./how-to-guides/external-services-integration.md)  | 外部サービスと統合する方法を説明します。                    |
| [クロスプレイヤーデータの操作](./how-to-guides/cross-player-data.md)                 | 他のプレイヤーのデータにアクセスして更新する方法を説明します。         |
| [Triggers](/triggers.md)                                               | トリガーを使用してサーバー側アクションを自動化する方法について説明します。   |
