ライフハック&ガジェット紹介ブログ!

ライフハック&ガジェット紹介ブログ!

ゲーム系のガジェット&ライフハックブログです。

Poke-Controller-Modified(ポケコン)の使い方、必要な機材や導入補助まとめ【SWCon-Pyside】

 

こんにちは、露草です。

ポケモンSVで、以下のようなswitch自動化の需要が高まってきたので必要な機材を個別記事で一覧にします。

  • 卵の自動孵化
  • 学園最強大会金策での金策オシャボ探し
  • レイド貼りの自動化(6Vメタモンの無限回収など)
  • (ローカルおよびオンライン)でのホストゲスト共の合言葉自動化

などなど。

前置き(前提知識)

基本的にswitchの自動化は以下の簡略図のような感じで区分されています。

※勘違いさせるので補足しますが、
上の表は各種ツール使用時のパソコンの要不要の話です。
導入時、プログラムの入れ替え時は全てパソコンは必須です。
※枠の中はツール名または製品名

のような区分で現在の所、日本では構成されています。

マイコンとは小さい基盤とチップが乗った汎用小型コンピュータです。

※この画像の物がマイコンの一種のArduino Leonardoです。

より詳しく正確に分類するならこの図のような感じになります(この図は困ったら見ればいいと思う)。

この記事ではPole-Controller Modifiedに必要な機材について解説していきます!
※ついでにこの機材は【SWCon-Pyside】や【NX2】にも(一部)転用できます(この記事にある商品でほぼ全て足ります)。

Poke-Controller Modified【.py】とは?

高度な画像認識が使え、プログラムもかなり複雑で融通が効くPythonと呼ばれる言語が使えるswitchを操作する用のソフトウェア(PC用ツール)です。

簡単に言えばPoke-Controller Modifiedとは、switchのコントローラーの代わりになり、かつ画像認識により人間の目でのチェックの代わりにもなる便利なソフトです!

Pythonが使いこなせるなら、画像認識でとても便利なプログラムが書けるでしょう。
※他人の自動化マクロを使うだけならPythonの知識はちょっとだけでいいですが、PCの基本的な知識は必須です。

ポケコンは圧倒的な利用者の数から、蓄積されたマクロ/プログラム/スクリプトも多く拡張性が高いのが特徴です。

じゃあ初心者向きか?と言われるとそうでもないですが、自動化マクロは世に存在している物を使うしか無いので覚えると得。

必要な機材はシンプルに書けば、

  1. マイコンの一種のArduino Leonardo推奨】1個
  2. シリアル通信機1個
  3. 1000円ほどのキャプチャーボード1個(動画録画用の機械)
  4. ジャンプワイヤー(Leonardoとシリアル通信機を繋ぐただの銅線)
    くらいです。

Switch自動化で使う※関数は多くはないので、比較的習得難易度は低いです!

※関数とは?→自動化マクロ用のプログラムのテンプレみたいな物。ここでAボタンを繰り返し押して欲しいとか、この画像が来た時だけBボタンを押して欲しい、のような命令コード。

 

例えば以下の関数などがサンプルとして利用できます。

