2021年8月13日金曜日

SteamでneGT-USB2をXboxコントローラに見せかける!

ついカッとなってやってしまいました。neGT-USB2をバージョンアップします。内容はタイトル通りなんですが、Steamで一般コントローラをXboxコントローラに見せかけられるようにする標準機能があるのですが、それを使うとどうやってもネジコンを認識させられない場合でもXboxコントローラに見せかけて使用することができるようになります。後でも触れますが、leftyを設定しろと言われて次に進めなくなります。

Steamで設定するには、Steamの左上の表示→設定→コントローラ→一般のコントローラ設定→Xbox設定サポートにチェックボックスをつけて、neGT-USB2を指すと出てくる検出されたコントローラで設定します。

お試しで作ってみたので調子良ければこっそり公開します。バージョンアップは無料ですのでメールください。

ちなみにこのFirmwareを使うと何ができるかというと、Y軸セパレートで使っているときに十字キーの左右をY軸として使えるようにします。

例えばI、IIのアナログを左右トリガー、ねじりは左スティックX、これまではそこまで設定してセーブしようとすると、leftyを設定しろと言われてセーブできませんでした! つまり新しいFirmwareを使うと、設定を完了できるわけです。なのでしょうがなく先程バージョンアップしてみた次第です。

さらにちなみに、ちゃんとしたレースゲームではこんな仕様がなくても全く困りません。問題は一般的なコントローラに対応していないゲームです。例えば、Brick Rigsのようなゲームがネジコンでプレイできるようになります。ただ、このゲーム、ステアリングのセンター付近の反応がシビアすぎて、ネジコン使っても結構微妙な操作性・・・。

まあこんな夏休みもたまにはいいか・・・。

以下、参考に。


