GS2-Script API 레퍼런스

Lua 스크립트 실행 환경

게임 고유의 사양을 구현하기 위한 서비스입니다.

GS2 내의 다양한 이벤트를 트리거로 스크립트를 실행할 수 있습니다.
예를 들어, 계정 등록 시 이벤트를 트리거로 계정 초기 설정 스크립트를 실행하거나,
플레이어의 레벨업 이벤트를 트리거로 스태미나를 회복하는 스크립트를 실행하는 등,
게임 사양을 표준 GS2 기능으로 구현할 수 없을 때 스크립트를 사용해 기능을 확장할 수 있습니다.

스크립트 작성 언어로는 Lua를 채택하고 있습니다.
Lua는 게임 업계에서 채택 실적이 풍부한 경량 스크립트 언어로, 단순한 문법과 빠른 실행 성능을 갖추고 있습니다.

스크립트 등록은 문자열을 직접 업로드하는 방법과, GitHub 저장소와 연동하여 파일을 가져오는 방법 두 가지 모두를 이용할 수 있습니다.
GitHub 연동을 이용하면, 스크립트의 변경 이력을 Git으로 관리하고 Pull Request 기반의 리뷰·운용이 가능해집니다.

스크립트 실행에는 표준으로 시간 제한이 설정되어 있어, 지나치게 긴 스크립트는 오류가 됩니다.
스크립트 실행 시간은 응답에 포함되며, 실행 비용으로 집계됩니다.

스크립트 내에서 발생한 예외는 API 호출 전체의 예외로 전파되며, 전처리 스크립트에서 예외가 발생한 경우 GS2 표준 처리는 실행되지 않습니다.

스크립트 내에서는 GS2가 제공하는 API 그룹을 그대로 호출할 수 있습니다.
GS2-Inventory의 아이템 수를 확인한 후 GS2-Account의 처리를 수행하거나, GS2-Stamina의 잔량을 보고 GS2-Mission의 달성 판정을 하는 등, 여러 마이크로서비스를 넘나드는 로직을 스크립트 내에서 구성할 수 있습니다.


GS2-Script SDK API 레퍼런스

각종 프로그래밍 언어용 GS2-Script SDK의 모델 사양과 API 레퍼런스

GS2-Script Deploy/CDK 레퍼런스

GS2-Deploy의 스택을 생성할 때 사용하는 템플릿 포맷과, CDK를 이용한 각종 언어의 템플릿 출력 구현 예제

GS2-Script 트랜잭션 액션

검증/소비/입수 각 트랜잭션 액션의 사양