01ファイル、所有者、更新
特に断らない限り、パスは config/healthy_diet/ からの相対パスです。データパック項目は data/<名前空間>/healthy_diet/ にあります。ファイル、スコープ、フィールドでフィルタできます。
| ファイル / ディレクトリ | スコープ | 役割 | 一般的な更新方法 |
|---|---|---|---|
server.json | サーバー権威 | ゲームルール、プライバシー、保存期間スタック統合、テストログ | OP ゲームプレイ画面または /hdreload |
display.json | ローカルクライアント | ツールチップレイアウト、温度単位、既定表示モード | クライアント画面で保存。手動編集後はクライアント再起動 |
colors/color_schemes.json | 両側 / 外観 | グループ、品質、ツールチップ、スキームが参照する名前付きグラデーション | サーバーで /hdreload。ローカルクライアントファイルは別途再読み込み |
colors/solid_colors.json | 両側 / 外観 | エディターのカラーピッカー用パレット | サーバーで /hdreload。クライアントローカルは別途更新 |
fatigue/fatigue_gradient.json | 外観 | 食べ飽き/回復行の色とアニメーション | /hdreload |
fatigue/fatigue_exempt.json | サーバーゲームプレイ | 他の食べ物による回復カウントから除外するアイテム ID | /hdreload |
shelf_life/seasons.json | サーバーゲームプレイ | 季節ごとの腐敗倍率。Ecliptic Seasons なし時のフォールバック | /hdreload |
shelf_life/schemes/*.json | 同期表示 | 保存期間テンプレート、色、季節名 | /hdreload とクライアントへのスキーム送信 |
temperature/block_heat.json | サーバーゲームプレイ | LSO ワールド温度分岐を使わない場合のブロック熱ルール | /hdreload または温度画面の保存 |
temperature/weather_offsets.json | サーバーゲームプレイ | 24節気ごとの雨/雪・雷のオフセット | /hdreload または温度画面の保存 |
temperature/day_night_offsets.json | サーバーゲームプレイ | 24節気ごとの正午/深夜オフセット | /hdreload または温度画面の保存 |
temperature/season_temperature.json | サーバーゲームプレイ | 節気ごとの追加環境温度オフセット(EC 気候の上に加算) | /hdreload または温度画面の保存 |
bottle_fills.json | サーバーゲームプレイ | 液体水源への右クリック消費と出力 | /hdreload |
fog_effects.json | ローカルクライアント | 設定効果に応じた水中/溶岩の霧距離 | ローカルクライアントファイルを再読み込み。サーバーリロードではない |
item_rarities.json | サーバー / 同期 | アイテムレベルのフォールバックレアリティ ID | /hdreload。/hdset rarity も更新する |
tooltip_templates.json | エディターローカル | ローカルツールチップ行テンプレート | エディターがローカルインスタンスを読み書き。グローバルクライアント同期ではない |
quality_registry/*.json | 起動時登録 | 新しいアイテム ID、ソース、モデル、品質、食用動作、スタック上限 | ID の追加/削除は両側を再起動 |
datapack/data/<ns>/healthy_diet/ | ワールドデータパック + HD オーバーレイ | items / tooltips / blocks / nutrition_* / quality_levels / rarities / effect_lines | ワールドパックはバニラ /reload、HD オーバーレイは /hdreload |
config/healthy_diet/items/ にコピーしても、現在のアイテム定義にはなりません。02server.json:サーバー権威セクション
1つのファイルに gameplay、privacy、shelfMerge の3セクションがあります。旧来の別ファイルはこのファイルへ移行され、migration_backup/ に移動します。
| フィールド | 新規ファイルの既定値 | 動作 |
|---|---|---|
shelfTemperatureEnabled | false | 保存期間と温度のマスタースイッチ。オフ時は劣化、温度/鮮度、期限切れ産物とコマンド、温度拒否、温度帯効果、関連ツールチップ行を停止します。既存アイテムデータは保持され、停止期間は遡って加算されません。 |
lsoIntegrationEnabled | true | hd:shelf が LSO ワールド環境全体を読むことを許可します。他の LSO 互換機能は無効にしません。 |
ecIntegrationEnabled | true | EC 気候と HD 季節腐敗倍率の直接利用を許可します。LSO が既に提供する EC データは変更しません。 |
proxyHeatstrokeEffect | true | サーバーが5秒ごとに確認し、LSO の熱中症を EC の熱中症へミラーしてぼかし効果を出します。ソースがない、または免疫がある場合は削除します。 |
bonusUpdateTicks | 100 | 属性ボーナスの更新間隔(1–1,728,000 tick、既定約5秒)。 |
effectUpdateTicks | 200 | ポーションボーナスの更新間隔(1–1,728,000 tick、既定約10秒)。 |
ejectIllegalProtectedItems | false | 未信頼の所持者が保護アイテムを持つ場合、true は足元にドロップし、false はその場で凍結して警告します。既定は誤分類によるアイテム喪失を避けます。 |
removeOwnerOnDeathDrop | false | true はすべての死亡ドロップの保護を解除します。false は元々持ち主のないドロップだけに死亡者 UUID を設定し、既存の持ち主を保持します。 |
debugLogs | false | ブロック右クリックと設置/分割食品のサーバー診断ログ。/hdreload で再読み込みし、調査後に無効化してください。 |
privacy.sendCommandTextToAllPlayers | false | 既定では OP4 だけがステージコマンドテキストを受け取ります。true は実行権限を変えずに全ステージ設定を非 OP プレイヤーへ送ります。 |
shelfMerge.mergeRemainingMinutes | 5 | スタックを許可する残り時間差の最大値(1–1,440分)。 |
shelfMerge.mergeTempThreshold | 10.0 | スタックを許可するアイテム温度差の最大値(0–100℃)。NaN 差は無視されます。 |
shelfMerge.mergeColdFreshThreshold | 20.0 | スタックを許可する冷鮮度差の最大値(0–100)。 |
/hdreload してください。読み取り専用ファイルの場合、保存は失敗し、メモリ上の権威値は変わりません。03display.json:クライアントローカル設定
ローカル外観と編集既定値はサーバーゲームプレイ同期の対象ではありません。サーバールールは server.json → gameplay にあります。
| フィールド | 新規ファイルの既定値 | 動作 |
|---|---|---|
nutritionPerLine | 6 | 通常ツールチップの栄養/条件項目の最大数。超えると省略記号で切り捨て。1は最初の項目だけを意味し、1行1項目ではありません(1–100)。 |
titleproWrapWidth | 1000 | TitlePro タイトルの折り返し幅(ピクセル、1–100,000)。 |
defaultConditionalGainEnabled | true | 新規条件ルール草稿の「実際の増加」既定選択。保存済みルールの実行時スイッチではありません。 |
infoGapWidth | 20 | D モードで左テキストと右寄せ内容の間の固定余白(0–100,000)。 |
maxInfoWidth | 320 | D 情報パネルの最大幅。S 詳細表示はこの制限を受けません(0–100,000)。 |
showUnifiedPotionStyle | false | ポーションスタイルのマスタースイッチ。false はアイテムと既定の強制統一選択をバイパスします。 |
enableEnchantmentInfo | true | 翻訳キーがある場合、D モードでエンチャント本の説明を自動表示します。 |
enablePotionInfo | true | D モードのバニラ/HD/外部効果、統一属性、LSO 渇き情報ブロックを制御します。通常のコンパクト効果、温度帯効果、JEI/カスタム D テキスト、エンチャント説明は残ります。 |
hideSystemPrefixes | false | HD が生成する行頭記号と余白だけを隠します。カスタム名、インライン区切り、セグメントテキストは隠しません。 |
temperatureUnit | celsius | このクライアントのツールチップ/HUD 用に celsius または fahrenheit。保存設定とエディターは摂氏のまま。無効値は摂氏へフォールバック。 |
temperatureUnitChosen | false | このクライアントが温度単位を明示選択したか。ローカル初回プロンプト状態。 |
groupLocalizePrompted | false | 内蔵グループ名翻訳に関するローカル OP プロンプト状態。共有設定ではありません。 |
defaultEffectsShiftOnly | false | 新規ポーション行の既定表示:常時 vs Shift のみ。既存行は各自の選択を保持します。 |
defaultForceUnify | false | 新規効果行の強制統一初期選択。アイテムに既にツールチップ設定/データパック項目がある場合のみ適用。 |
defaultFoodBarDisplayMode | always | always / shift / info / off。off はバニラの食料値行へフォールバック。未設定アイテムと新規行に影響します。 |
廃止されたパネルオフセット/幅とテキストシャドウフィールドはこのファイルに含まれません。_note_* は読み取り専用ヘルプです。クライアント画面で保存すると即時反映され、手動編集後はそのクライアントを再起動してください。
04栄養データパック:グループ、ステージ、ボーナス
data/<名前空間>/healthy_diet/ 配下は nutrition_groups/<groupId>.json(グループ定義1件)、nutrition_stages/<groupId>.json(ステージ + hideAutoBonus)、nutrition_bonuses/<groupId>.json(メモ + ボーナス)です。HD オーバーレイは config/healthy_diet/datapack/ に置き、ファイル名はグループ ID です。最大64グループ。
グループフィールド
| フィールド | 既定値 | 説明 |
|---|---|---|
displayName | Group | UI/ツールチップに表示するグループ名。内蔵既定にはローカライズ名があります。 |
nutritionSymbol | Ψ | 栄養行の接頭辞。空欄は既定値 + スペースへフォールバック。 |
order | 0 | 昇順の表示順。同値はグループ ID で決まります。 |
color / colorStyle | #FFFFFF / null | 16進単色またはスキームキー。style はスキームの dynamic/nameStyle/speed/steps/waveStep/pulseDelay/reversals/bold/italic/underlined を制御し、単色では無視されます。 |
decayRate | 6.0 | 消費した満腹度1ポイントごとに栄養を 1/decayRate 減らします。0以下は自然減少を無効化。 |
icon | empty | 任意のアイテムアイコンリソース。空欄は UI フォールバック。 |
initialValue | 0 | 新規プレイヤーまたは新規追加グループの初期値、0–100。 |
gainMultiplier | 1 | 食べ物の正負変化に掛けます。0 可。負/非有限値は1へフォールバック。最終値は0–100にクランプ。 |
enabled | true | 無効化すると全プレイヤーで非表示/凍結し、減少、条件、ボーナスを停止します。 |
requiredPlayerTag | empty | 必要なプレイヤースコアボードタグ(完全一致)。空欄は制限なし。アイテム/ブロックタグではありません。 |
requiredModId | empty | 必要なロード済みサーバー MOD ID。空欄は制限なし。 |
nutritionTipColors | generated | 4スロット:通常/条件 × 増加/減少。カスタマイズは増加がグループ名色に従うかを制御します。 |
ステージとボーナスフィールド
| フィールド | 既定値 | 説明 |
|---|---|---|
stages[].min/max | 0/100 | 両端を含む整数境界。判定前に現在値を四捨五入。隣接ステージは重複も空白も不可。 |
stages[].label/tooltip/commands | empty / [] / [] | 任意のタイトル、追加ホバー行、設定済みステージコマンド。コマンドテキストは privacy が許可しない限り OP4 にだけ送信されます。 |
hideAutoBonus | false | true の場合、このグループの全ステージツールチップで自動範囲タイトルとボーナスプレビューを抑制します。 |
remark | empty | エディター一覧のラベル。空欄はファイル名。計算には影響しません。 |
bonuses[].conditions | {} | グループ ID → {min,max}。複数条件は AND。 |
bonuses[].attributeBonuses[] | [] | attribute(既定 max_health)、operation add/multiply_base/multiply_total(既定 add)、value。 |
bonuses[].effectBonuses[] | [] | effect ID、level(0=I)、duration tick(既定200)、showParticles(既定 false)。 |
05アイテム、ツールチップ、ブロック、品質
データパックディレクトリ:items/<itemPath>.json、tooltips/<itemPath>.json、blocks/<blockPath>.json、quality_levels/<id>.json、rarities/<id>.json、effect_lines/<effectId>.json。アイテム/ツールチップ項目は .json.disabled に対応し、ブロックは非対応です。効果行スタイルは、そのポーション行が強制統一を選択した場合のみアイテムを上書きします。
アイテムフィールドグループ
| フィールド | 意味 |
|---|---|
nutrition | グループ ID → 食べ物変化。グループ取得倍率、生涯係数、摂取分割数が掛かります。 |
effects | 摂取後ポーション設定:レベル、tick 時間、確率、粒子、任意の鮮度曲線。 |
foodCooldown | 短期 maxUses、cooldownCount、cooldownMinutes、restoreHunger。 |
foodFatigue | 生涯 lossStart と aversionCount。両方設定時のみ線形減少。 |
shelf | 基本時間、温度曲線、ディメンション倍率、冷鮮/保冷、環境温度、摂取効果。 |
onEatCommands / suppressEffects | 摂取コマンドとアイテム固有効果の削除。それぞれ独自の遅延があります。 |
conditionalRules | 栄養条件 → 対象変化、コマンド、ヒント。ルール全体として保存。 |
stackSize | アイテムレベルの最大スタック。0 = バニラ。再起動が必要で、NBT バリアント別の上限はありません。 |
quality / rarity | 品質/レアリティ ID をバインド。レアリティは variant → generic → item_rarities.json → バニラの順に解決。 |
nbtLock / variantName | NBT マッチングと注記。空の nbtLock は汎用アイテム項目を意味します。 |
ブロック操作フィールド
| フィールド | 既定値 | 意味 |
|---|---|---|
state | {} | ブロック状態プロパティのサブセット。空は任意に一致。より具体的な状態が優先。 |
hand / items | any / [] | any、空のメインハンド、または hand=item 時にアイテム ID/#タグへ一致するアイテム。 |
consumeItem | 0 | メインハンドから消費する数。クリエイティブは消費なし。数量不足は一致しません。 |
sneak | any | any、スニーク要求、スニーク禁止。 |
cooldownTicks | 20 | バリアントごとのクールダウン、0–72,000 tick。0 はクールダウンを書きません。 |
cancelVanilla | false | 一致時にバニラ操作をキャンセル。長押し操作の重複排除に影響。 |
nutrition | {} | グループ ID → 変化。グループ取得倍率を使い、生涯減少や食品分割は使いません。 |
effects / effectDelay | [] / 0 | ポーション項目と遅延。ここには保存期間アイテムがないため食品鮮度曲線はありません。 |
commands / commandsAtBlock | [] / false | コマンドは {x}、{y}、{z} を補間可能。true は実行位置をブロック中心へ変更。 |
titles / commandDelay | [] / 0 | TitlePro タイトルとコマンドは tick 遅延を共有します。 |
06保存期間と温度フィールド
アイテムごとの shelf 値は shelf_life/ と temperature/ の季節/環境ファイルとは異なります。既定値は新規作成設定に適用され、内蔵食品が上書きすることがあります。
| フィールド | 既定値 | 説明 |
|---|---|---|
durationMinutes / durationUnit | 60 / minutes | 基本分 1–99,999。エディター単位は分、時間、実日(1,440分)、game_days(20分)。無効単位は分へフォールバック。 |
resultItem / inheritTemperatureOnExpire | minecraft:air / true | air は消滅。他の結果は温度だけを継承し、以前の保存期間進行は継承しません。 |
expireCommand | empty | 所持者の手元で期限切れになったとき、所持者コンテキストで実行。コンテナ内やドロップ品の期限切れでは実行しません。 |
baseDecayMultiplier | 1.0 | 非負の基本腐敗倍率。 |
temperatureCurves | [] | 最大16本の温度→劣化曲線。線形端点と任意の外側バッファ。 |
dimensionDecayMultipliers | {} | ディメンション ID → 倍率。未記載は ×1。 |
scheme | hd:shelf_en | 表示スキーム ID。旧 hd:shelf は現在のスキームへ正規化。 |
coldRetention / coldRecoveryRate / coldDegradationRate | false / 1 / 15 | 完全凍結時の回充を有効化。1分あたり回充分 0–100。基本時間の1–100%消費ごとの永久回充上限低下。 |
temperatureEffectCurves | [] | 最大20件の摂取時温度帯効果。劣化曲線とは独立。 |
common.minTemperatureC / maxTemperatureC / initialTemperatureC | -30 / 100 / 10 | アイテムの絶対境界と初期温度。内蔵食品が上書き可能。 |
common.eatableMinTemperatureC / eatableMaxTemperatureC | -5 / 35 | この摂氏範囲外では食べられません。 |
common.coldFreshStartC / freezingStartC / fullyFrozenC | 3 / -5 / -20 | 冷鮮進行と凍結しきい値。 |
common.highTemperatureC / preservationRate | 30 / 0.8 | 高温帯開始と冷鮮50%時の腐敗保護。 |
naturalEnvironment.temperatureChangeC / temperatureChangeMinutes | 1 / 2 | 環境基準:既定では2分ごとに1℃。 |
naturalEnvironment.lowSpeed* / highSpeed* | separate | 降温/昇温の速度ステップ増分、温度差、倍率上限。 |
naturalEnvironment.*SpeedMultiplierBonus | 0 | 冷凍/低温/常温/高温帯の追加温度変化速度。 |
fridgeTemperature.*ChangeC / *Minutes | fridge 5/2; freezer 10/2 | 冷蔵庫/冷凍庫の基本温度変化速度。 |
fridgeTemperature.*SpeedMultiplierBonus | 0 | 冷蔵庫内の4温度帯追加変化速度。 |
temperatureZoneEffects | null | 旧4スロット移行入力。temperatureEffectCurves へ正規化。新規項目には使わないでください。 |
曲線と効果の端点
| 配列 | フィールド / 制約 |
|---|---|
temperatureCurves[] | startTemperatureC < endTemperatureC。端点倍率 0–100。任意の startBufferTemperatureC / endBufferTemperatureC。区間/バッファ外では ×1。旧 startBufferC/endBufferC は読み取り専用移行。 |
temperatureEffectCurves[] | effectId、絶対摂氏 start/end、includeStart/includeEnd(既定 true)、start/end level 0–127(0 = I)、start/end duration 1–72,000 tick(20 tick = 1秒)、particles 既定 true。旧4区移行は有効な単一点範囲を作ることがあります。 |
季節と環境ファイル
| パス | 用途 |
|---|---|
shelf_life/seasons.json | fallbackMultipliers.shelfLifeMultiplier は EC なしで既定 ×1。seasons[] は ID、節気範囲 0–23、倍率 0–100、表示名。旧6季節ファイルも引き続き対応。 |
temperature/season_temperature.json | terms[]:節気 0–23 と環境オフセット −100–100℃。EC 気候に加算。 |
temperature/weather_offsets.json | terms[]:雨 −1、雷 −2 が既定。降水なしはオフセットなし。 |
temperature/day_night_offsets.json | terms[]:正午/深夜の既定 0。日内と節気間で滑らかに補間。 |
temperature/block_heat.json | entries[] の block + rules[] 温度 −1000–1000 と状態プロパティ。非 LSO 分岐で最初に完全一致したルールが優先。 |
07外観スキームと小ツール
| ファイル | 構造と制限 |
|---|---|
colors/color_schemes.json | スキーム ID → {colors:[#RRGGBB,...]}。2色以上で可視グラデーション。共有スキームの編集はすべての参照に影響。 |
colors/solid_colors.json | #RRGGBB ピッカースウォッチの配列。無効値は無視。 |
fatigue/fatigue_gradient.json | enableGradient、fatigueLevelGradient、fatigueRecoveryGradient。scheme、stars、dynamic style、speed/steps/wave/pulse/reversals。表示のみを変更し、クールダウンしきい値は変えません。 |
fatigue/fatigue_exempt.json | アイテム ID 配列。既定は腐った肉、ポーション、クモの目、ミルク入りバケツを含みます。除外は回復カウント対象であり、「決して食べ飽きしない」ではありません。 |
tooltip_templates.json | ローカルエディターのテキスト/スキーム/星/shiftOnly/dynamic/animation フィールド。共有プレイヤー設定ではありません。 |
item_rarities.json | アイテム ID → レアリティ ID。NBT と汎用項目より下のフォールバック。 |
bottle_fills.json | {item, fluid, result, resultNbt} の配列。水源ブロックのみ。無効な resultNbt は NBT を落としますが結果アイテムは付与。 |
fog_effects.json | effects(既定 Night Vision)、waterFogStart 80、waterFogEnd 160、lavaFogEnd 6。ローカル距離で、色ではありません。 |
effect_lines/<effectId>.json | 効果名と統一スキーム/スタイル/アニメーション。force-unify 有効時のみ効果行を上書き。 |
パレットは色を提供し、ツールチップのレイアウトと表示可否がテキストを描画するかを制御します。
08ゲーム内設定 UI 図解
設定メニュー(/hdconfig)
/hdconfig はクライアントローカルコマンドで、実行自体が OP4 を確認します。非 OP プレイヤーは他のゲーム画面からローカル外観設定へ入れますが、このコマンドを直接実行することはできません。ページのモックアップは読み取り専用で、実値は取得しません。
クライアント外観 · 12の編集可能行
サーバーゲームプレイ · 9項目とリセット操作
温度連動 · 5テーブル + 別個の LSO 項目
5つのサーバーテーブルタブは1つの草稿と1回の検証済み保存を共有し、タブを切り替えても未保存変更は保持されます。6番目は独立フォームを開きます。以下のタブはファイルグループの説明のみで、データは変更できません。
腐敗倍率
季節 ID ごとの倍率 0–100。既定 ×1。有効な EC 節気と EC 連動有効が必要。旧6季節ファイルは6項目のまま。
ブロック熱
ブロック名または ID で検索。+ は加熱、− は冷却、−1000–1000。状態ごとに別ルールを持て、熱、距離、遮蔽が実際の寄与を決めます。
昼夜
節気ごとの正午/深夜オフセット、各 −100–100℃(既定0)。日中に補間され、バイオーム固有端点が優先。
季節温度
EC 気候の上に節気ごとの追加 −100–100℃(既定0)。EC なしでは最初の節気を使用。
雨/雪
雨/雪の既定 −1℃、雷雨の既定 −2℃、各節気 −100–100℃。雷は通常の雨値を加算しません。
LSO ワールド温度
別個のディメンションフォームで、5テーブル共同保存には含まれません。ワールド温度値は LSO 単位で、摂氏ではありません。
節気順:立春、雨水、啓蟄、春分、清明、穀雨、立夏、小満、芒種、夏至、小暑、大暑、立秋、処暑、白露、秋分、寒露、霜降、立冬、小雪、大雪、冬至、小寒、大寒。プレビューはサーバーの実際の24項目を読み込みません。
LSO ワールド温度とバイオーム温度
09所有者別の保存とリロード
| 変更 | 操作 / 理由 |
|---|---|
server.json | OP 画面で gameplay を保存。privacy と shelfMerge は手動編集後に /hdreload。画面で交換されるのは gameplay のみ。 |
display.json、ローカル霧/テンプレート | 各クライアントで保存。手動編集後はクライアント再起動。サーバーの /hdreload はローカルファイルを編集できません。 |
| グループ、ステージ、ボーナス、アイテム、ツールチップ、ブロック、品質、レアリティ、効果行の HD オーバーレイ | 保存して /hdreload でディスクから再構築し、オンラインプレイヤーへ再同期。ワールドデータパックはバニラ /reload。 |
quality_registry/ 項目または stackSize | 一致する定義とリソースを配布し、起動時登録/アイテムレベル属性のため再起動。 |
| クライアントテクスチャとフォント | 各クライアントへインストール。サーバー側参照ではリソースを送信できません。 |
/hdreload はバニラ /reload ではありません。ワールドパック、他 MOD、ローカルクライアントファイルはそれぞれ独自のリロード機構を持ちます。