Create:无限制能量

Create:无限制能量

在《Create》中设计你的能量系统——真实的流动水坝、可变化的风力,以及可选的ComputerCraft控制。

技术

Create: No Unlimited Energy (NUE)

让《机械动力》中的能量成为你需要 精心设计 的东西,而不是随便一放就能用。

NUE 将 机械动力 的动能与真正流动的水(流动流体)以及一点 ComputerCraft 元素相结合,把能量生成变成了一个真正的工程问题:建造一座水坝、一座风电场,以及驱动它们的逻辑设备——而不是把一个水车放在一滩水里就完事。本模组为服务器权威模式;客户端只需安装模组文件即可在护目镜上看到正确的数据。

实际效果

护目镜读数——实时功率、转速和大坝一致性乘数 护目镜读数:可用功率、转速和大坝一致性乘数(一个由 9 个水车组成的大坝,×1.40)。

ComputerCraft 显示器上的实时能量仪表板 显示器上的实时能量仪表板,由 cm_generator 和 cm_meter 外设驱动。

将 ComputerCraft 调制解调器连接到水车和仪表上 将 ComputerCraft 调制解调器连接到水车和仪表上(绿色表示已连接外设)。

设计理念

  • 免费、轻松获得的能量是一个缺陷。 静止水塘里的水车——或者封闭的泵循环——不应该 能为基地供电。能量必须通过努力才能获得。
  • 水需要被设计。 水车只能在真实水流中运转,其输出功率取决于水流的强度、水头(水落在水车上的落差)和生物群系。强大的水道和高大的水坝是关键。
  • 规模越大回报越高。 将许多运转中的水车聚集在一个大坝中,会获得 超线性 的回报——一个真正的水利大结构比分散的水车效率高出不止 ×N 倍。
  • 永动机不存在。 发电会消耗进水口处的一点水,因此封闭的泵→水车循环会干涸;只有真正的雨水/河流/海洋水源才能维持运转。
  • 风能是变化的,不是免费的。 风车的转子速度会跟踪实时阵风、天气和昼夜循环,其强度取决于放置位置(开阔天空、高度、生物群系)。风能廉价且早期可用——但不可靠。
  • 稳定的水能 vs. 变幻的风能。 水能是高级、可扩展的骨干能源;风能是方便、易波动的早期选择。两者兼顾。
  • 自动化——可选。 ComputerCraft 外设可以暴露每个水车、风车和仪表的实时遥测数据,因此你可以用 Lua 构建仪表盘和控制逻辑。此项功能非强制使用。

需求

模组 角色
机械动力 (Fabric) 6.x 必需
流动流体 必需——有限、真正流动的水。请设置 create_waterWheelMode = REQUIRE_FLOW。
CC: Tweaked 可选——只读遥测外设。没有它所有功能也都能正常工作。

Fabric Loader ≥ 0.15 · Java 17 或 21。

语言

游戏内文本(护目镜读数)已本地化:

  • 🇬🇧 英语 (en_us) — 默认
  • 🇷🇺 俄语 (ru_ru)
  • 🇨🇳 简体中文 (zh_cn)

欢迎提供翻译——请添加一个 assets/create_nue/lang/<区域>.json 文件并提交拉取请求。

特性

水车——仅限流动水,大坝回报高

  • 仅限真实水流。 静止水中的水车不产生 任何东西——你需要构建一个实际的水流。(这也修复了流动流体 REQUIRE_FLOW 的一个 bug,即水车从未注册为水流监听器,从而完全失效。)
  • 功率 = 水流强度 × 水头 × 生物群系。 建造高大的水坝和强大的水道是提升输出的方式。
  • 大型结构奖励。 一组 发电中 的水车(一个真正的大坝)会获得超线性奖励;一个干燥的、假的大坝则一无所获。
  • 方向稳定性。 使用有符号分数滞后和转轴共识算法,防止水车在有限水流搅动下方向闪烁,从而可以建造大型的单方向水车阵列。
  • 永动机不存在。 发电时需要消耗进水口处少量水作为“水燃料税”,导致封闭循环干涸。
  • 护目镜读数。 佩戴机械动力护目镜查看水车时,会显示大坝规模及其乘数。

风车——变化的风力,不是固定数值

两个独立量(在机械动力中,SU = 每 RPM 容量 × RPM):

  • 速度(可见转子) = 当前时刻 的风力强度——阵风 × 天气 × 昼夜,经过平滑处理,使转子自然地随风飘动。
  • 力(容量) = 风车的 放置位置——开阔天空暴露度 × 高度 × 区域生物群系。

ComputerCraft(可选)

将有线调制解调器连接到水车、风车、应力计 或 转速计 上——无需新方块,无硬性依赖(整合功能仅在 CC 存在时加载)。

外设 方法
cm_generator(水车、风车) kind(), active(), capacity(), rpm(), stress(), info()
cm_meter(应力计、转速计) gaugeType(), speed(), capacity(), stressUsed(), load(), overstressed()
-- 打印有线网络上的所有 NUE 发电机和仪表
for _, n in ipairs(peripheral.getNames()) do
  local t = peripheral.getType(n)
  if t == "cm_generator" then local g = peripheral.wrap(n)
    print(n, g.kind(), g.active(), g.stress() .. "SU", g.rpm() .. "rpm")
  elseif t == "cm_meter" then local m = peripheral.wrap(n)
    print(n, m.gaugeType(), m.stressUsed() .. "/" .. m.capacity() .. "SU", math.floor(m.load()*100) .. "%")
  end
end

配置

首次启动时生成在 config/create_nue.json——所有值皆可调整(水流/水头/生物群系曲线、大坝一致性奖励、水税、完整风力模型、每个水车 SU 上限)。删除该文件可重新生成。

从源码构建

使用 Loom + Mojang 映射表,为 Java 17 编译(可在 17 或 21 上运行)。编译时依赖项(机械动力、流动流体、CC: Tweaked 以及 fabric-api-lookup-api-v1 模块)不会被重新分发——请将其 jar 文件放入 libs/ 目录,然后:

./gradlew build   # -> build/libs/create-nue-<版本>.jar

路线图

NUE 是对 “机械动力中免费、轻松获得能量很荒谬” 这一理念的持续回应。在发电机制方面正在深化,同时 RF/电能和存储保持正常的进度层级——目标是让 大型水力大坝成为最有益的发电方式,而水车和风车则作为整个能源经济所基于的机械基础。计划中:与盈利发电的经济挂钩、抽水蓄能、季节性水/风能,以及更丰富的 ComputerCraft 遥测功能。

贡献

构建、架构、mixin 惯例、本地化以及发布流程记录在 AGENTS.md 中。欢迎提交翻译和拉取请求。

许可证

MIT。欢迎贡献和复刻。