RO_MouseFreedom 公開場

RO_MouseFreedom 説明

▼概要 Guidance

RO_MouseFreedom（略してRO_MF）はラグナロクの支援ツールです。
ラグナロクをウィンドウモードでプレイしていると、ウィンドウの外にマウスカーソルを出すためには、キーボード操作でウィンドウ切り替え等を行わなければなりません。このツールは、これを通常のアプリケーションと同じように、マウスカーソルを動かすだけで、ラグナロクのウィンドウの外にカーソルを出せるようにします。
It lets your mouse travel outside of the RO window (windowed mode) without pressing alt + tab.

▼使用上の注意

1. このツールは私が作成したものです。ラグナロクの運営元であるガンホー及び開発元であるグラビティーとは無関係です。
2. このツールの使用は自己責任の元に行って下さい。このツールを使用した結果について、いかなる責任も作者は負いかねます。また、作者以外の人や組織が責任を負うこともありません。
3. マウスカーソルがウィンドウの外から中に入る際、ウィンドウの左上に一瞬マウスカーソルが表示されます。これは現状では回避できない現象です。仕様ということでお願いします。

以上の注意をよくお読み頂き、この注意を守って頂ける方のみ、このツールを使用して下さい。この注意を守って頂けない場合、このツールの使用はご遠慮下さい。

▼使い方

ダウンロードしたファイルはZIP形式で圧縮してあります。ファイルを展開すると、dinput.dll RO_MF.bin RO_MF.iniというファイルと説明ファイルができます。このdinput.dll RO_MF.bin RO_MF.iniファイルを、ラグナロク実行モジュール（Ragexe.exeファイル）があるのと同じフォルダに入れてください。（この説明で分からない場合、展開したファイルをラグナロクをインストールしたフォルダに入れて下さい。それでも分からない場合はこのツールを使用するのはやめて下さい）
あとは普通にラグナロクを起動すればOKです。設定はRO_MF.iniの中に保持されています。設定を変える際はこのRO_MF.iniを書き換えてください。設定の仕方もRO_MF.iniの中に書いてあります。
このツールはファイルやレジストリに対しては一切の書き込みを行いません。
このツールが不要になった場合、ツールのファイルを削除するだけでOKです。

▼ウィンドウのアクティブ状態回復について

ラグナロクのウィンドウ内に表示を行う支援ツールと併用すると、支援ツールの表示をクリックするとウィンドウのアクティブ状態が支援ツールの側に移ってしまうという問題があります。
この対策として、特定の支援ツールにウィンドウのアクティブ状態が移ったら、これを取り返すようにしました。現在、この機能はRoTimer, rohp, RoMonitor, Meron, ROLK, LiSS, RAGNAvi, MyGPSに対して有効です。ただし、ツールの特定をファイル名で行っているため、同じファイル名の別のアプリケーションが起動していた場合、誤認を生じます。
OSがWindows 2000/XPである場合、アクティブ状態の移動そのものを阻止することができます。

▼ラグナロクアクティブ時のクリック無効化について

ラグナロクのウィンドウをマウスクリックすることでアクティブにすると、マウスクリックした位置にキャラが歩きます。これは一般的なWindowsアプリケーションの仕様に乗っ取るという観点からこのようにしてあります。
しかし、不便だという方のために、ラグナロクのウィンドウをマウスクリックでアクティブにしてもキャラが歩いたりしない（マウスクリックイベントをラグナロククライアントに伝えない）機能を追加しました。

▼ダブルクリック支援機能について

通常、Windowsにおいてはマウスをダブルクリックした場合、1回目のクリックと2回目のクリックとでカーソルの位置が少しずれていてもダブルクリックと判定されます。しかし、ラグナロクの場合、位置が完全に一致していないとダブルクリックと判定されません。
これを通常のWindowsと同じように、多少の位置ずれを許容するようにしました。

▼ManualFreedom機能について

