1.はじめに
この記事は Pokémon Past Generation Advent Calendar 2023 の160日目の記事です。
「洗濯バサミ」で十字キーを固定する時代から始まり、マクロコンやマイコンの流行により強化されてきた「ポケモン自動化環境」となりますが、昨年度末にはついに3DS用の自動化基板が登場&販売され、4~7世代における自動化環境も整備されました。
今回の記事では3DS LLに「偽トロ (LL-SPA3)」と「3DS自動化基板(Qingpi)」を両方を自力で取り付けして、ツールで自動化プログラムを動かすまでの一連の流れを解説いたします。
それぞれの具体的な解説については、双方の基板の開発者様が解説しておりますので、導入する際の手順や、具体的に何を用意すればいいか、自動化ツールで動かすにはどうすればいいか…などを知るための参考程度に思っていただければと思います。
2.基板導入に必要なもの
以下に必要なものを記します。一応、私が実際に使用したものを購入先のリンクを貼っておきます。拘束するものではありませんので、自分好みの道具に置き換えても構いません。大半をAmazonで揃えられるようにしました。

必須のもの
3DS LL
自動化を導入する本体です。New 3DSには導入できません。ゲーム機本体のロットによっては、「USB 一体タイプ」が使用できない型があるので、注意して下さい。
偽トロ(LL-SPA3)
3DSの映像をPCに出力する基板です。「USB 一体タイプ」と「USB 別体タイプ」の2種類があります。違いとしては「一体タイプ」は取り付けが簡単ですが、赤外線モジュールを取り外すので、拡張スライドパッドや、amiibo等が使用できなくなります。
「別体タイプ」は赤外線モジュールを外さなくて済みますが、ケース加工の作業が増え、加えて、USBコネクタが電源ランプ付近に取り付けるため、操作性が落ちます。どちらが良いというのはないので、各々のニーズに合わせて、購入しましょう。(購入先:オプティマイズ・パーツショップ)
Qingpi
3DSに外部操作機能を追加する基板です。詳しい説明はコチラの開発者様の記事に記載されています。(購入先:BOOTH)
※ 2024年6月10日現在、在庫切れになっていますが、開発者様が製造方法メモを公開しておりますので、自分でJLCPCBに発注する必要があります。
Type C to USBケーブル
QingpiとPCを接続するケーブルです。手持ちのもので構いません。(購入先:Amazon)
Type B to USBケーブル
偽トロとPCを接続するケーブルです。こちらも手持ちのもので構いません。(購入先: Amazon)
精密ドライバー +0
3DSを分解するためのドライバーです。(購入先:Amazon)
はんだごて
偽トロ&Qingpiのフレキをはんだ付けする際に使います。リンクはGC自動化の際に使用したものですが、使いやすさを求めるなら、FX-600やPX-280もオススメします。(購入先:Amazon)
有鉛はんだ (0.6mm)
偽トロに付属する極細はんだだけでは足りないので、別途はんだの購入が必要です。はんだ付けする箇所によって、極細とコチラを使い分けます。有鉛だと溶けやすく扱いやすいです。(購入先:Amazon)
精密ピンセット
フレキを引き抜く際など、要所要所で使います。(購入先:Amazon)
ニッパー
ケースの加工に使います。(購入先:Amazon)
ヤスリ
USBケーブル挿入口の造成など、ケースの加工に使います。私はセットで購入したものを使いましたが、幅0.8~0.9cm程度の平タイプのヤスリが1本あれば十分です。(購入先:Amazon)
カプトンテープ
フレキシブルケーブルの固定や、仮止めに使います。(購入先:Amazon)
はさみ
カプトンテープを切る用です。手持ちのものを使いましょう。(購入先:Amazon)
デザインナイフ
ヤスリで削った後のUSBケーブル挿入口の仕上げに使います。リンク先のはお高めなので、百均で売ってるものや、カッターナイフでも構いません。(購入先:Amazon)
UVレジン(ハード)
Qingpiを3DS基板に固定するのに使います。詳しくは後で解説しますが、固定さえできれば別のやり方でもいいです。(購入先:Amazon)
UVレジン 硬化用ライト
UVレジンを固めるライトです。UVレジンを使う方はセットでどうぞ。(購入先:Amazon)
必須ではないがあった方が良いもの
交換用アナログスティック
3DS LLのアナログスティックはショートフレキと、旧型のロングフレキのものがあります。ショートフレキだと、偽トロ導入の難易度が跳ね上がりますので、手持ちにない方は必須級です。出品時の写真はロングフレキでも、届いたらショートフレキのパターンも見受けられるので、信頼できる購入先があれば教えてください。Amazonだと1度だけロングフレキでしたが、それ以外はダメでした。運ゲーするよりは旧3DSの拡張スライドパッドから、抜き取るのが賢いです。(購入先:Amazon)
電子工作用マット
作業に使うマットです。私が使っているマットは窪みがあり、3DSの部品を入れることが出来て使いやすかったです。(購入先:Amazon)
フラックス
個人的には必須です。はんだ付けする前に塗っておくと、接合しやすくなります。Hozanでもgootでもお好きなメーカーのをどうぞ。ペン型タイプもおすすめです。(購入先: Amazon)
フラックスクリーナー
フラックス残渣の除去に使用します。フラックスを塗布する場合はこちらも買った方が良いようです。ペン型タイプもあります。(購入先: Amazon)
有鉛はんだ (0.3mm)
偽トロにも付属していますが、偽トロ導入分しかありません。フレキが重なる場所やタッチスクリーンの裏など、はんだが少ない方がいい箇所もあるので、念のため買っておいても良いと思います。基板実装において、0.3mmがほしくなる機会は多いので、買っておいて損はないです。(購入先: Amazon)
水性マーカー
ケースを削る箇所の印をつける用です。(購入先:Amazon)
はんだこて台
はんだごてセット付属のものより、しっかりしてます。(購入先:Amazon)
エアダスター
ケースをヤスリで削った後の粉塵を吹き飛ばして、気持ちよくなれます。(購入先:Amazon)
交換用バッテリー
導入ついでにバッテリー容量を増やしたい方向けです。(購入先:Amazon)
あとはPCへ音声出力したい方は3.5mmのAUXケーブル、ノイズフィルター、USB-3.5mm変換ケーブル等を買えば良いかと思います。自動化するだけなら必要はありません。
3.基板取り付け手順
冒頭にも記載しましたが、それぞれの具体的な解説については、開発者様が以下のリンク先で解説しておりますので、大まかな流れや、注意が必要な点を把握するための参考程度に考えていただければと思います。
※ 導入による損害については責任を負うことはできませんので、ご了承の程よろしくお願いいたします。
なお、今回の手順は偽トロ(LL-SPA3)が「USB 一体タイプ」の場合となりますので、別体タイプを取り付ける際はオプティマイズ様のHPから手順を確認願います。
Qingpi取り付け手順
偽トロ(LL-SPA3)取り付け手順
①バッテリーカバーを外す
電源を落とし、SDカードやタッチペンを外して、精密ドライバー+0で本体底面部のネジを緩めます。ネジを緩めたら、矢印の箇所にツメを引っかけて、バッテリーカバーを手前に起こすようにして取り外します。

