コンテンツにスキップ

Godot Quick Start

先に Godot インストール を完了し、Core プラグインを有効にして igp/general/app_id を設定してください。

ゲーム自身の起動 Node でイベントを購読してから IGP.initialize() を呼びます。Autoload が存在するだけでは SDK の ready を意味しません。

Godot 4.7.1 / 4.4.1:

extends Node
func _ready() -> void:
IGP.connection_changed.connect(_on_connection_changed)
IGP.authorization_changed.connect(_on_authorization_changed)
IGP.error_occurred.connect(_on_error_occurred)
var result: Dictionary = await IGP.initialize()
if not result.success:
push_error("%s: %s" % [result.code, result.message])
return
print("IGP ready: ", IGP.is_ready)

Godot 3.6.2:

extends Node
func _ready():
IGP.connect("connection_changed", self, "_on_connection_changed")
IGP.connect("authorization_changed", self, "_on_authorization_changed")
IGP.connect("error_occurred", self, "_on_error_occurred")
var pending = IGP.initialize()
var result = yield(pending, "completed") if pending is GDScriptFunctionState else pending
if not result.success:
push_error("%s: %s" % [result.code, result.message])
return
print("IGP ready: ", IGP.is_ready)

success は初期化要求の完了を示します。IGP.is_ready には Desktop Session とゲーム認可の ready も必要です。非マルチプレイヤー機能をルームや realtime の状態でブロックしないでください。

  • IGP.is_attached:Desktop Session が接続済み。
  • IGP.is_ready:Desktop Session とゲーム認可が ready。
  • IGP.authorization.state:現在のゲーム認可状態。
  • IGP.capabilities / IGP.supports_capability(...):デスクトップクライアントが実際に公開する capability。

Core は初回ゲーム認可失敗時に QuitRetry のネイティブウィンドウを標準表示します。igp/authorization_fallback/* で文言の変更または無効化ができます。UI を無効化しても認可状態は変わりません。

任意機能の呼び出し前に、モジュールと capability の両方を確認します。

if IGP.compliance != null:
IGP.compliance.event_changed.connect(_on_compliance_event_changed)
if IGP.leaderboard != null and IGP.supports_capability(IGP.CAPABILITY_LEADERBOARD):
var result: Dictionary = await IGP.leaderboard.list()
print(result)

実名認証とアンチアディクションは IGP.compliance だけにあります。古い Core alias を探さないでください。Compliance の標準ウィンドウは入力だけをブロックし、ゲームシステムの停止と認証 WebView の表示はゲームが担当します。

  1. IGP デスクトップクライアントを起動し、テストアカウントでログインします。
  2. 正しい appId でプロジェクトを実行します。プラットフォームのコンテキスト注入が必要な場合は、デスクトップクライアントからゲームを起動します。
  3. 初期化成功、Desktop Session の attached、明確な認可状態を確認します。
  4. capability が導入パッケージとテスト環境設定に一致することを確認します。
  5. 1 つの読み取り機能またはテスト実績を呼び、successcodemessage を確認します。

完全な機能 UI は Godot テストプロジェクト で確認できます。