はじめに
TShockの記事は基本的に古いか英語であり、サーバー構築についてあまり情報がないので記事にまとめてみました。
構築環境
- ubuntu 22.04LTS
- TShock 5.1.3
- .NET runtime 6.0
TShock について
https://terraria.fandom.com/wiki/TShockより
TShock is server software offering a vast array of server tools, such as:
Admin system to execute commands in-game
Build protection
Warping
Plugin support to get more commands or fixes
Some minor fixes/tweaks to the vanilla server >software
Edit hidden world settings in-game Other features
簡潔に言うと便利なコマンドや設定ができるサーバーソフトウェア
プラグインによる拡張
などがあります。
サーバー構築
ufw設定
基本的にTShockで使うipアドレスは7777番なのでまずはufwでポート開放しておきます。
あらかじめ、ルーターの方もポート開放しておいてください。
外部から接続できない原因は大体ルーターの設定ができてないからだと思います。
$ sudo ufw allow 7777/tcp
パスワードが求められる場合はパスワードを入力。
その後ファイアウォール有効化。
$ sudo ufw enable
これでポート周りは完了です。
実行ユーザー作成
サーバーを動作させるためのユーザーを作成します。
$ sudo adduser tshock
ユーザー `tshock' を追加しています...
新しいグループ `tshock' (1001) を追加しています...
新しいユーザー `tshock' (1001) をグループ `tshock' に追加しています...
ホームディレクトリ `/home/tshock' を作成しています...
`/etc/skel' からファイルをコピーしています...
新しい パスワード: #パスワードを入力
新しい パスワードを再入力してください: #パスワードを再入力
passwd: パスワードは正しく更新されました
tshock のユーザ情報を変更中
新しい値を入力してください。標準設定値を使うならリターンを押してください
フルネーム []: #Enter
部屋番号 []: #Enter
職場電話番号 []: #Enter
自宅電話番号 []: #Enter
その他 []: #Enter
以上で正しいですか? [Y/n] #"y"を入力
TShockインストール
URLから最新リリースの~linux-x64-Release.zipのリンクアドレスをコピーします。
今回は実行ユーザーのホームディレクトリに作成するので
作成した実行ユーザーにログインし、展開。
$ su tshock
$ wget https://github.com/Pryaxis/TShock/releases/download/v5.1.3/TShock-5.1.3-for-Terraria-1.4.4.9-linux-x64-Release.zip
$ unzip TShock-5.1.3-for-Terraria-1.4.4.9-linux-x64-Release.zip
を実行。
解凍すると、TShock-なんちゃら-linux-x64-Releaseみたいなディレクトリがあり、その中に.tarファイルがあるのでまず解凍します。
$ tar xvf /path/to/*.tar
解凍するとこんな感じになってると思います。
この中のTShock.Serverが実行ファイルになるので、まず起動します。
起動すると、
のような表示がされます。(.NET未インストールのみ)
要するに「.NETランタイムをインストールしろ」とのことです。
.NETインストール
上のURLから.NET runtime 6.0をインストールします。
$ sudo apt install aspnetcore-runtime-6.0
もう一度TShock.Serverを実行。
Choose World画面になったら成功です。
ワールドの立て方
サーバーを建てるワールドを指定。例として今回は1を選択。
次にサーバーの最大プレイヤー数を設定。そのままEnterを押すと16人になります。
続いてポート番号を設定。(デフォルトは7777)
続いて、自動的にポートを開放するかと聞かれますがすでに開放したのでEnter直下。
最後に、パスワードを設定。今回は未入力。
Server startedと出たら立ち上げ完了です。
接続方法
まず、Terrariaを起動します。起動後、Multiplayer>Join via IP>キャラクター選択>IPアドレス入力 となります。
サーバーを建てたPCで接続するなら、IPアドレスにlocalhostと入力。
同じルーター内でサーバーを建てたPCと別の場合は、サーバーのPCのプライベートIPアドレスを入力。そのPCのプライベートIPアドレスは、
$ hostname -I
の、「192.168.~ 」みたいなやつです。
外部からの接続の場合は、ルーターのグローバルIPアドレスを入力。
グローバルIPアドレスは次のサイトで確認できます。
https://www.cman.jp/network/support/go_access.cgi
終わりに
以上で基本的なTShockのサーバー構築は終了です。
あとは自由にプラグインなどを入れて楽しんでください。
初めての投稿で参考になれば何よりです。
では、また。