②バッテリーを外す
カバーが外れましたら、ツメなどを引っ掛けて、バッテリーを起こすようにして外します。

③ボトムケースを外す
ボトムケースのネジを外します。青丸の箇所はゴムカバーの奥に隠れているネジですので、ツメやヘラを使って、ゴムカバーを起こすようにして外します。

緑丸の箇所はネジの大きさが違うため、分けておくとよいです。

ネジが外れたら、奥からボトムケースを起こし、奥側が持ち上がった所で手前から奥にひっくり返すように起こします。ひっくり返す際にはLRボタンのフレキシブルケーブルが断線しないように、慎重に起こして下さい。

ボトムケースからマザーボードに繋がっているLボタンとRボタンのフレキシブルケーブルを外します。赤丸部分をツメやヘラなどを引っ掛け、マザーボードから垂直に押し上げれば簡単に外すことができます。これで、ボトムケースの取り外しは完了です。

④マザーボードを外す
次にケースから、マザーボードを外します。まずは赤丸のアナログスティックのネジを外します。

ネジを外し、アナログスティックを側面側から押し上げると、マザーボードとアナログスティックを接続するフレキシブルケーブルが確認できます。コネクタの矢印側から、ツメなどを引っ掛けて垂直に押し上げるようにするとラッチが開きます。ラッチが開いたら、アナログスティックを矢印方向に持ち上げて取り外します。取り外した後はラッチを閉めておきましょう。
注意点ですが、ラッチはかなり脆いので、開く際には力を入れすぎないようにしましょう。

