- ruby-2.5のサポート終了しました
- sudoをつけずにPBMを起動できるようになりました。(なお周辺ファイルは未対応)
- setting.ymlからコントローラーアイコンの色を変更できるようになりました
- 起動時の安定性向上
- systemd unit pbm.serviceをRestart=noにしました
- マクロを実行するとメモリ使用率が増え続ける不具合を修正しました
- Lボタンを押すだけで簡単スニーキング(スプラ3)ができるようになりました
- 例:
left_analog_stick_cap cap: 1100, if_pressed: [:l], combined_press_is_pressed: [:zl], force_neutral: [:l]
- 例:
- 接続に失敗しているときに、手動で別のプロセスとして起動できるようにする(多重起動禁止の制限緩和)
- TCP/IP経由でPBMに入力ができるようになりました
- 多重起動ができないようにしました
- pbm-cloudとの連携時に、pbmenvを使っているかの判定を修正しました
- actioncable(websocket)serverのURLをpbm-cloudから取得するようにしました
- PBM-Cloudと連携しているかをbootメッセージに表示ようになりました
- シリアルポート経由でPBMに入力ができるようになりました
- プロコンの入力状態をpbm-cloudサーバに送信できるようになりました
- 設定ファイルに起動に必要なPBMのバージョンを表記できるようになりました
- レイヤー変更ボタン(prefix_keys_for_changing_layer)が空欄の時に設定ファイルをエラーが起きないようにしました
- PBM-CloudからPBMをアップグレードするときに、古いバージョンを削除するようにしました
- 左スティックを1回転するマクロを追加しました
- 詳しい設定方法については docs/setting/splatoon3_rotation_left_stick.md を参照してください
- プログラムの停止時・再読み込み時に時間がかかってた不具合を修正しました
- setting.ymlにmacroを使って「スプラ用マクロ、惰性キャンセル」の閾値を設定できない不具合を修正しました
- 以前に削除した「スプラ用マクロ、惰性キャンセル」を使えるようにしました
- docs/setting/splatoon2_macro_dasei_cancel.md, docs/setting/splatoon3_macro_dasei_cancel.md を参照してください
- スプラトゥーン3に対応したプラグインを追加しました
- 詳しい設定方法については docs/setting/splatoon3_recommended_setting.md を参照してください
- 自動ドット打ちが稀に途中で止まってしまうのを修正しました
- レイヤーを変更しているときにコントローラーを振動できるようになりました
- setting.yml で
enable(:rumble_on_layer_change)
と記述してください
- setting.yml で
- イカロールをするマクロを追加しました
- 詳しい設定方法については docs/setting/splatoon3_macro_forward_ikarole.md を参照してください
- スプラ用マクロ、惰性キャンセルを削除しました
- 表示入力機能を一時的に削除しました #185
- バイパス処理中の小さなラグがほぼなくなりました #185
- バイパス処理をマルチプロセスで行うようにしたのでGCによる停止時間がほぼなくなったため
- プロコンのラグ具合をpbm-cloudに送信し、グラフで見れるようになりました #158
- 非同期ジョブをmasterプロセス経由で実行するようになりました #191
- バイパス処理が数秒間固まる現象がおそらく直りました #179
- project_template/app.rbを動的に生成する仕組みを追加しました
- ドキュメントからpbm_webに関する記述を削除しました
- 起動スクリプト(app.rb) がたまに意図せず /usr/share/pbm/current を削除してしまう不具合を修正しました
- 入力表示機能を提供するSwitchProconInputViewerに対応しました
- app.rb内のバグ修正, ログファイルとして残る世代を減らしました
- 3つ以上のボタンを操作するマクロに対応しました
- IOに関するログをデフォルトで無効にしました
- 有効にする場合はapp.rbに
config.io_monitor_logging = true
を記述してください
- 有効にする場合はapp.rbに
- 接続が安定化するまでの時間が短くなりました
- 接続中にプロコンのケーブルを抜くと、エラーを吐いて終了できなくなる不具合を修正しました
- プロセスをCtrl+Cで停止するときに終了するまでの時間が短くなりました
- 接続に成功するとhomeボタンのledが光るようになりました
- 無効にする場合はapp.rbに
config.enable_home_led_on_connect = false
を記述してください
- 無効にする場合はapp.rbに
- プロセスを停止するとプロコンがBluetooth経由でSwitchと接続するようになりました
- 起動時に表示するdevice_idを一部のみ表示するようになりました
- ライブリロードが不安定になっていたのを修正しました
- コントローラのバイブレーションを無効にしました
- プロセスを停止後、再接続しやすくなりました
- スティックを左右に入れるマクロが使えるようになりました
- スプラトゥーン2でのタンサンボムのチャージに使えます
- 例:
open_macro :shake, steps: [:shake_left_stick_and_toggle_b_for_0_1sec], if_pressed: [:b, :r], force_neutral: [:b]
- pbm-cloudからmacroを発火させる機能に対応しました
- 設定ファイルで不備があったときに警告が表示されるようになりました
- install_macro_pluginしていないマクロをlayer内で使うとクラッシュしていた問題を修正しました
- 数十時間起動しっぱなしだとpbm-cloudとのwebsocketの接続が切断される問題を修正しました
- 誤発動を防ぐために、マクロを無効にする設定ができるようになりました
- すべてのマクロを無効にする
- disable_macro :all
- disable_macro :all, if_pressed: [:a]
- 特定のマクロを無効にする
- disable_macro TheMacro
- disable_macro TheMacro, if_pressed: [:a]
- すべてのマクロを無効にする
- スティックを傾けたタイミングでマクロを発動するオプションを実装しました
- これによってスプラトゥーン2の惰性キャンセルができるようになります
- ただし、精度がイマイチなので今後改善していきます
- 詳しくは
スプラトゥーン2: 惰性キャンセル マクロの設定方法
を参照してください
- これによってスプラトゥーン2の惰性キャンセルができるようになります
- 起動時にreniceするようにしました
- 起動時にusb gadgetモードを有効にするようにしました
- pbm-cloudからprocon_bypass_manをアップグレードできるようになりました
- Switchからプロコンへ送信するバイパスのインターバルを設定できるようにしました(切断・フリーズ対策)
- pbm-cloudから再起動・設定ファイルの適用指示があったときにackイベントを返すようになりました
- 起動オプションにnever_exit_accidentallyを追加しました。これを有効にすると想定外のエラーが起きたときにプロセスが停止しなくなります。デフォルトで無効です。
- pbm-cloudから設定ファイルの適用に失敗したときにファイルへの書き込みをしないようになりました
- まだadd_procon_gadget.shを実行していないときに、接続処理をする前に処理を停止するようにしました
- ラズパイに複数のUSBデバイスが刺さっていてもプロコンのデバイスを選択できるようにしました
- Switchからプロコンへ送信するバイパスを動かし続けるようにしました(切断対策)
- 設定ファイルをpbm-cloudから復元するときに設定ファイルの改行コードが消える不具合を修正しました
- 設定ファイルを再読み込みするときに構文がエラーがあると、接続が切れる不具合を修正しました
設定ファイルをpbm-cloudから復元するときに設定ファイルの改行コードが消える不具合を修正しました
- macroでできることが増えました
- 1ステップで複数のボタン入力と継続時間を指定ができるようになりました
- スプラトゥーン2用のバブル即割マクロ(SokuwariForSplashBomb)が使えるようになりました
- procon_bypass_man_cloudに組み込むために、内部のデータ構造を変更しました
- 設定ファイルにmacroを直接打ち込めるようになりました
- ex)
open_macro :special_command, steps: [:x, :y, :up], if_pressed: [:y]
- ex)
- 初期状態ではinternal api(pbm-web)の通信を無効にしました
- websocket経由で外部サーバからの命令を受け取れるようになりました
- 外部サーバから設定ファイルのリストアができるようになりました
- splatoon2 pluginのネームスペースを変更しました
- 外部サーバからOSの再起動やprocon_bypass_manのバージョンアップができるようになりました
- 起動を早くするために、procon_bypass_man-splatoon2を同梱しました
- 起動ログなどを設定した外部サーバに送信できるようにしました
- PBM-WEB(>= 0.1.3)でボタンの入力を見るためのスレッドが動くようになりました
- ボタンを無効化するdisableを設定できるようになりました
- pvmenvで生成する初期ファイルにprocon_bypass_man-webを同梱しました
- PBM自体の設定の構文を変更しました
- 左スティックを傾けた時に設定した最大値内に丸めることができるようになりました
- 関連メソッド: set_neutral_position, left_analog_stick_cap
- 数時間に一度起きる、数秒間入力が通らなくなる問題の改善
- 使える場合、GC.auto_compactを有効にしました
- 起動ログにuptimeからの経過時間を表示しました
- Support pbmenv
- 設定ファイルを読み込むと内容のmd5を
pbm_root_dir/.setting_yaml_digest
へ出力するようにしました
- siwtch, proコンが電源OFF時にCPU使いまくるのを修正した
- 連打中に無視するボタンを複数登録できるようにした
- キーのリマップ先に複数ボタンを登録できるようにした
- 1つのボタンへ連打とリマップをできないようにしました
- NG ex)
- flip :zr, if_pressed: [:y]
- remap :zr, to: [:x]
- NG ex)
- ProconBypassMan.rootの定義を、gem rootからproject rootへ変更した
- 連打の頻度を変更できるようにした
- シグナルで設定ファイルを読み直すとpid_pathが消滅する不具合を修正した
- 接続のしやすさ向上
- 設定ファイルのライブリロードができるようになった
- tmp/pidにUSR2シグナルを送信すると設定を再読み込みする
- 設定ファイルのバリデーションエラーとシンタックスエラーを投げるようになった
- Support key remap
- 設定情報をyamlで書くようになった
- プロコンの出力をLoggerに書き出す
- コマンドの標準出力にstatsを出す
- graceful shutdown
- たまに数秒ハングアップする問題の修正
- 内蔵していたマクロとモードをプラグインに切り出した
- Initial release