SimpleROHook : RCXの跡地

2015年4月20日

SimpleROHook

donation to this project.

SimpleROHook C#のトラックバーとの同期テスト

Labで公開している技術のデモ、実装例としてのアプリケーションです。
技術は公開しているので、皆さんも他者に押し付けずに自分で作ってみましょう。SimpleROHookのソースコードはGitHubで公開しています。このサイトで公開している実行ファイルはGitHubに公開されている最新に近いソースコードをビルドした物です。

ソースコード

sekishi1259/SimpleROHook
https://github.com/sekishi1259/SimpleROHook

ソースコードにはGPL v3を適応していますが、これは公開されている実行ファイルの安全を担保するための物です。少なくとも筆者が公開しているものに関しては安全を保障します。今後、野良ビルドが出てきた際に、ソースコードの開示がない物には疑いの目を向けて下さい。

ダウンロード

パスワードはGitHubのコミット識別番号(英数字の羅列)です。

GitまたはGitHubの使い方に関する記事

ROツール作成テクニカル記事

Windows開発環境記事

APIフックに関する記事

RCXのダウンロードはこちらから

そもそも、こういった物はリスク管理が出来る人が使うべきと考えますが、ウィルス入りの配布に対する抑止力として残しておきます。

RCX の非公式配布について | Planetleaf.com Lab.
https://lab.planetleaf.com/on-informal-distribution-of-rcx.html

 SimpleROHook 解説

実行するとタスクトレイに常駐し、ROが起動するとクライアントに機能を組み込みます。トレイアイコンから機能の制御を行うことが出来ます。実行ファイルの存在するディレクトリにconfig.xmlを保存します。レジストリは使用しません。M2Eのカラーコーディネートをconfig.iniから読み込みます。

APIフックのホストアプリをC#化した事により Microsoft .NET Framework 4 Client Profile が必要になりました。

マイクロソフト公式ダウンロード センターから Microsoft .NET Framework 4 Client Profile (Web インストーラー) をダウンロード

SimpleROHook を実行するには VC++ 2010 のランタイムライブラリが必要です。
Microsoft Visual C++ 2010 Service Pack 1 Redistributable Package MFC Security Update

  • Windows アプリ のタスクバーアイコンから右クリックでメニューが出せます。各設定のオンオフが出来るので適当に弄りましょう。
  • FreeMouse (on boot)
    フリーマウスの機能をオンオフできます。
  • Show M2E
    言わずと知れたアレです。
    パケットを読まず、RCXとは違い、ROのメモリ情報のみで処理しています。その為、RCXの様な気の利いた演出などはありません。
  • Show Object Information
    SimpleROHookのコードのチュートリアル的機能で実装したインフォメーション。見てみればわかります。
  • Show Fps
    フレームレートを表示します。右側に表示されている数値は Fix WindowMode VSyncWait を使用した際に還元される1フレーム中の内部負荷の数値を大体 n/60 で表したものです。
  • Fix WindowMode VSyncWait
    新たな技術によるWindowモードのVSync Waitの最適化。
    DirectX7以前のソフトに有効な技術で、垂直同期の検出中に可能な限りOSにCPUリソースを解放します。処理に余裕のない環境ではフレームレートの低下を引き起こしますが、パワーの有り余っている環境ではROの負荷が大幅に減少します。
    ※Window モードにおけるVSync待機は、ハードウェアの割り込みが使えず、CPUがフル回転します。この仕様のおかげで、いくらCPUが早期にゲーム内の処理が 終了しても、残りのVBlanking発生までの時間をCPUが全力でハードウェアを監視し、結果としてゲーム中はCPUリソースを占有します。この技術 はこれを回避するためのものです。
  • 44kHz Audio Mode
    Ragnarok OnlineにおけるDirectSoundの初期化、及びサウンドレート、そして高音質化へ | Planetleaf.com Lab.で紹介した技術です。
    ROの内部サウンドレートを2倍にし44kHzで再生します。
  • PlayMusic on ClientStreamPlayer
    ROの内部ストリームプレイヤーで任意のファイルを好きな時に変更して再生する機能。ファイルをクリックするだけでRO内部のサウンドプレイヤーの曲が切り替わります。内 部のBGMプレイヤーのため、ループも機能します。カスタマイズされたファイル選択ウインドウがジュークボックスの役目を果たします。mp3、wavが再生可能ですが、ライブラリが古いため当時再生可能とされたファイルしか再生できません。
  • CPU Cooler
    RCXと同等のCPUクラーです。Level3で最大効果を発揮します。
    前述のFix WindowMode VSyncWaitの機能と組み合わせると、OSに対する負荷を極限まで縮小化できます。
  • フリーマウス
    ウインドウモードにおいてマウスをウインドウの外に出せるようにします。カーソルの移動速度などはOSに委ねられます。
  • パケットレングス出力
    Labの記事に書いた、古今東西のクライアントでpacketLenMapを取得する技術のデモです。Tiny Consoleにデータを出力します。

 

Posted by redchat