3DS Controllerはゲーム機に繋げたマイコンを制御してスティックやボタンやタッチの入力を再現するソフトウェアです。
デバイスはコントローラー拡張ボード(Controller Expansion Board)と呼称します。
C# .NET framework 4.8で製作されています。動作環境はWindows10/11となります。
主に以下の機能があります。
・外部コントローラーからの操作
・マウスやコントローラーからのタッチ操作
・ボタン連射
・マクロ機能
・入力記憶再生
・複数台のゲーム機を同時操作
所謂、偽トロキャプチャーと呼ばれるキャプチャーボードと併用して増設と使用することが可能です。
Loopy氏のNew3DS XL CaptureBoardにも対応。
このように外部コントローラーでの操作が可能になります。
全ボタン、スライドパッド、Cスティック(New3DSLLのみ)、タッチスクリーンの操作に対応しています。
重い本体ではなく使い慣れた無線コントローラーで快適にプレイができ、
本体も持つ必要がなくなるため落下による破損や水没、スライドパッドやボタンやタッチパネルの消耗等による故障の心配が無くなります。
モンスターハンターシリーズ等の3Dゲームではコントローラーの右スティックでカメラ操作することが可能になり快適なプレイができます。
連射機能もコントローラーからオン・オフが可能。
・3DS Controller 取り扱い方法
※ソフトのバージョンにより説明や画像に相違がある場合があります。
①コントロールボタン
マウスでクリックするとそのボタンをゲーム機に送信します。ボタンを押している間、ボタンの色が変化します。特定のボタンは右クリックすると黄色またはピンク色に変化して連射設定ができます。
右上の電源ボタンは右クリックで押すとスリープを切替できます(スリープ切替対応版のみ)
②情報リストボックス
様々な情報を表示します。マクロ読み込み中はダブルクリックするとエディタでマクロファイルを開いて編集することができます。
③タッチスクリーンウィンドウ起動ボタン
タッチスクリーンウィンドウを起動します(タッチ対応版のみ)
④マクロファイル更新ボタン
編集したマクロファイルを再度読み込み直します。
⑤マクロファイル読み込みボタン
マクロファイルを指定して読み込みます。
⑥入力記録開始ボタン
リプレイ記録を開始します。もう一度押すと記録を終了し入力を保存します。
⑦リプレイ・マクロ再生ボタン
リプレイ・マクロを再生します。
⑧再生停止ボタン
実行中のリプレイ・マクロを強制停止します。
⑨リピートボタン
ボタンが赤くなりリプレイとマクロをエンドレスでリピートします。もう一度押すと解除されます。
⑩ビューアフルスクリーンボタン
ビューアソフトが起動している場合はフルスクリーンにする操作を行います。
⑪COMポート
検出したCOMポートリストを表示。特定のデバイス名以外のポートはリストから除外しています。COMポートが接続できている場合は左の●が緑色になり、接続できていない場合は赤色になります。複数COMポート検出を有効にした場合は起動時には自動的にポート接続を行いません。
⑫コントローラーリスト
接続中のコントローラーのリストの表示と接続切替を行います。
■ファイルメニュー
・マクロ読み込み
マクロファイルを読み込みます。
・マクロファイルフォルダを開く
macrosフォルダを開きます。
・コントローラーini自動読み込み
コントローラーの専用設定ファイルを起動時に自動で読み込みます。
・設定iniファイルを開く
設定ファイルをメモ帳で開きます。
・設定iniファイル切り換え
設定プロファイルを切り換えます。設定ファイルのProfileName=の文字列を表示しています。
・ボタン割り当て設定を適用
編集した設定ファイルをソフトに反映させます。
・アプリケーション終了
アプリケーションを終了します。
■設定メニュー
・表示
常に最前面に表示
ソフトを常に最前面に表示するようにします。
最小化状態で起動
ソフトをタスクトレイに格納された状態で起動します。
タスクトレイ格納
最小化時にタスクトレイに格納します。
ウィンドウサイズ(小)
小さいウィンドウサイズに変更します。
十字キー斜め方向ボタン表示
DS動作モードで斜め方向ボタンを表示します。3DSでは強制的にONになります。
リプレイ・マクロデータ表示
記録と再生のデータリストを表示します。
ダークモード
ソフトの外観が黒をベースにしたダークモードになります。
アクティブボタンハイライト
ボタンが押された状態の色を選択します。
・再生優先度設定
通常は最後にリプレイ保存かマクロ読み込みを行った方を優先して再生しますが先に作成したリプレイを優先したい場合に優先度が変更できます。
・スリープ機能 無効化 ※対応版のみ
本体のスリープ機能を無効化、有効化を切り換えます。本体の上画面を閉じた状態で無効化を行うとスリープが解除され、無効化解除でスリープが起動します。
・キーボード割り当て設定
キーボードバインド有効
キーボードからボタンが操作可能になります。
・ゲームコントローラー設定
入力処理方式
コントローラーの処理情報を変更します。通常は自動判別で問題ありません。
ボタン連射設定
連射速度を早い・普通・遅め・カスタムに切り換えます。
コントローラー設定自動適用
一部のコントローラーを検出した際にコントローラーに合わせてスティック範囲やボタン割り当て等の設定を自動的に行います。
バックグラウンド動作無効
ウィンドウが非アクティブ中はコントローラーの入力を反映させないようにします。
バッテリー残量確認
XinputコントローラーまたはDualShock・DualSenseのみ定期的にバッテリー残量の確認と残量により警告を行います。
アナログスティック・トリガ入力設定
コントローラー左右のアナログスティックとトリガの状態を別ウィンドウでグラフィカルに表示します。スティックの動作確認とそれぞれのデッドゾーン・マックスゾーン等が調整できます。
Windowsコントローラー設定画面表示
Windowsのコントローラー設定を開きます。
・タッチコントロール設定
後半で説明
・全体設定
後半で説明
■デバッグ
・デバッグモード
開発用のモードに変更されデータの送信テストやコントローラーの入力情報、システムの状態等のさまざまな情報を表示します。
送信データやボタンの詳細な入力データも表示されるため、別アプリの開発やマクロ機能を調整するための分析も可能です。
デバッグモード有効中は通常と異なる動作を行ったり、情報取得や表示のために負荷が上がりますので通常は使用しないようにしてください。
・デバッガ起動
データ送信テスト用のデバッガを起動します。開発者向けの機能であり誤動作の原因となるため通常は使用しないでください。
・複数COMデバイス検出有効
COMデバイスを複数検出するようになります。起動後に自動的にポート接続が行われなくなります。一部のコントローラーのCOM通信が干渉して正常に通信できない場合に使用します。
・リリース&リセット
ボタンをすべてリリースしてリセットを行います。誤動作が発生した場合のみ一度実行してください。
・デバイス再起動
接続中のデバイスを再起動します。
■About
現在のソフトウェアとファームウェアのバージョンを表示します。
■ボタン連射設定
一部のボタンを連射設定することが可能です。上下左右ボタンは押し続ける状態になります。
ボタンをマウスで右クリックするとボタンが黄色く変化し、ボタンを押している間は連射する設定になります(連射Turbo)
ボタンをダブル右クリックをするとボタンがピンク色に変化し、ボタンを離している間はずっと連射されてボタンを押している間は連射が停止するようになります(連射Hold)
どちらも右クリックで連射設定を解除することができます。
TurboモードのみコントローラーからSelectボタンを2回押したあとに連射したいボタンを押すことで連射設定することができ、同じ操作をするかSelectボタン3回押すことで解除することができます。
■パッド操作サークル
Lボタンの下辺りの何もないところをクリックしながらドラッグするとスライドパッド操作、Rボタン下辺りをクリックするとCスティックの操作ができます。
クリックを離すと中央の位置に戻ります。
■コントローラーアナログ入力設定画面
コントローラー左右のアナログスティックとトリガの動作確認とデッドゾーンの設定ができます。通常のPS、Xbox、Switchの純正コントローラーであれば自動的に設定されるよう調整しているためデフォルトのままでも問題なく、ハンドルコントローラーやサイバースティック等の特殊なコントローラーやドリフトの不具合があり勝手に入力が入ってしまうコントローラー向けの調整機能となります。
スティックの座標は丸い点で表示されており、デッドゾーン(入力を無視する)範囲は赤い丸枠の内側になります。デッドゾーン内はスティックの座標はピンクの点となり、デッドゾーン外では青い点、端かマックスゾーン外に到達すると緑の点に色が変化します。
デッドゾーン範囲外を圧縮にチェックを入れると、デッドゾーンの赤い丸枠からマックスゾーンの青い丸枠まで0.01~1.0として範囲を計算します。
デッドゾーン範囲外をそのままにするにチェックを入れると、単純にデッドゾーン範囲内をスティック原点にあるものとして処理を行います。
トリガもデッドゾーンは縦の青線になっていてデッドゾーン範囲内は赤いバーになり、デッドゾーン外では緑のバーに変化します。
下の設定値を変更するとデッドゾーン設定も変化します。デッドゾーンリセットは設定画面を開いた時点の設定値にリセットします。
キャリブレーションボタンは左右スティックの可動域最大範囲を設定します。
設定を変更する場合はOKボタンを押し、変更しない場合はキャンセルを押します。
■ボタン設定①
コントローラーに3DSボタン割り当てを行うための設定画面です。
検出したコントローラーの押されたボタンによって十字キーの矢印とボタン①~⑯の色が変わります。
左のボタンをクリックするとボタン設定ウィンドウが開いてコントローラで押されたボタンを割り当てます。
十字キーの上下左右は通常のハットスイッチがあるコントローラーでは設定は不要で、ハットスイッチがないコントローラーの場合には割り当てが必要です。
左下のPS4やXBOXボタンはそのコントローラー向けのおすすめの割り当て設定を自動的に行います。
ZL・ZRボタンはRevision2以降の対応となっています。
DS ST3モードではHomeボタンはリセットボタンとなります。
XBOXコントローラー等のアナログトリガーボタンはボタン設定②画面で設定します。
■ボタン設定②
・アナログトリガー設定
アナログトリガーを使用するために設定します。LR同時押し時の割り当ても可能です。ボタン設定①で割り当てられたボタンと重複しているとボタンが機能しません。
トリガーデッドゾーンは値を低くすると少しの押しでも反応しやすく、値を大きくすると押し込んだときのみ反応するようになります。
・連射設定
連射切替と連射間隔を設定します。
Selectボタンを2回押した後に連射設定するボタンを押すことで連射設定となり、同じ操作で個別解除。Selectボタンを3回押すとすべてのボタンの連射解除ができます。
隠しコマンドによる操作を使用する場合も有効にする必要があります。
・DualShock4 / DualSense 設定 スワイプアクション
指でタッチしながら2本目の指で上下左右にスワイプをするとその方向に応じたマクロファイルを読み込み即実行します。
macrosフォルダ内に「swipe_macro_(方向).txt」のファイルを読み込みます。
■スティック設定
・右スティック置換モード有効
コントローラーの右スティックの方向にそれぞれボタンを割り当てることができます。
反応が過敏すぎる場合はコントローラーアナログ入力設定から右スティックのデッドゾーンを広げてください。
・入力方向補正値
入力の入りやすさを調整します。値が少ないほど上下左右にまっすぐでないと入力が入らず、値を大きくすると斜め方向にも入りやすくなります。
・C-Stickコントロール
Cスティック対応版では右スティック操作でCスティックコントロールが可能です。右スティック置換モードや右スティックトラックパッドモードとの併用はできません。
・スティックリバース設定
左右のスティックの上下左右の方向を反転する設定。ゲームによってカメラ操作の入力方法が固定されてしまってプレイし辛い場合等に使用します(例:DQVIIIなど)
・コントローラータイプ
右スティックやトリガーの入力情報が使用コントローラーにより異なるため、検出処理を手動で設定を切り換えます。
■詳細設定
・ボーレート
通信用のボーレートを設定します。デバイスと一致していないと通信できなくなってしまうため、基本的には変更しないでください。通常は115200でDS S2モード時は19200設定に変更されます。
・パッド入力情報取得間隔
コントローラー入力情報を取得する間隔を設定します。値を小さくするとコントローラーの応答速度は上がりますがPCの負荷が上がることがあります。通常は5前後の値で問題ありません。
高スペックなPCであれば1でも構いません。
・ListBoxフォントサイズ、フォント太字
メインフォームのリストボックスの文字サイズと太字の変更ができます。
・起動時の演出パターン
起動時にボタンが光る演出を選択します。演出中もボタンは通常通り入力することができます。
・スレッドプール最大スレッド数
CPU負荷を抑えるための最大スレッドを設定します。通常は変更する必要はありません。
・テキストエディタ指定
マクロ読み込んだ後にリストボックスをダブルクリックで開くテキストエディタを変更できます。
デフォルトはwindowsのメモ帳です。
・Revision設定(前期版のみ設定が必要)
DS、3DSLL、New3DSLLのRevisionの設定を行います。一部の動作が変更されます。
ダブルモード
メニューの動作モードからダブルモード有効をチェックするとダブルモードに変更されます。
2台の 3DS Controller 対応デバイスを同時に操作できるようになります。
COMポートのアクティブ・スルー
各 COMポート横のボタンは、入力の受け付け状態を表します。
ボタンが青色 … 入力を送信するアクティブの状態
ボタンが赤色 … 入力を送信しないスルーの状態
ボタンをクリックすると個別にアクティブ/スルーを切り替えられます。
ダブルモード有効中はコントローラーのSelectボタンを2回押してから以下のボタンを押すことで切替ができます。
トグルとなってい
・上:接続1 アクティブ/スルー(COMポート上段)
・下:接続2 アクティブ/スルー(COMポート下段)
・右:接続1・2両方をアクティブ
・左:接続1・2両方をスルー
対応デバイス
ダブルモードは New3DS S2 ,T3 / 3DS S2 / DS S2 ST3 のみ対応しています。
異なる機種でも対応デバイスであれば同時操作が可能です。
タッチコントロール機能
タッチ対応版を導入することで3DSのタッチパネルを操作することが可能になります。
DualShock4・DualSenseではコントローラーに搭載されたタッチパッドやジャイロ機能を利用して3DSのタッチパネルを操作できます。
タッチスクリーンウィンドウボタンを押すと透明なウィンドウが起動します。ウィンドウが開いている状態ではボタンが青色になり、ウィンドウを閉じると元の色に戻ります。タッチ中はボタンが赤色に変化します。この状態では3DS本体の仕様によりボタン操作は受け付けなくなります(DS版はタッチ中でも操作可能)
初期設定ではビューアーソフトを検知して下画面の映像に合わせたサイズと座標に自動的に調整されます。
自動設定機能を使用せず自身でウィンドウの位置サイズを調整する場合はウィンドウを右クリックしてメニューを表示して手動調整モードを実行します。
・右クリックメニュー
・ダイレクトタッチ・トラックパッド(DualSense専用モード)
モードを変更します。
・スクリーン自動調整
タッチスクリーン自動調整モードを有効化または解除します。
・手動調整モードを開始
タッチスクリーンウィンドウのサイズや位置を手動で調整するモードに入ります。
・タッチスクリーン設定
タッチコントロール設定画面を開きます。
・メニューを閉じる
現在開いている右クリックメニューを閉じます。
・タッチスクリーンウィンドウを閉じる
タッチスクリーンウィンドウを閉じます。
・タッチスクリーンウィンドウ手動調整モード
マウスで青色の透明ウィンドウを下画面の位置やサイズに合わせてぴったりと重なるように調整してください。
ぴったりと重なっていない状態ではタッチのズレが発生します。
調整が終わったら右クリックメニューを表示して「スクリーン手動調整を確定」を押します。
・マウス操作
マウスカーソルをウィンドウに重ねるとカーソルが変化します。
左クリックをするとカーソルが赤色になりその座標にタッチ送信を行います。ドラッグするとタッチ操作もドラッグになり、クリックを離すとタッチもリリースされます。
・右スティック トラックパッド
コントローラー右スティックで緑色のカーソルを操作して設定したタッチボタンを押すとその座標にタッチ送信を行います。
タッチボタンを押したままスティックを操作することでドラッグも可能です。
カーソルを操作せずタッチボタンを押すと同じ座標にタッチされます。
・タッチ マクロコマンド
Tap { X , Y } , 3
のような形式で指定した座標に指定回数タッチ連打することが可能。
Drag { X1 , Y1 -> X2 , Y2 } , 0.5
指定した座標1をタッチしたまま座標2にドラッグします。
DualShock4・DualSense専用モード
青色のカーソルの状態はタッチ送信しない状態で赤色のカーソルの状態はタッチ送信中を表します。
・タッチパッド
タッチパッドを指で触って操作するモード
・ジャイロセンサー
タッチパッドを指で触れている間、表示されるカーソルをコントローラーのジャイロを使って操作するモード
・ダイレクトタッチ モード
タッチパッドを触った位置をDSの座標に変換してタッチ送信します。
タッチ中は赤いカーソルに変化します。
・トラックパッド モード
指でタッチパッドを触れると青色のカーソルが表示されてタッチパッドから操作できます。
タップ(タッチパッドを押し込み)をするか一旦指を離してから再度一瞬だけタッチをするとその座標にタッチ送信がされます。
タップしたままタッチパッドを操作するか、指を触れたまま2本目の指でタッチをして1本目の指を動かすとタッチドラッグができます。
使いやすい操作方法で使用してください。
タッチコントロール設定
・Touch Mode 有効
タッチモードを有効にします。
・スクリーンウィンドウ自動調整
ビューアーの下画面映像に合わせてタッチスクリーンウィンドウの位置とサイズを自動的に補正を行います。
自動設定でうまくいかない場合は手動調整モードに入り位置やサイズを調整してください。次回起動時に同じ座標とサイズに復元されます。
・スクリーンウィンドウ外枠表示
透明のタッチスクリーンウィンドウの外枠だけを常時表示します。
・上画面タッチでスライドパッド操作有効
タッチモニター向けの設定で上画面左側をドラッグで上下左右に動かすとスライドパッドの操作が行えます。
Cスティック対応版では上画面右側をドラッグでCスティック操作ができます。
・タッチ保持 最低待機時間
タッチ対応モニター等でタップが反応しない場合にタッチ待機時間を上げることで反応するようになることがあります。
タッチカーソル設定
・カーソル下に座標を表示
3DSの座標を表示するようになります。マクロを使用するときにタッチする座標を調べる際に使用します。
・タッチカーソルサイズ
スクリーンウィンドウ上のマウスやタッチパッド、右スティックトラックパッドのカーソルのサイズ、太さ、非表示までの時間、カーソルカラーを設定します。
・トラックパッドモード
・右スティックトラックパッド有効
右スティックでタッチカーソルを操作して、設定したタッチボタンでタッチを行うモードに変更します。
・DualShock4 / DualSense専用設定
・PS Touchpad 有効
PSコントローラーのタッチパッドを使用するように設定します。
・トラックパッドモード設定
基本感度はゆっくり動かしたときのカーソル速度、加速係数は素早く動かしたときの移動距離を設定します。
・Touch Test
指定した座標にタッチテストを行います。チェックを入れるとTouchボタンを離してもタッチし続ける状態になります。
・タッチ座標 キャリブレーション
キャリブレーションを行う場合はまず読み込みボタンを押してデバイスに保存されたデータを読み込む必要があります。
通信が成功してデータを読み込むと書き込みボタンが有効化されてキャリブレーションが使用できます。
上からXmin(画面左端)、Xmax(画面右端)、Ymin(画面上端)、Ymax(画面下端)の調整項目です。
まずグリッドを表示してからグリッドが交差している左上をタッチしてみて左右にズレがある場合はXminを調整し、上下にズレがある場合はYminを調整します。
次に右下をタッチしてみて同じように左右にズレがある場合はXmaxを調整し、上下にズレがある場合はYmaxを調整します。
左上、右上、左下、右下がカーソルと大体あっていれば書き込みボタンを押してデバイスにデータを書き込みます。
USBからデバイスを抜いたりソフトを更新してもデバイス内部のROMに保存されているため起動後にデータが復元されます。
数値はタッチ操作を再現するための電圧の補正値でありドット単位ではありません。数値1につき2~3ドット程の補正がかかります。
・タッチテスト
ホーム画面のゲームメモをお絵かきできる状態にしてからボタンを押すと、線が外周を回り中央に十字線を描画します。
特定の方向の外周の線が細かったりズレがある場合はキャリブレーションを行ってください。
線に1ドット程度のズレが起こり波打つような部分が出ることがありますが制御特性上の仕様となります。
リプレイ機能について
コントローラーの入力を記憶して再現することができます。ボタン、スティック、タッチ操作を記録できます。
録画ボタンを押すと●RECマークが点滅し入力記憶が開始され、もう一度ボタンを押すとリプレイに保存されます。
マクロ再生ボタンを押すと▶REPLAYマークが点滅し、リプレイを実行します。
右側のリストで実行中のデータや誤差等のデータを確認することができます。
マクロ機能について
最初のコマンド名の後に半角スペースを入れます。それ以外のスペースはトリムされるため、スペースが余分にあっても動作には支障ありません。
半角#(シャープ)を付けるとスキップされるためメモとして記述することもできます。英文字の大文字小文字はどちらでも認識可能です。
コマンドが動かない場合はスペルのミスやカンマがあるか等の確認をしてください。
=================================================================================
コマンド①:Button { X , Y }
もっとも使用する基本コマンドでボタンを押してすぐに離します。
{ }の中に送信したいキーのLeft, Down, Right, Up, A, B, X, Y, L, R, ZL, ZR, HM, SL, ST, PWを,(カンマ)で区切って入力します。複数のボタンを登録可能です。
HM(3DSホームボタン)、SL(セレクトボタン)、ST(スタートボタン)、PW(電源ボタン。他のボタンより若干長めに押し続けないと反応しない)
DS ST3ではHMはゲーム機のリセットボタンとなります。
{ }で囲ったあとに,(カンマ)を挟んで数値を入れるとその回数連打を行います。
コマンド②:Press { Right , B } , 2.5
Buttonコマンドの長押し版です。指定した秒数押したまま待機します。Waitコマンドを挟まないとボタンのホールドは解除されません。
1フレーム=0.017s(秒)以下の短いキー送信時間ではゲーム機側が入力を受け付けられないことが多いです。
==================================================================================
コマンド③:Wait 1.5
ボタンをすべて離した状態で指定した時間待機します。
ただし離されるのはボタンのみでスライドパッド入力は離されません。
ボタンと同じく1フレーム=0.017(秒)以下の時間ではボタンを離した状態もゲーム機側が認識できません。
==================================================================================
コマンド④:Axis { Right_Up } , 1
Axis { Up_Tilt } , 3
3DS、New3DSモードでスライドパッドを操作します。
このコマンドはPressコマンドとは違い、ボタンと複合して送信できません。
Waitを入れてもスティックの入力は戻らないため、
Axis { Center } , 1
等と入れてニュートラルに戻す、または別の方向を指定してください。
Right、Left、Up、Downの他に、
Right_Up(右上)、Right_Down(右下)、Left_Up(左上)、Left_Down(左下)が指定できます。
Tileはスティックを少し倒した状態になり、歩き・走り等の操作の切り分けができます。
==================================================================================
コマンド⑤:Pause
マクロの実行中に一時停止して実行を続けるか終了するかを確認するメッセージを表示します。
「はい」を選択するとマクロを続きから実行し、「キャンセル」を選択するとマクロは途中で終了します。
マクロが途中まで想定した通りに動作しているかの確認のために使用すると便利です。
==================================================================================
コマンド⑥:Repeat 3 , manual
読み込んだマクロファイルを指定回数リピート再生します。
2番目の引数「manual」はリピートするか毎回確認メッセージを表示し「いいえ」を選択するとマクロは終了します。
「auto」は確認メッセージを表示せずに自動的にリピート再生を行います。
この例の場合は3回リピート再生してループの度に確認メッセージを表示します。
==================================================================================
コマンド⑦:Load f2_macros.txt , auto
指定した他のマクロファイルに切り替えて先頭から再生します。
「auto」で確認メッセージを表示せずに切り替え、「manual」で確認メッセージを表示します。
「はい」で切り替え、「いいえ」で切り替え無し、「キャンセル」でマクロを停止します。
マクロ実行中に別のマクロファイルに切り替えるか切り替えず続けるか等の処理の分岐を選択する使い方が可能です。
==================================================================================
コマンド⑧:Loop 3
LoopEnd
LoopからLoopEndまでその間のコマンドを指定回数繰り返し実行します。
LoopとLoopEndの間にRepeatやChangeコマンドが入らないように注意してください。
===================================================================================
コマンド⑨:RandomWait 0.5 - 2
指定時間内でランダムで待機時間を入れます。
この場合0.5秒から2秒以内の範囲中でランダムな秒数のウェイトを実行します。
何秒に決まったかはデバッグモードを有効にしてButtonログで確認することができます。
===================================================================================
コマンド⑩:Hold { Right , b }
HoldRelease { b }
指定したボタンをHoldReleaseコマンドを受けるまで押し続けます。
これはPressコマンド使用時とは異なりWaitコマンドが入ってもボタンの押し続けは解除されません。
Holdコマンドで指定したボタンをHoldReleaseコマンドで指定しない場合はそのボタンは押し続けられます。
HoldRelease { all } ですべてのボタンを解放します。
マクロ一時停止、終了時にはボタンはすべて自動的に解除されます。
===================================================================================
コマンド⑪:Tap { X , Y }
TouchDown { X , Y } , 0.3
TouchUp
指定した座標に指定した時間タッチ送信を行います。Xは0~320まで、Yは0~240までがタッチ範囲内です。
TapはタッチしてすぐにリリースするコマンドでButtonコマンドのように連打指定も可能。
TouchDownは指定時間押し続けますがその後にTouchUpを実行しないと3DSの仕様により他の操作が一切行えなくなります。
タッチ送信中はTouchScreenボタンが赤色になります。
===================================================================================
コマンド⑫:Drag { X1 , Y1 -> X2 , Y2 } , 0.5
座標1をタッチしてから座標2まで直線でタッチ&ドラッグを行います。
指定した時間を等速でドラッグし、到達した後はリリースを行いません。リリースにはTouchOffコマンドを呼び出します。
更にDragコマンドを続けて追加することでタッチを離さず座標2から座標3をタッチ&ドラッグすることも可能です。
===================================================================================
コマンド⑬:Comment 第2フェーズ開始
操作は何もしない確認用のコメントをリストボックスに表示します。マクロの進捗状況を確認したいとき等に便利です。
タッチスクリーンウィンドウが起動している場合は、オーバーレイで下画面の左上にも同じ文字列が3秒間表示されます。
===================================================================================
コマンド⑭:Capture
ビューアソフトのスクリーンショットをBMP形式でScreenshotsフォルダ内に保存します。プレビューウィンドウが起動します。
===================================================================================
コマンド⑮:Exit
マクロを中断して再生終了。
===================================================================================
コマンド⑯:Goto :Start
:(セミコロン)のあとに指定したラベルの行にジャンプします。
===================================================================================
コマンド⑰:IfFlag { status, ON } , Load , next.txt
IfFlag { count, > 5 } , Goto , START
flags.txt(例)
status=OFF
count=5
flags.txtを読み込み指定したフラグにより動作を変更することができます。マクロファイルとflagsのフラグ名を一致させれば自由な文字列に指定可能。
フラグ条件に一致するとLoadは指定したマクロファイルを読み込み、Gotoは指定ラベルの行にジャンプします。
数値は不等号を入れないとその数値のみの条件で、>、<=、!=等の不等号による区分も可能。
flags.txtはコマンド実行時に読み込みすぐに解放されます。外部アプリ連携用のコマンド。
===================================================================================
コマンド⑱:SetFlag { status, false }
flags.txtの指定したフラグを書き換えます。フラグを戻すとき等に使用します。
===================================================================================
マクロ例:
Press { right , b } , 2.5 #右とBボタンを同時押しで2.5秒間送信
Press { right , b , a } , 0.2 #右とBボタンの同時押しにAボタンを追加して0.2秒間送信
Wait 1.55 #すべてのキーを離して1.55秒間待機
Press { up , b } , 0.7 #右とAボタンを離してBボタンを維持したまま上キーを0.7秒間送信
対応コントローラーについて
PCにBluetooth機能やレシーバーがあれば、無線コントローラーによる操作も可能です。
別アプリ「JoyToKey」とキーボード入力設定を組み合わせることで複数のコントローラーやPCデバイスに対応させることもでき設定の幅が広がります。
キーボード割り当て記述対応表
キーボード割り当て設定を有効にするとキーボードからボタン入力を送信することができます。
key_mapping.iniを編集することで割り当てを設定できます。大文字小文字が異なると認識できないため注意して記述してください。
トラブルシューティング
・シリアルポートが正常に通信できない
デバッグ>複数COMデバイス検出有効にチェックを入れてソフトを再起動し、COMポートを選んで選択してください。
・コントローラーは反応するがゲーム機に反応がない
動作モードが合っているか、ドライバーをインストールしているか、COMポート番号が一致しているかを確認してください。
ソフトの再起動やUSBの再接続をしてみてください。
・SwitchProコントローラーが認識はしているが反応しない
Bluetooth接続時のみ動作します。
・ソフトがフリーズする
タッチモードやC-Stickコントロールに対応していないタイプのものを設定からコントロールを有効にしてしまうと、
デバイスからの応答がなく正常に処理できなくなりソフトがフリーズする可能性があります。設定で無効にしてUSBを再接続してください。
・コントローラーが認識できない
ソフトの実行ファイルを右クリックして管理者として実行から起動してみてください。それで認識される場合は右クリックプロパティ、互換性タブから管理者としてこのプログラムを実行するにチェックを入れると常に管理者モードで起動されるようになります。
Steamがインストールされている場合はタスクマネージャからSteamをすべて終了してからソフトを起動してください。
DualShock4またはDualSenceが検出できない場合はDS4WindowsをインストールするとXboxコントローラーとして検出して使用できるようになることもあります。
・DualShock4またはDualSenceでタッチパッドを有効にしても使用できない
タッチパッドを使用するには以下の操作が必要になります。
1. 「DS4Windows」をインストールして、DS4Windows起動後に「Install ViGEmBus Driver」をインストールします(必須)
2. Settingsから必要に応じて Use language pack から日本語化します。
3. 設定から「Hide DS4 Controller」にチェック(これをしないとコントローラーが重複して検出されてしまう)
4. DualSenseまたはDualShock4がDS4Windowsに検出されたら編集からTouchpadのOutput ModeをPassthru、OtherからEmulated ControllerをDualShock4に変更(DualSenseでもDualShock4でも)
5. LightbarでLEDを好きな色合いに変更できます。 idle Disconnectにチェックを入れるとコントローラーの操作がなくなってから指定した時間後にbluetoothを切断してくれるので便利です。
6. 設定を変更したら保存を押して終了します。
・DualShock4、DualSenseでタッチパッドのカーソルが飛んだり正常に動かない
ソフトの再起動、DS4Windowsの再起動を行ってください。
・DS FTモードで特定のボタンが反応しない、違うボタンが反応する
全体設定画面のDS FT Revisionを変更してください。
・設定ファイルに名前を付けたいが文字化けしている
settings.iniを開いてエンコード「UTF-8」でテキストファイルを保存すると日本語文字を読み込むことができます。
・コントローラーFirebirdを接続してもうまく動作しない
デバッグメニューから複数COMデバイス検出を有効にしてソフトを再起動します。 COMポートのコンボボックスからコントローラー拡張ボードのCOMポートを指定します。
隠しコマンド
隠しコマンドを使用するには、Select連射切替設定を有効にする必要があります。
FAQ
商品名は付いてないの?
開発者は当ソフトウェア名は3DS Controller、デバイス名をコントローラー拡張ボードと呼んでいます。
コントローラー拡張ボードは長いためController Expansion Boardの頭文字のCEBと略すことがあります。
あえてオリジナルの命名をしていません。
ゲーム機本体のファームウェアを改変しますか?
ゲーム機本体のファームウェアを書き換えたりはしません。純正のファームウェアのまますべて動作します。
改変されたものでも同じように動作するはずですが責任は持ちません。
海外版の本体でも動作しますか?
本体基板の仕様は同じため問題ありません。
本体やセーブデータ等は失われますか?
通常はデータが消えたりすることはありません。ただし導入時の不備により本体が故障しデータが失われてしまう確率はゼロではありません。
回路図やソースコードが欲しい
公開する予定はありません。
開発者に連絡が取りたい。
x.com/lime_gree
こちらからDMをください。