同じ要領で各種ケーブルをマザーボードから外していきます。ラッチを上げる方向は矢印方向の通りとなります。ラッチを開いた後は、ピンセットで慎重に引き抜き、全てのケーブルを取り外して下さい。
なお、左下マイク部のケーブルは、ゴム部をピンセットなどで持ち上げて、本体接続コネクタが見える様にしてから、取り外します。

赤外線通信ボード、音量調整ボード、無線LANカード、ストラップ部品も取り外します。全て垂直に持ち上げるようにして、取り外すことができます。

マザーボードを固定しているネジも全て外します。

マザーボードのゲームカードスロット側を軸にするようにして、マザーボードを起こしてひっくり返します。上画面接続用ケーブルがマザーボードに付いているので、慎重に起こします。上画面から出ているケーブルが損傷すると、修理に液晶ごと交換する必要があり、交換難易度もかなり高いので注意して下さい。

⑤Qingpiのフレキシブル基板の取り付け
マザーボードとケースを分離出来たら、Qingpiの取り付けに入ります。一部のTPが偽トロのフレキシブル基板の下に位置しますので、先にQingpiを取り付ける必要があります。メイユール様の導入手順も一読願います。

フレキシブルケーブルをマザーボードに取り付けます。マザーボードのTPがフレキの穴から見える状態にし、カプトンテープなどを使って仮止めします。しっかりTPとフレキの穴を重なっていることを確認できたら、はんだ付けを行います。フラックスを使う場合は、ここではんだ付けする箇所に塗布します。

はんだ付け不良があると、正常に動作しませんので、しっかりとTPへ流し込むようにはんだ付けをして下さい。
注意点としては下記画像の青枠で囲っている箇所は偽トロのフレキと重なりますので、はんだの量が多すぎると、偽トロの取り付けに支障が出ます。また、はんだ付け不良があると、後からはんだ付けし直すのが難しい部分となりますので、丁寧に作業を行って下さい。
はんだ付けが完了したら、カプトンテープを剥がしていきますが、剥がす際にははんだ付けした箇所をしっかり指で押さえて、テープと一緒に外れないようにしましょう。
赤枠のカプトンテープはメイユール様の手順でカプトンテープで固定したままにすることを推奨されてる部分ですので、そのままで良いです。
偽トロ(LL-SPA3基板)を取り付ける前にQingpiの動作を確認したいという方は、一度組み直して、ここで接続テストを行います。

⑥LL-SPA3のフレキシブル基板の取り付け
Qingpiの基板と同様に取り付けます。配置は画像のようにして、LL-SPA3基板(USBコネクタがついてる基板)はマザーボードの下側に位置させます。基板の穴が小さく、密集しているので、はんだは付属の0.3mmの極細はんだを使った方が良いです。こちらもはんだ付け不良があると映像出力できませんので、丁寧に作業しましょう。はんだ付けが終わったら、仮止めしているカプトンテープは全てはがします。

⑦ケースの加工
フレキのはんだ付けが終わりましたら、ボトムケースの加工に入ります。(先にアナログスティックの加工をしても良いです。)
まずはQingpiの基板が重なる箇所の赤囲い箇所の突起を切り取ります。ニッパーを使って、大まかに切り取った後、ヤスリ等で均すのが楽です。

次にLL-SPA3基板と重なる部分の加工です。赤囲いの箇所をニッパーや、デザインナイフ等を駆使して切除します。

