どうもおはこんばんちは。
今回はメイプルストーリーを遊ぶにあたって使っているツールのご紹介です。
メイプルストーリーというMMORPGはキーボード操作で遊ぶのが基本となります。
また、ジョイントコントローラーを接続して遊ぶこともできます。が、これが余りにも使い勝手が悪く、ゲームを楽しむには心許ない仕様です。
そこで有名なのが【JoyToKey】という外部コントロールツールになります。
普通のキャラクターであればこれで十分操作可能です。
管理人も昔からお世話になっているツールです。
しかーし、メイプルストーリーには”ブラスター”という職業が存在します。
この職業はメイプルストーリーにはあるまじき格ゲーじみたキーボード操作を(しかも先行入力機能なし)で行う必要がある腱鞘炎不可避職なのですが、管理人はこのキャラクターをどうしてもジョイコンで遊びたい! と思いました。
そこで色々物色するうちに見つけたのが【KeyToKey】というツールです。
これがどういったものかについては上記URLから開発ブログへ飛んでいただいて、内容を確認していただいた方が良いかと思います。
※もちろんツールのDLについても自己責任でお願いします。
ちなみに管理人はデュアルセンスを無線接続して遊んでいます。
さて、ここからが本題。
このツールすごく便利なんですけど、いかんせん文系にはとっつきにくい仕様がいくつかあります。
ばりばりの文系だった管理人も仕様になれるまで頭があっぱらぱーになっていました。
なので一通りブラスターを操作できるように組んだ管理人の設定画面を参考に、みなさんにもブラスターを楽しんでもらえるよう記事にしておきます。

まずDLしてアプリを立ち上げるとこのような画面が開きます。
プロファイル一覧は作成するまて表示がありませんので、新規作成から名称を付けて新しいプロファイルを作成してください。
次に作成したプロファイルを選択したら【プロファイルの操作】から【設定編集】をクリック。

作成した名称のプロファイル編集画面が上記のように開きます。
ジョイコンで操作する場合は上段真ん中の【割り当て設定(コントローラー)】をクリック。

コントローラーの見た目はPS系で表示されますが、各ボタン配置などはコントローラー本体の設定に準拠しています。
なので接続できない場合や、ボタン配置を変えたい場合は右上の【使用するコントローラーを選択する】もしくは【コントローラーのセットアップ開始】で調節してください。
ここでは後述するマクロを組んで設定したものを各ボタンに配置して、どのボタンでどの設定を呼び出すか決めたり、ボタンを押したとき、離したときごとにどういった挙動をするか決めることができます。
緑色やオレンジ色で着色されたボタンがそれぞれ何かしらの機能を割り振られているボタンということになります。

それではコントローラーの割り当て設定から、今後は根幹であるマクロの作成・設定をしていきます。
プロファイルの右中段【マクロの作成・設定】をクリック。

左側上段の【C#スクリプト(マクロ)】と【アクションマクロ】という項目のうち、使うのはアクションマクロです。
※スクリプトを組める人ならC#でもいいですが、そもそもそんな人ならこのブログにたどり着かないと思いますので割愛。管理人も全く使用できません。
アクションマクロは意図した挙動を簡易的に実行するためのマクロで、基本的には押したい(離したい)ボタンをコンマ何秒~何十秒等と指定して押す(離す)設定を組む作業です。
上記画像の一番下【緑の丸に+】のマークをクリックし、新規マクロを作成します。
※管理人は配置するボタンごとの名称+順番に並べるための番号で作成しています。こうすると管理するときにどのボタンだっけ?となりにくくおすすめです。

マクロが作成できましたら実際にマクロを組んでいきます。
ここがもっともとっつきにくい所かと思いますが、慣れてくると凄く便利なので頑張りましょう。

新規作成したアクションマクロをクリックすると右側にアクションリストというものが表示されます。※【1高精度/高負荷な待機処理を使用(True)】はデフォルトで入っていますが、管理人は使用していないので削除しています。(マクロ行で右クリックから削除)
そうしたらアクションリストで右クリック。

テンプレートを追加するから【分岐条件(開始->追加条件->正しくなかったら)】を選択。
すると上記画像のようにアクションリストへ赤文字+青文字の羅列が追加されます。
これは何かというと、どのボタンを押していたらどの挙動、どのボタンを押していたらどの挙動、押していなかったらどの挙動、というのを入れ替えて使える設定です。
JoyToKeyで言うと【設定したいジョイスティックの数】で増やせる項目ですね。
KeyToKeyではかくボタン事にどの挙動をさせるかを指定する必要があり、JTKから来た人はこの仕様の違いに困惑するかもしれません。(管理人は困惑しましたし、理解するまで時間がかかりました)
※一応同時押し設定で使用するボタン配置を設定した同時押しボタンに合わせて変更する機能もあるみたいですが、管理人最近気が付いたため使っていません。

次に分岐条件を指定していきましょう。
各分岐条件の行でクリックを実施すると、緑色にハイライトされて別窓が開きます。

【条件式】のところがデフォルトだと【True】となっていますが、このままでは使えませんので右上の【メソッド作成】をクリック。

