ということでパッドのボタンを押すだけで一定の文字列+連番を自動で増やしてゲーム名のところに入力してくれる仕組みを作りました。
裏側で超めんどくさいことをしていますが組み上げてしまえば便利ですね。これでランが捗る...
https://youtu.be/bl9A9V24AwY
(4/12追記:手順をまとめました。導入がめんどくさいけどパッド勢は使ってみてね)
<何をやっているのか>
・外部ツール(メモリを弄ったりとかそういうたぐいのものではありません、ご安心ください)を使ってD2Rのゲーム名に入れる文字列を定型化します
・baal run などの任意の文字列+連番(1,2,3...10,11...)をサクッと入力できます
・加えてパッドのボタンを押した際にその入力が発動するようにします
<ステップその1:Clipboard History>
メールの文面からソースコードまでコピペで生計を立てる怠惰な社会人のPCにはだいたいインストールされているクリップボードの履歴を取るソフトを利用していきます
https://blank-note.sakura.ne.jp/
謎のマクロ言語を使うとさまざまな定型文を自動入力できるこちらになります
導入したらプログラムと同じ場所にあるConfig.txtの後ろの方「==ダイレクトキー1~5==」などの記述があるあたりに以下を貼り付けます
; D2R
@DirectHotkey=^F1
|| PasteFile | room.txt || KeyStroke || ExportHistory | ~NULL | 1 || CompactHistory | -1 || RegExReplace | s).+ | $0+1 || calc || AddHistory || KeyStroke || KeyStroke | {Enter}
@DirectHotkey=^F2
|| CompactHistory | -1
| 0 || AddHistory || ToolTip
@DirectHotkey=^F3
|| ExportHistory | ~NULL | 1 || CompactHistory | -1 || RegExReplace | s).+ | $0+1 || calc || AddHistory || ToolTip
@DirectHotkey=^F4
|| ExportHistory | ~NULL | 1 || CompactHistory | -1 || RegExReplace | s).+ | $0-1 || calc || AddHistory || ToolTip
@DirectHotkey=^F5
|| run | room.txt
全くもって意味不明だと思いますが軽く説明すると、
Ctrl+F1:
あるテキストファイル「room.txt」の内容+クリップボード1個目の数字+1したものを貼り付ける(D2Rでは外部ツールからのペーストを受け付けていないので、キー入力する)
その後、Enterを入力
Ctrl+F2:
クリップボード1個目にあるものをひとつ消去して、数字の0を追加する
Ctrl+F3:
クリップボード1個目にある数字に1を足し、入れ替える
Ctrl+F4:
クリップボード1個目にある数字から1を引き、入れ替える
Ctrl+F5:
プログラムと同じ場所にあるroom.txtを開く
というショートカットキーが追加されます(Ctrl+F1~F5にしたくないという人はその部分を修正してください)
続いてConfig.txtと同じ場所にroom.txtを作り、「baal run」など適当な文字を書いて保存しておきます
--
ここまで出来たら、Clipboard Historyを起動して、適当なテキストエディタ(メモ帳)を開き、
・Ctrl+F2を押すと一瞬ツールチップで「0」と表示され、その後Ctrl+F1を押すと押すたびに「baal run1」「baal run2」と入力されていく
・Ctrl+F3を押すとツールチップの数字が増え、Ctrl+F4を押すと減る、Ctrl+F5を押すとroom.txtが開く
などを確認します。
<ステップその2:JoyToKey>
PCゲーマーのご家庭には常備されているJoyToKeyを使っていきます
D2Rでは右スティック(Stick2)は基本使わないので都合が良いのでここを利用します。Stick2を上に倒すとキーボードEnter、下に倒すとCtrl+F1を登録しましょう
(スティックの認識しきい値は100にしておきます。これをしないと、キーボードとパッドの切り替えがアナログ入力の途中で発動してしまってうまく動作しないことがあります)
このパッドはボタンが10までしかないですが、ボタン割当変更でボタン11以降を登録していきます
パッドによるので各自設定は変更の必要がありますが
Axis5(>0) = パッドのLT(D2Rにおけるボタン修飾キー)
Axis5(<0) = パッドのRT
となっていたので、
・LT+右スティック↑:ボタン11
・LT+右スティック↓:ボタン12
・LT+右スティック←:ボタン13
・LT+右スティック→:ボタン14
・Aボタン(Button 1)+LB(Button 5):ボタン15
・Aボタン(Button 1)+RB(Button 6):ボタン16
・Aボタン(Button 1)+RT+左スティック↑:ボタン17
・Aボタン(Button 1)+RT+左スティック↓:ボタン18
・Aボタン(Button 1)+RT+左スティック←:ボタン19
・Aボタン(Button 1)+RT+左スティック→:ボタン20
・LT+R3(右スティック押し込み):ボタン21
としてみました。一部だけ使って、
・LT+右スティック↑:ボタン11 -> Ctrl+F3
・LT+右スティック↓:ボタン12 -> Ctrl+F4
・Aボタン(Button 1)+LB(Button 5):ボタン15 -> Ctrl+F2
・Aボタン(Button 1)+RB(Button 6):ボタン16 -> Ctrl+F5
・LT+R3(右スティック押し込み):ボタン21 -> Ctrl+F2
としています。(ボタン17~20にはマウスのクリックやタスクの切り替えなどを登録していますが、ここはあまり関係ないので省略します)
<実践>
準備として開始前にAを押しながらLB(もしくはLT+R3)を押します(クリップボード1個目に0が入ります)
ロビーに行ったらゲーム作成タブでAを押し、入力状態になったら右スティックを下に倒してみましょう。「baal run1」ゲームが作成されました
ランを終えたらゲームを終了して、LTを押しゲーム作成タブに移動、A→右スティック下、で「baal run2」が作成されますね。
それでは快適なバールランをお楽しみください。
(当然ですが、他人のrunに参加するときはゲーム参加タブで同じことができます。入るのに失敗した場合は一度Aを押して、右スティックを上に倒しましょう(Enter))
途中から参加する場合などは、LT+右スティック上下で数字を変更すると楽です(実際に入力されるのは最後の数字の+1なことに気をつけましょう)