Learn-mindustry-logic-A4-Advanced:修订间差异

来自Mindustry中文wiki
(清空全部内容)
标签:清空
(MDTWikiTools #963: publish [0e012c84a8ffdbc5])
 
第1行: 第1行:
__NOTOC__
<div class="mdt-data-page">
<div class="mdtHome"><div class="mdtPanel mdtHomeSection">
== 进阶逻辑:状态与调度 ==
本章介绍在 Mindustry 逻辑处理器中拆分任务和管理状态。先掌握读写变量、sensor、jump 和建筑链接,再组合长期运行的状态机。
</div></div>
<div class="mdtHome"><div class="mdtPanel mdtHomeSection">
== 状态机 ==
用变量保存当前阶段,例如采矿、运输和返回。每轮先读取单位或建筑状态,再只执行该阶段的操作;条件满足后改变阶段并跳转到下一轮。这样可避免同一轮对同一单位下达互相覆盖的指令。
</div></div>
<div class="mdtHome"><div class="mdtPanel mdtHomeSection">
== 循环与负载 ==
处理器按指令速率运行,不应将一轮执行视为一秒。需要计时可保存 @time,并比较时间差;遍历大量建筑或单位时,将任务分配到不同轮次,控制每轮扫描数量。
</div></div>
<div class="mdtHome"><div class="mdtPanel mdtHomeSection">
== 单位控制 ==
绑定单位后检查 @unit 是否有效,读取载货、容量、位置和目标状态,再调用控制指令。等待到达或装卸完成后再改变任务,避免持续重置目标。多个处理器管理单位时需要规划归属,减少争抢。
</div></div>
<div class="mdtHome"><div class="mdtPanel mdtHomeSection">
== 调试与验证 ==
先在沙盒中测试单个对象,把关键状态输出到消息板,再增加目标数量。处理器离线、单位被毁、容器装满和目标建筑消失都需要恢复路径。权限更高的地图脚本参见[[世界处理器]]。
</div></div>
<div class="mdtHome"><div class="mdtPanel mdtHomeSection">
== 数据来源与说明 ==
数据版本:[https://github.com/Anuken/Mindustry/releases/tag/v160.7 Mindustry 原版 v160.7],来自已核验 SHA-256 的官方游戏包初始化数据。


所有时间按 60 tick/秒换算,距离按 8 世界单位/格换算。数值为默认定义,地图规则、供给、状态及模组可能改变实际表现。
</div></div>
</div>

2026年10月18日 (日) 18:09的最新版本

进阶逻辑:状态与调度

本章介绍在 Mindustry 逻辑处理器中拆分任务和管理状态。先掌握读写变量、sensor、jump 和建筑链接,再组合长期运行的状态机。

状态机

用变量保存当前阶段,例如采矿、运输和返回。每轮先读取单位或建筑状态,再只执行该阶段的操作;条件满足后改变阶段并跳转到下一轮。这样可避免同一轮对同一单位下达互相覆盖的指令。

循环与负载

处理器按指令速率运行,不应将一轮执行视为一秒。需要计时可保存 @time,并比较时间差;遍历大量建筑或单位时,将任务分配到不同轮次,控制每轮扫描数量。

单位控制

绑定单位后检查 @unit 是否有效,读取载货、容量、位置和目标状态,再调用控制指令。等待到达或装卸完成后再改变任务,避免持续重置目标。多个处理器管理单位时需要规划归属,减少争抢。

调试与验证

先在沙盒中测试单个对象,把关键状态输出到消息板,再增加目标数量。处理器离线、单位被毁、容器装满和目标建筑消失都需要恢复路径。权限更高的地图脚本参见世界处理器。

数据来源与说明

数据版本:Mindustry 原版 v160.7,来自已核验 SHA-256 的官方游戏包初始化数据。

所有时间按 60 tick/秒换算,距离按 8 世界单位/格换算。数值为默认定义,地图规则、供给、状态及模组可能改变实际表现。