Vortex は Nexus Mods の現在の MOD マネージャーです。これは、MOD シーンの経験豊富なベテランにとっても十分な制御を提供しながら、新規ユーザーにとってゲームの MOD をできるだけ簡単にできるように設計されています。
Vortex を使用したアプローチは、ロード オーダーの並べ替えや MOD ファイルの管理などの複雑なタスクを処理し、最小限の労力で安定した MOD を追加したゲームを実現することを目標として、プロセスの多くを自動化することを目的としています。私たちは、皆さんが MOD に費やす時間を減らし、ゲームをプレイする時間を増やすお手伝いをしたいと考えています。
マルチゲームのサポート- 250 を超えるさまざまなゲームの MOD サポートがあり、今後も増え続ける Vortex は、利用可能な最も多用途な MOD マネージャーです。これには、スカイリム、フォールアウト 3、フォールアウト 4、フォールアウト: ニューベガス、サイバーパンク 2077、バルダーズ ゲート 3、スターフィールド、スターデュー バレー、バナーロード、ウィッチャー 3、エルデン リング、ザ シムズ 4、モンスター ハンター: ワールド、オブリビオン、パルワールドなどのゲームが含まれます。 、ブレイド&ソーサリー、ヴァルハイム、ホグワーツレガシー、7 Days to Die。
Nexus Mod との緊密な統合- Vortex は Nexus Mod とシームレスに連携するように設計されており、サイトから Mod を簡単に検索、インストール、再生したり、新しいファイルについて学習したり、最新ニュースを入手したりできます。
MOD の追加が簡単になりました- 内蔵の自動ソート システムがロード順序を管理し、強力かつ使いやすいプラグイン管理機能で MOD の競合を解決するのに役立ちます。
MOD プロファイル- 独立した MOD プロファイルを簡単にセットアップ、切り替え、管理できるため、特定のプレイスルーに必要な MOD の組み合わせを正確に使用できます。
モダンで使いやすい UI - 完全にカスタマイズ可能なインターフェイスを備えた Vortex を使用すると、ツールにすばやく簡単にアクセスし、ゲーム、プラグイン、ダウンロード、ゲームの保存を管理できます。
拡張機能とプラグイン- Vortex は GPL-3 ライセンスの下でリリースされており、コミュニティは Vortex と対話できる拡張機能とフレームワークを作成して、その機能を継続的に追加できます。
まず、Vortex を Nexus Mods または GitHub からダウンロードできます。インストーラーをダウンロードしたら、それを実行して指示に従ってください。
Vortex とガイドに関する追加情報は、Vortex Wiki にあります。
Vortex で開発を開始するには、このほぼ自動化された方法を使用してすべての依存関係をダウンロードしてインストールし、GitHub から Vortex リポジトリを複製して、ソースから実行できるようにビルドしてください。ほとんどの依存関係は Scoop を使用してインストールされます。
[スタート] ボタンをクリックし、 powershell
と入力して PowerShell を開始します。
Invoke-WebRequest "https://raw.githubusercontent.com/Nexus-Mods/Vortex/master/bootstrap.ps1" -OutFile bootstrap.ps1
を実行してブートストラップ スクリプトを取得します
デフォルトでは、このスクリプトはC:buildvortex
に Vortex をビルドします。別の場所に置きたい場合は、実行する前にスクリプトを編集してビルド ディレクトリを変更します。
多くの場合、スクリプトの実行を許可する必要があります。これはSet-ExecutionPolicy Unrestricted
使用して設定できますが、管理者アクセス権を持つ PowerShell が必要です。
スクリプト ( .bootstrap.ps1
) を実行します。
次のセクションでは、いくつかの開発上の決定事項を明確にして説明することを目的としています。
開発ビルドとリリース ビルドのツールチェーンはまったく異なります。
開発ビルドでは、typescript コンパイラー (tsc) を直接使用して、各.ts
ファイルを個別に.js
に音訳し、electron はそれらのファイルを直接実行し、依存関係はnode_modules
からロードされます。
リリース ビルドでは、webpack と ts-loader を使用して、すべての.ts
ファイルと依存関係を 2 つの JavaScript ファイル (メイン/ブラウザ プロセス用とレンダラー用) にベイクします。 electron-builder
コードとアセットをバンドルし、nsis インストーラーを生成し、それを exe インストーラーにビルドして、それら (および出荷されるすべての実行可能ファイルと DLL) に署名するために使用されます。複数のバリアントに対して複数の Electron-Builder 設定ファイルがあり、リリース ビルドには「oneclick」と「advanced」のみが使用され、その他はさまざまな状態で壊れている可能性があります (ただし、ci も同様に機能するはずです)。
その結果、開発ビルドは作業が容易になり、ビルドははるかに速くなりますが、実行時間は遅くなります。
さらに、2 つのパッケージ構造を使用しています。これは、 /package.json
ファイルがすべての開発とリリースのビルド環境に使用されることを意味します (たとえば、このファイルは、使用/バンドルされる電子バージョンを常に制御します)。一方、 /app/package.json
は、リリース ビルドのみの設定 (名前、バージョン、依存関係)。カスタム スクリプト ( checkPackages.js
) を使用して、リリースの依存関係がビルドenv
依存関係のサブセットであること、および依存関係の違いによってテスト中に発生しなかった問題を回避するために同じバージョンを使用することを確認します。
一方、バンドルされた拡張機能は、開発とリリースの間で同じようにビルドされます。それらは常に webpack でビルドされ、それぞれに独自のビルド設定があります。既に単一の js ファイルである単純なゲーム拡張機能を除き、それらは単にコピーされます。
このコードベースは引き続き糸 1 (クラシック) を使用します。糸 2 または糸 3 を使用しようとすると、無意味なエラー (明確にリストされている依存関係が欠落している、連続してインストールするとパッケージが欠落する) が発生し、理由を調査する合理的な方法がありません。 npm と pnpm は比較するとかなり遅いです。実際には、yarn 固有の機能 (ワークスペース?) を使用していないため、切り替えはそれほど難しくありませんが、今のところは、yarn の「クラシック」機能が機能します。
執筆時点では、electron は ES モジュールをサポートしていないため、すべてが commonjs にトランスパイルされます。これにより、esm のみをサポートする一部の更新されたライブラリが使用できなくなります (d3 の新しいバージョンなど)。また、非同期インポート ( const foo = await import('bar')
) が実行時に実際に同期されることも意味します。ただし、リリース ビルドではすべてが 1 つのファイルにベイクされ、コード分割は実際には必要ないため、実際には問題ではありません。
GitHub で問題を報告し、少なくとも次の情報を含めてください。
使用している Vortex の正確なバージョン
お使いのOS
バグが発生したときに何をしていたか
バグとは正確には何ですか (クラッシュ? エラー メッセージ? 予期しない動作?)
エラー メッセージが表示された場合は、完全かつ正確なエラー メッセージを含めてください。難解または重要ではないと思われる情報を言い換えたり、省略したりしないでください。
ログ ファイル (以下を参照)
理想的にはアプリケーションの状態も含めます (以下を参照)
クライアントが生成するすべてのデータ (設定やログを含む) は次の場所に保存されます。
ビルドタイプ | 位置 | 共通パス |
---|---|---|
リリース | %AppData%Vortex | C:Users |
開発者 | %AppData%vortex_devel | C:Users |
バグを報告する必要がある場合は、画面に表示されるエラー メッセージに加えて、そのディレクトリ内の次のパスが役立つ場合があります。
vortex.log
(ログは一定のサイズでローテーションされます。これが最新のものです)
global_account を除くstate
(これにはキーとパスワードが含まれているため、機密情報が含まれます)
(バグが特定のゲームに関係する場合)
TODO: 依存関係とバージョンを含む手動手順
Nexus Mods から Vortex をダウンロード
ソース コード、問題、プル リクエストについては GitHub を参照してください。
コミュニティやチームとのサポートとディスカッションのための Vortex フォーラムまたは Discord。
ナレッジベース、記事、トラブルシューティング用の Vortex Wiki
コードベースがどのように構成されているかの概要については、「プロジェクトの構造」を参照してください。
Vortex コードの大部分はオープンソースです。私たちは透明性のある開発プロセスに取り組んでおり、あらゆる貢献を高く評価しています。バグの修正、新機能の提案、ドキュメントの改善、情報の普及などにご協力いただければ幸いです。Vortex コミュニティの一員としてぜひご参加ください。
バグ レポート: Amplication の使用中にエラー メッセージが表示された場合、または問題が発生した場合は、バグ レポートを作成してください。
機能リクエスト: アイデアがある場合、または開発をより簡単かつ堅牢にするために不足している機能がある場合は、機能リクエストを送信してください。
レビュー延長: ゲーム拡張機能を作成していて、それをレビューする必要がある場合は、レビュー延長リクエストを送信してください。
このプロジェクトは GPL-3.0 ライセンスに基づいてライセンスされています。