モジュール説明:NitroxLauncher - graighle/Nitrox GitHub Wiki
NitroxLauncher
NITROXのサーバー自身やマルチプレイ対応クライアントを立ち上げるランチャー。
MainWindow.xaml
恐らく起動時に読み込まれるウィンドウ(main等のスタートアップの記述が見つからなかったため、このWindow読み込みがコード開始地点になる?) 以下の3つのページをタブ(厳密には3つのボタンクリックからのイベント発火でフレーム切り替え)として以下の3つのxamlを切り替える。
- LaunchGamePage
- ServerPage
- OptionPage
LaunchGamePage.xaml
通常、もしくはマルチプレイ対応でSubnautica本体を立ち上げるページ。 最終的にはLauncherLogic内のStartSingleplayer、StartMultiplayerが実行される。
ServerPage.xaml
サーバーを起動させるためのページ。起動後にはServerConsolePage.xamlに切り替わる。
OptionPage.xaml
Subnautica本体のパスを指定するページ。対象パスにSubnauticaが無いと起動時にこのページが表示される。
ServerConsolePage.xaml
サーバー起動後のコンソール。
LauncherLogic.cs
現在の他のプログラムの起動状態見たり、サーバーやマルチ対応クライアントを動かすところ。 なんかSubnautica本体の海賊版検知機能もついていたりする。
SyncAssetBundles
SyncMonoAssemblies
SyncAssembliesBetweenSubnauticaManagedAndLib
StartSubnautica
Subnauticaを起動する。Exeに対してEpicGamesかSteamかで適切な起動時用パラメータを追加する。