かやのみ日記帳

日々感じたことをつれづれと書いています。

NitradoでAstroneerサーバーを運用するメモ。セーブデータのアップロード、ダウンロードも可能。

Xbox game passで配信されているASTRONEERにハマったのだが、ネット上に必要な情報がなかったので、ここにメモ書きする。

大事なのはセーブデータの移行ができるのか、サーバーの終了時の取り扱い、セーブデータ退避、基本価格、パスワード制限が可能かどうか。だいたい、いい感じになっている。

www.microsoft.com

server.nitrado.net

 

Nitradoの基本

ASTRONEERはNitradoのゲームサーバーを推奨している。自力で建てられないこともないらしいが、あえていうが設定する苦労をするぐらいなら借りたほうがよいだろう。必要なスペックはメモリ2GBくらいは必要そうだ。逆にセーブデータはかなり容量が小さい(3~5MBくらい?)ため、そこまでHDD容量はいらないだろう。

LinuxサーバーかWindowsサーバーかは不明だ。Steam版について自分のPCをサーバー化する方法もあるようだが、XboxGamepass用の設定はわからない。ないかもしれないので注意。

 

NitradoのサーバーはASTRONEERの場合8名から始めることになる。4名プランの場合月500円くらいから始められるのだが、残念ながら選べない。必要経費として諦めよう。ちなみに8名ではじめて後から4名…というのも不可。基本固定だ。

Nitradoにアクセスしてゲームを選ぶ画面が出るが、カスタマイズをするのがおすすめ。ASTRONEERを選ぶとプランがいくつかでてくる。10.40 US$の1ヶ月プランがいいと思う。まずは試してみて、長くやるなら長期プランに移行すればいい。

 

Choose game laterを選ぶとサーバースペックを指定することができる。

f:id:kayanomi:20210612090634p:plain

これがおすすめ

 

 

サーバーの場所はシンガポールでいいだろう。ときおりアメリカが指定されていたりするが、Asiaのほうがおそらく安定するはずだ。実際に2名でプレイしているけどラグは感じない。1週間ぐらいやっててものを大量に散らかしていると一部オブジェクトが宙に浮いてたり、消えたり、起動しなくなったりするが概ね問題ない。
プレイに致命的なダメージ、ラグはないと言っていい。

 

サーバースペックは2GB以上が推奨。ただしRTX3080を積んでいるので、物を散らかしてプレイしているせいなのかもしれない。サーバーの利用状況のグラフを見ていても最近は1GBが最低ラインで張り付いている。余裕を持たせるために2GBはあっていいだろう。+$2.59で買えるので買ったほうがいい。

CPUはそんなに使わないアプリなのかグラフがはりついたりはしていない。Nitradoの最小構成でも問題ないようだが、メモリを買うと自動的にCPUも強くなるので、ここは頓着しなくてよさそうだ。

 

サーバーコンフィグ設定

Expertで設定をした。Basicな設定はあまりわかってないので、それでいい人はそれで設定してほしい。

セーブデータの自動セーブは以下のパラメータ。600secごと、10分ごとに設定しているがこれで不都合はなかったし、ラグなどもなかった。

AutoSaveGameInterval=600
BackupSaveGamesInterval=7200

 

OwnerNameにXboxのアカウント名をいれないとサーバー管理者として設定できない。
サーバ管理者はそのサーバーのセーブデータをゲーム内でちゃんと保存できているか確認もできるので、ちゃんといれたほうがいい。自分はゲームを終える前にかならずセーブデータが保存されているか確認してログアウトする。

OwnerName=*******(自分のアカウント名を入れる)

ゲームでサーバーに入るときにパスワード認証を設定できる。入れたほうがよいだろう。

ServerPassword=*****(ゲーム内でサーバーログインするときのパスワード)

ホワイトリスト設定も可能なはずだ。が、基本サーバーパスワードでいいかと思ってるので自分は以下の設定はいじっていない。

DenyUnlistedPlayers

だいたい必要な設定はこれくらいだ。

 

ソロプレイして作ったセーブデータをサーバーに上げる

wiki.nitrado.net

実は可能らしいのだが…Xboxgamepassの場合、セーブデータの場所を発見するのがひっじょーに難しい。Steam版ならば素直なのだが…。

これ、最初にやろうと頑張ったのだがうまくいっていない。再現性もないので書くことはできない。基本やり直しになるだろう。Steam版ならば上記ページのようにサーバーにFTPが開いているので、そこにセーブデータをアップロードしてコンフィグでセーブを指定すればいい。というかコンフィグにセーブを設定しなくてもゲーム内でどのセーブを使うかは選べるはず。が、一応公式で指定されている方法は守ろう。

ちなみにセーブデータの削除はゲーム内で行うこと。FTPサーバー内でいじっても効果はない。サーバー管理者になってゲームデータの管理で削除しなければならない。

 

セーブデータをダウンロードする

Nitradoを解約する際にサーバー内のセーブデータはどうなるのか?おそらく消えるらしい。これは終わるときに確認しておきたいと思う。ともあれ消える前提だ。
さて、じゃあ消えるセーブデータを維持するためにサーバー代を払い続けるのはつらい。なので作ったセーブを自分のGoogleDriveなどに保存しておきたいところだ。

これは可能である。FTP接続でゲームデータが保存されている。これをバックアップとして保存すればいい。容量も非常に小さいので困ることはないだろう。たぶん頑張っても10MBは超えないんじゃないだろうか。

もし不安ならば小さいうちに保存して、サーバーでゲームを進め、書き戻せばいい。自分は一度試してうまくいったので安心はしている。

FTP接続の注意点だが、実はデフォルトパスワードではアクセスできない。自分でパスワードを一回変更した上で接続すること。

 

セーブデータの場所、インポートについて

C:\Users\{あなたのユーザ名}\AppData\Local\Packages\SystemEraSoftworks.29415440E1269_ftk5pbg2rayv2\SystemAppData\wgs

ここらへんにあるらしい。
で、サーバーからダウンロードしたセーブデータはSavedata$2021.12.31-01.14.43.savegame みたいな形式だと思う。

これをローカルに読み込ませるには、まず新しくゲームのセーブデータを作る。作るとわけのわからないランダム文字列のフォルダ配下に新しいランダム文字列のデータが作られるはずだ。で、更新日付を見て新しく作成したセーブデータらしきものの名前をコピーする。

f:id:kayanomi:20220218195022p:plain

例えばだけど87ED4269F9334C5EA3D1F09AC4B9A5F4というファイルが新しく生成されたとする。であれば、これが新しく作成されたセーブであることに違いない。なので、サーバーのセーブデータの名前をこれに入れ替えればいい。元のファイルの名前をコピーして元ファイルを.bakだとかリネームする。で、Savedata$2021.12.31-01.14.43.savegameを87ED4269F9334C5EA3D1F09AC4B9A5F4に変更する。

こうしてロードしてしまえば元のデータが扱えるようになる。やったね。

おわりに

一ヶ月1200円くらいだが、安いものだ。サーバーの立ち上げには10分くらいはかかるが、それでも早いほうだ。特に大きなつまずきもなく、障害もなく楽しめている。それだけの価値はあると思う。