stutterの日記

ファンタシースターオンライン2の偏った話、ほか覚え書き

〈更新〉Xbox One ControllerをPSO2で使う——LT/RTトリガー同時押し問題の対処

更新: この情報は「NGS」ではない2017年当時のもので、現在と状況が異なる。PSO2:NGSではややこしい設定なしにXbox Oneコントローラーを使用できる。

情報が整理されていないと感じたのでまとめておく。ここでのゴールにはPSO2での3ボタン操作を前提としたLT/RTトリガー同時押し対応を含めるものとするが、Elite Wireless Controllerについては扱わない。

なぜXbox One Controllerを使うべきか

端的にはメインストリームから外れたデバイスを使用することで問題が発生するため。

  • 従来はXbox 360 Controllerが標準的にPCのコントローラーとして使用されていたが、EOL(生産終了)となった。現状使えているならそのままでもよいが、ゲームパッドは消耗品であり安定した調達が必要となる。
  • Xbox 360 Controllerはいわゆる非公式ドライバーで運用するのが定石となっていたが、DirectInputゲームパッドが存在するとXInputに対応したゲームで不具合が発生*1したり、ゲームパッドとして認識されなかったりする。

Xbox One Controllerを無線接続するにはWindows 10での使用が前提となる。古いWindowsの場合はコントローラー以前にOSをアップグレードするべきであると思うが、いずれにしてもここでは論じない。

Xbox One Controllerを設定する

2020年に販売されている後期のXbox One ワイヤレスコントローラーは、PCとBluetoothで接続できる。以前のXbox OneワイヤレスコントローラーはBluetoothをサポートせず、Xbox ワイヤレスアダプター for Windows 10が必要になる場合があった。*2

  • Creators Update(1703)以降が適用されている環境では、Xbox One Controllerを接続すると自動的にドライバーがインストールされる。
  • PSO2のゲーム内オプションでゲームパッドの手動設定をすれば、左右のスティックとトリガーは動くようになる。

このように結論としては動く。ただし後述の問題が発生する。

LT/RTのトリガーが同時押しできない

少なくとも2017年10月時点のXbox One Conttollerの公式ドライバーとPSO2の組み合わせという条件において、LT/RTのトリガーを同時押しはできない。この問題を無視するのであればここで設定完了としてもかまわない。この状態では、3ボタン設定で裏パレットのテクニックをチャージしながらのチャージエスケープはできない。

トリガー同時押し問題の回避方法

JoyToKeyを導入するのが最も手っ取り早い。

  1. PSO2ゲームパッドの設定で、LTの裏パレット切り替えと、RTの回避アクションの割り当てを解除する(3ボタンタイプのデフォルトの場合)。
  2. PSO2のキーボード操作の設定で、回避アクションに単体のキーを割り当てる。
  3. JoyToKeyでLTにShift、RTを回避アクションのキーに割り当てる。

これでトリガー同時押しまで含めてXbox One ControllerがPSO2で使用できるようになると思われる。個人的にはPSO2は最近完全に放置しているため実戦での確認は省略した。もしかすると見落としている問題があるかもしれないが、何か気づいた場合はアップデートする。

Xbox Elite Wireless Controllerは試していないが、おそらく同じ方法が使えると思われる。

更新: 2021年にリリースされた大規模アップデートであるPSO2ニュージェネシスPSO2:NGS)では、コントローラーのサポートがXInputに移行したため、OSの標準ドライバーだけでそのまま使用できるようになった。

*1:Battlefield 4で、コントローラーの電源が入っていない状態でも銃の発砲が止まらず、撃ちっぱなしになる問題に遭遇した。

*2:Xbox Elite ワイヤレス コントローラー(シリーズ2でないほう)はBluetooth非対応。