32blogby StudioMitsu
Archive12 min read

Rustローカルサーバー構築完全ガイド(Windows)

SteamCMDを使ったRustローカルサーバーの構築手順を丁寧に解説。ポート開放・トラブルシューティング・便利コマンド集まで網羅した決定版ガイド。

友達と一緒にRustをやりたいけど、既存のサーバーはPvPが激しすぎる。自分のペースで遊べる環境が欲しい。そう思って調べてみると「ローカルサーバーを立てればいい」とわかるんだけど、手順を見て「なんか難しそう…」と感じた人も多いはず。

この記事では、SteamCMDを使ってWindowsにRustの専用サーバーを構築する手順を、初めての人でも迷わないように解説する。コマンドの意味もちゃんと説明するので、何をやっているかわからないままコピペするだけ、みたいな状態にならずに済むはずだ。

必要なスペックと事前確認

まず、ローカルサーバーを動かすには相応のPCスペックが必要になる。自分でプレイしながらサーバーも動かすとなると、かなりのリソースを消費する。

項目最低スペック推奨スペック
CPU4コア以上8コア以上(Core i7 / Ryzen 7)
RAM16GB32GB
ストレージ20GB 空き(HDD)30GB 以上(SSD推奨)
OSWindows 10 64bitWindows 10/11 64bit

サーバーのワールドサイズを大きくするほどメモリを食う。マップサイズ3000なら最低16GBあれば動くが、友達も接続するなら32GBは欲しい。

SteamCMDのインストール

SteamCMDは、Steamのゲームをサーバー用に管理するためのコマンドラインツールだ。Rustの専用サーバーファイルはSteamCMD経由でダウンロードする。

ダウンロードと配置

  1. SteamCMD公式ページ からZIPファイルをダウンロードする
  2. C:\steamcmd\ というフォルダを作成して、中にある steamcmd.exe を置く
C:\steamcmd\
└── steamcmd.exe

フォルダの場所はどこでもいいが、C:\steamcmd\ にしておくと後でコマンドを書くときに楽になる。

初回起動と自動アップデート

steamcmd.exe をダブルクリックすると黒いウィンドウが開いて、自動的にSteamCMD本体のアップデートが始まる。数分待てば Steam> というプロンプトが表示されるはずだ。

これでSteamCMDの準備は完了。

Rustサーバーファイルのダウンロード

SteamCMDのプロンプト(Steam>)が出たら、以下のコマンドを順番に実行していく。

force_install_dir C:\rustserver\

サーバーファイルをインストールする場所を指定する。C:\rustserver\ 以外の場所でもいいが、スペースを含むパスは後でトラブルの元になりやすい。

login anonymous

Rustの専用サーバーファイルは、Steamアカウントなしでダウンロードできる。Login Successful と表示されれば成功。

app_update 258550 validate

258550 がRust専用サーバーのApp IDだ。validate をつけることでダウンロード後にファイルの整合性チェックも行ってくれる。初回は10〜20GB程度のダウンロードが走るので、回線速度によっては時間がかかる。

exit

ダウンロードが完了したらSteamCMDを終了する。C:\rustserver\ にファイルが展開されていれば成功だ。

起動バッチファイルの作成

毎回手打ちでコマンドを入力するのは面倒なので、バッチファイルを作って管理する。

C:\rustserver\ の中に start_server.bat という名前でテキストファイルを作成し、以下の内容を書き込む。拡張子が .bat になっていることを確認してから保存すること(.bat.txt になっていないか要注意)。

bat
@echo off
cd /d C:\rustserver\

RustDedicated.exe -batchmode -nographics ^
  +server.hostname "My Rust Server" ^
  +server.port 28015 ^
  +server.identity "my_server" ^
  +server.maxplayers 10 ^
  +server.worldsize 3000 ^
  +server.seed 12345 ^
  +server.saveinterval 300 ^
  +rcon.port 28016 ^
  +rcon.password "ChangeThisPassword" ^
  +rcon.web 1

各パラメータの意味

パラメータ説明推奨値
server.hostnameサーバーリストに表示される名前好きな名前
server.portゲーム通信に使うポート28015(変更不要)
server.identityサーバーのデータ保存先フォルダ名英数字のみ
server.maxplayers最大接続人数自分専用なら1〜5
server.worldsizeマップサイズ(1000〜6000)3000が標準
server.seedマップの地形シード値任意の数値
server.saveinterval自動保存の間隔(秒)300〜600
rcon.passwordリモート管理用パスワード必ず変更する

rcon.password はデフォルトのまま使うと危険なので、必ず自分で設定したパスワードに変更してほしい。

サーバーの起動

start_server.bat をダブルクリックすると黒いウィンドウが開いて起動シーケンスが始まる。

起動中は以下のようなログが流れる:

World size: 3000, seed: 12345
Generating terrain...
Server startup complete

最初の起動は10〜20分程度かかる場合がある。マップの生成処理が走るためだ。2回目以降は既存のマップデータを読み込むので3〜5分で起動する。

起動中に ShaderWarning や PhysX のエラーが出ることがあるが、これは無視して問題ない。Server startup completeSaving complete と表示されたら接続できる状態だ。