特徴

  • 特徴1(new):ボタン拡張機能を搭載することで、ボタンが最大16個まで使えるようになりました。拡張ボタンはSTART、A、B、Rボタンから選択できます。ボタン拡張機能を無効にすることもできます。
  • 特徴2:アナログLボタンをアナログとして使用するかデジタルとして使用するかの切り替えができます。
  • 特徴3:I、IIボタンを合成Y軸として使用するか、セパレートとして使用するか、合成とセパレートを同時に使用するかを選べます。
  • 特徴4:ねじりはセンター値、遊び、ねじり角を設定できます。
  • 特徴5:アナログ軸I、II、Lは遊び、MAX値などを個別に設定できます。
  • 特徴6:設定モード時には設定値がPCへ送られるため、設定状態がわかりやすくなりました。(設定モード時のみ。)
  • 特徴7:設定した内容は内蔵EEPROMにセーブされ、次回起動時に自動的に呼び出されます。
  • 特徴8:革新的な(使えないとも言う(笑))オートクルーズモードを搭載しています。
  • 特徴9(new):Steamモードを搭載しました。もうSteamでネジコンが使えないなんて言わせない!(笑) V.134から。
  •  自分で好きなように作っているので当たり前ですが、操作感は抜群です。しかもここまで機能を持ったコンバーターはどこにもありません。あえて言えば連射機能がないですが、ネジコンに連射機能はいらないですよね(笑)。

     ネジコンユーザーが夢に描いていた機能(妄想)を満載しているので、設定が複雑なのが難点かもしれません(^^;)。「何でもできる」のは「何もできない」のとある意味同意語です(^^;)。究極の何でもできるは何もないところから一から作るのと同じですしね。


    状態遷移




    LED表示


    Ver.1.09以上
    LED表示の意味
    - - 1秒点滅 電源ON
    - - Iボタン出力
    100m秒点滅 - - IボタンMAX出力
    - - IIボタン出力
    - 100m秒点滅 - IIボタンMAX出力
    - - Lボタン出力
    - - 100m秒点滅 LボタンMAX出力
        設定モード1
        設定モード2
      設定モード3
        設定モード4
      設定モード5
      設定モード6
    設定モード7
    ○は点灯を表します。

    Ver.1.08まで
    LED表示の意味
    - - 1秒点滅 電源ON
    - - Iボタン出力
    100m秒点滅 - - IボタンMAX出力
    - - IIボタン出力
    - 100m秒点滅 - IIボタンMAX出力
    - - Lボタン出力
    - - 100m秒点滅 LボタンMAX出力
      設定モード1
      設定モード2
    設定モード3
      設定モード4
        設定モード5
    ○は点灯を表します。


    操作モード

     ボタン拡張モード用のボタンはSTART、A、B、Rボタンから選べます。下にあるneGT-USB2 Checkerの項を参照するとわかりやすいかもしれません。

    出力ボタン ネジコンボタン
    1 上(拡張モード)
    2 右(拡張モード)
    3 下(拡張モード)
    4 START、または左(拡張モード)
    5
    6
    7
    8
    9 R(拡張モード)、またはB(拡張モード)
    10 B(拡張モード)、またはSTART(拡張モード)
    11 A(拡張モード)、または左(拡張モード)
    12 R、またはA(拡張モード)
    13 B、またはA(拡張モード)
    14 A、またはB(拡張モード)
    15 L(デジタルモード時)
    16 L(拡張モード)(デジタルモード時)


    設定モード

     設定モード中はX軸、Z軸、XR軸、YR軸に設定値を出力します。これにより設定値を確認することができます。

    設定モード1
    Aのみ押す ねじり部センターの設定(*1) X軸に設定値を出力
    十字キー左 ねじりの遊びを増やす I(Z)軸に設定値を出力
    十字キー右 ねじりの遊びを減らす I(Z)軸に設定値を出力
    十字キー上 最大ねじり角を増やす II(XR)軸に設定値を出力(角度)
    十字キー下 最大ねじり角を減らす II(XR)軸に設定値を出力(角度)
    I、II、Lを押しながらAを押す 設定値のリセット(*2)
    (*1)設定モードに入るときに、Aボタンを押すことになるので、設定モードに入ったときには必ずねじり部センターの設定が行われることになります。
    (*2)ねじりセンター128、ねじり遊び3、最大ねじり角レベル5。
    各アナログボタン遊び50、MAX245。L:アナログモード

    設定モード2
    十字キー上 IボタンのMAX値を10増やす II(XR)軸に設定値を出力
    十字キー下 IボタンのMAX値を10減らす II(XR)軸に設定値を出力
    十字キー左 Iボタンの遊びを10増やす I(Z)軸に設定値を出力
    十字キー右 Iボタンの遊びを10減らす I(Z)軸に設定値を出力

    設定モード3
    十字キー上 IIボタンのMAX値を10増やす II(XR)軸に設定値を出力
    十字キー下 IIボタンのMAX値を10減らす II(XR)軸に設定値を出力
    十字キー左 IIボタンの遊びを10増やす I(Z)軸に設定値を出力
    十字キー右 IIボタンの遊びを10減らす I(Z)軸に設定値を出力

    設定モード4
    十字キー上 LボタンのMAX値を10増やす II(XR)軸に設定値を出力
    十字キー下 LボタンのMAX値を10減らす II(XR)軸に設定値を出力
    十字キー左 Lボタンの遊びを10増やす I(Z)軸に設定値を出力
    十字キー右 Lボタンの遊びを10減らす I(Z)軸に設定値を出力

    設定モード5
    十字キー上 Lボタンのアナログ/デジタル切り替え L(YR)軸、0:アナログ、1:デジタル
    十字キー下 ボタン拡張モードのOn/Off I(Z)軸、0:Off、1:On
    十字キー左 ボタン拡張ボタンの選択 II(XR)軸、0:S、1:A、2:B、3:R
    十字キー右 Y軸切り替え Y軸、0:セパレートのみ、1:Y軸のみ、2:同時使用、3:Y軸のみ(反転)、4:X回転→Y軸、5:I、IIボタン0と255が反転
    アナログモード時にはLボタンのデジタル出力は行われません。デジタルモード時にはLボタンのアナログ出力は0固定となります。

    設定モード6
    十字キー上 Lボタン入れ替え (※1) L(YR)軸、0:入れ替えなし、1:A、2:B、3:R、4:Start、5:上、6:下、7:左、8:右
    十字キー下 Steamモード
    セパレート時にSteamモードを追加。
    ※Ver.1.34から
    左十字ボタン押下でY軸=-128、右十字ボタンでY軸=127。
    Y軸、0:無効、1:有効
    十字キー左 オートクルーズモードのアクセルボタン設定 II(XR)軸、0:ボタンI、1:ボタンII
    十字キー右 オートクルーズボタン設定(※2) I(Z)軸、0:オートクルーズモードOff、1-16:対応するボタン
    (※1) この機能を使用するには設定モード5の「Lボタンのアナログ/デジタル切り替え」はアナログに設定してください。
    (※2) オートクルーズモード中は上下左右ボタンがアクセル開度設定ボタンになります。上下で+-1、左右で+-10ステップずつ変更できます。

    設定モード7

    設定モード7には設定項目はありません。X軸、I(Z)軸、II(XR)軸、L(YR)軸にネジコンのダイレクト値が出力されます。主にネジコンのへたりを確認するのに使用できます。