こちらは一体タイプ限定の作業になりますが、ネジで固定されているLボタンの押さえ部品を取り外して、加工する必要があります。外す際にLボタンのスプリングを飛ばして紛失しないように注意して下さい。

赤囲いの部分をまるごと切除します。青囲いの窪み内の部品は、バッテリーカバーのネジのナットとなっていますが、押さえ部品を切除したことにより、固定されていない状態になります。機能上の問題はほぼありませんが、バッテリーカバーの片方のネジを締めることができなくなりますので、テープや、部品と窪みの隙間をレジン等で固定するなどして固定すると良いです。

こちらも一体タイプ限定の作業です。赤外線が透過する黒いアクリル部品がありますが、こちらを取り外した穴からUSBコネクタを引っ張り出すため、外す必要があります。部品の下側をピンセットなどで手前に持ち上げると外しやすいです。

次にQingpiのUSBコネクタを出す穴をケースをヤスリで削るなどして造成します。フレキに基板を接続し、穴の開ける位置を確認すると綺麗に空けれます。
※ ケースにマザーボードを戻す際にフレキが、マザーボードに潰されないように注意して下さい。断線の原因にもなります。

ボトムケースを重ね、USBコネクタを削る位置を水性ペンなどで印付けすると作業がラクです。気持ち的にはボトムケース側を多めに削った方が良いかと思います。

場所が決まったら削っていきます。コネクタと幅が同じくらいの平ヤスリがあると、作業がかなり楽です。

同様にボトムケース・バッテリーカバーも削ります。削りすぎていないかこまめに確認しながら、作業を進めると良いです。バッテリーカバーを削るのは最後の組み立て時でも問題ありません。

最後にデザインナイフで整えると綺麗に仕上がります。

以上でケースの加工は終わりです。最終形は画像のようになります。

⑧アナログスティックの取り付け
ここの作業はオプティマイズ様のHPで詳しく解説されているので、そちらを見た方がよろしいかと思いますが、一応流れを書いときます。
アナログスティックのケーブルを接続するコネクタは、LL-SPA3基板の下側に位置するため、基板に設けられている穴からケーブルを通して接続する必要があります。アナログスティックは旧版のロングフレキと、新版のショートフレキの2種類あり、ショートフレキだと難易度が格段に上がりますので、旧版がなければ、別途買っておくことを強く推奨します。

また、ショートフレキのアナログスティックの場合はスティック自体にも加工が必要です。新版のアナログスティックはフレキが短いだけではなく、赤丸の部分が高く作られています。

このため、無理やり取り付けるとアナログスティックの操作性が損なわれる恐れや、LL-SPA3基板と干渉して、フレキが損傷する恐れがあるため、白いプラスチックの部分を切除する必要があります。新しいアナログスティックを使用している方や、古いアナログスティックでも、少しでも高さを削りたいという方は以下の作業をして下さい。
具体的な手順ですが、デザインナイフ等を使用して、三角の部分(写真丸印)をまず切除します。加工の際はフレキや、下側の基板に力を入れて損傷させないように注意して下さい。

そして白いプラスチック板の付け根の部分をデザインナイフで軽く切り込みを入れます。

その後、プラスチック部分を手前に折ります。軽く力を入れても折れないようであれば、再度切込みをいれます。写真のようになれば成功です。

フレキの先端を写真のように軽く折り目を入れておきます。折り目を入れる位置は、フレキ先端に貼ってある補強板とフレキの繋ぎ目になります。

最後に付属の絶縁テープを端子の金属部分に貼ります。これでアナログスティックの加工は完了です。

アナログスティックの加工が完了したら(もしくは旧版で加工が不要なら)、取り付け作業に入ります。基板をまず、LL-SPA3基板を写真のように仮止めします。

その後、アナログスティックのケーブルをLL-SPA3基板の穴に通します。下側にあるコネクタのラッチを上げて、ピンセットを使って、コネクタにフレキを軽く挿入します。
ケーブルの先端が挿入できたら、ラッチをピンセットの先で閉じます。ピンセットでケーブルを軽く引っ張って抜けなければ接続完了です。

