日光サイクル調整アドオン

DCAサムネイル-c6292379
スポンサーリンク

日光サイクル調整アドオン / Day Cycle Adjust Add-On


“日光サイクル調整アドオン”はMinecraft: Bedrock Edition ( マインクラフト 統合版 ) 用アドオンです。
このアドオンを導入するとゲーム内の日光サイクルを24時間に変更します。
※日光サイクルを現実時刻と同期するアドオンとは異なります。

アドオンの特徴

  • 操作いらず導入するだけで日光サイクルを24時間に変更
  • 時計(minecraft:clock)を持つと時刻を24時間表記で表示
  • ベットによる夜のスキップが可能(バニラと挙動が異なります。)
  • ゲームルール`playerssleepingpercentage`に対応
  • チートコマンドによる時刻の調整および24時間以外の日光サイクル調整に対応
    • ※チートコマンドを使用するにはチートコマンドが有効である必要があります
  • 内部時刻をスコアボードから参照が可能
  • バイブランドビジュアルに対応
  • 実験的機能が不要
サバイバルプレイ向けに以下の特徴があります。
  • チート不要
  • 実績対応

対応言語

  • 日本語[ja-JP](基準)
  • 英語[en-US](機械翻訳)

開発目的

このアドオンはゲーム内で鉄道ごっこをするときに通常の日光サイクルでは早すぎ、無効にするのも何か違うと思い開発しました。
24時間にするだけならコマンドだけでもできますし似たようなアドオンは既にありますが開発するにあたって秒まで時刻の確認ができることとベッドで夜がスキップできること時刻をスコアボードを通じてコマンドに反映できることを目的に開発しました。
開発中にクリエイティブで鉄道ごっこするだけでなくサバイバルプレイでも使用できるよう機能を追加しました。

動作環境

本アドオンが動作する環境です。ゲームバージョンを除いては基本的にはどの環境でも動作するはずです。ただ未検証のものに関しては動作報告していただけると幸いです。

最小ゲームバージョン

Minecraft: Bedrock Edition 1.26.20

プラットフォームの種類

  • パソコン(Desktop):対応(テスト環境)
  • スマートフォン・タブレット(Mobile):未検証
  • ゲーム機(Console):未検証 ※直接導入不可 

入力の種類(操作方法)

  • キーボードとマウス(KeyboardAndMouse):対応(テスト環境)
  • ゲームパッド(Gamepad):未検証
  • タッチ操作(Touch):未検証
  • モーションコントローラー(MotionController):未検証

サーバーメモリーティア

  • SuperHigh ( 8GB ~ ):対応(テスト環境)
  • High ( 4 ~ 8GB ):未検証
  • Mid ( 2 ~ 4GB ):未検証
  • Low ( 1.5 ~ 2GB ):未検証
  • SuperLow ( ~ 1.5GB ):未検証
※動作の重さはプレーヤー数やシミュレーションチャンク数にも依存します。

クライアントメモリー

  • SuperHigh ( 8GB ~ ):対応(テスト環境)
  • High ( 4 ~ 8GB ):未検証
  • Mid ( 2 ~ 4GB ):未検証
  • Low ( 1.5 ~ 2GB ):未検証
  • SuperLow ( ~ 1.5GB ):未検証

※動作の重たさは描画設定にも依存します。

プレイ環境

  • シングルプレイ:対応(テスト環境)
  • マルチプレイ
    • LAN/オンライン:未検証
    • 専用サーバー:未検証
    • Reamls:未検証

競合の可能性

本アドオンがほかのアドオン・ビヘイビアパック・コマンドと競合の可能性がある要素は以下の通りです。
  • 日光サイクルの無効化
    • サイクルの調整が有効な場合`dodaylightcycle`をfalseにします。
    • 時刻と同期するビヘイビアは正しく動作しなくなります。
      • ネコのギフトは発生しません。同じビヘイビアを使用するMobも同様です。
      • 村人の取引リストの補充が遅くなります。
  • 時刻の操作
    • サイクルの調整が有効な場合一定時間ごとに時刻を操作します。
      • time addやtime set で設定しても次のtickで上書きします。この時時間経過がおかしくなりますので注意してください。
  • プレーヤーのアクションバーの使用
    • 時計を持っているとき時刻をアクションバーに表示します。

利用規約とライセンス

本アドオンを利用するには以下の以下項目に同意してください。
  • 本アドオンの使用にあってはMinecarftブランドを含むため”Minecraft使用ガイドライン“を遵守してください。
  • アドオン(`ksl_dca.mcaddon`および含まれるビヘイビアパック・リソースパック)は MIT ライセンスにて配布します。(MITライセンスの日本語ひな形)
    • 正式なライセンス文(英語)はビヘイビアパック・リソースパック内にあります。
    • 相反する部分はMinecraft使用ガイドラインを優先します。
  • 本アドオンについて言及する場合は著作者誤認を防止するために作品名と著作者このページのURLリンクを記載することを推奨します。

