Documentation index for AI agents

GS2-Script 트랜잭션 액션

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

Acquire Action

입수 액션

Gs2Script:InvokeScript

스크립트 실행

지정된 Lua 스크립트를 제공된 JSON 인수로 동기적으로 실행합니다. 스테이터스 코드, 반환값, 트랜잭션 정보, 난수 상태, 실행 시간, 표준 출력을 포함한 실행 결과를 반환합니다. GS2 서비스 간 원자적 처리를 위한 트랜잭션 처리를 지원합니다.

수량 지정 가능한 액션: 아니오

반전 가능한 액션: 아니오

타입활성화 조건필수기본값값 제한설명
scriptIdstring
~ 1024자스크립트 GRN
userIdstring~ 128자사용자ID
#{userId}로 설정하면 로그인 중인 사용자ID로 치환됩니다.
argsstring“{}”~ 5242880자스크립트에 전달되는 인수 (JSON 형식)
randomStatusRandomStatus난수 상태
timeOffsetTokenstring~ 1024자타임 오프셋 토큰
{
    "action": "Gs2Script:InvokeScript",
    "request": {
        "scriptId": "[string]스크립트 GRN",
        "userId": "[string]사용자ID",
        "args": "[string]스크립트에 전달되는 인수 (JSON 형식)",
        "randomStatus": {
            "seed": "[long]난수 시드",
            "used": [
                {
                    "category": "[long]카테고리",
                    "used": "[long]사용 횟수"
                }
            ]
        },
        "timeOffsetToken": "[string]타임 오프셋 토큰"
    }
}
action: Gs2Script:InvokeScript
request:
  scriptId: "[string]스크립트 GRN"
  userId: "[string]사용자ID"
  args: "[string]스크립트에 전달되는 인수 (JSON 형식)"
  randomStatus:
    seed: "[long]난수 시드"
    used:
    - category: "[long]카테고리"
      used: "[long]사용 횟수"
  timeOffsetToken: "[string]타임 오프셋 토큰"
transaction.service("script").acquire.invoke_script({
    scriptId="[string]스크립트 GRN",
    userId="[string]사용자ID",
    args="[string]스크립트에 전달되는 인수 (JSON 형식)",
    randomStatus={
        seed="[long]난수 시드",
        used={
                {
                    category="[long]카테고리",
                    used="[long]사용 횟수"
                }
            }
    },
    timeOffsetToken="[string]타임 오프셋 토큰",
})