RO_MF.iniの設定により使用可能になる機能です。この機能を簡単に説明しますと、ラグナロクのウィンドウからマウスカーソルが出せないようにします。これはすなわち、RO_MFを使用しない状態と同じ状態です。
なんのためにあるのかといいますと、プレイ中に他のウィンドウがアクティブになってしまうという方のためです。RO_MFを使用しない状態において、プレイ中に他のウィンドウがアクティブになってしまうという現象を発生する環境があります。これは厳密にはラグナロクの問題であり、グラビティーが修正するべき物です。しかし、修正される見込みはなさそうなので、RO_MF Ver1.80よりこの機能を実装しました。
プレイ中に他のウィンドウがアクティブになってしまうが、マウスカーソルがラグナロクのウィンドウの外に出せる必要はないという方はこの機能を使ってみてください。ちなみに、SpeedMode=1としますとマウスカーソルの速度もRO_MF非使用時と同じになります。
なお、この機能を使用している場合でも、Ctrlキーを押すことにより、マウスカーソルがラグナロクのウィンドウから出せます。

▼dinput.dllを使う他の支援ツールと併用するには

RO_MF以外にも、dinput.dllを使用するタイプの支援ツールを使用する場合の方法です。
RO_MF.iniのSecondDInputDllにその支援ツールのdinput.dllファイルのファイル名を指定して下さい。ファイル名は適宜書き換えて下さい。

▼掲示板

サポート用の掲示板を用意します。作者に対する連絡もこちらにお願いします。
掲示板入り口

▼履歴