記載例

"日光サイクル調整アドオン 著作者:カズシロン(kazushilong) https://minecraft-mcworld.com/226690/"

免責事項

本アドオンは使用にあたって生じたワールドの不具合に関して保証しません。
また他アドオンとの組み合わせは自己責任でお願いいたします。
その他の免責事項に関してはMITライセンスに定義されるものとします。
本アドオンはMinecraft の公式の製品ではありません。Mojang または Microsoft から承認を受けておらず、それとの関連性もありません。
「Minecraft」は Mojang Synergies AB の商標です。

アドオン導入ガイド

  1. 利用規約とライセンスに同意した上で下のダウンロードボタンを押してダウンロードしてください。
  2. Windowsの場合はダウンロードした`ksl_dca-xxxxxxxx.mcaddon`(xxxxxxxxは8桁の乱数)をダブルクリックしMinecraftにインポートしてください。Android、iOSの場合は”Minecraft: Bedrock Edition でのアドオンのインストール“をご覧ください。ゲーム機への導入はできません。サーバー環境への導入方法は各サーバにあったものを自分でお調べください。コメントで質問されてもお答えできません。
  3. インポート完了後導入したいワールドの設定画面を開きます。既存のワールドに導入する場合はバックアップを取ることをお勧めします。
  4. ビヘイビアパックの購入済の中から日光サイクル調整アドオンを選択し有効化してください。
  5. リソースパックを開き日光サイクル調整アドオンが有効化されているか確認してください。
  6. ゲームモードやその他設定をしてください。本アドオンを使用する分にはチートや実験的要素は不要です。
  7. ワールドを開きチャット欄に`/ksl_dca:daycycle-query`コマンドを入力して実行してください。
  8. Enabled:true Adjust time :x/1728000`と出れば導入完了です。※xは0以上

アドオン解説

機能

時計による時刻表示

時計(minecraft:clock)をメインハンドに持つと時刻を24時間表記でアクションバーに表示します。

ベッドによる夜のスキップ

従来通り睡眠可能な時間や天候が雷雨のときベッドに寝ることで翌日の6:00に時間が進みます。

ゲームルール`playerssleepingpercentage`に対応しているのでスキップするのに寝ている必要があるプレイヤーの割合を設定できます。

カスタムコマンド

ksl_dca:daycycle-query

日光サイクル調整の状態を確認します。

有効化どうか、現在のtickカウンター/tickカウンターサイクルを実行者のチャットに表示します。

tickカウンターは0から始まりサイクルに達すると0にリセットされます。

時刻はtickカウンターが0の時6:00時になります。カウンターの値を現在時刻に直すには以下の式を利用します。

時刻[s]=((tickカウンター / tickカウンターサイクル) × 86400s(24h) + 21600s(6h)) mod 86400s(24h)

権限レベル:0(Any)

チート:不要

構文:ksl_dca:daycycle-query

返り値:常に成功

ksl_dca:daycycle-enable

日光サイクル調整の有効/無効を確認または設定します。

権限レベル:1(GameDirectors)

チート:必要

構文:ksl_dca:daycycle-enable [enable: Boolean]

引数:value: Boolean 任意

日光サイクル調整有効/無効に設定します。省略した場合は現在の値を参照します。

有効にした場合実行後はtickカウンターは現在のゲーム時間相当の値からスタートします。

有効な場合tickサイクルとtickカウンターからゲーム時間が相当する時刻になるよう調整されます。

返り値:常に成功

ksl_dca:daycycle-add

tickカウンターに指定した値を追加して時刻を変更します。

権限レベル:1(GameDirectors)

チート:必要

構文:ksl_dca:daycycle-add <amount: Integer>

引数:amount: Integer 必須

指定した値をtickカウンターに追加します。マイナスの値を設定すると時刻が戻ります。

追加したい秒数をtickに直すには以下の式を利用します。

指定するtick=追加したい秒数 / 86400s(24h) × cycleTick 少数切り捨て

返り値:常に成功

ksl_dca:daycycle-set

tickカウンターに指定した値を設定して時刻を変更します。

権限レベル:1(GameDirectors)

チート:必要

構文:ksl_dca:daycycle-set <amount: Integer>

引数:amount: Integer 必須

指定した値にtickカウンターを変更します。0未満はエラーになります。

指定したい秒数をtickに直すには以下の式を利用します。

指定するtick=((cycleTick×(指定したい秒数-21600s(6h)) / 86400s(24h) ) mod cycleTick 少数切り捨て

返り値:0未満はエラー・それ以外成功

ksl_dca:daycycle-cycle

tickカウンターサイクルに指定した値を設定してtickカウンターのサイクルを変更します。

権限レベル:1(GameDirectors)

チート:必要

構文:ksl_dca:daycycle-cycle <amount: Integer>

引数:amount: Integer 必須

指定した値にtickカウンターサイクルを変更します。1未満はエラーになります。

初期値は1728000に設定されています。24時間=84600秒=1728000tick
任意周期に設定する場合は秒数を20倍してtickになおした値を設定してください。
実行後はtickカウンターは現在のゲーム時間相当の値からスタートします。

返り値:1未満はエラー・それ以外成功

連携要素

本アドオンは内部時間をスコアボードに書き出します。これによってコマンドから内部時間を参照可能です。このスコアボードは一方的に上書きされるため操作しても日光サイクル調整には影響がありません。

日光サイクル調整有効/無効

スコアボードオブジェクト:ksl_dca:dca_enabled

プレーヤー名:#ksl_dca

値:0:無効/1:有効

tickカウンター

スコアボードオブジェクト:ksl_dca:dca_tick

プレーヤー名:#ksl_dca

値:現在のtickカウンターの値

tickcycleカウンター

スコアボードオブジェクト:ksl_dca:dca_cycle

プレーヤー名:#ksl_dca

値:現在のtickサイクルカウンターの値

使用例

日光サイクル調整が有効な場合何かするとき
/execute if score "#ksl_dca" ksl_dca:dca_enabled matches 1 run <コマンド>
指定範囲の時間で何かするとき

サイクルが1728000で12:00~12:10の間で何かするとき

/execute if score "#ksl_dca" ksl_dca:dca_tick matches 432000..444000 run <コマンド>

開発情報

更新履歴

v1.0.0 2026/5/26

新規公開

既知の不具合

カスタムコマンドの説明文や一部の実行結果が英語でしか表示されない。

  • 発生する環境
    • アドオンバージョン:1.0.0以上
    • ゲームバージョン:1.26.20以上
    • プレイ環境:すべて
  • 原因
    • カスタムコマンドが翻訳キーに対応していないため仮で英語で出力しているからです。
      実行結果の一部が翻訳されているのは変数を含まない翻訳キーはそのまま出力することで暗黙に変換されているためです。
  • 対応
    • カスタムコマンドが翻訳キーに対応したら修正します。

daycycle-setまたはdaycycle-addを実行すると太陽の位置の反映に遅延が生じることある。

  • 発生する環境
    • アドオンバージョン:1.0.0以上
    • ゲームバージョン:1.26.20以上
    • プレイ環境:すべて
  • 原因
    • world.setAbsoluteTime()は即時クライアントと同期しない時がある。日付がもどる場合は数秒から十数秒遅延することがあります。
  • 対応
    • サーバー内部AbsoluteTimeの時間は即時変更されるため動作に支障がないため修正しません。

夜にネコと一緒に寝ることはできますがギフトをくれません。

  • 発生する環境
    • アドオンバージョン:1.0.0以上
    • ゲームバージョン:1.26.20以上
    • プレイ環境:すべて
  • 原因
    • 原因はdodaylightcycleがfalseの場合はギフト動作は動作しないためです。
  • 対応
    • アドオンのシステム上対応不可なので修正しません。

コンテンツログ

本アドオンはデバッグのためコンテンツログに一部情報を出力します。有効にしている方はご了承ください。

今後の開発

実装したい機能については現時点ですべて実装できているので機能追加する予定はありません。
バグやゲームのバージョンアップによる修正は行っていきます。

動作報告やバグ報告について

可能であれば動作環境をそえて具体的に報告をお願いします。

動作環境は以下の項目があれば助かります。

  • アドオンのバージョン
  • ゲームのバージョン
  • プラットフォーム名または機種名
  • 入力の種類(操作方法)
  • シングルプレイかマルチプレイか

バグ報告に関しては既知の不具合に関連しないもの再現性のあるものに関してのみ受け付けます。私の環境で再現できないものは修正できませんのでご了承ください。

申し訳ありませんが私の環境がないためプラットフォームに起因するものと入力の種類に起因するものに関してはパソコンでキーボードとマウス以外のものとマルチプレイに起因するものは修正できません。

コメント返信について

コメントはログインユーザーのみ許可しています。

コメントについては一通り確認しますが私の判断で不要と思ったものには返信しません。

また返信する場合でも一週間以上時間がかかる場合がありますご了承ください。


長文失礼しました。本アドオンを楽しんでいただけると幸いです。

スポンサーリンク
ダウンロード
(mcpack/mcaddon) [DL:0]
※投稿記事に含まれるファイルやリンクにより発生した被害についてクラフターズコロニーは責任を取りません
投稿通報

コメント

コメント通報

通報するにはログインする必要があります