別窓が開くと、何を条件としたいか指定できるスクリプト作成画面が開きます。
ここでは【Input.GetControllerButtonState】から必須と書かれた[0]コントローラーのボタンの名前の緑色の三点をクリック。
※ジョイコンでどのボタンを押している時にこの条件式のマクロを動かすという式につながるため、例えばPS系コントローラーではL2(表記はLTになります)を押している時にこのボタンはこの挙動という考え方をします。
指定したいボタンを選択すると[0]コントローラーのボタンの名前の行に ”LT” と追加されます。
そしたら右上の【✓】ボタンをクリックしてメソッドをコピーし、×ボタンでメソッドを作成窓を閉じます。
コピーしたメソッドを先ほどの【条件式】【True】となっていた【True】を消してペーストします。

そしたら右上の【✓】ボタンをクリック。【✓】を押した時点で条件式のところに項目が入ります。
※この窓を閉じるには窓枠外のどこかをクリックすると勝手に消えます。
ちなみに、【Input.GetControllerButtonState(“LT”)】を簡単に作成できるのが先ほどのメソッドなので、直接【条件式】へ入力することでも作成できます。
また押したいボタンを変えたいだけなら【Input.GetControllerButtonState(“LT”)】の(”LT”)のところを例えば(“RT”)に変えたりすることでも変更できます。※この場合はR2を押したらという条件式になります。
これをすべての項目に実施すると、各ボタンを押している時にどの設定を起動するか指定できるようになったということです。

さて、最後です。中身のマクロを作成していきます。
ここではブラスターの挙動を制御するためのマクロなので大変複雑ですが、他の職であればもっと簡単にできます。
また、例えばメルセデスやカデナなどの連携が必須といえる職でも同じように操作を簡素化できます。
各項目は全て右クリックから【アクションを追加する】で追加できますし、行が増えてきたら追加する行の位置を指定することもできます。

例えばボタンを【押して、離す】という挙動を取らせたい場合は入力の項目で【押して離す】をクリックし、右側のどのキー、ボタンを動かすか、押した後の待機時間、離した後の待機時間をそれぞれ指定できます。
※ここではミリ秒単位なので1秒=1000ミリ秒です。あまり数字を小さくして作成するとPCへの負荷が増すので、PCスペックと相談しながら作成してください。
緑色の【//】はコメント機能で、文字を直接入力できます。
管理人はどの挙動をさせているマクロか分かりやすくするために名前を付けて管理しています。

簡単な例として メインキャラ隠月の場合
①L2ボタンを押している時、R1ボタンを押すと剥魂炎打を使う。
②R2ボタンを押している時、R1ボタンを押すとラッキーダイスを使う。
③PS系コンの中央にあるタッチパットボタンを押している時、R1ボタンを押すとエンターキーを押す。
④何も押されていない時、R1ボタンを押すと龍脈拳を使う。
という中身のマクロをR1ボタンに設定しています。
また【@ループ<条件>】というものが龍脈拳に設定されていますが、これは右クリック、テンプレートから選択して追記できます。
なぜ個別にループ条件をつけているかというと、KTKでボタンに連射設定をするとそのボタン全ての設定がループする挙動となってしまうためです。
龍脈拳以外は連射する必要がないため、ループさせたい挙動だけ個別に指定しておいた方が、無意味な連射をしなくて済みます。
合わせて、ループ条件そのものを押しているボタン(今回の場合はR1ボタン)に指定しておけばただボタンを押すだけでループしてくれます。
さらに追加するとすれば。



隠月で言えば蒐集魂のような押し込み時間でスキルの挙動が変わるスキルなどは、マクロを組むときに【押す】だけのボタンを設定しておいて、別マクロで【すべてのキーを離す】というものを作成しておき、コントローラー設定でボタンを【押されたら、離されたら】の指定で設定することで時間の調整をすることができるようになります。
※(2023/7/7アップデートでなぜか【すべてのキーを離す】で設定していると【押されたら、離されたら】のうち、離されたらが反応しなくなってしまいました。
解決策としては単純に離したいキーを直接設定するだけで大丈夫でした。
(気づくまで時間がかかってしまい、てんやわんやでした)

ブラスターの方がよりこの挙動が多いスキルが多いので、作成時に少し頭を悩ませるかもしれません。
基本動作についてはこちらの記事にまとめておきましたので、ぜひチェックしてください。
というような形でマクロをどんどんと組んでいくと、あら不思議。
まるで熟練のブラスター使いのような挙動を再現できてしまうというわけですね。
(この秒数を指定して組んでいくのが一番大変で、腕の見せ所なわけですけども)
※当然ながらPCスペック及び回線速度(メイプル側の問題も大きそうだけど)に大きく依存しているので、各マクロの時間指定は微調節が必須です。

とおっても長くなってしまいましたが、KTKのおおよその挙動はこれで掴めると思います。
あとは実際に触ってみたほうが感覚を掴めると思うので、ぜひDLしてみてください。
さて、今回はここまでとします。
また次回の記事にて。
コメント コメントを追加