⑨電源の配線
LL-SPA3の電源を配線します。Qingpiの基板ははんだ付けする際の支障となるので、一度外しておき、フレキも仮止めしておくと良いです。
配線ポイントは写真のチップコンデンサの足になります。まず、極細はんだをチップコンデンサの足に盛り、ピンセットで配線材をコンデンサの足に近づけて、盛ったはんだにこてを当てて配線を行います。配線材は案外基板から抜けやすいですので、配線材に力が入らないようにしましょう。

うまく接続できれば写真のようになります。以上でLL-SPA3基板の取り付けは完了です。

⑩動作テスト
Qingpiをマザーボードに固定する前に、部品を組み戻して動作確認をします。フレキをコネクタに差し込む際はピンセットを使って、慎重に行います。
なお、マザーボード固定用のネジ穴の内、裏面のフレキと重なる箇所については使用できなくなります。他の3か所で固定するので、写真の状態で組み立てても問題ありません。

忘れがちなのが、音量調整ボードと、ワイヤレススイッチがレバーと噛み合っているかの確認です。また、LL-SPA3基板に隠れているフレキの接続漏れがないか確認しましょう。


フレキの接続が終わったら、LL-SPA3とQingpiをPCに接続して、動作確認を行います。使用ソフトやキャプチャ方法は次項で解説するので、そちらを参照願います。不具合があった場合ははんだ付け不良や、フレキの接触不良などがないか、見直してみて下さい。うまく動作確認ができたら、Qingpiの固定に移ります。

⑪Qingpiの固定
最後にQingpiを基板に固定します。メイユール様が紹介している手順に従って、「詰め物」を用意して固定しても良いですが、私はハードタイプのUVレジンを使用しました。

レジン液を、マザーボードとQingpi基板に固定できるよう垂らします。UVライトが当たらない箇所は固定できないので、Qingpiの裏面にはレジン液を垂らさなようにして下さい。少しずつ重ね塗りすると良いです。

その後、UVライトを当てれば直ぐに固まります。ハードタイプだと、しっかり固定できるので、重宝しています。

⑫組み立て
Qingpiの固定が終わったら、3DSを組み立てます。なお、「マザーボード固定用ネジ(1本だけ)」、一体タイプの場合は「赤外線ポート」および「赤外線透過用のアクリル部品」は使用しませんので、手元に残ります。

ボトムケース、バッテリーカバーを組み立てれば完成です。お疲れ様でした。導入した感想としては、Qingpiははんだ付けの経験さえあれば素人でも簡単そうですが、LL-SPA3はやや難しいかもしれません。

4.自動化ツールのインストールから実行まで
ここでは自動化基板導入後に、ツールで3DSを操作するまでの手順を紹介します。
①3DSの画面をPCに映像出力する
まずはLL-SPA3にケーブルを繋ぎ、PCと繋いでソフトを起動し、3DSの映像をキャプチャーします。
こちらに、3DSの画面を表示するためのビュアーソフトがあります。以下のサイトからn3DS_viewとかかれた旧3DS用のビュワーをダウンロードします。
ダウンロードしましたら、次にデバイスドライバをインストールして、LL-SPA3を認識させる必要があります。ビュワーソフトを解凍したときに出来る「driver」フォルダー内の「install_driver.exe」を実行し、デバイスドライバのインストールを行ってください。その後、「n3DS_view.exe」を実行し、LL-SPA3とPCとをUSBケーブルで繋げば3DSの映像を取り込むことができます。
取り込みの際にプロダクトキーの入力が求められた場合、LL-SPA3に同封されているシリアルナンバー、プロダクトキーが書かれた紙に書いてある文字列を入力しましょう。

