abecobe」のux向上のために使われた技術 ·...

1
パズルゲーム「abecobe」のUX向上のために使われた技術 浅野啓 (チーム : けいだろう 渋谷教育学園渋谷高等学校2年) 1. abecobeとは? abecobeは、上下左右逆方向に動く2つのキャラクターを操作し 、同時にゴールさせる、スマホ用パズルゲームです。例えば、上に フリックをすると下の画像のようにオレンジ色のキャラクターが 動いた方向と逆方向に黒色のキャラクターが動きます。そして、2 つのキャラクターが同時にピンク色のゴールに辿り着けばゲー ムクリアです。 2. 研究内容 本研究では、主にabecobeのシステム、そしてデザインの2つに 分けて研究を行いました。システムではステージの自動生成、そ して256進数を用いたステージの文字列化について、デザインで はユーザーの分析を得てabecobeのデザインの変化について研 究をしました。 デザインはtwitterを用いたA/Bテストを合計102回行いました。 400枚ほどのモックアップを描き、4枚ごとにテストを行い、それぞ れに対してフィードバックを受け取り、改善をしました。 3. システムについて 4. デザインについて 様々な試行錯誤によってゲームのUX改善に繋がり、Appstoreや Google Playでの評価も非常に良好な結果になりました。今後の はこのゲームのゲームデザインの在り方を見直し、更に広いター ゲット層に向けて制作していきたいと考えています。 5. まとめ・今後の課題 abecobeのステージはすべて自動生成されています。自動生成す る上で重要なのが、レベルデザイン、つまりステージの難易度を 調節しつつ生成すること、そして必ずゴールが可能であることで す。 はじめに、レベルデザインをするために自動生成では Breadth-first searchではなく、深さがある程度自由に決めること が可能なDeapth-first searchを用いました。 その後、必ずゴールが可能かどうかを検証するためのテストコー ドとして、Breadth-first searchを行いました。プレイヤーの操作の 通り、上下左右の4通りの方向を試行しました。この際にすでに2 つのキャラクターが行った頂点の座標をメモしておくことで、ル ープをなくし、O(4^n)であったところを(n<=20)、O(n) (n<=20^2) まで計算量を抑えることを可能にしました。 また、ステージはプレイヤーが難しいと感じたものに対し共有が できるようにするため、すべてのステージを文字列化しました。文 字列化にあたって様々なSNSでは字数制限が存在することから、 なるべく短い文字列で表そうと考え、256進数を定義しこのことを 可能にしました。手法は以下の通りです。 1. 壁を1、道を0とおき、2進数で表す。 2. 256進数を定義する。 3. 2進数を256進数に変換する。 10101011101 → 5 93 → Ψ@ これにより、11マスの情報をわずか2文字で表せるようになり、全 体で見ると625文字で表すところを22文字で表せるようになりま した。 このアルゴリズムのステップは以下のとおりです。 1. 方向、すすむマス目を決定し、その先にブロックを配置する。 2. 通った場所には通ったことを配列にメモし、1に戻る。 3. この際にすでに通った場所にブロックを配置した場合、一つ前 の頂点に戻り再び繰り返す。 4. 試行回数によって難易度を分け、回数分終了した場合、ステー ジの生成を終える。 このゲームはプロシージャルなため、中央のステージはすべて自 動生成されており、理論上126京通りものステージが生成可能で す。 本研究では、abecobeのUX向上を目的として、3年間様々なアル ゴリズムの工夫やユーザーの分析を行いました。

Upload: others

Post on 23-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: abecobe」のUX向上のために使われた技術 · パズルゲーム「abecobe」のUX向上のために使われた技術 浅野啓 (チーム : けいだろう 渋谷教育学園渋谷高等学校2年)

パズルゲーム「abecobe」のUX向上のために使われた技術浅野啓 (チーム : けいだろう 渋谷教育学園渋谷高等学校2年)

1. abecobeとは?abecobeは、上下左右逆方向に動く2つのキャラクターを操作し、同時にゴールさせる、スマホ用パズルゲームです。例えば、上にフリックをすると下の画像のようにオレンジ色のキャラクターが動いた方向と逆方向に黒色のキャラクターが動きます。そして、2つのキャラクターが同時にピンク色のゴールに辿り着けばゲームクリアです。

2. 研究内容本研究では、主にabecobeのシステム、そしてデザインの2つに分けて研究を行いました。システムではステージの自動生成、そして256進数を用いたステージの文字列化について、デザインではユーザーの分析を得てabecobeのデザインの変化について研究をしました。

デザインはtwitterを用いたA/Bテストを合計102回行いました。400枚ほどのモックアップを描き、4枚ごとにテストを行い、それぞれに対してフィードバックを受け取り、改善をしました。

3. システムについて 4. デザインについて

様々な試行錯誤によってゲームのUX改善に繋がり、AppstoreやGoogle Playでの評価も非常に良好な結果になりました。今後のはこのゲームのゲームデザインの在り方を見直し、更に広いターゲット層に向けて制作していきたいと考えています。

5. まとめ・今後の課題

abecobeのステージはすべて自動生成されています。自動生成する上で重要なのが、レベルデザイン、つまりステージの難易度を調節しつつ生成すること、そして必ずゴールが可能であることです。

はじめに、レベルデザインをするために自動生成ではBreadth-first searchではなく、深さがある程度自由に決めることが可能なDeapth-first searchを用いました。

その後、必ずゴールが可能かどうかを検証するためのテストコードとして、Breadth-first searchを行いました。プレイヤーの操作の通り、上下左右の4通りの方向を試行しました。この際にすでに2つのキャラクターが行った頂点の座標をメモしておくことで、ループをなくし、O(4^n)であったところを(n<=20)、O(n) (n<=20^2)まで計算量を抑えることを可能にしました。

また、ステージはプレイヤーが難しいと感じたものに対し共有ができるようにするため、すべてのステージを文字列化しました。文字列化にあたって様々なSNSでは字数制限が存在することから、なるべく短い文字列で表そうと考え、256進数を定義しこのことを可能にしました。手法は以下の通りです。

1. 壁を1、道を0とおき、2進数で表す。

2. 256進数を定義する。

3. 2進数を256進数に変換する。10101011101 → 5 93 → Ψ@

これにより、11マスの情報をわずか2文字で表せるようになり、全体で見ると625文字で表すところを22文字で表せるようになりました。

このアルゴリズムのステップは以下のとおりです。1. 方向、すすむマス目を決定し、その先にブロックを配置する。2. 通った場所には通ったことを配列にメモし、1に戻る。3. この際にすでに通った場所にブロックを配置した場合、一つ前の頂点に戻り再び繰り返す。4. 試行回数によって難易度を分け、回数分終了した場合、ステージの生成を終える。

このゲームはプロシージャルなため、中央のステージはすべて自動生成されており、理論上126京通りものステージが生成可能です。

本研究では、abecobeのUX向上を目的として、3年間様々なアルゴリズムの工夫やユーザーの分析を行いました。