Screeps 一个房间报错导致其他房间停摆怎么办:异常隔离、限频日志与自动恢复
当某个Screeps房间或模块抛出JavaScript异常时,用房间级错误边界、限频日志、连续错误暂停和冷却重试,让其他房间继续执行,并区分异常、API返回码与CPU截止。
TAG
当前共有 7 篇文章使用这个长期主题标签。
当某个Screeps房间或模块抛出JavaScript异常时,用房间级错误边界、限频日志、连续错误暂停和冷却重试,让其他房间继续执行,并区分异常、API返回码与CPU截止。
排查 Creep 生成进度结束后仍停在 Spawn 内的问题:检查八个相邻格的地形、阻挡建筑、Construction Site、Creep 占位与方向顺序,并用 spawnCreep directions、setDirections() 和跨 tick 观察验证真实出生位置。
诊断 Screeps 房间的 room.energyAvailable 为什么长期低于 energyCapacityAvailable,逐个检查 Spawn、Extension、运输者、transfer() 返回值与下一 tick 的真实变化。
区分moveTo的ERR_NO_PATH、noPathFinding的ERR_NOT_FOUND和PathFinder incomplete,从目标范围、地形、回调、maxOps与出口逐步排查。
Screeps 中 Creep 动作返回 ERR_NOT_IN_RANGE(-9)时,先确认目标与动作距离,再检查 moveTo() 返回值,并在下一 tick 重试。包含范围 1、范围 3 和 ERR_NO_PATH 排查示例。
Screeps moveTo() 返回 OK 但 Creep 不移动、走不动或卡住?按有效 MOVE、fatigue、返回码、reusePath 缓存、交通阻挡和同 tick 命令覆盖逐层排查。
系统排查 StructureSpawn.spawnCreep():区分官方 API 与本地策略,正确处理 body、名称、任意 memory、显式 energyStructures、dryRun 和正式返回值。