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

# GS2-Script API リファレンス

Luaスクリプト実行環境




ゲーム固有の仕様を実現するためのサービスです。

GS2内の様々なイベントをトリガーとしてスクリプトを実行できます。<br>
例えば、アカウントの登録をしたときのイベントをトリガーとして、アカウントの初期設定スクリプトを実行したり、<br>
プレイヤーのレベルアップイベントをトリガーとして、スタミナを回復するスクリプトを実行したり、<br>
ゲームの仕様を標準のGS2の機能で実現できないときにスクリプトを使用して機能を拡張できます。

スクリプトの記述言語には Lua を採用しています。<br>
Lua はゲーム業界での採用実績が豊富な軽量スクリプト言語であり、シンプルな文法と高速な実行性能を備えています。

スクリプトの登録は文字列を直接アップロードする方法と、GitHub リポジトリと連携してファイルを取得する方法の両方が利用できます。<br>
GitHub 連携を利用することで、スクリプトの変更履歴を Git で管理し、Pull Request ベースでのレビュー・運用が可能になります。

スクリプトの実行は標準で時間制限が設定されており、過剰に長いスクリプトはエラーになります。<br>
スクリプトの実行時間は応答に含まれ、実行コストとして集計されます。

スクリプト内で発生した例外は API 呼び出し全体の例外として伝播し、前処理スクリプトで例外が発生した場合は GS2 標準処理は実行されません。

スクリプト内からは GS2 が提供する API 群をそのまま呼び出せます。<br>
GS2-Inventory のアイテム数を確認してから GS2-Account の処理を行う、GS2-Stamina の残量を見て GS2-Mission の達成判定をするなど、複数のマイクロサービスを横断するロジックをスクリプト内で組み立てられます。

[マイクロサービス紹介 / GS2-Script](../../microservices/script)



- [GS2-Script Deploy/CDK リファレンス](/ja/api_reference/script/deploy/)
  
- [GS2-Script SDK API リファレンス](/ja/api_reference/script/sdk/)
  
- [GS2-Script トランザクションアクション](/ja/api_reference/script/stamp_sheet/)
  
