重要な概念
k-ID をゲームに統合するには、次の手順が必要です:
プレイヤーの位置情報と生年月日の取得
k-ID の年齢確認および同意ワークフローを実装するためには、ゲームはプレイヤーに関する2つの重要な情報を取得する必要があります。それは、プレイヤーの所在地(管轄区域)とプレイヤーの生年月日です。
居場所
所在地はプレイヤー自身が宣言することもできますが、推奨される方法は、ゲーム内でサービスを呼び出してプレイヤーのIPアドレスに関する情報を取得することです。所在地情報は、ISO 3166-1 alpha-2 国コード(例:US)または ISO 3166-2 地区コード(例:US-CA)のいずれかで指定できます。可能な限り地区コードを提供することをお勧めします。これは、現時点では地域にローカライズされた規制がなくても、将来的に導入される可能性があるためです。地区コードを提供することで、規制が変わった際にプレイヤーの権限が適切に調整されることを確保できます。
注意項目:
-
一部のゲームでは、プレイヤーがVPNを使用するなどして位置情報を偽装することを検出し、防止するための独自の保護機能が備わっている場合があります。送信される位置情報が誤った設定を避けるために、k-ID API に送信する前に、これらのツールで適用可能な検証が行われていることを確認してください。
-
ベストプラクティスとして、プレイヤーの管轄区域は、プレイヤーがゲームを最初に起動した際に固定され、それ以外の場合は、サポートリクエストを提出しない限り変更できないとされています。これは、プレイヤーが自分の管轄区域で無効にすべき機能を有効にするために「フォーラムショッピング」を行うことを防止するためです。
プレイヤーのIPアドレスに基づいて位置情報を取得する方法の一例として、https://ipapi.co/json のようなサービスを呼び出す方法があります。このサービスは、以下のようなJSON結果を返します。
{
"ip": "76.22.71.171",
"network": "76.22.68.0/22",
"version": "IPv4",
"city": "Issaquah",
"region": "Washington",
"region_code": "WA",
"country": "US",
"country_name": "United States",
"country_code": "US",
"country_code_iso3": "USA",
"country_capital": "Washington",
"country_tld": ".us",
"continent_code": "NA",
"in_eu": false,
"postal": "98027",
"latitude": 47.4998,
"longitude": -122.0086,
"timezone": "America/Los_Angeles",
"utc_offset": "-0800",
"country_calling_code": "+1",
"currency": "USD",
"currency_name": "Dollar",
"languages": "en-US,es-US,haw,fr",
"country_area": 9629091.0,
"country_population": 327167434,
"asn": "AS7922",
"org": "COMCAST-7922"
}
青年月日
生年月日は、次のいずれかの形式でAPIに提供できる文字列です:YYYY、YYYY-MM、またはYYYY-MM-DD。管轄区域によっては、ゲームを最初にプレイする際にプレイヤーに年齢を尋ねる必要があるかどうかが決まります。もしその管轄区域で年齢確認が求められている場合は、生年月日を収集するためのユーザーインターフェース要素を表示する必要があります。これを 年齢ゲート と呼びます。
年齢ゲートを表示する際のベストプラクティスとしては、「ニュートラルな年齢ゲート」を表示することです。これは、すでに年齢が設定されておらず、ユーザーが自分で年齢を設定する必要があるものです。さらに、年齢ゲートがスライダーで年齢値を設定する場合、ESRB ではスライダーの最大年齢を35歳に設定することを推奨しています。
現在の管轄区域では年齢ゲートを表示する必要がない場合、プレイヤーは追加の確認なしで続行でき、その際、生年月日は未設定のままになります。