第2章
実験を使おう

本章では、A/Bテストを実施することができる実験機能の使い方について解説します。A/Bテストの詳細は、第1章「A/Bテストを知ろう」を参照してください。

2.1 実験とは

実験とは、A/Bテストができる機能のことです。A/Bテストとは何かというと、ユーザーをランダムに振り分けて、あるユーザーにはAのパターンを見せて、別のユーザーにはBのパターンを見せるというテストのことです。ただ見せるだけではなく、その結果ユーザーの行動がどのように変わったのかをデータで分析し、今後の運営に役立てることができます。実験はテストなのですが、ユーザーからすると、実際にリリースされたものとして見ることができます。実験の結果、ユーザーの反応が良いものを、最終的に機能として確定させるというのが一般的です。

実験のイメージ

図2.1: 実験のイメージ

2.2 実験の登録

今回は、「ボタンの色を変える」という実験を登録してみます。サイドバーの「実験」を選択することで、実験機能を見ることができます。「新しい実験」から、実験を登録していきましょう(図2.2)。ちなみに、「自動化 > A/Bテスト」と進むとA/Bテストを登録するところがありますが、今後この機能は実験機能に置き換わります。A/Bテストの機能ではなく、実験機能を使用するようにしましょう。

新しい実験

図2.2: 新しい実験

すると、新しい実験を登録する画面になります(図2.3)。実験名は、「Button Color Change」にしました。説明の下には、実験を開始する日時と終了する日時が指定できます。日本時間ではなくUTCになっている点に注意してください。登録をしようとしている日本時間は20:40頃ですが、その9時間前がUTCになるため、11:40が表示されています。期間の初期値は2週間です。1日間〜90日間まで実験ができるので、必要に応じて期間を変更してください。実験の参加者は、すべてのプレイヤーとセグメントで選ぶことができます。例えば、「課金したことがないユーザー」というセグメントを作成しておき、「課金したことがないユーザーがボタンの色によって課金率が変わるのか」なども調べることができますね。今回は、すべてのプレイヤーで実行することにしました。

新しい実験の登録(タイトル、概要、期間、対象ユーザー)

図2.3: 新しい実験の登録(タイトル、概要、期間、対象ユーザー)

次に、バリアントを登録していきます。Aの方が「制御」、Bの方が「処置」と訳されているところがありますが、これはもともと「Control」と「Treatment」という英語です。Controlベースとなるバージョンのことで、Treatment何か修正を加えたバージョンのことを指します。つまり、パターンCやDを増やしたとしても、それらはすべてTreatmentになり、ベースとなるControlはひとつだけです。今回は、ボタンの色が赤をベースとして、青色を試してみるという実験にしました(図2.4図2.5)。

新しい実験の登録(バリアントA)

図2.4: 新しい実験の登録(バリアントA)

表2.1: バリアントAの入力内容

項目 入力内容
バリアント名 A
対象プレイヤーに対する割合 50
バリアントの説明 ボタンの色が赤
制御変数名 color
制御変数値 red
新しい実験の登録(バリアントB)

図2.5: 新しい実験の登録(バリアントB)

表2.2: バリアントBの入力内容

項目 入力内容
バリアント名 B
対象プレイヤーに対する割合 50
バリアントの説明 ボタンの色が青
処置変数名 color
処置変数値 blue

下書きとして保存することもできますが、今回は「今すぐ実行」としました。実験の登録が完了すると、図2.6の画面になります。「今すぐ実行」をしたので、ステータスが「実行中」になっていることが確認できますね。

実験の登録後

図2.6: 実験の登録後

第5章
不正プレイヤーをBANしよう

PlayFabでは、不正なプレイヤーをBAN(プレイ禁止)にする機能を提供しています。本章では、BANの概要と使い方について解説します。

5.1 BANとは

BANとは、日本語で「禁止」という意味で、プレイヤーをプレイ禁止にすることをいいます。ゲームを遊んでくれるのは嬉しいことですが、不正をされたユーザーを放置していては、ゲームが成り立たなくなってしまう可能性があります。不正とは、具体的に次のようなものです。

  • ゲーム内通貨を無限に手に入れる
  • ランキングのスコアを操作して1位をとる
  • ガチャを回さずにキャラクターを手に入れる

処理をサーバーで実行することで、ある程度の不正を防ぐことはできますが、100%ではありません。何か不正をしたプレイヤーに対しては、「プレイ禁止」という対応をするのが一番効果的です。PlayFabでは、アクションとルールの機能と組み合わせることで、不正を自動で検知してプレイヤーをBANすることができます(図5.1)。

不正の検知とアカウントBANのイメージ

図5.1: 不正の検知とアカウントBANのイメージ

5.2 不正の検知を自動化する

不正の検知を自動化するには、ふたつ方法があります。

  • アクションとルールを設定する
  • セグメントを設定する

どちらも同じような処理ができますが、今回はアクションとルールを使用して設定をしてみます(図5.2)。イベントタイプは、player_statistic_changedを指定することで、ランキングが変わったタイミングで処理を動かすことができます。HighScoreのランキングで、スコアが10,000,000を超えた場合にBANするようにしました。BANするには、アクションのところで「プレイヤーを禁止にする」を選びます。禁止期間については、空欄にすることで無期限となります。最後に、禁止の理由を入力して登録すれば、準備完了です。ちなみに、セグメントで登録した場合は、図5.3のようになります。

アクションとルールの登録

図5.2: アクションとルールの登録

セグメントでの設定方法

図5.3: セグメントでの設定方法

実行してみると、図5.4のログが出てきて、BANされたことが確認できました。プレイヤーの詳細画面の「使用禁止」から、BANの詳細情報を確認することができます(図5.5)。また、BANされたプレイヤーでログインした場合は、エラーでログインすることができません(図5.6)。ユーザーには、BANされたことをメッセージで伝えてあげましょう。

BAN実行ログ

図5.4: BAN実行ログ

プレイヤー詳細画面の使用禁止

図5.5: プレイヤー詳細画面の使用禁止

BANされたプレイヤーのログイン

図5.6: BANされたプレイヤーのログイン

試し読みはここまでです。
この続きは、製品版でお楽しみください。