WISS 2018

GameControllerizer: 既存ディジタルゲームへの入力をプログラミングするためのミドルウェアの提案
土井 伸洋* 栗原 一貴†

概要． 本論文では，IoT 機器，Web サービス，AI などの処理を統合して，最終的にゲームコントローラ操作へと変換し既存ディジタルゲームを操作するためのミドルウェア，GameControllerizer を提案する．多様な機器および情報源を既存ゲームへの入力として扱えるようになることにより，新たなエンタテインメントの創出やゲーミフィケーションの構成のための試行錯誤を容易に行うことが可能となる．GameControllerizer は Node-RED により各種入力情報を既存ゲーム入力に変換するプログラ
ミングを簡便に行うビジュアルプログラミング部，およびハード・ソフト両面のエミュレーションにより実際のゲーム機への入力信号を発生させるゲーム入力エミュレーション部からなる．多様なユースケース事例を提示することでその有用性を示す．

1

はじめに我々は既存ディジタルゲームの活用・拡張をより簡便に行うことができる開発支援技術を研究している．既存ディジタルゲームを拡張することにより，新たなエンタテインメント価値を付与したり，非ゲーム的目的，たとえば社会善の達成を実現することが可能になる．後者は栗原[1]がこれまでに提唱した，ゲーミフィケーションの周辺概念であるToolification of Games を指す．これまで既存ディジタルゲームを再利用した拡張的システム開発は，知的財産権の問題，およびソースコードの入手経路の問題から実現が難しかった．
そこで我々は，「外付けによる既存ディジタルゲー
ム拡張アーキテクチャ」を提案する．これは既存ディジタルゲームをそのまま内包し，その音声や映像の出力を各種パターン認識技術で検出・認識することでゲームの内部状態を推定するとともに，任意の情報処理を行った上でゲームコントローラ入力へと変換しフィードバックすることにより既存ディジタルゲームを拡張する情報システムアーキテクチャである（図 1）．このアーキテクチャにおいては既存ディジタルゲームは改変されずそのまま活用されるため，先述の問題を解決できる点が特徴である．このようなアーキテクチャはこれまでも個々の開発事例においてアドホックに採用されて来た経緯があるが，我々の貢献はこのようなシステム構成を定式化し要素分解・コンポーネント化し，それぞれ支援技術をCopyright is held by the author(s).
* 有限会社来栖川電算，†津田塾大学開発・提供する点にある．

図 1．外付けによる既存ディジタルゲーム拡張アーキテクチャ.

これまで，図 1 において①ゲームの内部状態の観測・推定については，画像を扱う Sikuli[2]，および電子音を扱う Picognizer[3]などで開発者支援が進んでいる状態である．一方で②操作の自動化，すな
わち拡張用情報システムの意図する状態に既存ゲームの内部状態を制御するために，ゲームコントローラ入力へと変換し接続する部分についての開発者支援は少ない．そのような開発を行う場合，毎回アドホックにキーボード・マウスなどのエミュレーションを行うための UI オートメーションライブラリを用いてコーディングを行ったり，ゲームコントローラの電子回路を直接改変して入力信号を出力するなどの手段が取られていたのが現状である．
本論文ではその解決のため，多様な機器および情報源を既存ゲームへの入力へと変換しディジタルゲームを操作するためのミドルウェア，
GameControllerizer を 提 案 す る （ 図 2 ）．
GameControllerizer は，様々な既存ディジタルゲームプラットフォームへの入力をソフトェア（S/W）
またはハードウェア（H/W）によりエミュレートするゲーム入力エミュレーション部，およびエンドユ

WISS 2018

ーザプログラマが多様な機器および情報源と通信しながら最終的にゲーム入力エミュレーション部へと操作入力を送信する手順を記述するビジュアルプログラミング部からなる．後者は視覚的に手軽にプログラミングが行える Node-RED を用いて実装されている．ディジタルゲームへの入力信号の時系列情報は，一次元の文字列として記述する可読性の高い
簡 易 言 語 で あ る DSL4GC で 記 述 さ れ る ．
GameControllerizer のソフトウェアはオープンソースとして公開中[4]であり，ハードウェアも配布予定である．

