最終更新: rin_jugatla 2023年05月11日(木) 01:23:48履歴
注意:専用サーバーは現在鋭意調整中です
6/22 にクラフトピアの専用サーバー(Dedicated Server)が実装されました。
記述時点では【まだ試験段階のもの】です。遊ぶことは可能ですが、作りかけのため思わぬバグに見舞われることがあります。
(現状では)サーバー設置・参加は自己責任の上でお願いします。
クリエイティブモード専用。モードの詳細はゲームモード参照
6/22 にクラフトピアの専用サーバー(Dedicated Server)が実装されました。
記述時点では【まだ試験段階のもの】です。遊ぶことは可能ですが、作りかけのため思わぬバグに見舞われることがあります。
(現状では)サーバー設置・参加は自己責任の上でお願いします。
クラフトピアの新しいマルチプレイ方式です。
ネット上にサーバーを設置し、ホスト不在の状態でもマルチプレイを行うことができます。
Steam版のみで、Xbox,Win10版の専用サーバーはありません。
専用サーバーはWindowsベースで実行することができますが、Linux版も開発が進んでいるようです(20211028にα-Edge対応で公開)
実証実験はされていませんが、ウェブサービスを利用しての24時間稼働のマルチプレイが行える…かもしれません。
内容はIP接続のマルチプレイと同等のものになっています。通常のマルチプレイ同様、島移動を行うとすべてのプレイヤーが移動を行います。
最大参加人数は128人です。
アクセス方法以外の基本的な内容はマルチプレイに準じます。そちらも参照してください。
ネット上にサーバーを設置し、ホスト不在の状態でもマルチプレイを行うことができます。
Steam版のみで、Xbox,Win10版の専用サーバーはありません。
専用サーバーはWindowsベースで実行することができますが、Linux版も開発が進んでいるようです(20211028にα-Edge対応で公開)
実証実験はされていませんが、ウェブサービスを利用しての24時間稼働のマルチプレイが行える…かもしれません。
内容はIP接続のマルチプレイと同等のものになっています。通常のマルチプレイ同様、島移動を行うとすべてのプレイヤーが移動を行います。
最大参加人数は128人です。
アクセス方法以外の基本的な内容はマルチプレイに準じます。そちらも参照してください。
専用サーバーには「IP接続」で接続することになります。
接続するためには専用サーバーのIPアドレスが必要です。Steamのフレンド登録は不要ですが、環境によって接続できないことがあります。
また、専用サーバー側はポート開放が必須となります。
セキュリティ上のリスクがあるため、理解しないで実行すると危険です。よく理解した上でサーバーを設置してください。
また、比較的不特定多数と遊ぶことになるため、サーバー主の定めたルールに従いましょう。
例えば以下のものが考えられます。
クラフトピアはバグ利用なども楽しければOKで許容されていますが、不特定多数の相手となるとそういうわけにもいきません。
お互いに気持ちよくプレイするため、ルールを守って遊ぶようお願いします。
接続するためには専用サーバーのIPアドレスが必要です。Steamのフレンド登録は不要ですが、環境によって接続できないことがあります。
また、専用サーバー側はポート開放が必須となります。
セキュリティ上のリスクがあるため、理解しないで実行すると危険です。よく理解した上でサーバーを設置してください。
また、比較的不特定多数と遊ぶことになるため、サーバー主の定めたルールに従いましょう。
例えば以下のものが考えられます。
- 禁止行為 (カカシなどのモブの大量設置、アイテムばらまき、特定魔法・スキル
(フロストマインなど)の使用禁止・・・など) - チート行為の是非 (アイテム増殖、MODの使用・・・など)
- 相手が不快に思う行為の禁止 (暴言、煽り、政治・宗教的主張をまき散らす・・・など)
クラフトピアはバグ利用なども楽しければOKで許容されていますが、不特定多数の相手となるとそういうわけにもいきません。
お互いに気持ちよくプレイするため、ルールを守って遊ぶようお願いします。
「マルチプレイ」で説明されているIP経由のゲスト接続と基本的には同じです。
- 参加するサーバーのバージョンの確認
専用サーバーはクライアントソフトと同様「安定版用」と「α版用」があります。
遊んでいるバージョンと同じサーバーを選んでください。
必要であればα版への移行を行ってください。逆にα版から安定版への移行は推奨されません(データが破損する恐れがあります) - バックアップの取得
マルチプレイは不安定なものであるのと併せて不安定な専用サーバーであるため、データの不具合が起こる可能性があります
必ずセーブデータのバックアップを取得しておいてください。 - サーバーのIPアドレスとポート番号を入手する
稼働中のサーバーのIPアドレスとポート番号を入手してください。
IP4形式の場合「192.168.1.1:5656」のような形になっています。(数値は適当です) - クラフトピアを起動し、「マルチ(試験運用中)」を選択する
- プレイヤーキャラクターを選択する
選んだプレイヤーキャラクターは直前の装備・持ち物を引き継ぎます(Terrariaと同様) - 「IP経由で参加する」を選択
- サーバーのIPアドレスとポート番号を入力し、「スタート」を押す。
入ってからデータの同期が完了し動けるようになるまで少し時間がかかります。
※ポート開放などセキュリティ上のリスクがあります。よく判らない人は避けておくのが無難です。
1.Steamを開き、「ライブラリ」から左上のコンボボックスを開き、「ツール」にチェックを入れます。
2.専用サーバーにも「安定版用」「α版用」の2種類があります。接続するクライアントと同じものを選択します。
選択方法はクライアントのバージョン変更方法と同じです。
3.「Craftopia Dedicated Server」を選択し、ダウンロードをします
4.ポート番号6587の解放を行っておきます。
詳細については「マルチプレイ」のIP経由のホストのやる内容を参照してください。
5.一回でも専用サーバーが実行されると、セーブデータのあるフォルダの1つ上に(C:\Program Files (x86)\Steam\steamapps\common\Craftopia Dedicated Server)にServerSetting.iniが生成されるはずです。必要に応じ内容を変更してください(平文のためメモ帳なので確認可能です)。
6.シングルプレイのデータで建てる場合は、セーブデータ下のデータを「C:\Program Files (x86)\Steam\steamapps\common\Craftopia Dedicated Server/DedicatedServerSave」下にコピーし、
1つ上の階層にあるServerSetting.iniの[Game]内のnameを使用するワールド名に変更しておきます。
7.Craftopia Dedicated Serverを実行し、ウインドウの文字が止まるまでしばらく待ちます。
8.これで専用サーバーは設置済です。GPU関係などでエラーが表示されることがありますが、無視してよいそうです。
設置されたサーバーに自分が接続する場合「localhost:6587」(ポート変更をしていない場合)で入ることができます。
1.Steamを開き、「ライブラリ」から左上のコンボボックスを開き、「ツール」にチェックを入れます。
2.専用サーバーにも「安定版用」「α版用」の2種類があります。接続するクライアントと同じものを選択します。
選択方法はクライアントのバージョン変更方法と同じです。
3.「Craftopia Dedicated Server」を選択し、ダウンロードをします
4.ポート番号6587の解放を行っておきます。
詳細については「マルチプレイ」のIP経由のホストのやる内容を参照してください。
5.一回でも専用サーバーが実行されると、セーブデータのあるフォルダの1つ上に(C:\Program Files (x86)\Steam\steamapps\common\Craftopia Dedicated Server)にServerSetting.iniが生成されるはずです。必要に応じ内容を変更してください(平文のためメモ帳なので確認可能です)。
6.シングルプレイのデータで建てる場合は、セーブデータ下のデータを「C:\Program Files (x86)\Steam\steamapps\common\Craftopia Dedicated Server/DedicatedServerSave」下にコピーし、
1つ上の階層にあるServerSetting.iniの[Game]内のnameを使用するワールド名に変更しておきます。
7.Craftopia Dedicated Serverを実行し、ウインドウの文字が止まるまでしばらく待ちます。
8.これで専用サーバーは設置済です。GPU関係などでエラーが表示されることがありますが、無視してよいそうです。
設置されたサーバーに自分が接続する場合「localhost:6587」(ポート変更をしていない場合)で入ることができます。
※SteamCMDは、Steamアプリのコマンドライン版です。Steamログインせずにダウンロードや実行を行うことが可能です。
全てコマンドによる操作のためPCに対するより深い知識が必要です。必要に応じてSteamアプリから専用サーバーを立ち上げることも検討しましょう。
(※環境がないためまた聞きです。誤りがあったら訂正・指摘をお願いします)
1.「SteamCMD.zip」を入手します
これはValveの公式サイトで配布されています。説明も詳細されていますが、英語です。
2.適当な箇所に解凍しておきます
ここでは例として以下の場所に展開したと仮定します
「D:\SteamServer\Craftopia\TestServer」
3.適当な名前のbatファイル作成します
「Steamcmd.exe」と同じ階層に配置します。内容は以下。
※コンソールを自動で閉じる場合はには、コマンドの実行部分の最後に「+quit」を追加します。
4. 3で作成したbatファイルを実行する
SteamCMDからサーバーファイルを自動でダウンロードします。
アップデートがあった場合にはbatファイルを実行することで更新されます。
5. 専用サーバーを起動させます
「D:\SteamServer\Craftopia\TestServer/server/Craftopia.exe」
全てコマンドによる操作のためPCに対するより深い知識が必要です。必要に応じてSteamアプリから専用サーバーを立ち上げることも検討しましょう。
(※環境がないためまた聞きです。誤りがあったら訂正・指摘をお願いします)
1.「SteamCMD.zip」を入手します
これはValveの公式サイトで配布されています。説明も詳細されていますが、英語です。
2.適当な箇所に解凍しておきます
ここでは例として以下の場所に展開したと仮定します
「D:\SteamServer\Craftopia\TestServer」
3.適当な名前のbatファイル作成します
「Steamcmd.exe」と同じ階層に配置します。内容は以下。
set rundmd=%~dp0 (このbatファイルのあるディレクトリを指す) set username=anonymous (SteamCMDのログインユーザー名) set password= (SteamCMDのログインパスワード anonymouseの場合は不要) set appid=1670340 (アップデートするサーバーのゲームID:Craftopia = 1670340) cd %runcmd% start /wait steamcmd +login %username% %password% +force_install_dir %runcmd%server\ +app_update %appid% validate※α版のものなどに切り替える場合には、コマンド実行部分に「-beta alpha-unstable」などの引数を追加します。
※コンソールを自動で閉じる場合はには、コマンドの実行部分の最後に「+quit」を追加します。
4. 3で作成したbatファイルを実行する
SteamCMDからサーバーファイルを自動でダウンロードします。
アップデートがあった場合にはbatファイルを実行することで更新されます。
5. 専用サーバーを起動させます
「D:\SteamServer\Craftopia\TestServer/server/Craftopia.exe」
※SteamCMDは、Steamアプリのコマンドライン版です。Linux版をダウンロードしてください。
全てコマンドによる操作のためLinuxサーバーに対する知識が必要です。必要に応じてWindows版やアプリからの実行も視野に入れてください。
Ubuntu20.04で動作確認がされており、以下はUbuntuでの例です。他の物の場合は適宜読み替えて使用してください。
(※環境がないためまた聞きです。誤りがあったら訂正・指摘をお願いします)
1.SteamCMDをインストールします。
2. SteamCMDを実行し、サーバーファイルをダウンロードします
「$ steamcmd +login anonymous password +app_update 1670340 -beta alpha-unstable-edge validate +quit」
(投稿段階ではαEdge版のみなので-betaオプションが付いています)
3. 専用サーバーを起動させます
「$ ".steam/steamapps/common/Craftopia Dedicated Server/Craftopia.x86_64"」
全てコマンドによる操作のためLinuxサーバーに対する知識が必要です。必要に応じてWindows版やアプリからの実行も視野に入れてください。
Ubuntu20.04で動作確認がされており、以下はUbuntuでの例です。他の物の場合は適宜読み替えて使用してください。
(※環境がないためまた聞きです。誤りがあったら訂正・指摘をお願いします)
1.SteamCMDをインストールします。
2. SteamCMDを実行し、サーバーファイルをダウンロードします
「$ steamcmd +login anonymous password +app_update 1670340 -beta alpha-unstable-edge validate +quit」
(投稿段階ではαEdge版のみなので-betaオプションが付いています)
3. 専用サーバーを起動させます
「$ ".steam/steamapps/common/Craftopia Dedicated Server/Craftopia.x86_64"」
専用サーバーのコマンドラインから「quit」を入力し、そのあと「yes」を入力します。
もしくは「Craftopia Dedicated Server」のウインドウの×ボタンで終了します。
もしくは「Craftopia Dedicated Server」のウインドウの×ボタンで終了します。
Steamアプリ版の場合【C:\Program Files (x86)\Steam\steamapps\common\Craftopia Dedicated Server\DedicatedServerSave】に存在しています。
存在しているバックアップファイルはローカルのものと同じで、「SaveBackup_h※.bac」「SaveBackup_m※.bac」です(※は数字)
「Savedata.osc」が最新のセーブデータになります。
また、ここにローカルのセーブデータを配置することで、ローカルのセーブデータで専用サーバーを立ち上げることが可能*1です。
専用サーバーのバージョンアップ時などはここのデータのバックアップを取得してください。
(Zipに固める、別の場所・メディアに保存しておくなど)
存在しているバックアップファイルはローカルのものと同じで、「SaveBackup_h※.bac」「SaveBackup_m※.bac」です(※は数字)
「Savedata.osc」が最新のセーブデータになります。
また、ここにローカルのセーブデータを配置することで、ローカルのセーブデータで専用サーバーを立ち上げることが可能*1です。
専用サーバーのバージョンアップ時などはここのデータのバックアップを取得してください。
(Zipに固める、別の場所・メディアに保存しておくなど)
コマンド | 記入例 | 解説 |
---|---|---|
help | help | サーバーコマンドの一覧を表示します |
list | list | 現在ログイン中のメンバーリストを表示します。 kickやbanのためのUserIDを取得できます |
kick | kick [userID] | 対象プレイヤーを強制ログアウトさせます 再入場は可能です |
ban | ban [userID] | 対象プレイヤーをIPアドレス単位でBANします Banlist.txtから削除 もしくは acceptしない限り再入場はできません。 |
ban-list | ban-list | BANを行ったIPアドレスの一覧を表示します |
accept | accept [IPアドレス] accept [BanID] | 指定されたIPアドレスもしくはBanID(BAN-Listによる)を再入場可能にします |
creative | creative | ゲームモードがクリエイティブの場合に変更できるコマンドリストを表示します クリエイティブモードでない場合は使用できません |
quit | quit | サーバーを停止させます。 停止前に本当に止めるか聞いてくるので[yes]を入力する必要があります |
コマンド | 記入例 | 解説 |
---|---|---|
current | creative current | 現在のクリエイティブ設定の確認 |
quickCraft | creative quickCraft [on/off] | クイッククラフト(素材なしクラフト)のOn/Off |
ageLevel | creative ageLevel [1〜7] | 現在の時代レベル変更 |
islandLevel | creative islandLevel [0〜10] | 現在の島レベルの変更(8以上は無効) |
noDeath | creative noDeath [on/off] | 不死モードのon/off |
noDamage | creative noDamage [on/off] | 無敵モードのon/off |
noHunger | creative noHunger [on/off] | 満腹モードのon/off |
infinitStamina | creative infinitStamina [on/off] | 無限スタミナモードのon/off |
forceDayTime | creative forceDayTime [-1〜24] | ゲーム内時間、1時間単位で設定可能。 -1では変更しない |
buildingIgnoreDamage | creative buildingIgnoreDamage [on/off] | 建物ダメージのOn/Off |
noBuild | creative noBuild [on/off] | ホスト以外建築不可のOn/Off 専用サーバーだと「ホスト=サーバー」なので建築が不可能になる |
player level | creative player level [0〜55] | 入場時のプレイヤーレベル |
player health | creative player health [0〜9999] | 入場時のプレイヤーの最大ライフ |
player mana | creative player mana [0〜9999] | 入場時のプレイヤーの最大マナ |
player stamina | creative player stamina [0〜9999] | 入場時のプレイヤーの最大スタミナ |
player money | creative player money [0〜9999999999] | 入場時の所持金 |
player skillPoint | creative player skillPoint [0〜999] | 入場時のスキルポイント |
player enchantPoint | creative player enchantPoint [0〜9999] | 入場時のエンチャントポイント |
可能ですが手動での設定が必要です。
セーブデータをDedicatedSeverSave*2の直下にコピーし、
1つ上の階層にあるServerSetting.iniで[GameWorld]のnameを遊びたいワールド名に変更すれば読み込みが可能です。
セーブデータをDedicatedSeverSave*2の直下にコピーし、
1つ上の階層にあるServerSetting.iniで[GameWorld]のnameを遊びたいワールド名に変更すれば読み込みが可能です。
このページへのコメント
サーバーコマンドが若干変わってる?
quit → stop
| 投稿段階ではαEdge版のみなので-betaオプションが付いています
安定版にリリースされたのでコマンドの修正をお願いします(外国人がここを見て間違えてalpha-edge入れてました)
また、一度alphaやalpha-edgeを入れてから安定版を入れる場合は-beta publicが必要になります
参考)discord.com/channels/505994577942151180/736809727161401367/933775446896705556
.steam/steamapps/common/Craftopia Dedicated Server/Craftopia.x86_64
↑
を実行しても
Craftopia.x86_64: command not found
ってなってしまうのなんでなんだろう。
CentOS7でファイルパスは間違えてないんだが。。
ファイルパスの前後に「"」はつけているでしょうか。ダブルクォーテーションが漏れているかもしれませんので確認してみて。
冬アプデ(12/15版)でセーブデータや設定ファイルの場所が変わりました。
SteamツールでもCMDでも以下のエラーが発生。
解決方法は不明。サーバー用のPCだしグラボはローエンド(Geforce GT710)使ってるからそれが原因なのか。
対策方法を調べてみます。
ERROR: Shader UI/Default shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
訂正。Steamツールのほうでは正しくは以下のエラーでした。
ERROR: Shader Legacy Shaders/Particles/Alpha Blended Premultiply shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
あとCMDもSteamツールどちらでも無事サーバーにログインができ、解決しました。
GPUとかシェーダー系のエラーは出ますが、しばらく待てばいいだけでした。
SaveManager - SaveGameData End
が出たらサーバーの起動に成功している模様。
ポート開放はUDPだけでOK。TCPは不要です。
ゲームクライアントとdedicatedサーバーを同PC上で動かす必要がある場合、ローカルIPアドレス:ポート番号でログインできます。