MacroFire 3.2.9 目次 ================================================= - はじめに - 概要 - 確認済みの動作環境 - インストール - 起動順序 - 使い方 - 機能 - 設定ファイル - 仕様 - 今後の予定 - 最後に - 謝辞 ================================================= はじめに ------------------------------------------------- このプログラムは、PSPのカスタムファームウェア上で動作するプラグインです。 通常のSony純正ファームウェア上では動作しません。 お決まりですが、何が起きても自己責任です。 突然フリーズして長時間のプレイが水の泡になったりしても何もしてあげられません。 概要 ------------------------------------------------- ボタンの再割り当て、任意のボタンの連打設定や、 一定の操作を自動で行わせるマクロ機能があります。 連射設定では、他に押しっぱなし状態を設定することもできるので、 RPGなどでは、輪ゴムや重石を使わなくても自動戦闘の類が可能です。 マクロ機能は、特定の動作を記録させ、それを繰り返し実行することができます。 アナログスティック調整や再割り当て機能により、 がたがたのアナログスティックや壊れたボタンをある程度カバーできる場合があります。 確認済みの動作環境 ------------------------------------------------- カスタムファームウェア 5.50 GEN-D3 カスタムファームウェア 5.00 M33-6 3.71M33では動作しないようです。 それ以下のファームウェアでも動作しません。 PSP-2000およびPSP-3000は持っていないので動作状況はわかりませんし、 拡張されたRAMも使っていません。 インストール ------------------------------------------------- 同梱されている以下のファイルをms0:/sepluginsへコピーします。 macrofire.prx macrofire.ini 続いて、ms0:/seplugins内の vsh.txt game.txt pops.txt のそれぞれに以下のパスを追加します。 ms0:/seplugins/macrofire.prx これらのファイルが存在しない場合は作成してください。 (パスの書き込む位置によって他のプラグインの挙動が変化する可能性があります。 詳しくは次項の「起動順序」をお読みください。) 書き込み終わったらリカバリーモードへ行き、Pluginsの項目から 必要な場所のプラグインをEnabledにします。 ただし、VSH上で「インターネットブラウザ」が動作中には制限があり、連射機能とマクロ機能は動作しません。 これは、これら機能により他サイトへ攻撃まがいのことが行われてしまうことを懸念しての対処です。 remap_sampleフォルダはボタン再割り当て設定のサンプル設定ファイルで、 メニューのRemap settingsから実際に読み込める設定ファイルです。 - analog_to_dpad.ini: アナログスティックを十字キーに割り当てる - dpad_to_analog.ini: 十字キーをアナログスティックに割り当てる。 - ss_to_home.ini : SELECT + STARTをHOMEとして割り当てる。 - lr_to_vol.ini : L/Rボタンを音量調節ボタンに割り当てる。 MacroFireを動作させるのに、このフォルダは必要ありません。 起動順序 ------------------------------------------------- MacroFireは、コントロール制御の為にsceSysconSetDebugHandlersというAPIを使っています。 このAPIは、同時に一つのプラグインしか使えません。(正確には、同時に一つのハンドラしか登録できません。) このため、別のプラグインがこのAPIを使用している場合、そのプラグインが正常に働かなくなる可能性があります。 この制約をある程度緩和する機能をMacroFireは持っています。 MacroFireは、自分とそれ以外のこのAPIを使うプラグイン一つと共存することができます。 この機能を生かすには起動順序が重要で、MacroFireが先に起動する必要があります。 具体的な例を挙げますと、例えばHOLD+(http://torch.freeweb7.com/hold.html)というプラグインがこのAPIを使っています。 これとMacroFireを共存させるには、 MacroFireが先に起動し、 HOLD+がその後に起動する 必要があります。 これを実現するには、vsh.txt/game.txt/pops.txtの書き方が関係しており、 プラグインは、これらテキストの行の上から順番に起動されます。 従って、 ...(MacroFireの前に別のプラグインが起動しても良い) ms0:/seplugins/macrofire.prx ...(間に別のプラグインが起動してもよい) ms0:/seplugins/hold.prx となるように記述すると、MacroFireとHOLD+のどちらもがだいたい正常に動作します。 起動順序が逆になると、HOLD+が正常に働かなくなります。 また、共存できるのはMacroFire以外に一つのプラグインだけです。 このAPIを使うプラグインが2つ以上存在する場合は、どちらが生きるか予測できません。 プログラムの内容によります。 幸い、このAPIを使っているプラグインはそう多くはないはずです。 使い方 ------------------------------------------------- ゲームを起動したら、音量調節に使う二つのボタン(+と-のキー)を押すことでメニューを起動します。 このボタンは設定ファイルで変更できます。 詳しくは後述の「設定ファイル」の項目を参照してください。 メニューでの基本的なキー操作は以下の通りです。 ↑↓←→ : 項目の移動 (○/×)/□ボタン: オプションの変更 (○/×)ボタン : 項目の決定 (×/○)ボタン : 戻る STARTボタン: メニューをすぐに終了する ○/×ボタンはPSPのレジストリに従って自動的に入れ替えられます。 これは一般的な操作であって、その他の機能別の項目によっては、 さらに別の操作がある場合もあります。 この場合は、画面下にキー毎の操作方法が書かれている場合があります。 機能 ------------------------------------------------- MacroFire Engine このプラグインを作動させるかを切り替えます。 ボタン連打機能やマクロ機能など、全ての機能に影響します。 ゲーム起動直後はOFFになっているので、○/□ボタンを使用してONに切り替えます。 設定ファイルで初期状態を設定できます。 Buttons to launch the menu ゲーム中からMacroFireメニューを表示させるボタンを設定します。 ここでメニュー表示に使用したいボタンを設定すると、ゲーム中でその組み合わせでボタンを押すことにより、 MacroFireのメニューを表示させることが出来ます。 設定ファイルで初期状態を設定できます。 Buttons to toggle the status of engine MacroFire Engineをメニューを表示させずにON/OFFを切り替えるボタンを設定します。 ここで切り替えに使用したいボタンを設定すると、ゲーム中でその組み合わせでボタンを押すことにより、 MacroFire EngineをONならOFFへ、OFFならONへ切り替えます。 設定ファイルで初期状態を設定できます。 Status notification ゲーム画面上にMacroFireの動作状態を通知するかを設定します。 ONにすると、エンジン状態を切り替えた時、マクロをホットキーでコントロールした時に その旨が表示されるようになります。 Analog stick sensitivity adjustment アナログスティックの中心位置や感度、デッドゾーンの設定を行います。 詳細は、同梱されている manual_analogsens.txt をご覧ください Remap settings ボタンの再割り当てを設定します。 詳細は、同梱されている manual_remap.txt をご覧ください。 Rapidfire settings ボタンの連射設定を行います。 詳細は、同梱されている manual_rapidfire.txt をご覧ください。 Macro settings マクロ機能の設定と実行を行います。 詳細は、同梱されている manual_macro.txt をご覧ください。 設定ファイル ------------------------------------------------- 基本設定となるmacrofire.iniや、 連射設定ファイル、マクロファイルは一部を除き全て同じ書式を使っています。 詳細は、同梱のmanual_ini.txtをご覧ください。 仕様 ------------------------------------------------- - ゲーム起動直後はMacroFireの機能が働かない。 これは、ゲームロード時の障害にならないよう、起動後に最大で約10秒間のウェイトをいれているため。 MacroFireの起動がすごく重いとか言うわけではない。 ただし、VSHかPOPSはゲームの起動を検出する方法があるため、これらの場合はMacroFireは即機能する。 - MacroFireは、メニューを表示する際に自分以外のスレッドを停止させるが、 自身より先に起動されたスレッドはメニュー表示時にも停止させない。 従って、vsh.txt/game.txt/pops.txtでMacroFireよりも前に記述されたプラグインはメニュー表示中にも稼働している。 メニュー表示中に、これら停止されなかったプラグインが全スレッドの停止/復帰を行うと画面が乱れ、 ゲームによってはフリーズする可能性がある。 これはMacroFireによって停止させているはずのスレッドが、別のプラグインによって復帰されてしまうことが原因で、 有名なものでは、screenshotbmpなどのスクリーンショット撮影プラグインである。 これらは、撮影の際に画面を更新させないようにスレッドを停止させるものが多いが、撮影後にスレッドを復帰させる。 こういったプラグインを使用する場合は、MacroFireにスレッドを停止させるために、 MacroFireより後に起動するようvsh.txt/game.txt/pops.txtに記述するか、 MacroFireのメニューが表示されていない時に使用するように注意すること。 - ファイルアクセスの途中でメニューを表示すると、 メモリースティックのアクセスランプが点滅しっぱなしになる。 しかし、実際にアクセスし続けているわけではないようで、特に害はない。 ただ、この状態の時はファイル一覧を読み込めないようで、 マクロや連射設定のセーブ/ロードを実行するとタイムアウトする。 タイムアウトした場合は、一度ゲームに戻り、しばらくしてからもう一度試すとよい。 - 英語がダメすぎ。 いかんともしがたい。 今後の予定 ------------------------------------------------- - macrofire.iniのファイル指定項目に相対パスを使えるようにする。 - Remap settingsで、変更したボタンに対して連射設定を行えるようにする。 - Remap settingsのインターフェイスをもう少しなんとかする。 - ファイルのセーブ/ロードダイアログで、 もう少しファイルに関する操作を行えるようにする。 最後に ------------------------------------------------- つい軽く見がちですが、プラグインは公式の仕組みではないし、 PSP上で動作するゲームはプラグインの存在を考慮していません。 従って、ゲームは常にフリーズする危険と隣り合わせにあることを忘れないようにしましょう。 セーブが可能なゲームについてはこまめなセーブを行いましょう。 また、もし何らかの操作をしたときにMacroFireが落ちるといった現象が発生し、 デバッグに協力してもよいという方は、 http://classg.sytes.net/products/psp/#MACROFIRE にある「デバッグ用」と書かれているMacroFireを使用してください。 この「デバッグ用MacroFire」の使い方と、バグの報告方法については、そちらのreadme.txtを参照してください。 謝辞 ------------------------------------------------- このソフトは、以下のソフトのソースコードから多大な恩恵を受けています。 PSPLink PSP VSH extender / SYSCON override example 070910 by Booster これらが無ければこのソフトの実現は難しかったでしょう。 またPSPSDKやカスタムファームウェアがなければ、このような開発自体あり得ませんでした。 この場を借りて御礼申し上げます。 Thanks all the developers of the PSP VSH extender, the PSPLink, the CFW and the PSPSDK. ------------------------------------------------- pen@ClassG http://classg.sytes.net