Core KeeperのサーバーをLinuxで建てる

アドベンチャーゲーム「Core Keeper」のサーバーをLinuxで構築したので、立て方を備忘録として残します。

サーバー環境

  • Ubuntu 22.04
  • Core Keeper v1.0.0.1
  • CPU: 3コア
  • メモリ: 2GB(スワップ領域 2GB)
  • SSD: 100GB

Dockerのインストール

Dockerを使えばサクッと構築できるので、インストールします。  

Install Docker Engine on Ubuntu | Docker Docsを実施してください。

Core Keeper Dedicated Serverの導入

有志が公開しているDockerイメージ「Core Keeper Dedicated Server」を使います。

まずはgit cloneします。

1
2
3
git clone https://github.com/escapingnetwork/core-keeper-dedicated.git

cd ~/core-keeper-dedicated/docker-compose-example

core.envの編集

docker-compose.ymlとcore.envを編集します。 GAME_IDは未指定だと自動で生成されるようです。(Y,y,x,0,Oを除く半角英数字28文字以上の文字列を記載する必要があります。)
WORLD_NAMEは好きなワールド名を記載します。
WORLD_SEEDはワールドのシード値を記載します。0だとランダムに生成します。
MAX_PLAYERSで同時接続ユーザー数を制限できるようです。
DISCORDに生成したGAME_IDの通知を送る場合は、DISCORD_HOOKを指定します。

1
2
3
4
5
6
7
8
9
GAME_ID=
WORLD_INDEX=0
WORLD_NAME=Core Keeper Server
WORLD_SEED=0
MAX_PLAYERS=10
DATA_PATH=/home/steam/core-keeper-data
DISCORD=1
DISCORD_HOOK=
SEASON=0

docker-compose.ymlの編集

これはやらなくても構いませんが、docker volumeを使いたくなかったので変更しています。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
services:
  core-keeper:
    image: escaping/core-keeper-dedicated
    volumes:
      - ./server-files:/home/steam/core-keeper-dedicated
      - ./server-data:/home/steam/core-keeper-data
    env_file:
      - ./core.env
    restart: always
    stop_grace_period: 2m

Windowsのデータをサーバーへ移植

Windowsのローカル環境で遊んでいたワールドデータをサーバーに移植します。
新規ワールドで始める場合は不要な手順となります。

Windows版Core Keeperを起動し、メニュー画面で ctrl + alt + b を押下します。
するとデスクトップにバックアップデータが作成されます。
このzipファイルを解凍し、scpでサーバーへ転送します。
転送したら、サーバー上の ~/core-keeper-dedicated/docker-compose-example/server-data 配下に移します。

サーバーの起動

docker compose up -d を実行し、起動します。
GAME_IDの確認方法は docker compose logs |grep "Game ID" です。Windows版Core KeeperからGAME_IDでゲームに参加できれば完了です。   サーバーの停止は docker compose down を実行してください。

注意事項

Core Keeperは1分おきにデータをセーブする挙動らしく、サーバー停止に2分ほどかかります。
docker compose down を押した後に、 ctrl + c で強制的に停止できますが、セーブデータが巻き戻る可能性があります。
サーバー運用時には注意が必要です。

また、メモリ2GBでサーバーは動作しましたが、4GBくらいあるとより快適に動作するかもしれません。

1
2
3
4
$ free -h
               total        used        free      shared  buff/cache   available
Mem:           1.9Gi       1.4Gi       179Mi       0.0Ki       341Mi       365Mi
Swap:          2.0Gi       999Mi       1.0Gi

それではよき探検家ライフを。

comments powered by Disqus
Built with Hugo
テーマ StackJimmy によって設計されています。