重要
Mod Engine 2 の開発は中止されました。今後の仕事はすべて私に行われます3。
Mod Engine 2 は、FROM Software による Souls ゲームにモッディング機能を追加するために使用されるランタイム コード パッチおよびインジェクション ライブラリである Mod Engine を徹底的に書き直したものです。
始めましょう
サポートされているゲーム
違い
特徴
最新リリースをダウンロードします。
mod フォルダー内にフォルダーを作成します。わかりやすくするために、mod の名前を付けることをお勧めします。
先ほど作成したフォルダーに MOD を解凍します。
config_eldenring.toml
(または選択したゲーム) を編集して、作成したフォルダーを含めます。
改造 = [ { 有効 = true、名前 = "BetterAshes "、パス = "modashes" }, { 有効 = true、名前 = "CleversMoveset"、パス = "modmoveset" }, { 有効 = false、名前 = "EnemyRandomizer"、パス = "modrandomizer" }, 】
現在 Mod Engine 2 をサポートしているゲームの情報については、以下のリストを参照してください。
ダークソウル3
エルデンリング
ダークソウル2: SOTF
ダークソウル リマスター
SEKIRO: Shadows Die Twice
ブラッドボーン
従来の Mod Engine と新しいバージョンの間にはアーキテクチャ上の大きな違いがいくつかあり、その大部分は 1) 設定形式、2) ModEngine をゲームにロードする方法にあります。これらの違いの詳細は以下にリストされています。
古い.ini
形式は廃止され、TOML に基づいた新しい構造化された構成ファイルに置き換えられました。この変更は、プラグインが独自の構成要件を指定できるようにすることで、Mod Engine の新しい拡張モデルに適合させるためのものです。
これは、ロードする必要がある MOD のリストと、それらを有効にするかどうかを指定するために、MOD ローダー プラグインによって使用されます。将来的には、Web サイト、バージョン、作成者などの追加情報が含まれる「Mod マニフェスト」をサポートするように拡張される可能性があります。
dinput8.dll
としてのサイドローディングはオプションですランチャーの導入により、 dinput8.dll
を介したゲームのロードに依存する必要がなくなり、代わりに事前設定されたゲームを起動できるようになりました。これにより、このモジュールはサイドロードに依存する他のもののために解放されます。
設定で複数のゲーム ルートを指定できるため、ユーザーは MOD フォルダー内のファイルを手動で置き換えることなく、複数の MOD を同時に実行できます。ただし、これは競合するファイルを置き換えない MOD に限定されることに注意してください。
Mod Engine 2 の開発の主な原動力は、興味のあるゲームを迅速に逆転するために使用できるツールを作成することです。この目的のために、逆転プロセスを簡単にする機能を提供します。
Optik Profiler との統合
ランタイムスクリプトとライブコードパッチ適用
すべてのユーザーのクラッシュ ダンプ
Mod Engine 2 は、Dark Souls 用のオリジナル Mod Engine の既存の機能をすべてカバーしていますが、MOD 作成者が知っておくべき重要な新機能がいくつか導入されています。
ユーザーが手動でファイルをコピーしなくても、MOD がプリインストールされた状態でゲームを起動できるように設計されたランチャー アプリケーションを作成しました。従来、MOD はゲーム フォルダーと同じ場所に存在し、Mod エンジンはゲーム ファイルのリクエストをこのゲーム フォルダーのサブディレクトリ内の MOD ファイル パスにリダイレクトしようとしました。この導入モデルは柔軟性に欠けており、ユーザーが複数の MOD をインストールし、それらを選択して切り替えたい場合は、多くの手動調整が必要でした。
この問題を解決するために、 modengine2_launcher
が作成されました。このシンプルなコマンドライン アプリケーションには 3 つの主な目的があります。
ユーザーがゲームをインストールした場所を見つける
modengine2.dllがすでにロードされている状態でゲームを開始します
ユーザーがゲームを起動した設定に関する情報を modengine2.dll に渡します。
これにより、MOD、Mongine、およびゲーム自体を完全に切り離した状態に保つことができます。その結果、Steam からゲームを直接実行すると、常にバニラ インスタンスが起動されます。
Mod Engine 2 では、従来の Mod Engine の古いチェーンローディング メカニズムを置き換えるように設計された拡張機能とプラグインのサポートが導入されています。拡張機能は、コア機能を使用してパッチやコードフックを登録し、他の拡張機能と対話することができます。これは、将来的にはランタイム Lua スクリプトをサポートするように拡張される予定です。
ScyllaHide は Mod Engine 2 ディストリビューションに含まれており、Cheat Engine などのプログラムを使用してアンチデバッグ技術を回避することを心配することなく、ネイティブ デバッガーを介してゲームをデバッグできます。代わりに、お気に入りのデバッガー (WinDbg、x64dbg、または VEH サポートに依存しない Cheat Engine) を使用できます。
WIP