Offline World Time — 誰もいない間もワールド時間を進める(当サイト作者の自作MOD)
最後の 1 人が抜けると止まるワールド時間を、無人の間も進める。ブラッドムーンまでの日数と作物の成長が止まらなくなる。サーバー側だけで動く。
詳細解説
これは当サイトの運営者(toshi dev)が作った MOD です。
何を解決するか
バニラでは最後のプレイヤーが抜けた瞬間にワールド時間が止まる。 その結果、無人のサーバーではブラッドムーンまでのカウントダウンも作物の成長も進まない。
数日ぶりにログインしても、世界は出ていったときのまま。参加型サーバーで「次のホードナイトは何日後」という話をしていても、誰も入っていない時間はカウントされない。
この MOD は無人の間だけ時間を進める。
設計で気をつけたこと
プレイヤーが接続している間は何もしない。 バニラの進行には一切触れない。加速させるのではなく、止まっていた分を動かすだけ。
速度はサーバー自身の DayNightLength 設定から取る。 無人でも有人と同じ速さで進むため、誰かがログインした瞬間に時間が飛ぶことがない。
端数のティックをフレーム間で持ち越す。 切り捨てにすると長時間の放置で少しずつ遅れが溜まる。これを避けるため、小数部分を繰り越している。
動作確認
75 個の MOD を読み込んだ Linux 専用サーバーで検証している。
DayNightLength=60 の設定で、実時間 3 分に対してゲーム内 78 分が経過
(理論値 72 分)
サーバーサイドのガードを外したビルドと同じ結果になることも確認しており、ガードが進行を壊していないことの裏付けになっている。
導入条件
| 項目 | |
|---|---|
| ゲームバージョン | V3.0 / V3.1 |
| EAC | 無効化が必須(Harmony を使うコード MOD) |
| Harmony | V3 に同梱の 0_TFP_Harmony を使う。他の MOD は不要 |
| 導入先 | サーバーのみ。参加者は何も入れない |
シングルプレイでも動く(その場合は自分がサーバーであるため)。
起動確認と設定
サーバーのログに次の行が出れば読み込まれている。
initialized (speed x1)
無人時の速度は環境変数 OWT_SPEED で変更できる。
| 値 | 挙動 |
|---|---|
1 |
有人時と同じ速度(既定) |
2 |
2 倍速 |
0 |
無効 |
導入方法
ZIP を展開し、OfflineWorldTime フォルダをサーバーの Mods フォルダへ入れてサーバーを再起動する。EAC を無効にして起動する。 参加者側の導入は不要。無人時の速度を変えたい場合は環境変数 OWT_SPEED を設定する。
スクリーンショット
スクリーンショットは準備中です
ユーザー Tips
Offline World Time に関する Tips やアドバイスの投稿機能は準備中です。
将来的に Firebase Auth と連携して実装予定