Skip to content

⚖️ 命名空間 GameRules 遊戲規則完整參考

Agrarian Reform 的所有設定參數均作為原生 Minecraft 遊戲規則註冊於命名空間類別 Agrarian Reform (agrarian_reform:*) 下,由 DasikLibrary 的 DynamicGameRuleManager 統一管理。世界專屬設定永久保存於每個世界的 level.dat 中,並可透過遊戲內介面或伺服器指令即時調整。


📊 完整靜態 GameRules 規則對照表

遊戲規則鍵名資料類型預設值有效範圍執行端說明描述
agrarian_reform:hydration_source_range整數8032伺服器與客戶端靜態水源方塊透過柴比雪夫同心環濕潤耕地的有效半徑(以方塊為單位)。
agrarian_reform:hydration_flowing_range整數4032伺服器與客戶端流水為耕地提供毛細灌溉的有效半徑(以方塊為單位)。
agrarian_reform:pure_water_hydration_only布林falsetrue / false伺服器與客戶端開啟後,含水方塊與鍋釜將被忽略,僅純淨水流體方塊能濕潤耕地。
agrarian_reform:rain_growth_acceleration整數1010伺服器降雨時露天作物在隨機刻中額外獲得的成長階段數值。
agrarian_reform:growth_biodiversity_bonus布林truetrue / false伺服器當相鄰種植不同作物種類時,提供 +10% 基礎生長機率加成。
agrarian_reform:total_trample_immunity布林falsetrue / false伺服器完全免疫實體墜落或跳躍對耕地的踩踏破壞。
agrarian_reform:trample_immunity_players_only布林falsetrue / false伺服器與完全踩踏免疫共同啟用時,僅玩家與馴服寵物享有保護;敵對與野生生物仍會破壞土壤。
agrarian_reform:always_wet_farmland布林falsetrue / false伺服器與客戶端強制所有耕地方塊永久保持最高水分等級 7,不需水源滋潤。
agrarian_reform:seeds_grow_grass布林值truetrue / false伺服端与客戶端手持农作物種子右键點擊泥土方塊消耗 1 颗種子並将其转化為草地。
agrarian_reform:right_click_harvest布林值truetrue / false伺服端与客戶端右键成熟作物收獲掉落物並自动補種為 0 阶段幼苗,帶有主手防抖控制。
agrarian_reform:universal_bonemeal布林值truetrue / false伺服端与客戶端允许对原版不支援骨粉的植物加速生長(仙人掌、甘蔗、地獄疙瘩、藤蔓)。
agrarian_reform:global_growth_multiplier整數10002147483647伺服端全球作物隨機刻与時空連續體離線生長的全局速度百分比(0 = 关闭,100 = 1倍原版速度)。
agrarian_reform:ambient_crop_rustle布林值truetrue / false客戶端穿過作物或生長阶段推進時播放環境沙沙声效反馈。
agrarian_reform:ambient_vitality_particles布林值truetrue / false客戶端生長阶段成功推進時散發細膩的喜悅村民绿色活力星光粒子。
agrarian_reform:debug_mode布林值falsetrue / false伺服端在伺服端日志中输出作物生長刻与時空連續體補偿的詳細诊斷資訊。临時規則:重啟后重置為 false

🌾 動態按作物生長倍率 GameRules

每当在世界中發現新的模組或原版作物、或通過資料包注册時,Agrarian Reform 都会动态注册一條專屬遊戲規則,格式為:

$$\text{GameRule Key} = \text{agrarian_reform:growth_}\langle \text{namespace} \rangle\text{_}\langle \text{path} \rangle$$

Resolution Hierarchy:

  1. 特定作物獨立覆蓋 ($> 0$):若设為正整數(如 200),该作物将以该速率生長(200% = 2倍速),繞過全局倍率。
  2. 凍結/停用状态 ($-1$):若设為 -1,该特定作物的生長刻完全凍結(0% 速度),不產生額外隨機刻也不進行離線補偿。
  3. 全局倍率繼承 ($0$):若设為 0(預設),作物自动繼承全局 agrarian_reform:global_growth_multiplier 的倍率。
bash
# 設定小麥以 3 倍速度生長
/gamerule agrarian_reform:growth_minecraft_wheat 300

# 完全凍結甘蔗的生長
/gamerule agrarian_reform:growth_minecraft_sugar_cane -1

# 重置胡蘿蔔以繼承全局倍率
/gamerule agrarian_reform:growth_minecraft_carrots 0

⚡ 游戏內动态注册(無需重啟游戏)

  • 按需即時實例化:当玩家探索新区域、加载含新模組方塊的區塊或在游戏中播種模組種子時,AgrarianCropRules 会實時检測该作物並立即动态创建其專屬 GameRule
  • 命令即刻可用:新注册的遊戲規則可立即通過 /gamerule 命令查询和修改,支援完整的 Tab 自动補全,完全無需重啟伺服端或客戶端。
  • 資料包热重载同步:在游戏內執行 /reload 会触發 DynamicRegistryScanner 重新扫描 BuiltInRegistries.BLOCK,並自动注册資料包新添加的作物標籤。

🛡️ 模組移除与零崩溃休眠生命周期

  • 100% 防崩溃解耦:动态遊戲規則完全基于標准字符串与原版 Identifier 標识键 ("farmersdelight:tomatoes") 進行识别,绝無任何硬编码的類依赖。
  • 休眠与靜默状态:若卸载某作物模組,原版会自动移除其方塊。对应的遊戲規則将转入完全**休眠(空闲)**状态——不執行任何查询,不占用任何 CPU 周期,绝不会引發游戏崩溃或损坏存檔
  • 重新安装無缝恢復:若玩家日后重新安装该模組,保存在 level.datconfig/agrarian-reform.json 中的倍率配置将立即被系统自动识别並無缝恢復。

🛠️ 遊戲內管理指令範例

bash
# 查询当前水源方塊灌溉範圍
/gamerule agrarian_reform:hydration_source_range

# 将水源方塊灌溉範圍设為 12 格
/gamerule agrarian_reform:hydration_source_range 12

# 启用僅玩家与驯服宠物的防踩踏保护
/gamerule agrarian_reform:total_trample_immunity true
/gamerule agrarian_reform:trample_immunity_players_only true

# 临時启用诊斷調试日志输出
/gamerule agrarian_reform:debug_mode true

See also: Brigadier 指令與管理, 雙層設定系統, and 作物註冊表與通用作物.

Official documentation & web portal for Dasik Igaijinn mods.