GS2-Quest Script トリガー リファレンス

拡張スクリプトを呼び出すイベントトリガーのリファレンス

トリガー

startQuest

クエスト開始

同期実行スクリプト

クエスト開始処理の前に、スクリプトが同期実行されます。

Request
説明
namespace Namespace ネームスペース
questGroupModel QuestGroupModel クエストグループモデル
questModel QuestModel クエストモデル
randomSeed long 乱数シード
rewards Reward[] クエストで得られる報酬リスト
userId string ユーザーID
config Config[] トランザクションの変数に適用する設定値
Result
必須 デフォルト 値の制限 説明
permit bool
クエスト開始を許可するか
overrideRandomSeed long 0 ~ 9223372036854775805 乱数シード
overrideRewards Reward[] 0 ~ 1000 items クエストで得られる報酬リスト
実装例
-- Request
local namespace = args.namespace
local questGroupModel = args.questGroupModel
local questModel = args.questModel
local randomSeed = args.randomSeed
local rewards = args.rewards
local userId = args.userId
local config = args.config

-- Business logic:
local permit = true
local overrideRandomSeed = 0
local overrideRewards = {}

-- Result
result = {
  permit=permit,
  overrideRandomSeed=overrideRandomSeed,
  overrideRewards=overrideRewards
}

非同期実行スクリプト

クエスト開始処理の後に、スクリプトが非同期実行されます。

Request
説明
namespace Namespace ネームスペース
questGroupModel QuestGroupModel クエストグループモデル
questModel QuestModel クエストモデル
progress Progress クエスト進行状況
config Config[] トランザクションの変数に適用する設定値
実装例
-- Request
local namespace = args.namespace
local questGroupModel = args.questGroupModel
local questModel = args.questModel
local progress = args.progress
local config = args.config

-- 非同期スクリプトは通常、API のレスポンスには影響を与えません。
-- ログ出力や分析、外部通知などに使用します。

result = {
}

completeQuest

クエストクリア

同期実行スクリプト

クエストクリア処理の前に、スクリプトが同期実行されます。

Request
説明
namespace Namespace ネームスペース
questGroupModel QuestGroupModel クエストグループモデル
questModel QuestModel クエストモデル
rewards Reward[] クエストで得た報酬リスト
progress Progress クエスト進行状況
config Config[] トランザクションの変数に適用する設定値
Result
必須 デフォルト 値の制限 説明
permit bool
クエストクリアを許可するか
overrideRewards Reward[] 0 ~ 1000 items クエストで得られる報酬リスト
実装例
-- Request
local namespace = args.namespace
local questGroupModel = args.questGroupModel
local questModel = args.questModel
local rewards = args.rewards
local progress = args.progress
local config = args.config

-- Business logic:
local permit = true
local overrideRewards = {}

-- Result
result = {
  permit=permit,
  overrideRewards=overrideRewards
}

非同期実行スクリプト

クエストクリア処理の後に、スクリプトが非同期実行されます。

Request
説明
namespace Namespace ネームスペース
questGroupModel QuestGroupModel クエストグループモデル
questModel QuestModel クエストモデル
rewards Reward[] クエストで得た報酬リスト
progress Progress クエスト進行状況
config Config[] トランザクションの変数に適用する設定値
実装例
-- Request
local namespace = args.namespace
local questGroupModel = args.questGroupModel
local questModel = args.questModel
local rewards = args.rewards
local progress = args.progress
local config = args.config

-- 非同期スクリプトは通常、API のレスポンスには影響を与えません。
-- ログ出力や分析、外部通知などに使用します。

result = {
}

failedQuest

クエスト失敗

同期実行スクリプト

クエスト失敗処理の前に、スクリプトが同期実行されます。

Request
説明
namespace Namespace ネームスペース
questGroupModel QuestGroupModel クエストグループモデル
questModel QuestModel クエストモデル
rewards Reward[] クエストで得た報酬リスト
progress Progress クエスト進行状況
config Config[] トランザクションの変数に適用する設定値
Result
必須 デフォルト 値の制限 説明
permit bool
クエスト失敗を許可するか
overrideRewards Reward[] 0 ~ 1000 items クエストで得られる報酬リスト
実装例
-- Request
local namespace = args.namespace
local questGroupModel = args.questGroupModel
local questModel = args.questModel
local rewards = args.rewards
local progress = args.progress
local config = args.config

-- Business logic:
local permit = true
local overrideRewards = {}

-- Result
result = {
  permit=permit,
  overrideRewards=overrideRewards
}

非同期実行スクリプト

クエスト失敗処理の後に、スクリプトが非同期実行されます。

Request
説明
namespace Namespace ネームスペース
questGroupModel QuestGroupModel クエストグループモデル
questModel QuestModel クエストモデル
rewards Reward[] クエストで得た報酬リスト
progress Progress クエスト進行状況
config Config[] トランザクションの変数に適用する設定値
実装例
-- Request
local namespace = args.namespace
local questGroupModel = args.questGroupModel
local questModel = args.questModel
local rewards = args.rewards
local progress = args.progress
local config = args.config

-- 非同期スクリプトは通常、API のレスポンスには影響を与えません。
-- ログ出力や分析、外部通知などに使用します。

result = {
}