※友人のこちゃてす氏がまとめた便利なポケコン用関数まとめです!(言語はPython

Google Driveの仕様上.pyファイルに対して危険だという通知がでる事があります。

 

マクロプログラム(性格に言うとこの場合はスクリプトと言います)は、普通のテキストエディターじゃ編集しにくいので、Visual Studio CodeVScodeと呼ばれる無料のプログラムエディターをインストールがオススメです。

導入っぽい(インストールする)記事はこれ↓

VSCode | Visual Studio Codeのダウンロードとインストール

インストールした後にやった方がいい、Python用の無料のVScode向け拡張機能の導入はこれ↓

PythonのためのVisual Studio Codeのはじめ方 - ガンマソフト

ポケコンが使える用になるまでの大枠の流れの解説(わりと詳しくも書いた)

  1. Windows PCに Poke-Controller-Modifiedをインストールする。
    インストール方法:『.batファイル』と呼ばれる『クリックするだけでインストールを補助してくれる拡張子のファイル』を有志の方が開発してくれたので、それを使いパソコンにインストールする。なお本来他人の作った『.batファイル』は危険なのでホイホイクリックしてはいけない物と理解しておく。

    pokecontroller.info

  2. パソコンにポケコンのソフトだけ入れてもSwitchとパソコンを繋ぐ機器をセッティングしないといけないので、機材も買う。
    キャプチャーボード、シリアル変換器、Arduino Leonardoを1個ずつ買う。
    ジャンプワイヤーも買うが、シリアル変換器⇔Leonardoを繋ぐための物なので、購入したシリアル変換器によって若干形が変わる(オスメスがある)ので、いい感じにチョイスする。

    本来はLeonardoというマイコン以外でも接続可能であるが、Leonardoが現状いい感じに拡張されていて便利だし、何よりLeonardoはマイコン単体マクロ、つまりパソコンで一度Leonardoに自動化マクロを書き込んだら、その後マクロを使う時にPCが不要な省電力・手間が少ないマクロにも使い回せるのであると便利。
    自分がポケコンを使いこなせなかった時でも後から楽しく遊べる。

  3. 買ったLeonardoはそのままではポケコン君が認識してくれない。
    Leonardoをポケコンから見える代理仮想コントローラーとして使うために、
    ポケコン用に有志が作った【Poke-ControllerForLeonardo.ino】というLeonardoをコントローラー化させるプログラムを、
    Arduino IDEという、Arduino製品向けの専用の書き込み用のソフトウェア(無料)を使って書き込む。
    ※書き込むプログラムの拡張子、Leonardo用の拡張子のメインは【.ino】。

  4. 機材の前準備は終わったので、各機材をパソコンに正しく接続する。

    【簡易的な接続図】
    Arduino Leonardo→(ボタン入力)→Switch
      ↑              ↓
    (シリアル通信機) (キャプチャーボード)
          ↑ ↓
        各種ケーブル
          ↑ ↓
         パソコン

    【省略してたけど各機材間の各種ケーブルのイメージ】

    ・switchドック→HDMIケーブル(いつもテレビに挿してる奴)→キャプボ→PC
    ・PC→USBケーブル(不要なタイプもあり)→シリアル通信機
    ・シリアル→ジャンプワイヤー→Leonardo(マイコン
    arduino ○○(Leonardo)→USB-MicroBケーブル→switchのドック
    MicroBケーブルは充電専用の物もあるので、通信可能な物を使う。

  5. 接続が終わったので、ポケコンを起動する。
    ポケコンの画面にSwitchの画面が写っているか確認し、画面左下にあるBaud Rateが9600になっているか確認する。
    Windowsのデバイスマネージャーを開き(画面左下のボックスからデバイスマネージャーと検索すれば出る)、ポート(COMとLPT)と呼ばれている部分を確認する。

    COMとはLeonardoが繋がっているポートなのだが、とりあえずCOMの後に続く数字、画像ならCOM3の『3』をポケコンのソフトのUI左下の『COM port』の横の空白に入れて『Reload Port』を押せば、機器の接続やLeonardoへのプログラム書き込みがうまく言ってればポケコンからSwitchが動かせるようになる。
    ポケコンUI左下の『Controller』から仮想コントローラーが出せるので、接続が正しかったら何回か適当なボタンを連打していけば動く。

    たまにCOM Portがそもそもぐちゃぐちゃでよろしくない状態の人もいるのでその場合は各COM portを全部アンイストールする。
    非表示の物も表示して全てアンイストールしてからPCを再起動する※自己責任で実行。
    ただしCOM1だけはノータッチでアンイストールしてはいけない。
    再起動していつも通りポケコンを起動してCOMの数字をきちんと選んで動けば正解。

  6. 大体そんな感じで動く!!!

Poke-Controller Modified【.py】で買う機材一覧

先に言っておきますが、自動化の機材は相性というか、そもそもの仕様が複雑なので指定した物を買って欲しいです。

同じ名前の同じマイコンでも、内部の基盤が一般的なものと異なったりしている事がありますので、お金と手間を無駄にしない為にもぜひこのリンク先を参考にして下さい!!

機材一覧(短文説明)

  • マイコンの一種の【Arduino Leonardo推奨】1個
  • シリアル通信機1個
  • マイコンとシリアルを接続するためのジャンプワイヤー(ただの導線:銅線)
  • 1000円ほどのキャプチャーボード1個(高い物でも問題は無いがelgatoは非推奨)
  • 各種ケーブル
    ・USBケーブルがMicro B端子で1本
    ※Leonardoの場合はLeonardoとPCをMicro Bで繋ぐ
    HDMIケーブル1本
    ※そこそこちゃんとした物、switch付属のケーブルで十分。複数本無いとキャプボに1個使うので挿し直しが不便だしドックが痛む。
  • USBのオンオフができる切り替えスイッチ1個~数個※重要
    ドックが高額なのにケーブルの抜き差しなどで結構壊れる消耗品なのでオススメ。
    別にUSBハブでもいいのですが通信の帯域や電力の問題を考慮するのが大変だし、トラブル時に問題の切り分けがしにくいです。
    正直使わない時に接続を切り替えスイッチでオフにできて、かつドックが傷まないのがでかいメリットなのでオススメです。
    ドックのUSBは使い倒すと普通に壊れて泣きます。
  • USBの向きを変更できるUSBアダプタ(※重要
    これも壊れる対策&取り回しの快適さで重要かも。無くてもいい。
    ただ向き調整しないと手引っ掛けて色々バキッってなって泣くかも。
  • 熱暴走&ホコリ対策のSwitch用の冷却ファン(Switch上部につけるやつ)
    ※switchはホコリですぐファンが壊れる。
    ホコリガード代わりになるのでオススメ。
    自動化は長時間酷使するのでSwitchに優しくした法が良いです。
  • アンサー Switch有機ELモデルドック用 寝かせて立たせて2Wayスタンドハブ
    ※ホコリ対策。あってもなくてもいいけどあった方が壊れないと思う。
    単にドックごと横にできるから取り回しがいいのとなんとなくホコリガードになりそう。趣味。

実際の商品の解説と一覧(画像付き)

Arduino Leonardo。1個必要。

Leonardoの互換機ですが安いのでオススメ(※一応ちゃんと動く報告あり)。1個必要。

少し高いけど導入で困りたくない方は、
こちらの『純正Leonardo』がオススメ。1個必要。

UNO用だけどLeonardoも入る(と言われている)ケース。1個あってもいい。

結構服とかに色々な端子が引っかかって服とかをだめにするのであってもいいです。無くてもいい。

Arduino Leonardo用のmicro Bケーブル。1個必要。

マイクロBのケーブルは充電専用ケーブルが売っていて、=通信ができない=自動化は一切動かない、なので通信可能なリンク先がおすすめです。USB2.0推奨。USB3.0は非推奨。1個必要。

各種シリアル通信機。1個必要。

よく自動化勢が使っているシリアル変換器。正直怪しい中華品だが、他にいい選択肢も無いしちゃんと動くので使っている。チップはFT232RL(に見える)1個必要。

こちらも動作報告があったシリアル変換器。CP2102Nというチップが大事っぽいです。1個必要。偽物チップが無さげのでわりとオススメではある。

ジャンプワイヤー。メス-オスが数本必要。

 

シリアル変換器からLeonardoに信号を伝える為の線

何かと消耗品で沢山使うのでこれがオススメ。

端子にオス・メスあるが、とりあえず全種類あると割と便利だし色分けが神便利

今回紹介したLeonardoとシリアル変換器であれば、メス-オスのケーブルが2-3本あればいいですが、Unoで使ったり他でわりと使ったりもします。

あとそもそもジャンプワイヤー自体がテスト用なのでワイヤーは破損しやすいので大量購入してると精神的に楽。

HDMIケーブル1個必要。

正直Switch付属のでいいけど、取り回しの楽さで。

HDMIケーブルはエレコムのがおすすめで、HDMIケーブルは色味に影響します

色味が変わったら画像認識も勿論失敗するのでこれを買って欲しいです。

実験した所、マイコンHDMIまわりで遅延が起き、ボタン入力が失敗することもあったので、安いHDMIで動かないかは謎ですが、ちゃんとしたのを買っておけば安心。

HDMIケーブルは規格が面倒なので、適当に買わず上記の物がオススメです。自分でググるだけ時間の無駄まである、調べててキレそうになりました。

Arduino Uno1個必要だけど今はもう使われていない。

昔はArduino Uno】も使われていましたが、現在こちらからLeonardoへの移行がゆるやかに界隈が動いています。Unoたまたま持ってる人向け説明。

※これじゃないと動かない物もあったりしますが、Leonardoがオススメ。

USBのオンオフができる切り替えスイッチ。(※重要)1個~数個。

私はこれを買いましたが今高いので他のも貼ります。

だいたいこんな感じのものならなんでもいいとは思いますが、有名そうな所が出してる商品がオススメです。

USBの向きを変更できるUSBアダプタ。1個~数個。

こんなの。あればあるほど便利です。好み合わせて買って下さい。

熱暴走&ホコリ対策のSwitch用の冷却ファン。1個あってもいい。

switchのファンはホコリに弱すぎるので、上部の排気口に対して挿せる冷却ファンです。基盤は熱で変形していくしホコリは入ったらわりとどうしようもないので、あった方がいいと思います。上のリンクは日本企業。

僕はこちらの温度に対して(たしか)自動で反応してくれるタイプを買いました。割と便利。多分中華製。

LC06のパクリかOEM商品かな。安いので一応。

 

アンサー Switch有機ELモデルドック用 寝かせて立たせて2Wayスタンドハブ。1個あってもいい。

私は持ってないのですが、横向きにできる分ホコリに強そうなので導入してみたいです。

 

他の参考用サイト

色々なポケコンの情報はこのサイトで調べるとより理解できます。

上サイトではBATファイルを用いたお手軽なポケコン導入方法が紹介されています。

※そのうちこのリンク先の方法より簡単な方法を提供できるかも。

マイコンについて

※【Arduino Leonardo】と【シリアル通信機1個】と【ジャンプワイヤー】は、

【CH552-SERIAL】というマイコンとシリアル通信機が合体したもの1つで代用も可能ですが、【CH552-SERIAL】は1個人の供給で作られている物という事も注意すべき点です)。

そして【CH552-SERIAL】は本当にポケコン専用機になりますので、飽きた時とかにマイコン単体のプログラムにも使い回せるArduino Leonardo】もオススメです。

bzl.booth.pm

個人的にはとてもオススメなのですが、いつこの記事を誰が読むかわからないので、ここに記載するにとどめて置きます。

 

ポケコンのUI(ソフトの見た目)の解説 ※この部分はこういう使うなど

上から順に説明していきます。まだ作り途中ですが、他のサイトにはこういうのはないですし、初心者にはこういうのが必要だと思って作りました。

 

終わりに(オススメコミュニティ紹介)

正直簡易な説明でどうにかする範疇を超えてるので説明が多くなってしまいました、すみません。わからない部分はグーグルで検索するか、下記の動化専用のDiscordサーバーの過去ログを漁ってみて下さい(現在改装中)。

discord.gg

 

 

Discordの使い方などは自力でググって下さい。

とりあえず
『Discord+チャンネル+検索方法』とか
『Discord+フォーラム+検索+やりかた』みたいな感じでググって、
Discord内検索をマスターしたらそれっぽい自動化ワードで検索かけると幸せになれると思います。
各チャンネルやフォーラムの内容『のみ』の検索を
『in: チャンネル名等 検索ワード』で検索かけれたはずなので使うといいです。