皆様いかがお過ごしでしょうか。歌乃です。

今回はwindows標準でxboxコントローラーとして認識されるゲームパッドの各ボタンにキーボードを割り当てて使いたい

というニッチな需要を果たすためにあれこれ悩んだ顛末の話です。

前置きはいいから結末だけ知りたい!というせっかちさんはこちら。



PCに於けるゲーム環境で、ゲームパッド(ジョイパッド、コントロールパッドとも呼ばれる)を使っている諸兄は多いかと思います。

最近では大抵のゲームパッドがXboxのコントローラー表示になるようで、うちのゲームパッドも設定上では『Xbox 360 controller for windows』として認識されています。

xbox_gamepad_001

まあ、OSがwindowsでMSさんが推進しているコンシューマーゲームのゲーム機体がXboxなのでそうなるのも仕方がないよなという感じはします。

さて、うちのゲームパッドですが、PC用に買ったものではありません。
(私は基本的にキーボードとマウスでプレイする派です)

うちのお子様と嫁の『Nintndo Switch』でのプレイ環境を向上するために買い足したものです。

ご存じのようにNintndo SwitchにはJoyConという立派なゲームパッドが二つも付属しているのですが、設計上かなり小さくなっています。お子様の手にはちょうどいい大きさなのかもしれませんが、女性で手が小さいとはいえうちの嫁の手であっても小さすぎます。そのあたりを解消するために『Switch』対応のゲームパッドを追加で購入したわけです。

まあ、それに便乗して私も買ったわけですが(`・ω・´)

私が買ったゲームパッドは知る人ぞ知る、Beboncool というブランドのBluetoothとUSB接続両方可能なタイプのものです。

Beboncoolブランドは中国に拠点を置くいわゆる中華製の製品です。信頼性はそれなりですが、そんなことが気にならないだけのコスパがあります。



閑話休題。

通常ゲームパッドに限らずUSB接続機器はWindowsではPCに接続すれば大抵のものは自動的に認識されて必要なドライバーがインストールされるようになってます。

私が使ってるBeboncoolのゲームパッドもつなぎさえすれば前述の『Xbox 360 controller for windows』として認識されます。

Bluetoothで接続しても同様です。Nintndo Switch 用に買ったものですがSteamなどのPCゲームでも問題なく使用できます。



さて、前置きが長く(年寄りじゃから話が長くなってしまってのぅ)なってしまいましたが、今回このゲームパッドをキーボード代わりに使いたいという状況になりました。

具体的にはうちのお子様がFNFのプレイで苦戦しているのでキーボードではなくゲームパッドで遊ばせてあげようという趣旨です。

FNF(Friday Night Funkin')について軽く説明しておくとブラウザでプレイすることのできるオープンソースのドネーションウェアリズムゲーで、ルックアンドフィールはKONAMI(現コナミアミューズメント)のDDR(Dance Dance Revolution、ダンスダンスレボリューション)を踏襲している。DDRはアーケード筐体で足を使うものだったが、PC版のFNFではキーボード(矢印キーやASDWキー)を使う。有志によるMODが数多く存在しており、youtubeなどでの配信も多い。

私は昔エレコムのJC-U4013SBKという有線のゲームパッドを使用していたことがあります。こちらの製品には『ゲームパッドアシスタント』というユーティリティが付いていて手軽にゲームパッドのボタンに任意のキーを割り当てるなどができたので、今回も簡単に行けるだろうと考えていました。

世の中はそう甘くなかったようです。

まずBeboncoolの公式サイトが開けませんでした

当然、コントローラー用のドライバもユーティリティも手に入りませんでした。まあWindows標準ドライバで動くので問題ないっちゃないんですが。

前出のエレコムさんだと10年くらい前の製品でもドライバやユーティリティーが当たり前に落とせていたので目が点というかこんなものなのかなという感想です。このあたりも中華製コスパに込みと言うことなのかもしれません。エレコムさんはコスパでも全く負けてませんけどね



次に思いついたのは、Windows標準のゲームコントローラー設定から設定できるんじゃね?ということでした。

ゲームコントローラーの設定はwindowsの設定 > デバイス を開き、右の関連設定の『デバイスとプリンター』のリンクをポチります。

xbox_gamepad_002

するとデバイスの一覧が出るのでそこから『Xbox 360 controller for windows』を選んで右クリックし『ゲームコントローラーの設定』をポチります。

ゲームコントローラーの設定からプロパティを開くと、

xbox_gamepad_003

ゲームコントローラーのテスト画面が出ます。各ボタンやスティックのテストができますが、キーの割り当てなどはできません。残念 (´・ω・`)



次に思いついたのは、『Xbox コントローラー』として認識されているのだから、それ用のドライバやユーティリティが使えるんじゃね?ということでした。

ググってみると『Microsoft Store』に『XBoxアクセサリ』というユーティリティがあるようです。

さっそくMicrosoft Storeで探してインストールしてみました。

xbox_gamepad_004

インストール後立ち上げてみると、

xbox_gamepad_005

あー、なるほどね。

純正のXBoxコントローラー用ってことですね。
(XBox専用のコントローラーがMicrosoftから各種販売されてます)

コントローラーを認識してくれないのであきらめました。残念 (´・ω・`)



次に思いついたのは、エレコムの『ゲームパッドアシスタント』みたいなユーティリティがOSSであるんじゃね?ということでした。

Windowsのデバイスインプットキューをフックして、なんちゃってマウス自動化ユーティリティ程度なら私でも組んだことがあるのですから、世の中のHackerたちが作ってないはずがない!と信じて探してみました。

ありました。それもMicrosoft Storeに。

xbox_gamepad_006

その名も『AntiMicro』です。

さっそくインストールしてみました。

すると画面下にメッセージが。読んでみると「長期間更新されてないっぽいから、公式サイトから最新版を手に入れてね!」とのこと(意訳)。

公式サイトはgithubで、AntiMicroはAntiMicroXにバージョンアップしたとのこと。

https://github.com/AntiMicroX/antimicrox/

開発者様に感謝しつつダウンロードさせてもらいました。

インストールしようとすると、windows difender さんが「怪しいプログラムだ!」と言って止めてきますが無視してインストールします。 (ご利用はくれぐれも自己責任でお願いします)

xbox_gamepad_007

おお!これだ!これが求めていたものじゃ!

使ってみた感想ですが、UIも直感的でわかりやすく、リアルタイムで押しているボタンの項目がハイライトしてくれるのでゲームパッドの各ボタンにキーボードのキーが簡単に割当できます。



各ボタンにキーの割り当てをおこなったあと、さっそくFNFをプレイ。

しっかりとキーボードの代わりにゲームパッドでプレイできたので、うちのお子様に交代。

数回プレイをしていたのです

「キーボードの方がやりやすい ( ゚Д゚)」

と言われてしまいました (´・ω・`)

うん、まあ、そういう気持ちもわからんでもない。



Post If you feel like it, I would be happy if you could post it.