
Short Circuit
快速、紧凑、模块化的红石电路设计方式。
查看大图短路
快速、紧凑、模块化的红石电路设计方案。
下载
短路模组可在 Modrinth 和 Curseforge 上下载,支持多种模组加载器,包括 Fabric、Forge、NeoForge 和 Quilt(使用 Fabric 分支)。
你也可以使用 JDK 21 并从源码构建该模组,运行以下命令:
git clone https://github.com/North-West-Wind/ShortCircuit.git
cd ShortCircuit
./gradlew build
编译后的模组文件将输出到 {loader}/build/libs/,其中 {loader} 可以是 fabric、forge 或 neoforge。
使用方法
本模组提供了 4 种可合成的物品:
- 电路 (Circuit)
- 戳棒 (Poking Stick)
- 真值分配器 (Truth Assigner)
- 标签棒 (Labelling Stick)
电路

一个电路物品看起来像一个带有绿色火把的中继器。放置后,它显示为一个内部有地毯的玻璃块。这是一个未初始化的电路。要使其工作,手持戳棒,右键点击它。你将被带入电路内部。
内部有 6 面墙,其中央分别标记为 U(上)、D(下)、L(左)、R(右)、F(前)、B(后)。它们与你放置电路块的方向有关。
用戳棒潜行+右键点击墙面,根据需要将侧面标记为输入或输出。输入是外部红石信号传入的地方,输出是电路内部信号输出到外界的地方。
在内部建造你的电路。完成后,用戳棒右键点击墙面即可离开内部。
出来后,空手右键点击电路块。如果电路没有违反规则,你应该能在块中看到你放置在电路内部的组件。这个电路现在可以接收信号了!
复制
通过右键点击已放置的电路块上的电路物品,可以复制电路。
戳棒

如电路部分所述,戳棒是与电路互动的主要方式。然而,它还有其他用途。
潜行+右键点击一个电路,可以隐藏其内部组件。当有太多动态电路渲染导致卡顿时,这很有用。
你还可以使用戳棒设置电路的外部尺寸。对着空气右键点击该物品,可以在 4 到 256(仅 2 的幂次方)之间循环切换尺寸。
真值分配器

这是短路模组中“快速”的部分。由于电路基于现有的红石组件制作,它们会有一定的延迟。真值分配器(又名洗衣机)解决了这个问题。
真值分配器是一种模拟动态(普通)电路以创建集成电路(IC)的机器。它记录动态电路的输出并为其构建真值表,因此得名真值分配器。
集成电路是真值分配器转换的输出结果。集成电路的主要优势是零刻延迟,即从外部源立即激活,并且在改变时也会立即更新相邻方块。
然而,需要注意,集成电路并非总是最佳选择。在以下两种主要情况下,你不应该将动态电路转换为集成电路:
- 故意需要延迟
- 电路包含记忆组件
第 1 点显而易见。由于集成电路是零刻的,转换后不会保留任何延迟。第 2 点指的是电路的输出是否依赖于电路内部非恒定状态的方块。例如,如果电路的输出依赖于内部的一个铜灯泡,并且该铜灯泡会根据不同输入改变状态,那么它就是一个记忆组件。
复制
与动态电路类似,集成电路可以通过相同的方式复制:右键点击块上的电路物品。任何电路物品都可以在动态电路和集成电路之间切换。
真值分配器设置
真值分配器也需要正确配置,才能输出正确的集成电路。
第一个数字字段是最大延迟。它以每游戏刻为单位。在每次模拟迭代中,如果电路输出在最大延迟后没有变化,其输出将被强制记录。
最大延迟下方的按钮是记录模式。可以在“首次变化”和“完整延迟”之间切换。“首次变化”使真值分配器在任一输出变化时立即记录输出,而“完整延迟”则等待完整的最大延迟时长后再记录输出。
最大延迟旁边的按钮是位模式按钮,可在 4、2 和 1 位之间循环。由于红石信号强度范围是 0 到 15,它可以表示为 4 位数字。在模拟过程中,如果设置为 4 位,将尝试所有可能的信号强度组合。然而,如果电路有多个输入面,这可能需要很长时间。例如,一个 3 输入电路将需要 16x16x16=4096 次迭代,即使最大延迟为 1 刻,仍需要超过 3 分钟。
对 3 输入电路使用 2 位模式将产生 4x4x4=64 次迭代,而使用 1 位模式则只需 2x2x2=8 次迭代。如果你的电路不依赖信号强度,考虑使用 1 或 2 位模式。
标签棒

标签棒是一种用于改变电路颜色的物品。这对于集成电路特别有用,因为它们都有完全相同的模型。改变颜色可以让玩家区分功能不同的电路。
右键点击任意电路块,该块将循环遍历 16 种染料颜色。潜行时这样做则会反向循环。
该棒也可以用于电路块内部的墙面。右键点击墙面,可以切换其注释。
已知问题
- 当使用 MoreCulling 模组时,集成电路的方块模型可以用来透视世界。
- 集成电路无法直接输出到电路块的墙面。
报告漏洞
请直接使用 GitHub 上的“问题”选项卡。
为了让我更容易修复问题,如果你遇到看似非预期的行为,请先尝试以下操作:
- 创建有问题的电路的不同变体。这有助于缩小实际出错的范围。变体示例:
- 交换组件顺序
- 更改输入/输出面
- 复制该电路并放置多个。检查是否有任何一个正常运行。
如果你确认某个电路始终存在错误,请在错误报告中同时包含该电路。
灵感来源
本模组的灵感来自另一个模组“压缩机器 (Compact Machines)”以及现实世界的计算机工程学。
压缩机器
这是一个模组,允许玩家创建单个方块,内部容纳更大的空间。玩家可以通过机器的侧面传递物品、液体和能量。
短路模组借鉴了这一概念,并将其应用于红石。
计算机工程学
不仅仅是计算机工程学,而是广义的电路设计。在现实世界的电路设计中,一个电路通常由更小、更简单的电路组成。
一些例子:
- 一个 1 位全加器(FA),它将 3 个 1 位值相加并输出其和与进位,使用了 2 个异或门、2 个与门和 1 个或门。
- 在算术逻辑单元(ALU)中,它基本上是与门、或门、非门、异或门的组合,外加一个全加器和一个多路选择器(MUX)。
- 在 CPU 内部,它结合了 ALU、内存和其他一些寄存器来运行。
正如这些例子所示,我们使用之前设计好的电路来创建更新、更好、更复杂的电路。短路模组旨在通过将电路压缩到一个方块中,并使其可复制,从而实现电路的重用。
支持
正在加载版本记录…



正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。