ゲームからサーバーに接続する

Rustを起動してF1キーでコンソールを開き、以下のコマンドを入力する。

client.connect 127.0.0.1:28015

127.0.0.1 は自分自身のPC(ループバックアドレス)を指す。別のゲームサーバーに接続中の場合は先に切断してから実行すること。

接続できたら成功だ。初期スポーン地点に原人が出現すれば正常に動いている。

友達も接続できるようにする(ポート開放)

自分だけで遊ぶなら 127.0.0.1 で接続できるが、友達にも入ってもらうにはポート開放が必要になる。

Windowsファイアウォールの設定

まずWindowsファイアウォールでRustサーバーの通信を許可する。

  1. 「Windowsセキュリティ」を開く
  2. 「ファイアウォールとネットワーク保護」→「詳細設定」
  3. 「受信の規則」→「新しい規則」
  4. 「ポート」を選択してUDPで 28015 を許可
  5. 同様に 28016(RCON用)も許可

ルーターのポート開放

次にルーター側でも同じポートを開放する。手順はルーターによって異なるが、基本的な流れは以下の通り:

  1. ブラウザで 192.168.1.1 または 192.168.0.1 にアクセスしてルーターの管理画面を開く
  2. 「ポートフォワーディング」または「ポート変換」の設定画面を探す
  3. 外部ポート 28015(UDP)をサーバーPCのローカルIPアドレスに転送する設定を追加
  4. 28016(TCP/UDP)も同様に設定

友達には自分のグローバルIPアドレスを伝えて、client.connect あなたのIP:28015 で接続してもらう。グローバルIPは https://checkip.amazonaws.com などで確認できる。

管理者権限の設定

サーバー内で管理コマンドを使うには、まず自分に管理者(owner)権限を付与する必要がある。

SteamIDの確認

SteamIDはSteamプロフィールページのURLから確認できる。https://steamcommunity.com/profiles/76561198XXXXXXXX の数字部分が SteamID64 だ。

ownerの設定

サーバーコンソール(黒いウィンドウ)で以下を入力する:

ownerid 76561198XXXXXXXX "あなたの名前"

設定を保存:

server.writecfg

ゲーム内でF1コンソールを開いて global.status_cl を実行し、IsAdmin: True と表示されれば管理者権限が付与されている。

便利なサーバーコマンド集

管理者権限があれば、サーバーコンソールからさまざまなコマンドが使える。

時間・天候操作

コマンド説明
env.time 12ゲーム内時刻を正午にする
env.time 0深夜0時にする
env.progresstime false時間の進行を止める
env.progresstime true時間の進行を再開する
weather.rain 0雨を止める
weather.rain 1雨を降らせる
weather.fog 0霧を消す

プレイヤー管理

コマンド説明
status接続中のプレイヤー一覧
kick "プレイヤー名"プレイヤーをキック
ban SteamIDプレイヤーをBAN
unban SteamIDBANを解除
teleportpos "名前" X Y Zプレイヤーを座標に転送

アイテム付与(管理者のみ、ゲーム内コンソール)

inventory.giveto "プレイヤー名" wood 1000
inventory.giveto "プレイヤー名" stones 1000
inventory.giveto "プレイヤー名" explosive.timed 5

サーバー管理

コマンド説明
server.save手動でワールドを保存
server.restartサーバーを再起動
quitサーバーをシャットダウン

トラブルシューティング

サーバーが起動しない

症状: バッチを実行しても黒い画面がすぐ消える

  • RustDedicated.exe のパスが正しいか確認する
  • バッチファイルに pause を追加してエラーメッセージを確認する
bat
@echo off
cd /d C:\rustserver\
RustDedicated.exe -batchmode ...
pause

自分は接続できるが友達が入れない

  • ルーターのポート開放(UDP 28015)ができているか確認
  • Windowsファイアウォールで RustDedicated.exe が許可されているか確認
  • プロバイダーによってはポート開放が制限される場合がある(固定IPやVPSの利用を検討)

メモリ不足でサーバーがクラッシュする

  • server.worldsize を小さくする(3000→2000)
  • 不要なバックグラウンドプロセスを終了する
  • 物理RAMが16GB以下の場合はワールドサイズを2000以下に抑える

サーバーが重くてラグる

  • server.maxplayers を減らす
  • server.worldsize を小さくする
  • Oxideプラグインを使っている場合は重いプラグインを無効化する

まとめ

Rustのローカルサーバー構築の流れをまとめると以下の通り:

  1. SteamCMDをダウンロードして配置する
  2. app_update 258550 validate でサーバーファイルを取得
  3. バッチファイルを作成して起動する
  4. F1コンソールから client.connect 127.0.0.1:28015 で接続
  5. 友達を招くにはポート開放が必要

PCのスペックさえあれば無料でRustサーバーを運用できるのがローカルサーバーの最大の魅力だ。ただし、常時稼働させるには電気代がかかるし、スペックが足りなければラグの原因になる。もし自前のPC運用が厳しいと感じたら、レンタルサーバーも選択肢の一つとして考えてみてほしい。

MODを導入してサーバーをカスタマイズする方法は別の記事で解説しているので、興味があればそちらも読んでみてください。