このガイドでは、管理者の設定、RCON の使用、コマンドの実行、マップローテーションの管理、競技設定の構成、よくある問題のトラブルシューティングなど、Holdfast: Nations at War 専用サーバーの管理について説明します。
管理者の設定
Holdfast は Steam ID ベースの管理者システムを使用します。プレイヤーがゲーム内で管理者コマンドを使用できるようにするには、プレイヤーの Steam ID を管理者リストに追加する必要があります。
admins.txt 経由での管理者の追加
- GPanel からサーバーを停止します。
- File Manager を開くか、SFTP 経由で接続します。
- サーバーのルートディレクトリで
admins.txtを見つけるか作成します。 - 1 行に 1 つの Steam64 ID を追加します:
# Holdfast Admin List
# One Steam64 ID per line
76561198012345678
76561198087654321
76561198011223344
- ファイルを保存してサーバーを起動します。
steamid.io にアクセスして Steam プロフィール URL を入力することで、自分の Steam64 ID を確認できます。ID は 7656119 で始まる 17 桁の数字です。
serverconfig.txt 経由での管理者設定
あるいは、holdfastnaw-dedicated/configs/serverconfig_default.txt で直接管理者を定義することもできます:
# Admin Steam IDs in server config
server_admin_steam_id_add 76561198012345678
server_admin_steam_id_add 76561198087654321
RCON アクセス
RCON(リモートコンソール)を使用すると、プレイヤーとして接続せずにサーバーコマンドを実行できます。holdfastnaw-dedicated/configs/serverconfig_default.txt で RCON を設定します:
# Enable RCON
server_rcon_enabled true
# RCON password (use a strong, unique password)
server_rcon_password "YourSecureRconPassword"
# RCON port (default is game port + 5)
server_rcon_port 20105
RCON 経由で接続するには、任意の Source RCON 互換クライアントを使用できます。サーバー IP、RCON ポート、パスワードを入力して接続を確立します。
ゲーム内管理者コマンド
管理者は、指定されたコンソールキー(通常は ` または ~)を押してコマンドを入力することで、ゲーム内でコマンドを実行できます。次の表に、最もよく使用される管理者コマンドを示します:
プレイヤー管理
| コマンド | 使用法 | 説明 |
|---|---|---|
kick |
kick <playerID> "reason" |
オプションの理由を付けてプレイヤーをサーバーからキックします |
ban |
ban <playerID> <minutes> "reason" |
指定した期間プレイヤーを BAN します(0 = 永久) |
unban |
unban <steamID> |
Steam ID による BAN を解除します |
slay |
slay <playerID> |
プレイヤーを即座に殺します |
swapteam |
swapteam <playerID> |
プレイヤーを対戦相手のチームに移動します |
mute |
mute <playerID> |
プレイヤーのボイスチャットとテキストチャットをミュートします |
unmute |
unmute <playerID> |
以前にミュートしたプレイヤーのミュートを解除します |
マップとゲームの制御
| コマンド | 使用法 | 説明 |
|---|---|---|
changemap |
changemap <mapName> <gameModeID> |
指定したマップとモードに即座に切り替えます |
nextmap |
nextmap |
ローテーション内の次のマップにスキップします |
restartround |
restartround |
現在のラウンドを再開します |
endround |
endround <teamID> |
指定した勝利チーム(1 または 2)で現在のラウンドを終了します |
settimeleft |
settimeleft <seconds> |
現在のラウンドの残り時間を設定します |
クラスとスポーンの管理
| コマンド | 使用法 | 説明 |
|---|---|---|
setclasslimit |
setclasslimit <className> <percent> |
クラスの割合制限を設定します(例: artillery、officer) |
forceclass |
forceclass <playerID> <className> |
プレイヤーを特定のクラスに強制します |
respawn |
respawn <playerID> |
死亡したプレイヤーを強制的にリスポーンさせます |
競技プレイ用のサーバー設定
イベント、ラインバトル、または競技マッチを主催する場合、次の設定は構造化された環境を作成するのに役立ちます:
# Competitive settings
server_friendly_fire true
server_auto_balance_teams false
server_enforce_team_balance false
server_allow_spectators true
# Disable certain classes for line battles
server_class_limit_artillery 0
server_class_limit_cavalry 0
# Longer round times for organized events
server_round_time_seconds 1800
# Disable respawning (one life per round)
server_respawn_enabled false
server_respawn_time_seconds 0
マップローテーションの管理
管理者コマンドを使用するか、設定ファイルを編集することで、マップローテーションを動的に管理できます。
ランタイムマップローテーションコマンド
# View current map rotation
maplist
# Add a map to the rotation
addmap "Grasslands" 0
# Remove a map from the rotation
removemap "Grasslands" 0
# Clear the entire rotation
clearrotation
holdfastnaw-dedicated/configs/serverconfig_default.txt に保存されません。サーバーの再起動時に失われます。永続的な変更を行うには、GPanel の File Manager を通じて設定ファイルを直接編集してください。
トラブルシューティング
サーバーがブラウザに表示されない
- サーバーが起動後、少なくとも 2~3 分間実行されていることを確認してください。Steam マスターサーバーリストに登録されるまでに時間がかかります。
server_steam_query_portが正しく設定されており、GPanel の割り当てと一致していることを確認してください。- サーバーが LAN 専用モードに設定されていないことを確認してください。
- GPanel のコンソール出力でエラーメッセージを確認し、サーバーが正常に起動したことを確認してください。
サーバーのクラッシュ
- エラーの詳細については、
server_log/ディレクトリ内のサーバーログを確認してください。 holdfastnaw-dedicated/configs/serverconfig_default.txtに構文エラーが含まれていないことを確認してください。1 つの文字が間違って配置されているだけで、サーバーが起動しなくなる可能性があります。- ローテーション内のマップ名が正しく綴られており、有効なマップを参照していることを確認してください。
- ゲームのアップデート後にクラッシュが続く場合は、GPanel の Reinstall オプションを使用してサーバーを再インストールしてみてください(最初に設定をバックアップしてください)。
プレイヤーのデシンク問題
- デシンクはプレイヤー数が多いほど発生しやすくなります。頻繁にデシンクが発生する場合は、
server_max_playersを減らすことを検討してください。 - サーバーのティックレートがプレイヤー数に対して適切に設定されていることを確認してください。
- 非常に高いレイテンシ(200 ミリ秒以上)のプレイヤーはデシンクを経験しやすくなります。最大 ping 制限を設定できます:
# Kick players with ping above this threshold (ms)
server_max_ping 300
プレイヤーが接続できない
- GPanel でサーバーが実行中で完全に起動していることを確認してください。
- パスワードを使用している場合は、接続するプレイヤーが正しく入力していることを確認してください。
- サーバーが満員でないこと(
server_max_playersの制限に達していないこと)を確認してください。 - プレイヤーが直接 IP 経由で接続している場合は、正しい IP とゲームポート(クエリポートではない)を使用していることを確認してください。
関連記事
サーバー管理についてさらにサポートが必要な場合は、サポートチケットを開いてください。当チームがお手伝いします。