ぱにぱにぱにぱ

自分が考えた構築紹介を中心に、大会とかオフ会の感想とか書いたりします。

【ポケモン剣盾配信補助ツール】ぱにぱにツールってなんなの?

ぱにぱにツールって?

OBSを利用したポケモン配信を補助するツールです。

搭載機能として、

  • 選出画面時に自動で自分と相手のポケモンをキャプチャと認識を行う。
  • 戦闘画面でコマンド選択時に画面を止める。
  • 対戦総合時間の表示する。(時間指定可能)
  • 自分の選出を認識する。
  • アイテムの認識をし、アイテム名を表示する。
  • 対戦履歴を保存し、勝率等を表示する。
  • 勝敗カウントや順位のキャプチャを行う。
  • ポケモン名を表示する
  • ポケモンのタイプを表示する。
  • BGMをランダムで設定(ver2.6~)

があります。※すべてのPCで動くとは限りません。

いろいろリンク

作成の経緯・方針

Ver1

 はじめは、某バ〇ビーさんの放送(USM終盤)でキャプを取り忘れる姿を何回も見たことでした。

     自分は、強者のうまいプレイやトークを楽しみにきたのにもかかわらず、キャプを撮るのに神経を使っていて、納得がいきませんでした。

 そこで、画像認識を使って自動でキャプを撮れるツールを8世代で作って使ってもらえないかと思いました。
 同時に、「8世代の放送は技丸見えだけどどうするの?」のような声が別の方から上がっているのを聞き、ゴースティングを嫌がってポケモン配信が減ることが嫌だったので、一緒に技を隠す機能も付けちゃおうと思ったのです。

 10月頃から画像認識に慣れるために東方鬼形獣の抱えたボムの数を自動認識するところから始め、公式の戦闘サンプル画面を使って作りました。

Ver2

 Ver1と違い、ポケモンの認識を利用し編集済みのような状態を配信でも行えるようにすることを目指しました。

 配信以外の部分でもより便利にを目指し、対戦のデータを後から閲覧できるようにするなどの補助ツールの作成も進めました。

コマンド選択を隠す仕組みって?

 OBS上のswitchの映像キャプチャデバイススクリーンショットを保存し、そこから画像認識を行っています。画面の一部を認識し、認識用の画像と一致した場合に画面のスクリーンショットを撮っていた画面を前面に表示するようにしています。

 例えば、たたかうかポケモン交代か選ぶ画面では「あいてをみる」という部分の画像を認識しています。(下記画像)f:id:panipanipanipa:20200110233021p:plain

 

しかし、以下の動作には時間がかかってしまいます。

  • switchの画面のスクリーンショットを保存する。
  • 画像認識を行う。
  • OBS上の表示非表示を切り替える。

この3点を繰り返し行うことになると、現状認識が0.2~0.6秒ごとにしか行えません。(PCの性能により差があります)

たたかうかポケモン交代か選ぶ画面が上記の0.6秒に入ってしまう場合に画面を止めることができないことになります。

使用例

アイテム認識、ポケモン名・タイプ・順位表示、BGMランダム設定など


www.youtube.com

 

コマンド選択隠し

youtu.be

他チャンネルの使用例

note.com

 

【その他】

有料ですが、以下でmyPGL(対戦履歴ツール)のソースコードを公開しています。

気になる方、ご支援いただける方はご購入お願いします。

note.com

【さいごに】

Ver2.6からは大きなアップデートは考えていません。なにか気に入ったアイデアやバグ等あれば更新いたしますので、ブログコメントやTwitter等でお願いします。