で検出し，単純なボタン連打で派手な演出を楽しめるアクションゲームに接続することで作業モチベーション維持に寄与できるかもしれない．
2.3 既存手法と共存する形で入力拡張する
提案手法により，外部入力部にゲームパッドを接続するなどして標準的なプレイ方式を担保しつつ，状況に応じて補助的な入力の介入を行うことが可能である．たとえば入力の難しいコマンドをホットキーあるいは音声入力等により代行することが考えられる．また，2.1 節で述べたように多様な入力機器を扱う場合でも，それをゲーム内の特定のシチュエーションに限定しそれ以外の場合は標準的な入力手段を用いることで活用の機会を増大することができる．
2.4 複数のゲームを扱う

図 2．GameControllerizer の構成図．

提案手法により，一人のプレイヤーの操作入力について，独立動作している複数のゲームへと同時にあるいは選択的に入力することにより，本来一対一の格闘ゲームにおいて一度に多数の敵と戦う，あるいはテトリスとぷよぷよを同時にプレイする，などの新たなエンタテインメントを模索可能である．

2

2.5 外付けゲーム拡張アーキテクチャによる入出力ループを形成する

応用シナリオ例

本章では提案手法の応用シナリオとして実現可能なコンセプト例について述べる．デモ映像[4]には実際の応用事例が収録されているので参照されたい．
2.1 入力機器や方式を拡張する提案手法により，本来の入力機器として想定されていない機器や情報源を既存ゲームへの入力として扱う拡張が可能である．スマートフォンのジェスチ
ャ，あるいは Bluetooth 接続のスマートフォンシャッターボタンデバイス，Sony MESH，スマートウォ
ッチを装着した状態での身体動作，スマートスピー
カーによる音声入力，為替情報 API による為替の騰落等をゲームへの入力として扱うことができる．また，TwitchPlaysPokemon のように少数あるいは不特定多数のプレイヤーに一つのゲームへの操作を分散させることも可能である．
2.2 Toolification of Games を構成する
前項で述べたように様々な機器や情報源をゲームへの入力として扱うことにより，既存ゲームを用いたゲーミフィケーションの実現方法である
Toolification of Games を構成することが可能である．例えばリズムよく肩たたきをすることをスマートウォッチ等のセンサで検出し音楽ゲームへの入力とすることで，マッサージ効果および対人コミュニケーションの促進を図れるかもしれない．あるいは
靴磨きや掃き掃除・拭き掃除の動作を加速度センサ

ゲームが提示する音声や映像を解析することでゲームの内部状態を推定し，任意の情報処理を行い，提案手法によりゲームへの入力を返すループが形成可能である（図 1）．音声の解析には Picognizer[3]などが，そして映像の解析には Sikuli[2]などが活用可能であろう．これによりゲームの自動操作が実現できるだけでなく，2.2 節で述べた Toolification ofGames の構成や 2.3 節で述べた補助的な入力の介入についてさらに高い精度で行うことが可能となる．

謝辞
本研究は中山隼雄財団研究助成，JSPS 科研費
JP15H02735，JP16H02867 の助成を受けた.

参考文献[1] K. Kurihara. Toolification of Games. Achieving
Non-game Purposes in the Redundant Spaces ofExisting Games. Proc of ACE'15, pp.31:1-31-5.
2015.
[2] Yeh et al. Using GUI Screenshots for Search andAutomation, Proc. of UIST'09, pp.183-192, 2009.
[3] Kurihara et al. Picognizer: A JavaScript Library for
DetectingandRecognizing
SynthesizedSounds. Proc. of ACE’17, pp.339-359, 2017.
[4] GameControllerizer.
http://www.unryu.org/home/gc (2018/5/31 確認)