②自動化ツールの導入
Poke-Controller MODIFIED(Extension版でも可)またはNX Macro Controllerという使用します。それぞれのツール導入方法は本記事では解説しませんので、導入ができていない方は以下のサイトを参照願います。
Poke-Controller MODIFIED(+Extension版)のインストール
※ 参考 タッチスクリーン入力自動化の導入
Poke-Controllerは導入直後のそのままの状態ではタッチスクリーン入力の自動化ができず、「qingpi-python」をPoke-Controllerと同じ環境にインストールする必要があります。
注意点としては、qingpi-pythonのインストールには「Python3.10以降」が必要です。PokeConの環境を「Python3.7」で構築している場合はqingpi-pythonが動作しませんので、batファイルでPythonの環境構築後に「PokeCon Extention版の導入」の記事を参考にPython3.10以上で再構築します。
再構築が完了しましたら、コマンドプロンプトを起動し、以下のコマンドを実行して、「qingpi-python」をインストールします。
※ ディレクトリは各自で異なると思いますので、各自で修正して下さい。
C:PokeConPoke-Controller-Modifiedpythonpython.exe -m pip install qingpi-python
2024/05/18 追記
「Python3.10以降 + qingpi-pythonのインストールが必要」と記載いたしましたが、こちらはPoke-Controller Modified ExtensionでQingpiに対応する前(ver.0.0.5以前)の話となりますので、ver.0.0.6以降では「qingpi-python」のインストールは不要であり、Python 3.9以前でも動作します。詳しくは開発者であるフウさんの記事に書いてあります。また、PokeConでの設定や、マクロ用で使用する関数も紹介されておりますので、ぜひ参考にして下さい。
NX Macro Controllerのインストール
記事内の必要環境に記載されている内容は「Switch自動化」を想定したものです。LL-SPA3とQingpiを導入した3DS LLがあれば問題なく動かせます。
③自動化ツールへの映像取り込み
上記の自動化ツールは画像認識を利用した処理をすることができますが、n3DS_viewの映像を直接自動化ツールに取り込むことができませんので、「OBS Studio」を経由して、映像を取り込む必要があります。
手順としてはまず「ソース」の「+」をクリックして、「ウィンドウキャプチャ」を選択します。

ウィンドウは「[n3DS_view.exe]: nonstd 3pairs Diff Signal Viewer」を選択してOKを押します。

すると3DSのキャプチャ映像をOBSに取り込むことできました。次に「仮想カメラ開始」をクリックして、OBSの出力をカメラ映像として認識させます。

カメラ映像として認識できるようにすることで、自動化ツールの映像で「OBS-Camera」を選択できるようになります。
NX Macro Controllerの画面

Poke-Controller MODIFIED(Extension版)の画面

