AE2 9.0.0-Alpha [Forge/Fabric] 版本后,频道相关机制被大规模修改,本资料仅记录修改后的频道机制。
简介
频道(Channel)是AE2的网络设备与网络交互的条件,多数网络设备都需要频道才能正常工作。
本资料为“频道”这一术语的详细解释,若想要简要解释,请移步至:频道(白色旅人)
频道的提供
已供能且有效的ME控制器的每个面上都可以提供32个频道。
如果一个网络中没有ME控制器,则该网络最多可以为设备提供8个频道。
频道的传递
各种线缆都可以用于传递频道,这是最通用的频道传递方式:
玻璃线缆、包层线缆、智能线缆(归类为细线缆):可以传递最多8个频道;
致密包层线缆、致密线缆(归类为粗线缆):可以传递最多32个频道。
关于线缆之间是否可以相互连接的详细解释,请移步至:网络节点(游戏设定)
此外,智能线缆和致密线缆会在纹理上渲染其传递的频道数量,用于粗略估计占用的频道数。
AE2和玉 🔍、高亮信息拓展等模组存在联动,当玩家查看智能线缆和致密线缆时,会显示其传递频道的具体数量。
量子网环也可以用于无线传递频道,且可以跨维度,最多可以传递最多32个频道。
量子网环在传递频道时等效于致密线缆,通过其无线传输的频道与有线传输的频道之和不能超过32个。
(只有频道经过量子网环的ME量子链接仓时,才算量子网环传递了该频道)
ME P2P通道也可以用于传递频道,一个输入端可以将频道传递给多个输出端,最多可以传递32个频道。
ME P2P通道在传递频道时相当于将输入端和输出端直接连接,所有输出端所需的频道和不能超过32个。
一个已存在了ME P2P通道的网络,不能再使用ME P2P通道为其传递频道,一旦使用将被视为“P2P嵌套”,导致该网络失效。
注意:判定P2P嵌套无需网络可用
如右图所示:
两个网络均未供能
左侧的ME P2P通道没有配对
右侧网络仍然会被判定为“P2P嵌套”
P2P嵌套示例特例:在有ME控制器的网络中
如右图所示:
ME P2P通道的频道源于ME控制器
该控制器与P2P通道在同一网络
此时P2P通道正常生效,不被视为嵌套
不会引发P2P嵌套的示例AE2和玉 🔍、高亮信息拓展等模组存在联动,查看智能线缆和致密线缆时也可以查看网路是否存在P2P嵌套的情况。
多数“块状”ME网络设备(如压印器、ME接口)均可以传递频道,一般情况下最多传递8个频道。
“片状”ME网络设备(如ME终端、ME存储总线)不可以传递频道;
石英纤维可以让线缆之间相互连接,使其两端共享能量,同时阻断频道的传递;
线缆锚可以阻断线缆之间的连接,使其两端无法传递能量和频道。
一个需要消耗频道的网络设备会优先满足自己的需求,如ME接口最多可以传递8个频道,但自身占用1个后,只能给其之后的设备7个频道。
合成处理单元、空间塔整个结构只需要占用1个频道(并不按照方块数占用),同时也可以传递8个频道。
频道的使用
一般情况下,需要和其他网络设备进行交互的设备需要频道,如ME驱动器、ME接口等;无需交互的设备则不需要频道,如压印器、分子装配室等。
如ME箱子上的终端,ME箱子在有频道时可以访问网络中的各种设备,甚至可以用于发起合成;缺少频道时就只能读取ME箱子内的存储元件;
在ME箱子有频道时,网络可以访问其中的存储元件,将其纳入网络存储;缺少频道时,ME箱子不会被纳入网络存储。
一个经典的ME网络
如上图所示,该网络中总共使用了4个频道,分别由ME驱动器、ME合成终端、ME样板供应器、合成处理单元占用。
玩家也可以在ME控制器/网络工具的GUI界面内查看该网络已使用的频道数量。
频道寻路
无控制器的网络
无ME控制器的网络中,频道会存在在网络中的所有地方。网络中有多少个占用频道的网络设备,整个网络内的所有线缆/网络设备就都会传递这么多频道。
有控制器的网络
规则一:有ME控制器的网络中,频道寻路时,会按照以下顺序进行查找:细线缆/块状设备 -> 粗线缆 -> ME控制器,这三者也都属于“网络设备”。
规则二:频道会优先沿附近的细线缆(或可以传递频道的设备)寻路至粗线缆,接着沿着粗线缆寻路至ME控制器,这两步均会使用经过网络设备数量最少的路径。
频道在寻路时可以直接从细线缆/网络设备来到ME控制器,在与最近的粗线缆和ME控制器距离相等时,会优先选择ME控制器。
如上图所示,这个网络中ME接口通往ME控制器共有两条路,上方路径到达最近的粗线缆只需要1格,而下方路径到达ME控制器需要3格。
频道会试图在每一步都选择最短的路径。因此在这种网络中,频道会经过上方路径,即使它全程距离更长。
使用量子网环有线传递频道,在频道寻路时,相当于3根粗线缆(量子环 -> 量子链接仓 -> 量子环),在计算频道能耗时距离也按照3格计算;
使用量子网环无线传递频道,在频道寻路时,相当于4根粗线缆(量子环 -> 量子链接仓 ->量子链接仓 -> 量子环),在计算频道能耗时也按照4格计算;
使用合成处理单元、空间塔传递频道时,会将多方块结构中的各个方块视为细线缆,然后按照细线缆的方式进行寻路。
15.0.0-Alpha [Forge/Fabric] 版本后,“规则二”被添加,此前版本的频道寻路优先级与该规则存在差异,详见:频道(15.0.0 -)
规则三:当频道不可避免地需要从粗线缆寻路至细线缆时,频道会优先寻路到与ME控制器的节点距离最小的粗线缆,然后将该位置当成细线缆,重复规则二。
如上图所示,频道仍然会走上方的路径,且这种连接方式在寻路时完全等效于规则二的示意图。
规则四:在多个网络设备串联连接时,距离ME控制器越近的设备越先占用频道,因此在远处的设备容易缺少频道。
如上图所示,左下角的ME接口最多传递8个频道,因此图中8个ME接口均有频道,右上角的ME样板供应器距离最远,无法接收到频道。
如果网络中的一部分有设备缺少频道,一般称该部分距离ME控制器最远的、试图传递过多频道的网络元件“频道过载”(Channel Overflow);
在上图中,左下角的ME接口遇到了频道过载问题。
规则五:在出现多个距离相等的路径时,ME控制器会按照方向提供频道,优先级:-Y > +X > -Z -> +Y -> -X -> +Z。
频道能耗
玩家可以在ME控制器/网络工具的GUI界面内查看该网络的总频道能耗。
无控制器的网络
无控制器的网络中,频道能耗(AE/t)= 网络设备总数 * 频道总数 / 128。
有控制器的网络
有控制器的网络中,每个频道都会单独计算一次能耗:
从占用频道的设备(包括)开始,到提供该频道的ME控制器(不包括)结束,频道经过的每个网络设备都会产生 1/64 AE/t 的频道能耗。
一个网络中的总频道能耗(AE/t)为以上计算得到的所有频道的能耗之和。
合成处理单元、空间塔等只占用1个频道的多方块结构,“占用频道的设备”的等效位置为最接近ME控制器的结构组成方块:
上下两网络的频道能耗相等
存在错误的网络
如果一个网络存在错误(如控制器冲突/P2P嵌套等)导致无法传递频道,频道能耗为 0 AE/t。
进度
图标进度游戏内描述实际需求进度类型上游进度ID是否隐藏网络学徒在一个网络里使用8个频道【见描述】进度福鲁伊克斯能量连接
(见ME玻璃线缆)
ae2:main/network1否网络工程师在一个网络里使用128个频道【见描述】进度网络学徒
(见此资料)
ae2:main/network2否网络管理者在一个网络里使用2048个频道【见描述】进度网络工程师
(见此资料)
ae2:main/network3否调整
10.0.0-Alpha.7 [Forge] / 10.0.0-Alpha.8 [Fabric] 版本后,玩家可以使用命令和配置项调整AE2的频道模式。
命令
玩家可以在游戏内使用 /ae2 命令调整频道模式,具体如下:
/ae2 channelmode default/ae2 channelmode infinite/ae2 channelmode x2/ae2 channelmode x3/ae2 channelmode x4default 表示使用默认的频道模式,各线缆可以传递的频道和ME控制器每个面提供的频道数都为本资料中使用的数据;
x2、x3、x4 表示各线缆可以传递的频道和ME控制器每个面提供的频道数都变为相应倍数,且无控制器的网络中最大频道数也变为相应倍数;
infinite 表示各线缆都可以传递不限量的频道,且ME控制器会被隐藏,无法合成。
执行该命令后,存档中的所有网络都会刷新,并重启以应用新的频道模式。
配置项
频道模式也可以通过配置项修改,文件位于 ./config/ae2-common.toml:
配置项描述值类型默认值范围channels频道使用的模式字符串DEFAULTINFINITE
DEFAULT
X2
X3
X4
每一种配置都与命令一一对应,详细功能见上文。