2004/01/13 PM9:00 Ver1.86 公開開始
2004/01/13のパッチにより、2003/12/30のパッチで修正された内容が元に戻されました。これに伴い、RO_MF Ver2.00系列は使用不可能になり、RO_MF Ver1.00系列が再び使用可能になりました。
海外向けに、サクライサーバーに対応しました。
他のdinput.dllを読み込ませる方法を変更しました。
2004/01/02 PM1:30 Ver2.06 公開開始
ラグナロクウィンドウが非アクティブになった後にアクティブになった時、ホイールが効かなくなることがあるのを修正。
2004/01/02 AM9:30 Ver2.05 公開開始
Win9x系でManualFreedom=1の時に、ラグナロク終了時にマウスの移動できる範囲がラグナロクウィンドウのあった範囲のみになる不具合を修正。
2004/01/02 AM8:30 Ver2.04 公開開始
Ver2.03でRO_MF.iniを読まないバグが発生したため修正。
2004/01/02 AM7:00 Ver2.03 公開開始
ラグナロクウィンドウの一部分が画面外に出た状態で、マウスカーソルをその端にもっていくとラグナロククライアントが固まる現象を修正。
マウスドラッグ中にマウスホイールを回すとドラッグが解除されるのを修正。
dsound.dllではうまくいかないという人のためにexe版を提供。
2004/01/02 AM3:30 Ver2.02 公開開始
Alt+Spaceでラグナロククライアントが固まる現象を修正。
ラグナロクウィンドウの外でマウスホイールを回転すると、それがラグナロククライアントに伝わるのを修正。
CPU負荷が100%になるのを防止する機能が復活。
2004/01/02 AM1:30 Ver2.01 公開開始
Win9x系でラグナロククライアントを2回目以降に起動した際にRO_MFが動かなくなる現象に対策を試みた。（作者は確認できないので…）
マウスホイールの回転をDirectInputから取得するようにした。
KillWheel=2が使えないのを修正。
2003/12/31 PM8:30 Ver2.00 公開開始
2003/12/30のパッチによりラグナロククライアントがDirectInputを一切使用しなくなったことに伴い、1から書き直しました。以前のバージョンとは内部構造が全く異なります。
2003/12/15 AM4:00 Ver1.85 公開開始
支援ツールにウィンドウのアクティブ状態が移ってしまう問題について、対策の対象とする支援ツールを簡易的に指定可能にした。（簡易指定機能）
右ダブルクリックについても、ダブルクリック支援機能が働くようにした。
2003/11/17 AM2:00 Ver1.84 公開開始
ダブルクリック支援機能のダブルクリック判定時間を変更可能にした。
2003/11/10 AM0:00 Ver1.83 公開開始
一部の環境でマウスが動かなくなる不具合が出るのを修正。
2003/11/04 AM4:00 Ver1.82 公開開始
マウスのホイールを無効にする機能について、Ctrlキーを押したときは有効にできる機能を追加した。
RO_MFのdinput.dllのファイル名を変えた場合に動作がおかしくなるのを修正した。
2003/10/18 AM2:00 Ver1.81 公開開始
マウスのホイールの機能を無効にする機能を追加した。
2003/09/23 AM7:00 Ver1.80 公開開始
ManualFreedom機能を追加した。
CPUの負荷が100%になるのを防止する機能を解除可能にした。
2003/08/25 PM7:30 Ver1.78 公開開始
rohpの経験値表示プラグインExp_Plugin.dllに対応した。
2003/08/11 AM3:30 Ver1.77 公開開始
MyGPSに対応した。
2003/07/19 PM6:30 Ver1.76 公開開始
「ろ＋＋」を使用してマウスボタンにスキルを割り当てているとき、スキルが発動せずにマウス左クリックしてしまうことがある現象を修正。
2003/06/23 AM4:00 Ver1.75 公開開始
ラグナロクのウィンドウ内におけるマウスカーソルの速度をラグナロク本来の速度に設定できるオプションを追加。
2003/06/20 AM0:00 Ver1.71 公開開始
ROLK, LiSS, RAGNAviに対応した。
2003/06/16 AM6:00 Ver1.70 公開開始
ラグナロクのウィンドウの外でカーソルが遅くなる人のための対策をした。
2003/06/01 PM9:00 Ver1.65 公開開始
ラグナロク以外のプロセスにフックをかけないようにした。
2003/05/25 PM11:00 Ver1.61 公開開始
Ver1.60でミスしていた箇所を修正しました。面目ない。
2003/05/25 PM9:00 Ver1.60 公開開始
DirectInputを使わないモードを追加。
フックを使わないモードを追加。
Meron併用時でもウィンドウのアクティブ状態を回復できるようにした。
ラグナロクを2度目以降に起動したときに正常に動作しなくなることがあるのを修正。
ろーむ併用時にろーむが使えなくなるのを修正。
ラグナロクのウィンドウの外でホイールを動かした場合、これを無効にするにした。
ラグナロクのCPU占有率が100%にならないようにした。
2003/05/19 AM0:30 Ver1.51 公開開始
ボタンが4つ以上あるマウスで、他の支援ツールの表示の上で4ボタン目以降を押すと、アクティブ状態が移ってしまうのを修正。
2003/05/18 PM9:00 Ver1.5 公開開始
ウィンドウの外にカーソルが出た場合、ラグナロクのカーソルが消えるようにした。
ダブルクリック支援機能を追加。
2003/05/12 AM6:00 Ver1.45 公開開始
ウィンドウのアクティブ状態回復機能を強化。
設定により、ウィンドウアクティブ時のマウスクリックを無効化可能にした。
2003/05/05 PM7:00 Ver1.4 公開開始
ウィンドウのアクティブ状態回復機能を追加。
2003/04/15 AM0:00 Ver1.3 公開開始
情報ウィンドウをドラッグした状態のままでマウスカーソルを画面外に出してから戻すと、情報ウィンドウの位置がおかしくなるのを修正。
2003/04/10 AM1:00 Ver1.2 公開開始
ウィンドウの外にマウスカーソルがある状態から、ウィンドウの中に向かってマウスカーソルを素早く移動させた場合に発生する以下のバグを修正。

・ | ウィンドウの端の方にマウスを移動できなくなることがある。
・ | ラグナロクのマウスカーソルはウィンドウの中にあるのに、Windowsのカーソルがウィンドウの外に出てくることがある。

2003/04/09 PM9:30 Ver1.1 公開開始

・ | ラグナロクのウィンドウの左上隅に情報ウィンドウがある状態で、ラグナロクのウィンドウをマウスクリックしてアクティブにすると、情報ウィンドウの位置がおかしくなるバグを修正。
・ | ダウンロードファイルに説明ファイルRO_MF.htmを同梱。
・ | ROMLがdinput.dllを使用しているので、RO_MouseFreedomと併用可能にするために、dinput2.dllという名前のファイルがあった場合、これを読み込むように修正。

2003/04/09 AM1:00 初出 Ver1.0 公開開始