④NX Macro ControllerとPoke-Controllerの比較
「2つの自動化ツールがあるが、どちらを使えばいいの分からない」という方もいるかと思われますので、それぞれの特徴についての紹介します。どちらが正解ということはなく、明確に機能が違う部分があります。
Poke-Controllerの特徴
Poke-Controllerの特徴は何と言っても「タッチスクリーン入力が簡単に使える」ということです。デメリットを挙げるとしたら、Pythonを使用するため、自動化プログラム作成のハードルが高いということでしょうか。
Qingpiでタッチスクリーンの動作も確認できた。Python3.10で構築し直して、qingpi-pythonを直接Pokecon環境に持っていったら上手くいった。 pic.twitter.com/lWZS77m68M
— 奈都 (@Natu5307051) 2024年5月6日
バッチを叩いて、純粋かつ綺麗な曲を演奏します。使わせていただいたスクリプト →(Github : バッジを磨いて神社)
NX Macro Controllerの特徴
NX Macro Controllerはゲームパッド機能を使うことで、任意の外部コントローラーを使用して、3DSを操作できることが強みの一つです。据え置き型ゲームのように利用できるため、消耗品(?)である3DS本体を直接操作しなくていいのは嬉しいです。また、マクロ文法が単純なので、簡単なプログラムであれば素人でも組むことができるのは大きなメリットです。
偽トロとQingpiなんとか自力で導入できたぞ〜〜〜。プロコンで3DSができるの面白いな。 pic.twitter.com/NuarpdgXmx— 奈都 (@Natu5307051) 2024年5月5日
デメリットは、タッチスクリーン操作を自動化する場合はCom0Comで仮想ポートを用意する必要があることです。
NX Macro ControllerでQingpiのタッチスクリーンを操作する参考情報です。仮想ポートを2ch(COMa-COMb・COMc-COMd)用意して、COMbとCOMdからQingpiのCOMxに送る簡単なプログラムを書いておき、COMaをNX Macro Controllerで使用し、C#スクリプトでCOMcのSystem .IO.Ports.SerialPortを作成します。 https://t.co/McGzqnzoFe
— メイユール (@u1f992) 2024年11月3日
余談ですが、 Press(CLICK_R, PressTime, WaitTime)が無線切り替えに該当し、Press(CLICK_L, PressTime, WaitTime)が電源オンオフに該当します。プロコンで言うところのスティック押し込みと同じ入力です。
5.Qingpi操作用アプリの紹介
①qingpictl
Qingpiの開発者様が公開しているアプリケーションについても紹介します。こちらは「qingpictl」というPCからのキーボード&マウス操作から、3DSのボタン入力&タッチ入力が可能になるアプリケーションです。
起動方法ですが、「qingpi-python」をインストールした環境で、以下のコマンドを実行するだけです。[port]はCOMポートのことです。例えばQingpiのポートが「COM3」なら、「python -m qingpi COM3」とコマンドプロンプトで実行すれば起動できます。
$ python -m qingpi [port]
タッチスクリーン入力をしたい場合は、透過ウィンドウにキャプチャ画面に合わせて、マウスドラッグすればOKです。
qingpictlを使えるようになった。ボタン入力や、タッチ入力をPCから行えます。 pic.twitter.com/o4UynBUojH
— 奈都 (@Natu5307051) 2024年5月13日
各種操作はGithubに記載されておりますので、参照して下さい。
②remote play 3DS
次に紹介するのは「remote play 3DS」というアプリケーションです。こちらもQingpi開発者様が公開しており、ブラウザから3DSを操作することができます。(リモートデスクトップでもいいですが。)
Remote play 3DSを実行できるようになった。ブラウザから3DSを動かせるってマジ!?(エミュじゃないよ。) pic.twitter.com/mwTH3h1Ge9
— 奈都 (@Natu5307051) 2024年5月13日
実行には「remote-play-3ds」のライブラリが必要となり、こちらは「Python3.12以上」でサポートされています。バージョンを指定してインストールする場合は、「py -3.12 -m pip install remoto-play-3ds」とコマンドプロンプトで実行します。
$ pip install remote-play-3ds
これで「remote-play-3ds」のライブラリがインストールできたと思います。
なお、実行にあたっては「n3DS_view」と「OBS」の双方で設定が必要です。以下Githubのリンクに入り、下にスクロールすると「Setting」と書かれており、そちらが必要な設定となります。
「n3DS_view」では「等倍調整」から「dot by dot x1」を選択、「フィルター」から
「no filter」を選択します。「OBS」では「設定」→「映像」から解像度を「400×499」にし、ソースを右クリックして「出力サイズを変更(ソースサイズ)を選択します。その後、Virtual camera(仮想カメラ)を開始すれば準備は完了です。
準備ができたら、アプリケーションの実行に移ります。次のコマンドをコマンドプロンプトで実行します。$PORTはCOMポートで、$INDEXはカメラ番号です。例えば、COMポートが「COM3」、カメラ番号が「4」でpython3.12環境を指定する場合は「python3.12 -m remote_play_3ds COM3 4」と実行します。
> python -m remote_play_3ds $PORT $INDEX
すると「Running on http://192.168.11.2.5000」と表示されるので、Ctrlキーを押しながらクリックすると、サーバーにアクセスできます。以下のような画面になれば成功です。ブラウザのボタン入力通り応じて、3DSをリモートでコントロールすることができます。

6.おわりに
以上となります。ポケモンにおいては8世代以降だけではなく、3世代では「jiangtun」による自動化環境が構築され、ついには「Qingpi」によって4〜7世代の自動化まで出来るようになりました。双方の開発者であるメイユール様にはホント頭が上がりません…。本記事の査読もしていただき、本当に感謝申し上げます。
現状はDS〜3DS用の自動化プログラムがほぼ公開されていませんが、3世代の自動化を一通り整備できましたら、順次4世代から対応していきたいなと考えています。この記事を見て、3DSの自動化に興味を持たれる方が現れると幸いです。